XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Neno ManSubject: Help to write Xquery
Author: Neno Man
Date: 30 Apr 2011 09:08 AM
I would like to write queries over an XML data set using the XQuery language virsion 1.0 or 2.0
and generate single XML output file for the following xml files :



authors.xml

<authors>
<author>
<name>AMADEO, Giovanni Antonio</name>
<born-died>b. ca. 1447, Pavia, d. 1522, Milano</born-died>
<nationality>Italian</nationality>
<biography> Giovanni Antonio Amadeo was an Italian early Renaissance sculptor, architect, and engineer..</biography>
</author>
</authors>

---------------------------------
artworks.xml

<artworks>
<artwork>
<title> Fade of the church </title>
<author> AMADEO, Giovanni Antonio </author>
<date>1473</date>
<technique> Marble <technique>
<location> Certosa, Pavia </location>
<form> architecture </form>
<type>religious</type>
</artwork>
</artworks>

----------------------------------

Sample for the expected output :

output.xml

<authors>
<author>
<name>AMADEO, Giovanni Antonio</name>
<born-died>b. ca. 1447, Pavia, d. 1522, Milano</born-died>
<nationality>Italian</nationality>
<biography>Giovanni Antonio Amadeo was an Italian early Renaissance sculptor, architect, and engineer..</biography>
<artworks form="architecture">
<artwork date="1473">
<title>Fade of the church</title>
<technique>Marble</technique>
<location>Certosa, Pavia</location>
</artwork>
</artworks>
</authors>

I would like to merge these two XML documents and create a new XML file, in which the following information should be stored for each author: name, born-died, nationality,biography, and all artworks. The artworks are grouped by form and then sorted on date. For each artwork, title, technique, and location are stored.

thank you .

Posttop
Ivan PedruzziSubject: Help to write Xquery
Author: Ivan Pedruzzi
Date: 21 Jul 2011 01:07 AM
See if the following code helps

declare variable $artworks := doc('artworks.xml');
<authors>{
for $a in /authors/author
return(
$a/*
,
for $w in $artworks/artworks/artwork
where $w/author = $a/name
return $w/*[local-name() != 'author']
)
}</authors>

 
Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.