Re: Action 369 -- Look at property path tests

Correct me if I'm wrong, but my understanding from Andy's reply is that we are adding constants in the query to the set of subjects/objects in the graph to support this subPropertyOf use case.

If we look at this in the context of entailment regimes, won't properties be virtually added to the set of subjects/objects through rule rdf1?

rdf1      uuu aaa yyy .  =>    aaa rdf:type rdf:Property .

This way, Steve's example works as well.

- Matt

On 1/25/2011 3:46 PM, Steve Harris wrote:
> I'm not sure it's any more central than:
>
> ?p rdfs:subPropertyOf* ?sp .
> :x ?p ?v
>
> and that one wont do what you'd hope, with the current semantics.
>
> - Steve
>
> On 2011-01-25, at 20:36, Andy Seaborne wrote:
>
>> The "?x :p{0} :const" case comes from:
>>
>> data:
>> :x :prop 123 .
>>
>> Query
>> {
>>   ?p rdfs:subPropertyOf* :prop .
>>   :x ?p ?v .
>> }
>>
>> properties aren't nodes (vertices = subject/objects) in the graph.
>>
>> Other than that, we could make { ?x :p{0} "o" } test on graph nodes (vertices), but this one is rather central to the semantic web.
>>
>> 	Andy
>>
>> On 25/01/11 16:53, Matthew Perry wrote:
>>> It seems strange to me to get any results with an empty dataset. I don't
>>> agree that terms from the query should be included in nodes(G). From my
>>> understanding, { ?x ?p "o" } will not match if "o" does not appear in
>>> the dataset, so I don't think { ?x :p{0} "o" } should match.
>>>
>>> - Matt
>>>
>>> On 1/25/2011 11:16 AM, Gregory Williams wrote:
>>>> On Jan 25, 2011, at 9:41 AM, Matthew Perry wrote:
>>>>
>>>>> I have reviewed the property path tests. We need tests for {m,n},
>>>>> {,n}, ? and () for precedence, and I think we need more tests for
>>>>> combinations of property path constructs.
>>>>>
>>>>> I have disagreements with some of the answers given in the current
>>>>> tests.
>>>>>
>>>>> 1) pp15 -- I don't see why we are returning results on an empty dataset.
>>>> pp15 returns results because zero-length property paths bind the path
>>>> endpoints to any subjects or objects in the graph *and* any bound term
>>>> explicitly in the query. So in pp15, ?X :p{0} "o" will bind ?X="o".
>>>> Likewise for ?Y and ?Z. This is part of the evaluation semantics for
>>>> ZeroLengthPath
>>>> (http://www.w3.org/2009/sparql/docs/query-1.1/rq25.xml#sparqlAlgebraEval),
>>>> though maybe it could be made clearer in the description of property
>>>> paths in section 9 (from the evaluation semantics, I take "graph node"
>>>> in section 9 to include terms not necessarily in the dataset but that
>>>> are present in the query).
>>>>
>>>> .greg
>>>>
>>>>
>>>>
>>>>
>>>

Received on Tuesday, 25 January 2011 20:55:33 UTC