Subject: [xsl] simplifying the XSL for an intersection From: "leona s" <lrs@xxxxxxxxxxxx> Date: Mon, 13 Jan 2003 14:55:13 -0600 |
Hi All, I am trying to get a set of nodes that is really an intersection and would appreciate some ideas for a solution. What I need is the set of Matrix/Role nodes, that contains all of Roles for Items where $player is in at least one of the Roles for that Item. For example, if I have a variable $player = '53', I should get the set of Roles where roleID = {W,X,Y}, because 53 is in W and Y, and although 53 is not in X, that Role is in at least one Item that also has roles W and Y. Also, 53 is in Role Z, but that Role does not belong to any Item so it is not included. I have a solution that works, but I was wondering if there is a simpler way to express this. <xsl:variable name="player" select="53"/> <xsl:variable name="matrix" select="document('matrix.xml')"/> <xsl:variable name="playerroles" select="$matrix/Matrix/Role[PlayerLink/@player=$player]"/> <xsl:variable name="matrixroles" select="$matrix/Matrix/Role[@roleID=$matrix/Matrix/Item/RoleLink/@iRoleID[.. /../RoleLink/@iRoleID=$playerroles/@roleID]]"/> <Matrix> <Role roleID="W"> <PlayerLink player="1"/> <PlayerLink player="3"/> <PlayerLink player="6"/> <PlayerLink player="53"/> </Role> <Role roleID="X"> <PlayerLink player="1"/> <PlayerLink player="3"/> </Role> <Role roleID="Y"> <PlayerLink player="1"/> <PlayerLink player="3"/> <PlayerLink player="51"/> <PlayerLink player="53"/> </Role> <Role roleID="Z"> <PlayerLink player="3"/> <PlayerLink player="53"/> </Role> <Item iID="123"> <RoleLink iRoleID="W"/> <RoleLink iRoleID="X"/> <RoleLink iRoleID="Y"/> </Item> <Item iID="456"> <RoleLink iRoleID="X"/> <RoleLink iRoleID="Y"/> </Item> <Item iID="789"> <RoleLink kgRoleID="Y"/> </Item> </Matrix> Thanks very much, Leona Slepetis lrs@xxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] XLST vs. X#, Kienle, Steven C [IT | Thread | Re: [xsl] simplifying the XSL for a, Joerg Heinicke |
Re: [xsl] XLST vs. X#, Tobias Reif | Date | [xsl] ps: web service, James Fuller |
Month |