- From: Howard Katz <howardk@fatdog.com>
- Date: Tue, 20 Jul 2004 10:19:31 -0700
- To: "Rob Shearer" <Rob.Shearer@networkinference.com>, "Steve Harris" <S.W.Harris@ecs.soton.ac.uk>, <public-rdf-dawg@w3.org>
Steve, Just to clarify Rob's example a bit (you don't mind, do you, Rob?): 1) Rob's using an XML document with one or more <Person> elements in it. It looks like this could be any sort of XML document, not necessarily an RDF/XML serialization. (Is that correct, Rob?) 1) His use of "doc(http://foo/people.xml)/Person" implies a single document with a single <Person> as the root element. Since that's not very useful, it's more likely he meant to say: doc( http://foo/people.xml" )//Person which implies that the document has mulitple <Person> elements in it, the more likely scenario; the descendant operator (//) then dereferences off the single document node returned by doc() and grabs all its <Person> elements at one fell swoop. 2) If it's straightforward XML and didn't have any xmlns: namespace declaration against <Person>, you don't need a namespace prefix to retrieve it via XPath. 3) Whether the step operator is "/" or "//", neither usage implies an rdf:type. Rob's working in XML and he's getting XML <Person> elements back, not RDF. Rob: Just to clarify something, when you say: asserted( $member/URI, ...#worksFor, ...#NetworkInference ) is asserted() an external function (ie, one that's allowed to manipulate *anything*, not necessarily just items that are in the XQuery data model) that has access to an actual RDF graph or graphs and is doing "real" RDF querying against their triples directly? That would make sense to me if so. Howard > -----Original Message----- > From: public-rdf-dawg-request@w3.org > [mailto:public-rdf-dawg-request@w3.org]On Behalf Of Rob Shearer > Sent: Tuesday, July 20, 2004 9:18 AM > To: Steve Harris; public-rdf-dawg@w3.org > Subject: RE: Proposed XQuery requirement and/or objective > > > > > > for $member in doc(http://foo/people.xml)/Person > > > where asserted($member/URI, http://foo#worksFor, > > http://foo#NetworkInference) > > > return $member/name > > > > Wouldn't "Person" in the first line require some > > namespace/prefix? Also, I > > dont quite understand why the / after doc() implies the > > rdf:type part of the > > ($memeber rdf:type foo:Person) > > triple. Is it just shorthand? if so, why "/"? > > No; this example was meant to demonstrate use of XML along with RDF > stuff, so the XPath expression was just selecting all the top-level > <Person> elements in some XML doc in the conventional way. Everything > but the asserted() call is vanilla XQuery. >
Received on Tuesday, 20 July 2004 13:18:11 UTC