W3C home > Mailing lists > Public > public-xml-core-wg@w3.org > October 2011

Re: Namespace well-formed external parsed entities?

From: Henry S. Thompson <ht@inf.ed.ac.uk>
Date: Wed, 19 Oct 2011 08:35:40 +0100
To: "Grosso, Paul" <pgrosso@ptc.com>
Cc: <public-xml-core-wg@w3.org>
Message-ID: <f5b4nz5h1rn.fsf@calexico.inf.ed.ac.uk>
Grosso, Paul writes:

> the namespace declaration must be in the entity itself or can
> be "inherited" from the "load environment" (in a fashion somewhat
> similar to what the XPointer xmlns() scheme allows one to do
> for xpointers).

I see nothing in the XML spec. which suggests that external entities
have to be self-contained.  In particular, as far as I can see the
following is entirely OK:

foo.xml:
<!DOCTYPE foo [
<!ENTITY a SYSTEM "a.ent">
<!ENTITY foo "foo">
]>
<foo>&a;</foo>

a.ent:
<a>&foo;</a>

If that's true, then by analogy the following is also OK

foo.xml:
<!DOCTYPE foo [
<!ENTITY a SYSTEM "a.ent">
<!ENTITY foo "foo">
]>
<foo xmlns:p="p">&a;</foo>

a.ent:
<a><p:b/></a>

But, this raises the question of what the point of the proposed
function is -- if its goal is to yield a (sequence of) document nodes,
then either 

 a) Not all XML-usable/XML-namespace-usable* external entities can be
    loaded;
or

 b) Namespace fixup may be required, presumably using XQuery-defined
    namespaces which are in scope.

*A 'document' is XML(-namespace)-usable if there exist well-formed XML
documents which (sc. successfully) include it as an external entity.

ht
-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: ht@inf.ed.ac.uk
                       URL: http://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]
Received on Wednesday, 19 October 2011 07:36:22 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 19 October 2011 07:36:23 GMT