webForumDet fria alternativet

XSLT vs. XQuery

4 svar · 508 visningar · startad av grusell

grusellMedlem sedan dec. 20028 inlägg
#1

Jag skulle vara tacksam om någon kunde ge exempel på en liten kodbit i XSLT och därefter samma funktion i XQuery.

Det kan vara hur enkelt som helst, bara någon if sats eller dylikt. Huvudsaken är att jag ser skillnaden.
Har sökt som en galning på webben men inte lyckats hitta något bra exempel.
stort tack

DarrenMedlem sedan dec. 2002789 inlägg
#2

Är själv också intresserad av detta så jag bumpar upp tråden igen.

Aleph_OneMedlem sedan juni 2003372 inlägg
DarrenMedlem sedan dec. 2002789 inlägg
#4

Visst så långt är jag med... Men vad händer sen?

Om jag har följande kod t ex (filen heter custorder.xquery):

   <root>
   {
   for $a in document("customers.xml")//customer
   return
      <customer id="{$a/custno}">
         <name>{$a//firstname/text()}   {$a//lastname/text()}</name>
         { 
           for $p in document("po.xml")//po
           where $a/custno = $p//custno
           return 
           <po>{$p/@id}</po>
         }
      </customer>
   }
   </root>

Koden går in i kundregistret och för varje kund den hittar letar den efter ordernummret i orderregistret. Den nya trädstrukturen som skapas bör se ut så här då:

<root>
    <customer id="0001">
        <name>John Doe</name>
        <po>2003-00001</po>
        <po>2003-00002</po>
    </customer>
    <customer id="0002">
        <name>Jane Doe</name>
        <po>2003-00003</po>
        <po>2003-00004</po>
        <po>2003-00005</po>
        <po>2003-00006</po>
    </customer>
</root>

Problemet är att jag inte vet hur jag ska använda *.xquery filen så att den genererar den nya trädstrukturen... Att bara öppna den i webbläsaren fungerar inte.

DarrenMedlem sedan dec. 2002789 inlägg
#5

Hittade en class som man kan använda med php. Xquery Lite

Fungerar utmärkt efter att den anpassats till PHP 4.3.0+. Frågan är dock om man kan använda xquery utan att använda något 'serverside' språk.

125 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)