Subject: RE: [xsl] xmlns created literally From: Owen Rees <owen.rees@xxxxxx> Date: Thu, 26 Feb 2009 17:07:17 +0000 |
Section 8 of Namespaces 1.1 says: To conform to this specification, a processor MUST report violations of namespace well-formedness, with the exception that it is not REQUIRED to check that namespace names are legal IRIs. Namespaces 1.0 has essentially the same rule.
Note also, Namespaces 1.1 says: "Because of the risk of confusion between IRIs that would be equivalent if dereferenced, the use of %-escaped characters in namespace names is strongly discouraged. "
Given that XML parsers appear to have universally decided to take advantage of the freedom to allow any string as a namespace name, we had to tread very carefully in XSLT because users would get upset if their documents got through the XML parser only to be rejected by the XSLT processor. We do say, for xs:element:
[ERR XTDE0835] It is a non-recoverable dynamic error if the effective value of the namespace attribute is not in the lexical space of the xs:anyURI data type.
However, that's just a bit of nifty buck-passing, because the XSD 1.0 spec is rather ambiguous about the lexical space of xs:anyURI, and XSD 1.1 has cut the Gordian knot by saying it's any character string.
-- Owen Rees; speaking personally, and not on behalf of HP. ======================================================== Hewlett-Packard Limited. Registered No: 690597 England Registered Office: Cain Road, Bracknell, Berks RG12 1HN
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] xmlns created literally, Michael Kay | Thread | RE: [xsl] xmlns created literally, Christopher R. Maden |
RE: [xsl] xmlns created literally, Michael Kay | Date | RE: [xsl] xmlns created literally, Christopher R. Maden |
Month |