Re: Terminology: How to call "IRI or blank node"?

On 12/20/14 2:48 PM, Holger Knublauch wrote:
>
> On 12/21/14, 1:12 AM, Peter F. Patel-Schneider wrote:
>>
>> It appears that you are asking for the class whose instances are all
>> resources excluding literal values.  The expressive power required for
>> this class goes well beyond the bounds of RDFS.
>
> This is quite surprising... to have a language that includes rdfs:range
> but no mechanism to say that all values of a property need to be nodes
> that can have further properties ("objects" in OO speak). This concept
> is fundamental, because it includes everything that can be a subject,
> i.e. have properties of their own.
>
>>
>> This new class cannot be the superclass of all classes.  It is not a
>> superclass of the class that is the fixed meaning of rdfs:Resource, of
>> course, and it is also not a superclass of class that is the fixed
>> meaning of rdfs:Literal or of any of the datatype classes.  Making
>> this class a superclass of all classes would break RDFS.
>
> I think we need to break RDFS anyway, don't we? RDFS is fundamentally
> not suited for closed world constraint checking, see the semantics of
> rdfs:domain and range, the lack of an enforceable identification
> mechanism for blank nodes and other weird design decisions that were
> made with good intentions, but different use cases in mind.
>
>>
>> It would also not be the case that the meaning of all IRIs and blank
>> nodes would belong to this new classes.  In RDF the meaning of an IRI
>> or a blank node can be a literal value.
>
> Based on my current understanding, I think we should simply make the
> following pragmatic assumptions:
>
> - if a property has no valueType/range, then it can have IRIs, bnodes or
> literals
> - if a property has valueType=rdfs:Resource then it can have IRIs and
> bnodes
> - if a property has valueType=rdfs:Literal then it can have a literal of
> any datatype.

I don't think we can overload (underload?) rdfs:Resource in this way, 
since it already has (and has had for some time) a different meaning. 
Eric suggested calling it "nonliteral" or some variation thereon. Is it 
possible to develop an RDF representation of "nonliteral" (or its 
converse, non-node) that can be included in the validation vocabulary?

kc


>
> This is how it's currently implemented in the systems that I know of
> (and certainly the tools that I helped developed, and I went through the
> code for form generation in many iterations). We just cannot introduce
> another named class for "IRI or bnode" because it breaks the superclass
> relationships of all existing ontologies. And I want to continue to be
> able to use something like
>
>      ?type rdfs:subClassOf* ?valueType .
>      ?instance rdf:type ?type .
>
> to find all possible values of a given value type.
>
> Anything else seems just not practical given that the foundations of
> RDFS are what they are, whether we like them or not.
>
> Having said this, I am of course OK with avoiding the term "Resource" in
> the prose of the specs - rdfs:Resource as above is just used as a URI
> even if it does not fully align with the philosophically inspired
> meaning of "Resource" in the RDF specs.
>
> Holger
>
>
>

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600

Received on Sunday, 21 December 2014 15:57:36 UTC