Re: Analysis of Anon Resources (long)


> It has been suggested recently that there are four 'models' to
> consider when we discuss RDF;
>   o the abstact model, sometimes called the data model, or
>     just the model.
>   o the graphical model
>   o the triple model
>   o the xml serialization
> I think of these as not being peers, but that the abstract
> model is primary - it is THE rdf model, and the others are
> representations of that model in different languages.
> I say this not to assert that this is the correct way to think
> of things, but more to make my assumptions explicit.

    On the other hand, unless we have an unambiguous syntax (i.e. XML) it is
difficult to layer semantics. All to often, people assume they have the same
'abstract model' yet they don't. Without syntax it is hard to specify, and
this is where XML is very helpful.

> Equivalence between different representations is determined
> by whether they represent the same abstract model. The RDF
> Model and Syntax spec provides no formal specification of
> a language for representing triples.

Actually, a partial EBNF specification of the XML 'serialization' is
present. The problem isn't that the formal specification doesn't exist,
rather than we can't agree upon the formal specification.

Instead, I would formally specify RDF in XML and let other notations sort
themselves out. Of course I understand that many will disagree. Yet look
where RDF is today.

> I hope the following description of the abstract model, so
> far as it goes will be common ground:
> An RDF model is a directed graph.  It contains nodes
> connected by directed arcs, i.e. arcs that have a specific
> source and destination node.  The source node of an arc must
> come from a set I will here call R.  The destination node
> of an arc must come from either the set called R or the set
> called Literals.  Arcs are always labelled with a URI.
> The issue at question here is whether all members of the set
> R have a URI.
> The model and syntax specification is at best unclear and at
> worst inconsistent on this question.  Section 2.1 states
> "Resources are always named by URIs plus optional anchor
> ids".  Section 2.1.1 has a graphical representation of a
> model with no URI and there are frequent references to
> anonymous resources throughout the text.

When specified in XML, all RDF resources can be associated with a URI
reference, see:

> Some possible solutions
>   o  All members of the set R must be given a URI by an
>      application or parser


> All Members of R are Given a URI
> ================================
> Implementation of API's such as I have been working on is
> certainly easier.  So I, for one, like that( - oops - I'm
> not supposed to be being judgemental).
> Applications have to generate URI's for all resources, even
> for insignificant resources such as are used to represent
> compound values.
> And in particular parsers have to generate URI's for all
> anonymous resources they encounter in an XML input stream.
> And here I think is an important point of principle.
> Any two parsers reading the same XML serialization should
> produce a representation of the same abstract model, i.e.
> a representation of the same graph.  This requires that
> they have the same nodes with the same URI's.
> Such generated URI's cannot reasonably be thought of as
> URL's - they are not locators.

actually xpointers are indeed locators!

[ .. a bunch of real issues about generating URIs that I won't comment upon
at this time except to state that part of this issue relates to the mapping
between an arbitrary database and XML, in XML elements are ordered. These
issues can be solved through the use of identifier attributes (e.g. rdf:ID)

Jonathan Borden
The Open Healthcare Group

Received on Friday, 8 September 2000 15:50:08 UTC