- From: Souri Das <Souripriya.Das@oracle.com>
- Date: Mon, 11 Jan 2010 15:38:08 -0500
- To: Andy Seaborne <andy.seaborne@talis.com>
- CC: public-rdf-dawg@w3.org
Thanks Andy. I have added some notes inline below. -- Souri. Andy Seaborne wrote: > On 11/01/2010 2:42 AM, Souripriya Das wrote: >> My comments for the Property Paths document: >> >> * Section 2: Outstanding Issues >> o [typo] "includeds" => "includes" > > Done (and this section will disappear) > >> o [my opinion regarding the "^" operator] exclude its binary >> version and keep only the unary version > > Noted in the issues section. > >> * Section 3: Path Language >> o [typo] "an path element" => "a path element" > > Done > >> * overall >> o [why not allow variables? is it because it introduces >> complexity?] If we do not allow variables, we lose in >> functionality because then we cannot *find* the (distinct) >> properties connecting two nodes (e.g., via an unknown or >> non-fixed length path). [Note: Specifically, we are just >> asking for the distinct properties that constitute a path. >> We are *not* trying to retrieve the path itself.] >> + Example: {?x (?p)+ ?y}would allow us to find the >> properties (if any) each of which make up a distinct >> path from the source node to the target node. (Note: >> 0-length path may not be very useful in this case.) > > Wouldn't that be a path with the same property (?p) at each path step? > e.g. foaf:knows - so it's not any path from ?x to ?y which is my > reading of the text explaining it. Or (?p)+ means something different > from the "sequence of one or more ?p". > Yes, ?p+ refers to single-property paths. Specifically, I am talking about the case where we do not know the property name at query writing time. For example, in our data, <John> may be connected to <Raj> via a sequence of foaf:knows edges. If we already knew the property to be foaf:knows, we can find <Raj> and probably a few others starting from <John> using SELECT ?y {<John> foaf:knows+ ?y}. But, if we do not know the property and specifically trying to find some target object(s) reachable from <John> via single-property paths, we could write it as: SELECT ?p {<John> ?p+ <Raj>} We could extend it by substituting <Raj> with ?y and then adding some filter conditions to limit ?y. >> + Example: {?x (?p)+/(?q)* ?y . FILTER (?p != ?q)}will >> give us property ?p that make up a single-property >> path between the two nodes, or a property pair (?p, >> ?q) such that a ?p-based path concatenated with a >> ?q-based path connects the two nodes. > > Souri - there was a strawpoll of possible starting points for the > property path work. This included variables in the property position. > > Options: > http://lists.w3.org/Archives/Public/public-rdf-dawg/2009JulSep/0439.html > > Strawpoll results: > http://lists.w3.org/Archives/Public/public-rdf-dawg/2009OctDec/0055.html > > and discussion in email around that time. > > The strawpoll showed most support for not considering variables in > path sat this time. The syntax does not prclude it in the future. > I see that option of allowing variables did not have the best support. :'( >> * Section 5.2: Complex Paths >> o [suggestion] Can we replace the resource, <http://example/>, >> used in the second example, { <http://example/> >> rdf:type/rdfs:subClassOf* ?type }, with foaf:alice or >> something like that. > > foaf: is the namespace of FOAF vocabulary. It would be strange for > individuals (e.g. alice) to be in that namespace. > > I have changed it to <http://example/thing> in case the concern is the > use of http://example/. That was the concern. > > Andy > >> >> Thanks, >> - Souri. >> >> >> ______________________________________________________________________ >> This email has been scanned by the MessageLabs Email Security System. >> For more information please visit http://www.messagelabs.com/email >> ______________________________________________________________________
Received on Monday, 11 January 2010 20:38:27 UTC