 Källkoden för /anders.enges/xml/xml_ex2.asp
 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" -->