เพิ่มองค์ประกอบ XQuery และแอตทริบิวต์

เอกสารตัวอย่าง XML

เราจะใช้เอกสาร "books.xml" ในตัวอย่างด้านล่างนี้ (และเอกสาร XML ที่ใช้ในบทที่ผ่านมา):

ตรวจสอบเอกสาร "books.xml" ในเว็บเบราวเซอร์ของคุณ

เพิ่มองค์ประกอบและอัตริบิวต์ในผลลัพธ์

เหมือนที่เห็นได้ในช่วงที่ผ่านมา เราสามารถอ้างอิงองค์ประกอบและอัตริบิวต์ในเอกสารหลักในผลลัพธ์:

for $x in doc("books.xml")/bookstore/book/title
order by $x
return $x

XQuery รายงานที่แสดงด้านล่างนี้จะอ้างอิงองค์ประกอบ title และอัตริบิวต์ lang ในแบบดังนี้:

<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>

รูปแบบที่ XQuery รายงานที่แสดงด้านล่างนี้เอาความหมายขององค์ประกอบ title และอัตрибิวต์ lang ในแบบที่เหมือนกันกับที่ถูกอธิบายในเอกสารหลัก:

ตอนนี้ เราจะเพิ่มองค์ประกอบและรูปแบบของเราเองลงในผลลัพธ์!

เพิ่มองค์ประกอบ HTML และข้อความ

ตอนนี้ เราจะเพิ่มองค์ประกอบ HTML ลงในผลลัพธ์. เราจะจัดการผลลัพธ์ลงในตาราง HTML:

<html>
<body>
<h1>Bookstore</h1>
<ul>
{
for $x in doc("books.xml")/bookstore/book
order by $x/title
return <li>{data($x/title)}. หมวด: {data($x/@category)}</li>
}
</ul>
</body>
</html>

XQuery รายงานที่แสดงด้านล่างนี้จะถูกสร้างโดย XQuery ตัวนี้:

<html>
<body>
<h1>Bookstore</h1>
<ul>
<li>ประเทศอิตาลีทุกวัน. หมวด: COOKING</li>
<li>Harry Potter. Category: CHILDREN</li>
<li>Learning XML. Category: WEB</li>
<li>XQuery Kick Start. Category: WEB</li>
</ul>
</body>
</html>

เพิ่มคุณสมบัติให้กับส่วนประกอบ HTML

เราจะใช้คุณสมบัติ category แปลงเป็นคุณสมบัติ class ของรายการ HTML

<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>

ข้อความที่มีขึ้นมาจากแสดงที่รูปแบบ XQuery สามารถใช้เพื่อสร้างผลลัพธ์ดังนี้

<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>