Sign In/My Account | View Cart  
advertisement

Article:
 XML Namespaces Don't Need URIs
Subject: URI is not a URL
Date: 2005-04-15 17:57:05
From: mikeday
Response to: URI is not a URL

Yes, URNs do reduce some of the problems associated with using HTTP URLs to identify namespaces, although as you point out they are still rather complex.


Your example of the Silicon Valley Groundhogs is interesting, but not an argument for namespaces. If you have an established relationship with the groundhogs people then receiving an XML document (either by email or a HTTP POST) with a root element of <svg> will not surprise you.


If within that document there is an embedded image:


<groundhog>
<name>Grumpy Groundhog</name>
<picture>
<svg>...</svg>
</picture>
</groundhog>


that should not surprise you either, as the context is sufficient to tell that it is an image.


Ambiguity is only possible if there were two XML image formats with a root element of <svg>, or two transformation languages that used <xsl:transform>.


This case is much less likely, and there are more gentle ways to disambiguate it than mandating namespace URIs everywhere.


No Previous Message Previous Message Move up to Parent Message Up Next Message No Next Message


Titles Only Titles Only Newest First
  • URI is not a URL
    2005-04-16 03:36:18 bryan rasmussen [Reply]

    the document element of xsl-fo is root.


    It may be unlikely that two pagination formats will have a document element root, but certainly possible. It is highly likely that a generic xml handling solution will have to deal with many different formats which have root as the document element.

    • URI is not a URL
      2005-04-16 03:58:26 mikeday [Reply]

      XSL-FO is not a compelling argument for namespaces, given that XSL-FO documents are generally fed directly into programs expecting XSL-FO, with no need for disambiguation.


      One could imagine two different markup languages both having a root element of <fo:root>, and a formatter that supported both markup languages, and yet such a thing does not exist.


      Namespaces on the other hand do exist, apparently to solve non-existent problems, while causing real problems of their own.



Sponsored By: