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

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

From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
Date: Sat, 03 Jan 2015 19:50:24 -0800
Message-ID: <54A8B880.1050505@gmail.com>
To: kcoyle@kcoyle.net, public-data-shapes-wg@w3.org
There may be multiple communities in this discussion, but the working group 
exists in the W3C RDF space.  I thus feel very strongly that the working group 
must not produce documents that use core W3C and RDF terminology in ways 
counter to their meaning within W3C and RDF.


PS: By the way, I don't particularly like this particular terminology.

On 01/03/2015 11:35 AM, Karen Coyle wrote:
> 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.
> kc
> 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
Received on Sunday, 4 January 2015 03:50:55 UTC

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