Källkoden för /anders.enges/xml/xml_ex2.asp
<!--#include file="../inc/navstuff.asp" -->
<h4>Tema:</h4>
<ul>
   <li>ID, IDREF och IDREFS</li>
</ul>
<p>Nedan är en XML fil som innnehåller relationer. Ett land har en
   huvudstad samt städer. En stad har en location (land), där den finns.
   Detta uttrycks med hjälp av id, idref och idrefs. Läs igenom XML filen
   ordentligt innan du ser på resultatet...</p>
<p>
   <%  show "xml_ex_2.xml" %>
   <%  show "xml_ex_2.xsl" %>
</p>
<p>Lägg märke till konstruktionen <b>id(capital/@capital_ref)/city_name</b>
   som fungerar på följande sätt:</p>
<p>Eftersom vi loopar på nivån <b>geography/country</b> kommer capital
   att betyda <b>geography/country/capital </b>. För denna nod använder
   vi id() metoden för att få mer data. <b>id(capital/@capital_ref)</b>
   kommer att resultera i den city nod som <b>hänvisas till.</b> Denna nod
   har en undernod med namnet <b>city_name</b> och dess värde vill vi ha.</p>
<p>Det fanns bara en huvudstad per land, men flera städer. Om vi använder
   IDREFS skall dessa värden separeras med mellanslag i referensen. Eftersom
   det är fråga om en lista kan vi använda xsl:for-each för
   att loopa genom alla referenser. Raden <b><xsl:for-each select="id(cities/@city_refs)"
   ></b> kommer då att ge som resultat de city noder som relaterast till
   i t.ex. <b><cities city_refs="MAL UME"/> </b></p>
<p>Detta är potent kod! Efter första chocken blir man närmast imponerad
   över hur enkelt det är...<b><br>
   </b></p>
<h4>Kompatibilitet</h4>
<p>Nedan är samma sak, fast med nyare XSL standarden:</p>
<%  showLink "xml_ex_3.xsl" %>
<%  showLink "xml_ex_3.xml" %>
<p>Det är nog en hemsk soppa med de olika standarderna</p>
<!--#include file="../inc/footer.asp" -->