473,756 Members | 2,117 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Xpath Query

Hi All

Couldn't find an xpath specifig UG, so I'm posting this here.

I have XML in the following structure:

<Assignments>
<Assignment>
<ID>123</ID>
<Description>Te st Assignment 1</Description>
<DueDate>2006/10/10</DueDate>
<Tasks>
<Task>
<ID>1</ID>
<Description>Ta sk 1</Description>
</Task>
<Task>
<ID>2</ID>
<Description>Ta sk 2</Description>
</Task>
<Task>
<ID>3</ID>
<Description>Ta sk 3</Description>
</Task>
</Tasks>
</Assignment>
<Assignment>
<ID>456</ID>
<Description>Te st Assignment 2</Description>
<DueDate>2006/10/12</DueDate>
<Tasks>
<Task>
<ID>4</ID>
<Description>Ta sk 4</Description>
</Task>
<Task>
<ID>5</ID>
<Description>Ta sk 5</Description>
</Task>
<Task>
<ID>6</ID>
<Description>Ta sk 6</Description>
</Task>
</Tasks>
</Assignment>
<Assignment>
<ID>789</ID>
<Description>Te st Assignment 3</Description>
<DueDate>2006/10/15</DueDate>
</Assignment>
</Assignments>

As you can see, not all Assignment Nodes have a Tasks node. I require
an XPATH query that will return all Assignments that have Tasks, but
the result should only contain the Assignment's ID and the Tasks node.
For example, the above XML should be returned as:

<Assignment>
<ID>123</ID>
<Tasks>
<Task>
<ID>1</ID>
<Description>Ta sk 1</Description>
</Task>
<Task>
<ID>2</ID>
<Description>Ta sk 2</Description>
</Task>
<Task>
<ID>3</ID>
<Description>Ta sk 3</Description>
</Task>
</Tasks>
</Assignment>
<Assignment>
<ID>456</ID>
<Tasks>
<Task>
<ID>4</ID>
<Description>Ta sk 4</Description>
</Task>
<Task>
<ID>5</ID>
<Description>Ta sk 5</Description>
</Task>
<Task>
<ID>6</ID>
<Description>Ta sk 6</Description>
</Task>
</Tasks>
</Assignment>

Thanks.

Sep 21 '06 #1
3 1505
<co***********@ gmail.comwrote in message
news:11******** **************@ i42g2000cwa.goo glegroups.com.. .
Hi All

Couldn't find an xpath specifig UG, so I'm posting this here.

I have XML in the following structure:
....
As you can see, not all Assignment Nodes have a Tasks node. I require
an XPATH query that will return all Assignments that have Tasks, but
the result should only contain the Assignment's ID and the Tasks node.
For example, the above XML should be returned as:

<Assignment>
<ID>123</ID>
<Tasks>
<Task>
<ID>1</ID>
<Description>Ta sk 1</Description>
</Task>
<Task>
<ID>2</ID>
<Description>Ta sk 2</Description>
</Task>
<Task>
<ID>3</ID>
<Description>Ta sk 3</Description>
</Task>
</Tasks>
</Assignment>
I think that it isn't an XPath query you need, but rather an XSL
transformation. This transformation would be driven by an XPath expression
like //Assignment[Tasks].

John
Sep 21 '06 #2

John Saunders wrote:
>
I think that it isn't an XPath query you need, but rather an XSL
transformation. This transformation would be driven by an XPath expression
like //Assignment[Tasks].

John
Hi John, thanks for the reply.

I really was hoping to do this with one XPath expression.
//Assignment[Tasks] is halfway there as it only returns Assignments
that contain Tasks, but it also brings back the entire Assignment Node,
and I only want the ID and the Tasks Node.

Any ideas?

Sep 21 '06 #3


co***********@g mail.com wrote:
I really was hoping to do this with one XPath expression.
//Assignment[Tasks] is halfway there as it only returns Assignments
that contain Tasks, but it also brings back the entire Assignment Node,
and I only want the ID and the Tasks Node.
XPath does not change the structure of the of the original document, you
need a stylesheet to do that.
What you can do with XPath is select the Assignment elements you are
looking for with one expression, then use relative XPath expressions to
select the child nodes you are looking for.

--

Martin Honnen --- MVP XML
http://JavaScript.FAQTs.com/
Sep 21 '06 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
2589
by: Joshua Beall | last post by:
Hi All, I have a task that should be very simple but I'm running into trouble. All I want to do is query a document using XPath, and save the resulting XML in a string. Here's that I am trying (PHP5): // $xml has the entire XML document in it; I included it for reference at the end of the document $dom = new DOMDocument(); $dom->loadXML($xml);
6
5983
by: 0wl | last post by:
Hi, I am trying to get the value of child from xmlstr = """<p:root xmlns:p="http://tempuri.org/string"><p:child DataType="String">Hellpppp</p:child></p:root>""" using doc=parseString(xmlstr) nodeList = xml.xpath.Evaluate("/p:root/p:child/text()", doc)
8
7583
by: Terry P | last post by:
Are there any tools (java classes, tag libraries) which can translate xpath statements into a SQL query? Given an xpath query which has a predicate that filters node values or attributes, I want help constructing the Where clause of a SQL statement that will mirror the expressions and functions contained in the predicate. Such a tool may require an XML to DB mapping or it would need to make assumptions about the structure of the...
3
1836
by: gfrommer | last post by:
Hello Everyone, I'm writing a server in java, and I want the clients to pass me an XPath query. I want the XPath queries to be in a specific format though, I'm pretty sure it's valid but I want your help. We have several -top level- documents that the user is allowed returned to them from the query. We don't want them grabbing subchunks of the XML without that being encased in one of the allowed top documents. For example, "Person" is...
7
5496
by: Ot | last post by:
I posted this to the wrong group. It went to m.p.dotnet.languages.vb. Ooops. -------------------------------------------------------------------- I have this tiny problem. I have learned that an xpath expression can be bounded by either single or double quotation marks. But sometimes I want to search for a title containing both a single and double quote. Any way to do this?
10
2287
by: Michael C# | last post by:
OK, here's the deal. I have a small XML file that represents a small database table. I load it into a System.XML.XMLDocument. So far so good. I run an XPath query against it to retrieve all the field names. Everything there works fine. Here's my XML Document: <?xml version="1.0" standalone="yes" ?> <DataSet1 xmlns="http://www.tempuri.org/DataSet1.xsd"> <tblItem>
5
7932
by: Gnic | last post by:
Hi , I have an XmlDocument instance, I want to find a node in the xml, but I don't know it's path until runtime, for example <aaa> <bbb name="x"/> <aaa attr="y"> <ccc>sometext</ccc> </aaa>
6
4938
by: dotnetnoob | last post by:
i would like to know how i can build xpath expression dynamiclly. let's say i have a following xml file: <EventEnrollment InstanceNumber = "675"> <EventSource> <ObjectReference ObjectKey="xxxxx"> .. .. .. <EventEnrollment InstanceNumber = "676">
3
4980
by: Jason Mobarak | last post by:
Hello -- I'm attempting to get a handle on how to do xpath queries with System.Xml -- so far the biggest hurdle has been how to deal with a default namespace. If I use the test xml: <?xml version="1.0" encoding="utf-8" ?> <thing xmlns="urn:thing-schema-v1"> <foo>foo thing</foo> <bar>bar thing</bar>
2
1556
by: =?Utf-8?B?RGlmZmlkZW50?= | last post by:
Hello All, I am trying to construct an XPath query against an XML document, for a requirement that I have. Below is the XML fragment: <SUBMISSIONS> <SUBMISSION YEAR="2004"> <MONTH NAME="JAN">10</MONTH> <MONTH NAME="FEB">02</MONTH>
0
9462
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9287
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10046
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8723
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6542
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5155
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5318
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3817
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2677
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.