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
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
+ Stylus Studio Technical Forum (14621)
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
- XQuery Help and Discussion (2016)
-> + XQUF usage (3)
-> - xquery rule execution (1)
-> + Loving XQuery (3)
-> + Cross Referencing Country Name... (4)
-> + Creating a Pivot Table with xQ... (2)
-> + Error Please Help (3)
-> - Error Please Help (1)
-> + XPath descendant question (2)
-> + java/lang/OutOfMemoryError Run... (2)
-> + Xquery key value lookup (8)
-> + Improve xQuery Performance (3)
-> + MS SQL Server - Disable order ... (10)
-> + proper use of fn:distinct-valu... (2)
-> + Ignore DTD (7)
-> - Thanks Ivan (1)
-> + Trying to get 2nd value of nod... (5)
-> + Outer joins (4)
-> + Figured Out Issues From Last P... (2)
-> + Best Way To Generate Complex X... (3)
-> + count in xquery (4)
-- [1-20] [21-40] [41-60] Next
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
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>

   
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.