- From: Karen Coyle <kcoyle@kcoyle.net>
- Date: Tue, 23 Dec 2014 07:47:51 -0800
- To: public-data-shapes-wg@w3.org
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 Tuesday, 23 December 2014 15:48:22 UTC