- From: Holger Knublauch <holger@topquadrant.com>
- Date: Thu, 18 Dec 2014 10:10:41 +1000
- To: public-data-shapes-wg@w3.org
- Message-ID: <54921B81.6060104@topquadrant.com>
Yes I agree we need to be consistent with how other W3C specs are
written, and the term "Resource" is unfortunately overloaded so it's
best avoided.
When I have been using these terms here, I was considering them as
technical entities as used for example in the Jena API, which uses the
following class hierarchy
RDFNode
Literal
Resource
Property
From this angle, a node is the generalization of literals and
resources. Whether the resources also happen to have a corresponding
entity in the real world is off-topic from this POV. In this
interpretation the term "node" means "either literal or resource" and
the term "resource" excludes literals.
I am just saying this because I believe many other people consuming our
documents will share the same interpretation. I see that the official
specs use the term "Resource" to be the graph representation of either a
literal or IRI, but not a blank node:
http://www.w3.org/TR/rdf11-concepts/#resources-and-statements
which is indeed a very different interpretation than what for example
the Jena or Sesame APIs do.
So moving forward, I believe the equivalent terms for the API
interpretation would be
RDFNode (Jena) = node
Literal = literal
Blank node = blank node
URI Resource = IRI (http://www.w3.org/TR/rdf11-concepts/#section-IRIs)
Resource = DON'T USE FOR NODES
Is there an established term for "IRI or blank node"?
According to this, I believe the wiki pages are full of incorrect
(imprecise) usages of the term Resource, and we can gradually fix that,
but it's more important for everyone to be aware that for official specs
we need to avoid the term "resource" unless we talk about the abstract
concept in the world.
(Peter please correct me if I am wrong on my summary).
What puzzles me though is why is the root class in the RDFS meta-model
called rdfs:Resource and not rdfs:Node?
I also notice that there are borderline usages of the term "resource"
even in the SPARQL spec, e.g.
http://www.w3.org/TR/sparql11-query/#propertypaths
"Property paths allow for more concise expressions for some SPARQL basic
graph patterns and they also add the ability to match connectivity of
two resources by an arbitrary length path."
where they should have used "of two nodes" IMHO plus dozens of other
usages of "resource" in the same document. For example this usage
clearly contradicts the official definition that excludes "blank nodes":
"For a vocabulary such as FOAF, where the resources are typically blank
nodes"
The temptation to use "resource" will certainly remain strong, and it's
easy to get this wrong.
Holger
On 12/17/2014 2:40, Peter F. Patel-Schneider wrote:
> In RDF, a resource is an entity in the world (or maybe not in the
> world). RDF resources can be much more than nodes in an RDF graph.
> Saying that an RDF resource satisfies a shape/constraint/description
> is very different from saying that a node in an RDF graph satisfies a
> shape/constraint/description. If we are talking about resources, we
> might say that Dick Cheney matches the shape/constraint/description
> unrepentant. If we are talking about nodes, we might say that the
> node ex:dc in
>
> ex:dc ex:bar 1 .
>
> matches the shape/constraint/description exactly one ex:bar and all
> ex:bar integer.
>
>
> As this is the *RDF* data shapes working group, I would object if we
> did not use RDF terminology in the correct way. This means that I
> would object if any document from the working group used resource in
> other than its RDF meaning.
>
>
> Peter F. Patel-Schneider
> Nuance Communications
>
Received on Thursday, 18 December 2014 00:13:46 UTC