W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > October 2002

Re: No more labeled nodes

From: pat hayes <phayes@ai.uwf.edu>
Date: Wed, 30 Oct 2002 16:37:47 -0600
Message-Id: <p05111b2fb9e60ab4280c@[65.217.30.130]>
To: Brian McBride <bwm@hplb.hpl.hp.com>
Cc: w3c-rdfcore-wg@w3.org

>At 17:45 30/10/2002 +0000, Dave Beckett wrote:
>
>>Apart from the other changes I've made, my draft of the syntax doc now
>>does not use phrases like "nodes are labeled with URI-refs ...".  The
>>replacement text is "nodes are identified by URI-refs, ..."  etc. and
>>so on.
>
>Er, isn't that a little confusing.  Does http://www.w3.org/ identify 
>a resource or a node in a graph.  Since I have two graphs right here 
>in front of me, both labelled http://www.w3.org/ which node does it 
>identify?
>
>I'm confused, even if no one else it.

Guys, might I suggest that y'all take a look at the following, which 
is the draft update of the relevant section in the MT doc? I would 
prefer if this was in some other doc, in fact, as I don't think it 
really belongs in the MT, but I really think something like this is a 
lot easier to read and follow than any other way of saying it. It 
allows you to use node-talk if you want, but it doesnt get involved 
with graph theory. (I might not have the literal part *exactly* right 
yet...)

Then Dave can just delete "identified by".  Nodes *are* urirefs 
(unless they are blank or literals, of course), and Jeremy doesnt 
have to get all tangled in graph theory in order to define 
'isomorphic'.

--------

0.2 Graph syntax

.....
To describe RDF graphs it is first necessary to define the things 
that can act as nodes and arcs of the graph. There are three kinds of 
node in an RDF graph: urirefs, blank nodes and literals. A uriref is 
defined to be a URI reference in the sense of [RFC 2396]. Blank 
(unlabeled) nodes are considered to be drawn from some set of 
'anonymous' syntactic entities which have no label and are unique to 
the graph. Two graphs which differ only by having different blank 
nodes are isomorphic; we will not bother to distinguish between 
isomorphic graphs. Literals come in several forms. Simple literals 
consist of a unicode character string plus an optional XML language 
tag; typed literals consist of a unicode character string paired with 
a uriref which indicates a datatype; and a special class of XML typed 
literals is distinguished which can also have an XML lang tag. 
Finally, every arc in an RDF graph is labelled with a uriref. The 
same uriref may label several arcs and also be a node in the graph. 
An RDF graph can then be formally defined as a set of triples of the 
form <S, P, O>, where P is a uriref, S is either a uriref or a blank 
node, and O is either a uriref, a blank node, or a literal. The three 
components of the triple are called respectively the subject, 
predicate and object of the triple. It is convenient to adopt a 
familiar abuse of terminology and identify a single triple with the 
graph consisting of the singleton set containing that triple.

We refer to urirefs and literals, but not blank nodes, as names; but 
note that there is no distinction between the name of a node labelled 
with a uriref, and the node itself. A name will usually occur in more 
than one graph, but blank nodes are unique to each graph. This 
reflects the fact that literals and urirefs are considered to have a 
'global' meaning but blank nodes do not.

The convention that relates such a set of triples to a picture of an 
RDF graph can then be stated as follows. Draw one oval for each blank 
node and uriref, and one rectangle for each literal, which occur in 
either the subject or object position in any triple in the set, and 
write each uriref or literal as the label of its shape. Then for each 
triple <S,P,O>, draw an arrowed line from the shape produced from S 
to the shape produced from O, and label it with P. Technically, this 
is a picture of a mathematical structure which can be described as a 
partially labelled directed pseudograph with unique node labels.

In this document we will use the N-triples syntax described in 
[RDFTestCases] to describe RDF graphs. This notation uses a nodeID 
convention to indicate blank nodes in the triples of a graph. Note 
that while these node identifiers identify blank nodes in the surface 
syntax, these expressions are not considered to be the label of the 
graph node they identify; they are not names, and do not occur in the 
actual graph. In particular, two N-triples documents which differ 
only by re-naming their node identifiers will be understood to 
describe identical RDF graphs.

------

Pat
-- 
---------------------------------------------------------------------
IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola              			(850)202 4440   fax
FL 32501           				(850)291 0667    cell
phayes@ai.uwf.edu	          http://www.coginst.uwf.edu/~phayes
s.pam@ai.uwf.edu   for spam
Received on Wednesday, 30 October 2002 17:38:30 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:52:35 EDT