In the language of relational algebra, it's a join, not an intersection.
In XSLT, joins are best performed using the key() function. In XSLT 2.0 (or is
it 3.0?) you can define a composite key with multiple fields.
Michael Kay
Saxonica
> On 21 May 2020, at 15:17, Roger L Costello costello@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Hi Folks,
>
> I have a set of Book instances. I call this Set #1. Here are two instances:
>
> <Book>
> <Title>ABC</Title>
> <Author>John Doe</Author>
> <Country>USA</Country>
> <Binding>hardcover</Binding>
> </Book>
>
> <Book>
> <Title>XYZ</Title>
> <Author>Mary Sue</Author>
> <Country>CAN</Country>
> <Binding>hardcover</Binding>
> </Book>
>
> I have a set of Music instances. I call this Set #2. Here is one instance:
>
> <Music>
> <Genre>Classical</Genre>
> <Author>John Doe</Author>
> <Country>USA</Country>
> <Cost>9.95</Cost>
> </Music>
>
> Query: Find the subset of Set #1 that intersects with Set #2 at the <Author>
and <Country> elements.
>
> If Set #1 consists of the two instances shown above and Set #2 consists of
the one instance shown above, then the result of the query is the following:
>
> <Book>
> <Title>ABC</Title>
> <Author>John Doe</Author>
> <Country>USA</Country>
> <Binding>hardcover</Binding>
> </Book>
>
> That Book instance has an <Author> and <Country> that intersects with the
<Author> and <Country> in the Music instance.
>
> I view this as an intersection problem. However, it is an intersection at
specific fields (the Author and Country fields). Do you view it as an
intersection problem?
>
> If it is viewed as an intersection problem, then is there a nice XPath
expression that does intersection-at-specific-fields?
>
> If it is better viewed not as an intersection problem, then how is it better
viewed? is there a nice XPath expression for that view?
>
> /Roger
|