Re: Namespace squatting: please don't

Dan Connolly wrote:

> Jonathan Borden wrote:
> >
> >     What specification constrains the contents of a namespace?
>
> If you mean "what specification constraints the content
> you get back when dereferencing a namepace name" then
> the answer is the same as the answer to
> "what spec constrains the content
> you get back when you dereference an HTML href?"
> There is no spec for what you get back in the general case.

No, I mean: what specification constrains the local-names() which can be
used as part of a QName given a particular namespace-uri().

An RDF Schema provides a mechanism to define 'members' of a namespace, but
it does not contain a mechanism to *exclude* members of a namespace, nor
does it provide a mechanism to state that a particular Schema, as might be
presented in a specification, defines the only members of a namespace.

A DTD, and XML Schema *could* constrain which elements might be children of
<rdf:RDF> for example, but where does it say that I can't define e.g.
<rdf:foo> to be used outside of an <rdf:RDF> root?

>
>
> > It is logical
> > that the owner of a namespace (whatever that means) may restrict the
ability
> > of others to add elements to the namespace but where is this precisely
> > specified?
>
> That ends with a question mark but parses as a declarative
> sentence. Help? Do you mean "is it logical ..."?

I mean: "It is logical ... But where is this precisely specified?"

>
> Absolutely, it's logical for the issuer of a namespace
> name, like any other URI, to say what that URI means,
> and what it doesn't mean.
>
> W3C has stated both:
>
> The formal namespace name for the properties and
> classes defined in this specification is
> http://www.w3.org/1999/02/22-rdf-syntax-ns#.
>
...
>
> [[[
> This is the RDF Schema for the RDF data model as described in
> the Resource Description Framework (RDF) Model and
> Syntax Specification http://www.w3.org/TR/REC-rdf-syntax
> ]]]
>
        These are statements. I've read them. Where does it say that I am
not allowed to create the element "rdf:foo" and use it as I please (for
example, outside of RDF). I understand that you don't like this activity,
and I understand the arguments against allowing such actitivity. I just
don't see a specification explicitly disallowing this activity.

    For example, one cannot say that a document containing "rdf:foo" is
either not well-formed, nor not valid, nor not namespace compliant, etc.
etc.

> >
> >     Do you have the same issue with TimBL's rdf:for
> > (http://www.w3.org/DesignIssues/Syntax)?
>
> No, TimBL doesn't say that rdf:for is short for
> http://www.w3.org/1999/02/22-rdf-syntax-ns#for .
> At least I hope he doesn't mean it that way.

 Good point. And don't get me wrong, what you are saying is the "Right
Thing" and a best practice, but perhaps this needs to be codified in a
standard. For example, a document which lists the members of a grammar. An
XML Schema won't do, but perhaps 'allowable' usage of the grammar ought be
specified as a set of XPath constraints/assertions ala Schematron.

Jonathan Borden
The Open Healthcare Group
http://www.openhealth.org

Received on Friday, 15 September 2000 20:02:28 UTC