W3C home > Mailing lists > Public > public-data-shapes-wg@w3.org > January 2015

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

From: Karen Coyle <kcoyle@kcoyle.net>
Date: Sat, 03 Jan 2015 11:35:05 -0800
Message-ID: <54A84469.2040105@kcoyle.net>
To: public-data-shapes-wg@w3.org
In the email below I readily conceded that rdfs:Resource belongs to the 
RDF context and is specific to the definition given in that context. But 
"resource" is a word that already belongs to a larger populartion than 
RDF standards. When we use the term we must be clear which context we 
mean. We cannot, however, limit our use to the definition given in RDF 
documentation unless we are only specifically referring to that meaning, 
and only speaking to a very narrow cohort.

As I'm sure you're aware, prescriptive linguistics fail outside of 
highly specific environments. Not wanting to be part of a limited 
society, I prefer clarity of context.

Relating back to something that came up between Peter and Arthur, there 
are indeed multiple communities in this discussion. There is also a 
broad audience range. As the Dublin Core community learned during its 
development, adoption of a standard is greatly aided by broadening, not 
narrowing, the potential set of users. I hope we can do the same here.


On 1/2/15 10:36 AM, Peter F. Patel-Schneider wrote:
> Resource is a term defined in several W3C documents.  In particular, RDF
> 1.1 Concepts and Abstract Syntax has a section on Resources and Statements,
> http://www.w3.org/TR/rdf11-concepts/#resources-and-statements, where
> resources are stated to be the things that are denoted by IRIs and
> literals (and blank nodes, too, but this comes later).  Here is one of
> the places where "resource" is defined as the universal category.
> This working group is an RDF working group and is obliged to use words
> like resource in the way they are defined in the RDF specifications,
> unless there is no chance that the use of such words could be considered
> to refer to their RDF meanings.
> rdfs:Resource an IRI that is given a fixed meaning in a section of RDF
> Schema 1.1
> http://www.w3.org/TR/2014/REC-rdf-schema-20140225/#ch_resource.
> rdfs:Resource there defined as the class of everything.  All resources
> are instances of this class.  The definition is made formal in a section
> of RDF 1.1 Semantics
> http://www.w3.org/TR/2014/REC-rdf11-mt-20140225/#rdfs-interpretations.
> This working group is similarly obliged to use IRIs like rdfs:Resource
> in the way they are defined in the RDF specifications.
> It is certainly the case that the RDF meaning of resource is different
> from the RDF meaning of rdfs:Resource.  However, both of these are vital
> parts of RDF, and have meanings in RDF that this working group is
> obliged to defer to.
> peter
> On 12/23/2014 07:47 AM, Karen Coyle wrote:
>> On 12/22/14 7:25 PM, Peter F. Patel-Schneider wrote:
>>> Agreed.  I did not provide any examples concerning problems that such
>>> misconceptions have caused.
>>> How about the recent discussion concerning "resource" in resource shapes
>>> as a proximate example?  How about the difference between "resource" in
>>> RDF and "resource" in several RDF APIs?
>> The difference we've been discussing, as I've understood it, is between
>> rdfs:Resource and "resource". The former is formally defined and one
>> should
>> abide by that definition when using rdfs:Resource. The latter is a
>> general
>> term in English with a less precise meaning, and, AFAIK, anyone can
>> give it a
>> meaning in their own API. There is no reason to assume that it means
>> the same
>> as rdfs:Resource. Nor that the word "thing" means the same as
>> owl:Thing. I
>> admit that I use the terms "resource" and "thing" frequently without
>> intending
>> their RDF meanings; in particular, "resource" is commonly used in
>> libraries
>> and archives to mean "the created resource which we are describing."
>> It might be a good idea to avoid using "resource" in an RDF-related
>> context in
>> a way that might be confused with rdfs:Resource. It depends, as Irene
>> says, on
>> whether users in that context with be confused. I could definitely
>> imagine
>> using "resource" in a user interface for metadata creation, or a user
>> display.
>> My users will be totally unaware of the existence of rdfs:Resource.
>> "Resource
>> shapes" works for me. I'm not comfortable with a re-defining of
>> rdfs:Resource
>> to mean "an IRI or a blank node" because it already has a precise
>> definition
>> that is different from that. I don't know what the use is in the APIs,
>> but
>> it's possible that the use of "resource" does not cause confusion.
>> kc
>>> peter
>>> On 12/22/2014 07:18 PM, Irene Polikoff wrote:
>>>> Peter,
>>>> This is a an abstract theoretical statement not supported by any
>>>> specific real practical examples.
>>>> We have had many years of practice. By "we" I mean software
>>>> professionals. In practice, multiple data models have been in use for
>>>> a long periods of time - for example XML and relational databases to
>>>> name the most popular ones. These models do not make a point to talk
>>>> about the distinction between the data structures and things in the
>>>> world the data represents. Their lack of attention to this distinction
>>>> has not prevented them from being hugely successful and used in pretty
>>>> much every piece of software today.
>>>> Further, I am not aware of any software professional who have ever
>>>> confused the data structures with the things they represent. Every one
>>>> understands clearly and unambiguously that the information space is
>>>> just that - information. A graph with data about Dick Chaney is just
>>>> data, not the person. To my knowledge, no one have ever had a
>>>> misconception about it. Based on the experience to date, the
>>>> probability of anyone having such misconception in the future is
>>>> extremely low.
>>>> I am certain there are challenges in creating a useful standard
>>>> specification, but this one seems to be the least of the issues.
>>>> If you have examples of the real (not a casual colloquial speech)
>>>> confusion between RDF nodes as data and resources in the world as
>>>> things, I'd like to hear about them and learn about the problems they
>>>> have caused.
>>>> Irene
>>>>> On Dec 22, 2014, at 8:31 PM, "Peter F. Patel-Schneider"
>>>>> <pfpschneider@gmail.com> wrote:
>>>>> The danger is that one talks about a node when one means to talk
>>>>> about a resource, or vice versa.  This can be benign, if the
>>>>> misconception either is not important or can be easily fixed, or
>>>>> serious, if the misconception matters and is not easy to fix.
>>>>> When one is writing specifications, the only safe assumption is that
>>>>> misconceptions are matter and are not easy to fix, because one does
>>>>> not know the contexts in which one's terminology will be used.
>>>>> peter
>>>>>> On 12/22/2014 04:59 PM, Irene Polikoff wrote:
>>>>>> So, let's say there is a theory and meta theory and even several
>>>>>> layers of it. There used to be a joke slogan in the OO community,
>>>>>> btw, "Anything you can do, I can do meta". And let's say, these get
>>>>>> conflated.
>>>>>> Who and what will such conflation impact negatively? What systems
>>>>>> and applications get broken? How will it change what people who are
>>>>>> using the standards to build solutions are doing and how they are
>>>>>> putting the technologies to work?
>>>>>> In other words why is this important and what parts are important?
>>>>>> Irene
>>>>>> Sent from my iPhone
>>>>>>> On Dec 22, 2014, at 12:28 PM, "Peter F. Patel-Schneider"
>>>>>>> <pfpschneider@gmail.com> wrote:
>>>>>>> Being the same is a concept that needs clarification here.
>>>>>>> Yes, "2"^^xs:integer is a literal and ex:two is a URI.  These
>>>>>>> cannot be the same in RDF because URIs, blank nodes, literals are
>>>>>>> disjoint.  However, ex:two can be required to denote an integer,
>>>>>>> which is a literal value.
>>>>>>> Yes, there is no atomic name in the metatheory of RDF that stands
>>>>>>> for those nodes in an RDF graph that can be the subject of a triple
>>>>>>> in an RDF graph. But why does there have to be?  One can always say
>>>>>>> "IRI or blank node".
>>>>>>> One could create such an atomic name.  One might use "entity" for
>>>>>>> this purpose.  However, one should *not* use rdf:Entity, as that
>>>>>>> would conflate the RDF theory (where one has names like
>>>>>>> rdf:Property, rdfs:Resource, and xs:Integer) and the RDF metatheory
>>>>>>> (where one has names like resource, RDF graph, IRI, and
>>>>>>> property).   Well, if rdf:Entity was not an IRI, then there might
>>>>>>> not be a conflation, but there would be other problems.
>>>>>>> peter
>>>>>>>> On 12/22/2014 07:49 AM, Irene Polikoff wrote:
>>>>>>>> At some point in the discussion we have agreed not to talk about
>>>>>>>> resources when discussing RDF graphs and, instead, talk about
>>>>>>>> nodes.
>>>>>>>> I am talking about literal nodes.
>>>>>>>> Given the following triples
>>>>>>>> ex:house ex:number "2"^^xs:integer
>>>>>>>> ex:two rdf:type xsd:Integer
>>>>>>>> ex:house ex:number ex:two
>>>>>>>> There will be two different nodes for the number 2. The first one
>>>>>>>> is the literal node. The second one is an IRI node. They will
>>>>>>>> never be the same and the graph represented by the first triple is
>>>>>>>> not the same graph as the graph represented by the two last
>>>>>>>> triples.
>>>>>>>> The fact that ex:two may stand for the "real world" resource that
>>>>>>>> philosophically is the same is irrelevant here as we are talking
>>>>>>>> about data structures and their processing.
>>>>>>>> The vocabulary term that is missing is the one that identifies RDF
>>>>>>>> terms that can be subjects of a triple. In the context of this
>>>>>>>> working group, this is an important concept that needs its own
>>>>>>>> name. I propose rdf:Entity.
>>>>>>>> Irene
>>>>>>>> Sent from my iPhone
>>>>>>>>> On Dec 22, 2014, at 10:10 AM, "Peter F. Patel-Schneider"
>>>>>>>>> <pfpschneider@gmail.com> wrote:
>>>>>>>>> There are a number of intertwined issues here.
>>>>>>>>> Are literal values resources in RDF?  Yes, a literal value (e.g.,
>>>>>>>>> the number 2) is a resource.  This is just abiding by the
>>>>>>>>> principles of resources in the Semantic Web.
>>>>>>>>> Can literal values have property values in RDF?  Yes, a literal
>>>>>>>>> value (e.g., the number 2) can have property values.
>>>>>>>>> Can URIs denote literal values in RDF?  Yes, a URI (e.g., ex:two)
>>>>>>>>> can denote a literal value (e.g., the number 2).  This is just
>>>>>>>>> abiding by the principles of IRIs in the Semantic Web.
>>>>>>>>> Is it possible in RDFS to make a URI to denote a literal value
>>>>>>>>> without causing a contradiction?  Yes, via something like  ex:two
>>>>>>>>> rdf:type xsd:Integer.
>>>>>>>>> Is it possible in RDFS to state that some literal value has a
>>>>>>>>> property value without causing a contradiction?  Yes, via
>>>>>>>>> something like ex:two rdf:type xsd:Integer. ex:two ex:prime
>>>>>>>>> xsd:true.
>>>>>>>>> Is it possible in RDFS to directly state that a particular
>>>>>>>>> literal value has a property value?  No, because literals cannot
>>>>>>>>> be the subject of RDF triples.
>>>>>>>>> Is it possible in RDF to get close to stating that a particular
>>>>>>>>> literal value has a property value?  Yes, you can use reification
>>>>>>>>> as in  _:a rdf:subject 2. _:a rdf:predicate ex:prime. _:a
>>>>>>>>> rdf:object xsd:true.
>>>>>>>>> peter
>>>>>>>>>> On 12/22/2014 06:39 AM, Irene Polikoff wrote:
>>>>>>>>>> RDF specification clearly says that there are 3 types of RDF
>>>>>>>>>> nodes: IRI, blank node and literal. Each has its own
>>>>>>>>>> unique/different characteristics including, for example, that
>>>>>>>>>> literal can only be an object of a triple and blank node can't
>>>>>>>>>> be a predicate of a triple.
>>>>>>>>>> I believe the specification makes it clear that these  three
>>>>>>>>>> node types are disjoint. Thus, ex:two can not be a literal node
>>>>>>>>>> as it is an IRI. I also thought we were discussing here RDF
>>>>>>>>>> nodes, not abstract concepts of literals.
>>>>>>>>>> I remember hearing that there were some discussions in the RDF
>>>>>>>>>> working group about letting literals be subjects, but this
>>>>>>>>>> proposal was rejected, wasn't it?
>>>>>>>>>> Irene
>>>>>>>>>> Sent from my iPhone
>>>>>>>>>>> On Dec 22, 2014, at 8:49 AM, "Peter F. Patel-Schneider"
>>>>>>>>>>> <pfpschneider@gmail.com> wrote:
>>>>>>>>>>>>> On 12/22/2014 01:45 AM, ☮ elf Pavlik ☮ wrote:
>>>>>>>>>>>>> On 12/21/2014 01:38 AM, Peter F. Patel-Schneider wrote:
>>>>>>>>>>>>> In RDF all resources can have property values, even literal
>>>>>>>>>>>>> values.
>>>>>>>>>>>>> peter
>>>>>>>>>>>> Hi Peter :)
>>>>>>>>>>>> Could you please explain it little more and if possible share
>>>>>>>>>>>> links to
>>>>>>>>>>>> relevant references?
>>>>>>>>>>>> Thanks!
>>>>>>>>>>> The original version of RDF, as described in the RDF Model and
>>>>>>>>>>> Syntax Specification
>>>>>>>>>>> http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/, talks about
>>>>>>>>>>> Resources and Literals, but does not indicate directly whether
>>>>>>>>>>> they are disjoint.  However, there is already the idea that
>>>>>>>>>>> anything is a resource and that anything can described by a
>>>>>>>>>>> URI.  See Section 2
>>>>>>>>>>> http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/#basic and
>>>>>>>>>>> Section 5
>>>>>>>>>>> http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/#model for
>>>>>>>>>>> more information.
>>>>>>>>>>> The original version of RDFS,
>>>>>>>>>>> http://www.w3.org/TR/1998/WD-rdf-schema/, which never became a
>>>>>>>>>>> full W3C recommendation, has the initial class hierarchy,
>>>>>>>>>>> including rdfs:Resource, rdfs:Literal, rdfs:Class, and
>>>>>>>>>>> rdf:Property in Figure 2.   In this figure, rdfs:Resource is
>>>>>>>>>>> the universal class, with rdfs:Class, rdf:Property, and
>>>>>>>>>>> rdfs:Literal all as subclasses.  Here is the first direct
>>>>>>>>>>> requirement that literal values are resources.
>>>>>>>>>>> The first formal treatment of RDF is in RDF Semantics
>>>>>>>>>>> http://www.w3.org/TR/2004/REC-rdf-mt-20040210/.  Here
>>>>>>>>>>> interpretations for RDF are first defined, in Section 1.3
>>>>>>>>>>> http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#interp, with the
>>>>>>>>>>> domain of an interpretation being the set of resources and a
>>>>>>>>>>> subset of the resources being literal values, as in the
>>>>>>>>>>> original version of RDFS.  Properties are another subset of the
>>>>>>>>>>> resources, which are linked to their extent, which is a set of
>>>>>>>>>>> pairs over the resources.  There is no requirement here that
>>>>>>>>>>> literals cannot be the first element of a property pair.
>>>>>>>>>>> One might argue that the formal treatment is a misreading of
>>>>>>>>>>> the informal 1999 description of RDF, but the ability for
>>>>>>>>>>> literals to have property values has definitely been in RDF
>>>>>>>>>>> since at least 2004.  This stance is also consistent with the
>>>>>>>>>>> dictum that URIs can identify anything, which includes literal
>>>>>>>>>>> values.
>>>>>>>>>>> For example, one can say in RDF
>>>>>>>>>>> ex:two rdf:type xsd:Integer .
>>>>>>>>>>> ex:two ex:prime xsd:true .
>>>>>>>>>>> Peter F. Patel-Schneider
>>>>>>>>>>> Nuance Communications

Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600
Received on Saturday, 3 January 2015 19:35:16 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:02:09 UTC