Re: rdfs:Graph ? comment on http://www.w3.org/TR/rdf11-concepts/#section-dataset and issue 35

Some in line responses ...
On Sep 16, 2013, at 6:37 PM, Sandro Hawke <sandro@w3.org> wrote:

> [moved to www-archive and cc Pat for now]
> 
> 
>> So, we could scrub the idea of having a class, and instead define a property.
>> 
>> An alternative proposed modification, which clarifies my desired NO to your entailment
>> 
> 
> This is a magic property, right?   It's not a normal property in the RDF semantics, something in the domain of IEXT, because if it were it would have extensional semantics….

No - the property does have extensional semantics, and so the relationship between the name and the graph becomes intensional related by the "names graph" property.


> 
>> [[
>> 3.7 The rdf:namesGraph property
>> 
>> This section defines a vocabulary item rdf:namesGraph in addition to those in [RDF-SCHEMA].
>> 
>> rdf:namesGraph is an instance of rdf:Property that is used to state that a resource is a name for a graph.
>> 
>> A triple of the form:
>> 
>> R rdf:namesGraph G
>> 
>> states that G is an RDF graph and R is a name for the graph G.
> 
> In normal RDF semantics, the property has no access to the term R, just to I(R).    The truth of triple is unchanged if you replace the subject with a different subject denoting the some thing.    The truth of :a :b :c is the same as the truth of :a2 :b :c if I(:a) = I(:a2).
> 
> But rdf:namesGraph is special -- it somehow reaches around I and IEXT to get directly at the subject term itself….?

No - this is just a perfectly normal property we are actually talking about ( I( R ) , I(G) ) in IEXT(I(rdf:namesGraph)). The form of the text is copied exactly form RDF Vocabulary: there have not been comments on that document suggesting that the form contradicts the semantics document, so I felt it safe and consistent to stick with that form.

> 
>> If R is an IRI, and that IRI is used to name a graph in a dataset, then within that dataset the resource G SHOULD correspond to the named graph.
>> 
> 
> I don't understand why you keep using SHOULD.    I don't see semantics as the kind of place for SHOULDs.

I am not suggesting any change to the semantics document.
I would be quite happy with a MUST, but a SHOULD is fine if other people wish to do things different, or are already doing things different.

I think a MUST is definitely arguable - if you use an IRI twice in the same document (or dataset) then it seems to me to be Web 101 that you are talking about the same thing in the two places.
However in the formal semantics unless we are wanting to define genuinely magic properties about the math to do with graphs, then we do not need a MUST. (e.g. rdf:isIsomorphicTo, e;g; rdf:tripleCount) are properties that we could choose to define, but it does not really seem to be using RDF for its core mission of describing resources.

>   
>> The rdfs:domain of rdf:namesGraph is rdfs:Resource. No rdfs:range is specified.
>> ]]
>> 
>> 
>> ===
>> 
>> With this my particular use case to add metadata about the graph as an intensional as opposed to an extensional object would be addressed as follows.
>> 
>>     PREFIX : <http://example.org/#>
>>     PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>     
>>     GRAPH :g1 { :g1 rdf:namesGraph _:g ; rdfs:comment "An example graph" }
> 
> 
> 
> But, but ... in that case you don't need rdf:namesGraph at all.   Since you're not actually using _:g, just put your properties on :gn1 and you're fine.

I am only using rdf:namesGraph to convey the semantic intent that the subject really is a graph name, since the working group resists making that a general rule (which I see as broken: if you use the same IRI twice in the same document then it seems to me to be Web 101 that you are talking about the same thing in the two places) but still

> 
> Does that not do what you want?   (True there's no semantic connection to the triples, but why do you need one?   Since you're not using _:g, I claim that means you don't need the rdf:namesGraph triple at all.)

I shouldn't need rdf:namesGraph at all - but the working group appears strangely intent on the idea that you can use a URI that identifies a person to name a graph that it does not identify. To me that is perverse: because you end up with the same IRI being used for multiple purposes in the same document. It then sabotages my goal, to use the name of the graph to describe the (intent about the) graph

I would be more than happy not to have the property and to have normative text with SHOULD force that says that a graph name identifies the graph.

Jeremy

Received on Tuesday, 17 September 2013 16:36:23 UTC