J'analyse un document à l'aide de XSLT. Dans le XSLT, je charge un document de référence à l'aide de la fonction document(), et je peux accéder aux éléments des deux documents. Le document source et le document de référence ont tous deux un attribut appelé nom. Comment puis-je comparer l'un à l'autre ? J'ai contourné ce problème en déclarant une variable, mais je préférerais le faire sans si possible. Dans mon esprit, je dois mettre des espaces de noms autour des choses, mais je n'ai aucune idée de la façon de le faire.
document source :
<?xml version="1.0" encoding="UTF-8"?>
<SoccerMatch revision="21" id="2849180" date="20080405" scheduledStart="1245" venue="Emirates Stadium" status="Result" comment="" league="Friendly Match" attendance="60111">
<stuffhere>stuff</stuffhere>
<stuffhere>stuff</stuffhere>
<stuffhere>stuff</stuffhere>
<stuffhere>stuff</stuffhere>
<stuffhere>stuff</stuffhere>
</SoccerMatch>
document de référence (comp.xml) :
<?xml version="1.0" encoding="utf-8"?>
<competitions>
<competition id="100" league="Barclays Premier League"/>
<competition id="101" league="The Coca-Cola Football League Championship"/>
<competition id="101" league="The Coca-Cola Football League Championship Play-Offs Semi-Final"/>
<competition id="101" league="The Coca-Cola Football League Championship Play-Offs Final"/>
<competition id="102" league="Coca-Cola Football League One"/>
<competition id="102" league="Coca-Cola Football League One Play-Offs Semi-Final"/>
<competition id="102" league="Coca-Cola Football League One Play-Offs Final"/>
<competition id="103" league="Coca-Cola Football League Two"/>
<competition id="103" league="Coca-Cola Football League Two Play-Offs Semi-Final"/>
<competition id="103" league="Coca-Cola Football League Two Play-Offs Final"/>
<competition id="104" league="Blue Square Premier"/>
<competition id="104" league="Blue Square Premier Play-Offs Semi-Final"/>
<competition id="104" league="Blue Square Premier Final"/>
<competition id="105" league="Nationwide Championship Shield"/>
<competition id="120" league="Clydesdale Bank Premier League"/>
<competition id="121" league="The Irn-Bru Scottish Football League Championship First Division"/>
<competition id="121" league="The Irn-Bru Scottish Football League Championship First Division Play-Offs Semi-Final"/>
<competition id="121" league="The Irn-Bru Scottish Football League Championship First Division Play-Offs Final"/>
<competition id="122" league="The Irn-Bru Scottish Football League Championship Second Division"/>
<competition id="122" league="The Irn-Bru Scottish Football League Championship Second Division Play-Offs Semi-Final"/>
<competition id="122" league="The Irn-Bru Scottish Football League Championship Second Division Play-Offs Final"/>
<competition id="123" league="The Irn-Bru Scottish Football League Championship Third Division"/>
</competitions>
XSLT
<xsl:template match="/SoccerMatch">
<xmlfeed>
<payload payload_class="mobile_football_match_details" payload_name="Payload">
<xsl:variable name="compId" select="document('comp.xml')/competitions/competition[@league=@league]/@id" />