Re: Is a namesapce a resource? - was: duck

David Carlisle wrote:
> 
> > Ignoring, for now, issues of relative and context-dependent URIs.  If a
> > namespace is a resource, and a namespace name is a URI:  what resource is
> > identified by that URI?  Logically, it is the namespace
> 
> "logically" is rather a contentious word to use:-)

How so? his logic is completely sound, no?

> If the method of naming namespaces is as indicated in the rec, and
> clarified by the vast majority of namespace use and discussion since
> then, then to name a namespace you pick a URI of any resource at all
> (preferably one you control) so the answer to "what resource is
> identified by that URI" is just "whatever resource whose URI was used
> as the namespace name".

Yes, exactly.


> > But if one chooses a namespace name
> > that can also be used (directly) to retrieve some schema bound to the
> > namespace, then the resource identified by the URI ipso facto is the schema
> > document.  (Or is it?)

Strictly speaking, no; strictly speaking, the resource identified
by the URI ipso fact is _represented_ by the schema document.

What you get back from accessing a URI is not (generally) the resource;
it's a particular representation of the resource at a given time.
(in exceptional cases, like RFCs, the resource itself
is a particular stateless piece of content, and it's the same
as what you get by accessing the RFC's URI).

I'll stop trying to explain the specs and just quote them now:

      "Resource
         A resource can be anything that has identity.  Familiar
         examples include an electronic document, an image, a service
         (e.g., "today's weather report for Los Angeles"), and a
         collection of other resources.  Not all resources are network
         "retrievable"; e.g., human beings, corporations, and bound
         books in a library can also be considered resources.
         The resource is the conceptual mapping to an entity or set of
         entities, not necessarily the entity which corresponds to that
         mapping at any particular instance in time.  Thus, a resource
         can remain constant even when its content---the entities to
         which it currently corresponds---changes over time, provided
         that the conceptual mapping is not changed in the process."

        -- http://www.ietf.org/rfc/rfc2396.txt

"resource 
     A network data object or service that can be identified by a URI,
as
     defined in section 3.2. Resources may be available in multiple
     representations (e.g. multiple languages, data formats, size, and
     resolutions) or vary in other ways. 
entity 
     The information transferred as the payload of a request or
     response. An entity consists of metainformation in the form of
     entity-header fields and content in the form of an entity-body, as
     described in section 7. "
        -- http://www.ietf.org/rfc/rfc2616.txt
        aka http://www.w3.org/Protocols/rfc2616/rfc2616-sec1.html#sec1.4

> Some people have the mistaken belief that namespaces and schema are
> effectively the same thing, so don't see that having the same URI
> relate to a namespace and to a schema describing one possible language
> using names from that namespace is at all strange.
> 
> Of course it isn't only a schema you might get. You might get the text
> of the rec, or an add hoc html page describing some aspect of the
> namespace or you might get someone's home page, or probably more
> often than not you'll get nothing.

Let's hope the case where you get nothing is the rare exception.


[...]

> I claim http://www.dcarlisle.demon.co.uk is the URI representing
> the "home page" of myself and my wife. Since I pay to have that
> URI work, and I wrote the page in question, I think it is reasonable
> for me to assert that that is the resource identified by that URI.
> 
> Now any namespace processor, without having read the above paragraph
> has to decide what to do with
> 
> <x xmlns="http://www.dcarlisle.demon.co.uk"/>
> 
> Given the current rec and all proposed modifications of it,
> the processor has no choice but to accept this as a conforming
> document.

Agreed.

> The namespace of the element has name
> http://www.dcarlisle.demon.co.uk.
> But the resource identified by that URI has absolutely not changed.
> 
> Unlike Dan Connolly's img example where if I gave this URI to
> <img it wouldn't work in a web browser, using my home page
> URI as a namespace name works fully for all namespace processors
> xpath xslt etc will all work quite happily with this namespace

But, without more information (such as schemaLocation),
XSV will not, nor will SIRPAC (an sort of schema validator
for RDF http://www.w3.org/RDF/Implementations/SiRPAC/).

i.e. not all processors that use conventions layered on
top of the namespace spec will be able to make sense
of your homepage.

> and the fact that no one else should define behaviour for that
> namespace is just excactly the reason given why URI syntax was
> chosen for namespace names. So not only is using my home page
> URI as a namesace name not wrong, it is essentially the canonical
> example of the method of allocating myself a namespace name that no
> one else should use.

I agree that it's not wrong.

> Tim Berners-Lee and Dan Connolly have asserted that my doing that
> is somehow wrong,

I have not, and I don't believe TimBL has either.

Please cite a source if you presume to speak for me.

I maintain that namespace names that can be used
to access machine-understandable descriptions of the
language they are intended to stand for (aka schemas)
are more useful and powerful, but I do not
claim that to do otherwise is wrong (in the sense
of prohibited/illegal/nonsensical).

> but no one has ever suggested any change
> that would make that wrong. Or what the namespace processor is
> supposed to do to reject the document.
> 
> David

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/

Received on Thursday, 8 June 2000 10:27:27 UTC