2010-03-30 6 views

risposta

21

Utilizzare un computed element constructor per generare un elemento con il valore lower-case delle text nodi per ciascuno degli elementi td.

Un costruttore elemento calcolato crea un nodo elemento, consentendo sia il nome e il contenuto del nodo da calcolare.

Ai fini di questo esempio, supponendo che il vostro XML è in un file chiamato foo.xml, si potrebbe fare qualcosa di simile:

<doc> 
{ 
for $name in doc('foo.xml')//td/text() 
return element {lower-case($name)} {''} 
} 
</doc> 

per produrre questo:

<?xml version="1.0" encoding="UTF-8"?> 
<doc> 
<userid/> 
<name/> 
<rating/> 
</doc> 

È inoltre possibile valutare la funzione lower-case() come parte dell'espressione XPATH anziché il costruttore di elementi, li ke questo:

<doc> 
{ 
for $name in doc('foo.xml')//td/text()/lower-case(.) 
return element {$name} {''} 
} 
</doc> 
0
return <doc>{ 
for $d in $doc/element()/text() 
return element{fn:lower-case($d)} {}}</doc> 

dove $ doc memorizza il Xml.