You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xindice-users@xml.apache.org by "Brent M. Clements" <bc...@rice.edu> on 2003/12/01 21:40:04 UTC
xpath count function
Hi,
I know this may be the wrong mailing list(is there an xpath mailing
list?) for this question but here goes.
I am trying to return the number of records from a query using the xpath
count function, but it's not returning any output.
Let me start from the beginning:
I run
xindice xpath -c /db/morpheus -q "//*/nodegroup[@ppn='1']"
and I get a large amount of xml data returned.
I'd like to count how many records are return.
I tried using
xindice xpath -c /db/morpheus -q "count(//*/nodegroup[@ppn='1'])"
but that doesn't do anything except bring me back to the command prompt.
Any ideas guys?
Thanks,
Brent
Brent Clements
Linux Technology Specialist
Information Technology
Rice University
xindice url xpath question
Posted by "Brent M. Clements" <bc...@rice.edu>.
Is it possible to run an xpath statement from using a url?
IE something like
http://localhost:4080/db/myxmldatabase/xpath(blah blah blah)
Or something to that effect? if so, how does one do that?
Thanks,
Brent
Brent Clements
Linux Technology Specialist
Information Technology
Rice University
On Mon, 1 Dec 2003, Brent M. Clements wrote:
> Hi,
> I know this may be the wrong mailing list(is there an xpath mailing
> list?) for this question but here goes.
>
> I am trying to return the number of records from a query using the xpath
> count function, but it's not returning any output.
>
> Let me start from the beginning:
>
> I run
> xindice xpath -c /db/morpheus -q "//*/nodegroup[@ppn='1']"
>
> and I get a large amount of xml data returned.
>
> I'd like to count how many records are return.
>
> I tried using
>
> xindice xpath -c /db/morpheus -q "count(//*/nodegroup[@ppn='1'])"
>
> but that doesn't do anything except bring me back to the command prompt.
>
> Any ideas guys?
>
> Thanks,
> Brent
>
> Brent Clements
> Linux Technology Specialist
> Information Technology
> Rice University
>
>
Re: xpath count function
Posted by Jeff Greif <jg...@alumni.princeton.edu>.
When last I looked, xindice's xpath query mechanism could only return a set
of documents when invoked from the command line -- one document for each
node in the nodeset (xpath terminology) returned by the query. Your count()
query is not returning a nodeset at all, but a number.
If you are just looking for a *crude* little utility that will help you
determine what your queries are returning, rather than something to hook
into a production system, you could do something like
xindice xpath ... -q "//*/nodegroup[@ppn='1']" | grep '<nodegroup>' | wc
if you know that nodegroups never nest inside one another.
Alternatively, you could grep for some attribute appearing only in the root
node of each document (such as the special namespace attribute that xindice
adds to each document).
Jeff
----- Original Message -----
From: "Brent M. Clements" <bc...@rice.edu>
To: <xi...@xml.apache.org>
Sent: Monday, December 01, 2003 12:40 PM
Subject: xpath count function
> Hi,
> I know this may be the wrong mailing list(is there an xpath mailing
> list?) for this question but here goes.
>
> I am trying to return the number of records from a query using the xpath
> count function, but it's not returning any output.
>
> Let me start from the beginning:
>
> I run
> xindice xpath -c /db/morpheus -q "//*/nodegroup[@ppn='1']"
>
> and I get a large amount of xml data returned.
>
> I'd like to count how many records are return.
>
> I tried using
>
> xindice xpath -c /db/morpheus -q "count(//*/nodegroup[@ppn='1'])"
>
> but that doesn't do anything except bring me back to the command prompt.
>
> Any ideas guys?
>
> Thanks,
> Brent
>
> Brent Clements
> Linux Technology Specialist
> Information Technology
> Rice University
>
>
Re: xpath count function: this is a solution
Posted by Majirus FANSI <ma...@yahoo.fr>.
Hi,
you must right your xpath count function like this:
xindice xpath -c /db/morpheus -q
count("//*/nodegroup[@appn='1']")
not
xindice xpath -c /db/morpheus -q
"count(//*/nodegroup[@ppn='1'])"
because xindice need to avaluate a nodeset between
double quotes(""), you'll know remember that the
evaluated expression inside these double quotes must
be a nodeset not a number,
best regards,
Majirus
trainee student
http://csysec.univ-pau.fr
--- "Brent M. Clements" <bc...@rice.edu> a écrit : >
Hi,
> I know this may be the wrong mailing list(is there
> an xpath mailing
> list?) for this question but here goes.
>
> I am trying to return the number of records from a
> query using the xpath
> count function, but it's not returning any output.
>
> Let me start from the beginning:
>
> I run
> xindice xpath -c /db/morpheus -q
> "//*/nodegroup[@ppn='1']"
>
> and I get a large amount of xml data returned.
>
> I'd like to count how many records are return.
>
> I tried using
>
> xindice xpath -c /db/morpheus -q
> "count(//*/nodegroup[@ppn='1'])"
>
> but that doesn't do anything except bring me back to
> the command prompt.
>
> Any ideas guys?
>
> Thanks,
> Brent
>
> Brent Clements
> Linux Technology Specialist
> Information Technology
> Rice University
>
___________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com