Menu

#526 @xml:base

AMBER
closed-accepted
nobody
5
2013-03-31
2013-02-02
No

This statement in 16.2.1 Pointing Elsewhere, is not true or potentially misleading, depending how broadly one reads "In general.":

"In general the current base URI in force is the value of the xml:base attribute of the closest ancestor that has one. If there is none, the base URI is that of the current document."

xml:base attributes accumulate through the hierarchy. The current base URI is not just closest ancestor OR base of the document. It is the concatenation of path segments, beginning at the top of the hierarchy or the nearest http:// (or ftp://, etc.) and accumulating down to the context node.

If "in general" means "in practice, it turns out that usually," maybe the statement isn't false, but I would take "in general" to mean something closer to "except for corner cases explained in the spec." And I'd be surprised if the sample set of @xml:base uses is large enough for the Guidelines to confidently say what is the norm.

Maybe not a big deal, but I was mislead by that binary assumption when I was first started learning @xml:base.

Discussion

  • Lou Burnard

    Lou Burnard - 2013-03-31

    Revisd as follows: The <soCalled>current base URI</soCalled> is defined according to <ref target="#XMLBASE">Marsh 2001</ref>. If there is none, the base URI is that of the current document. In common practice the current base URI in force is likely to be the value of the <att>xml:base</att> attribute of the closest ancestor that has one. However this may not be the case, since <att>xml:base</att> attributes are accumulated through the hierarchy by concatenation of path segments, beginning at the top of the hierarchy and proceeding down to the context node at ttp://sourceforge.net/p/tei/code/11793

     
  • Lou Burnard

    Lou Burnard - 2013-03-31
    • status: open --> closed-accepted
    • milestone: --> AMBER