xml - functions - ¿Cómo seleccionar el valor de atributo de un nodo en XQuery?
xquery online (2)
Debe usar los datos para elegir el valor de atributo:
for $c in /company/customers/customer
return data($c/@cno)
En el siguiente XML:
<company>
<customers>
<customer cno="2222">
<cname>Charles</cname>
<street>123 Main St.</street>
<city>Wichita</city>
<zip>67226</zip>
<phone>316-636-5555</phone>
</customer>
<customer cno="1000">
<cname>Bismita</cname>
<street>Ashford Dunwoody</street>
<city>Wichita</city>
<zip>67226-1555</zip>
<phone>000-000-0000</phone>
</customer>
</customers>
</company>
Necesito obtener el no del cliente que es un atributo. En XPath, sé que es /company/customers/customer/@cno
, en XQuery lo he intentado a continuación pero no funcionó para mí:
for $c in /company/customers/customer
return $c/@cno
También puede utilizar la string
para obtener el valor del atributo:
for $c in /company/customers/customer
return $c/@cno/string()