OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

topicmaps-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: [xtm-wg] The xml:base problem



Murray Altheim and I debated at length on this list how to interpret
relative URI references and the URIs of elements in the presence of
xml:base attributes. I believe I have now, with a little help, been
able to find out how this is supposed to work.

The answer satisfies me, but I believe that most XTM implementors will
be surprised by the answer. I posting my understanding of this issue
here, both for the record, and also so that anyone who thinks I am
wrong can correct me.

Here is an example, to make things a bit clearer:

(in a document residing at "http://www.quux.com"):

  <topicMap xml:base="http://foo.com/">

    <topic id="bar">
      <instanceOf>
        <topicRef xlink:href="#baz"/>
      </instanceOf>
      ...
    </topic>

    ...

  </topicMap>


The main questions were:

  - what is the URI of the "bar" topic?

  - what URI is "#baz" referring to?


It turns that the answer to the first question is not defined
anywhere, but that the only sensible answer is
"http://www.quux.com/#bar". That is, the URI is not affected by the
changed xml:base inside the document.

The reason this is so has to do with the answer to the second
question. URIs found in a document are always in a situation where
that document has a document URI, and this may have been modified
inside the document, so that inside the document a different base URI
is in effect.

It turns out that there are not two kinds of URI references, as most
people think (until recently this group included me), but three:

 - absolute URI references.  These are, of course, independent of the
   base URI of the context they appear in.

 - relative URI references.  These are resolved relative to the base
   URI of the context.

 - same-document references.  These are of the form "#xxx" and are
   resolved not relative to the base URI, but relative to the document
   URI. 

So because "#baz" is a same-document reference it resolves to

  http://www.quux.com/#baz

Had it been "baz.html" it would have resolved to

  http://foo.com/baz.html


The reasons I believe the above is correct can be found in:

<URL: http://lists.w3.org/Archives/Public/www-xml-linking-comments/2001AprJun/0158.html >

and in RFC 2396, section 4.2.


In the particular discussion Murray and I had, he was right with
respect to what the subject indicators of the topics in the
language.xtm and country.xtm topics were, and I was wrong.

I am not sure that his explanation of the general rules for this
situation was right, but I didn't fully understand it, so it may have
been.

--Lars M.


------------------------ Yahoo! Groups Sponsor ---------------------~-->
Small business owners...
Tell us what you think!
http://us.click.yahoo.com/vO1FAB/txzCAA/ySSFAA/2U_rlB/TM
---------------------------------------------------------------------~->

To Post a message, send it to:   xtm-wg@yahooGroups.com

To Unsubscribe, send a blank message to: xtm-wg-unsubscribe@yahooGroups.com 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ 




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC