Re: Syntax vs Semantics vs XML Schema vs RDF Schema vs QNames vs URIs (was RE: Using urn:publicid: for namespaces)

> This seems rather an "obese" solution. For every resource
> identified by a QName in a serialization, create an anonymous
> node with "some" URI and two child nodes, [...]

You seem to have got caught up on the anonymous nodes aspect. The node
does not need to be anonymous, I just made it so because the use case
that I had in mind for QNames (mapping equivalences) did not require
skolemization. In fact, because the combination of namespace and name
properties makes for an unambiguous subject, the node isn't really
anonymous anyway, even when it is. It's much like using any
daml:UnambiguousProperty on a node, except here we're using a
combination of properties to the same effect. I thought I'd already
stated this: perhaps I didn't make it clear enough (apologies, if so).

> [...] personally I don't like anonymous nodes. After all, just
> what *is* an anonymous node. [...]

I'm not particularly in love with them - I didn't include them in
BSWL - but they can be useful. Logical systems get away with them
(they're just existentially quantified variables - "for some"), so I
don't see why RDF can't. And of course, the biggest point is that RDF
Core can't now get rid of them, so you can make all the fuss you want
about not liking anonymous nodes, I'm afraid they're not going away.
Read: TS :-)

> Every application that I've seen that uses them has had
> to give them some form of identity, and yet that identity
> is system dependent.

Yep, and that's a problem.

[...][tons more ranting about anon nodes][...]

> Sorry, I see an anonymous node-based treatment of QNames
> creating far, far more problems than it solves (see further below).

Once more, the node doesn't have to be anonymous, and it's unambiguous
even if it is anonymous.

> > Oh please! If the material being processed is indeed RDF,
> > then the RDF parser should only be expected to use the
> > first form of resolution from QName pair to URI.
>
> According to the current RDF spec, yes.
>
> BUT that form of resolution/concatenation has been shown to
> be unreliable and capable of producing ambiguous URIs! It's
> broken and *must* be replaced by something else.

I'm really starting to wonder what you're going on about. It
concatanates QName pairs into URIs, that's it. And when you want to
refer to a QName, you can do so using the model. I think you're
blowing this out of proportion somewhat.

> The current "popular" proposal, a'la XML Schema,
> inserting a '#' character is unnacceptable [...]

That isn't a proposal at all, it's something that is specific to XML
Schema, and indeed, they didn't have to just add a "#" in there. They
could have said that the QName:-

   {http://www.w3.org/2001/XMLSchema}string

maps to:-

   http://www.w3.org/2001/05/blargh#stringthing

but that would have been a smidge more difficult for people to
remember than just bunging a "#" in there. I'm disappointed that there
is no RDF available on the W3C site (correct me if I'm wrong) that
defines the URIs that they've set out, or indeed maps back to the
QNames, but then anyone implementing XML Schema is going to have to
read the specification anyway. So yes, there is a problem in that
there's no machine readable way of getting to those QNames, but it's a
big leap from there to the spurious suggestion that XML Schema implies
that all QName pairs in XML should be concatenated with a "#" in the
middle of them.

> [...] It got RDF started, but cannot carry RDF through to
> a mature and functional SW.

I hope you're not one of these people who believe that there are some
things which can be identified and yet cannot be identified with a
URI... an axiom of URIs is that they can identify anything. That
includes a QName; we just don't have a decent model for it yet.

> Hello? What? QNames *in* RDF?! I don't think so!

<rdf:Description>
   <foaf:name>Sean B. Palmer</foaf:name>
</rdf:Description>

Spot the QNames. rdf:Description is a syntax only QName (creates an
anonymous node), and foaf:name is a QName that is important to the
model (as a predicate).

> QNames are a creature of the SYNTAX ONLY! They have
> no, and should have no, realization in the set of triples derived
> from a serialized instance! [...]

Ah, that's a good point, and it's one of the reasons that XML RDF
sucks for certain tasks. Just try expressing a predicate that ends
with a ":" in XML RDF. But that's why I proposed BSWL, and it's why
SWAG is working on another format, which is just NTriples in XML.

> Resources are identified by *URI*s, [...]

They are? Aw man, someone should have told me earlier! :-)

> Adopting XML Schema data types in RDF doesn't provide
> any actual validation, [...]

Tools will come for datatypes.

[...][more ranting about datatypes][...]

--
Kindest Regards,
Sean B. Palmer
@prefix : <http://webns.net/roughterms/> .
:Sean :hasHomepage <http://purl.org/net/sbp/> .

Received on Tuesday, 14 August 2001 18:30:19 UTC