- 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>
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 UTC