El mejor tutorial de XQuery Adición de elementos y atributos en 2024. En este tutorial podrás aprender
documentos de instancia XML,La adición de elementos y atributos a los resultados,
XQuery Adición de elementos y atributos
documentos de instancia XML
En el siguiente ejemplo vamos a seguir utilizando este documento "books.xml" (mismo archivo XML y la sección se utiliza más arriba).
Ver archivo "books.xml" en su navegador .
La adición de elementos y atributos a los resultados
Como se ha visto en la sección anterior, podemos citar los elementos de archivo en los resultados de entrada y atributos:
for $x in doc("books.xml")/bookstore/book/title
order by $x
return $x
expresión XQuery elemento referencias título y los atributos lang en el resultado, de esta manera:
<title lang="en">Everyday Italian</title>
<title lang="en">Harry Potter</title>
<title lang="en">Learning XML</title>
<title lang="en">XQuery Kick Start</title>
Por encima de expresión XQuery devuelve los elementos del título de la forma y de la misma manera en el documento de entrada se describen en ellos.
Ahora queremos añadir los resultados de nuestros propios elementos y atributos!
Añadir elementos HTML y texto
Ahora, queremos añadir el elemento de resultados HTML. Nos dará como resultado una lista HTML:
<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li>{data($x/title)}. Category: {data($x/@category)}</li>
}
</ul>
</body>
</html>
expresión XQuery anterior generará los siguientes resultados:
<html>
<body>
<h1>Bookstore</h1>
<ul>
<li>Everyday Italian. Category: COOKING</li>
<li>Harry Potter. Category: CHILDREN</li>
<li>Learning XML. Category: WEB</li>
<li>XQuery Kick Start. Category: WEB</li>
</ul>
</body>
</html>
Adición de atributos a los elementos HTML
A continuación, hay que atribuir la categoría como una lista HTML de atributos de clase de uso:
<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li class="{data($x/@category)}">{data($x/title)}</li>
}
</ul>
</body>
</html>
expresión XQuery anterior puede generar los siguientes resultados:
<html>
<body>
<h1>Bookstore</h1>
<ul>
<li class="COOKING">Everyday Italian</li>
<li class="CHILDREN">Harry Potter</li>
<li class="WEB">Learning XML</li>
<li class="WEB">XQuery Kick Start</li>
</ul>
</body>
</html>