W3C home > Mailing lists > Public > xsl-editors@w3.org > January to March 2007

RE: Handling of malformed doctype-public parameters

From: Michael Kay <mhk@mhk.me.uk>
Date: Wed, 7 Mar 2007 09:03:11 -0000
To: "'Bjoern Hoehrmann'" <derhoermi@gmx.net>, <xsl-editors@w3.org>
Cc: <public-qt-comments@w3.org>
Message-ID: <00ad01c76097$6eb6a420$6401a8c0@turtle>

To ensure that we can track this, I've transferred it to Bugzilla at

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4372

Michael Kay
http://www.saxonica.com/
 

> -----Original Message-----
> From: public-qt-comments-request@w3.org 
> [mailto:public-qt-comments-request@w3.org] On Behalf Of 
> Bjoern Hoehrmann
> Sent: 07 March 2007 06:20
> To: xsl-editors@w3.org
> Cc: public-qt-comments@w3.org
> Subject: Handling of malformed doctype-public parameters
> 
> 
> Dear XSL Working Group,
> 
>   In http://www.w3.org/1999/11/REC-xslt-19991116-errata/ E4 
> XSLT 1.0 processors are required to generate well-formed XML 
> documents. I think this erratum is incomplete (the last 
> sentence of the first paragraph in
> 3.1 would also need to be changed, and arguably also the first one in
> 16.1) and I do not think processors can implement the 
> requirement. In XSLT 2.0 and XSLT 2.0 and XQuery 1.0 
> Serialization a similar issue exists.
> 
> The reason is that neither version of XSLT requires lexical 
> checking of the doctype-public parameter, both specify the 
> content model as just "string", but XML 1.0 places additional 
> restriction on it. For example,
> 
>   <xsl:output
>     method="xml"
>     version="1.0"
>     doctype-system="x"
>     doctype-public="-//W3C//DTD&#x9;XHTML 1.0 Transitional//EN"
>   />
> 
> or
> 
>   <xsl:output
>     method="xml"
>     version="1.0"
>     doctype-system="x"
>     doctype-public="x&#xf6;y"
>   />
> 
> would result in ill-formed XML as neither U+0009 nor U+00F6 
> are allowed in the public identifier. In case of XSLT 1.0 it 
> seems processors are not allowed to signal an error in this 
> case, and in case of XSLT 2.0 it can be argued that this 
> should result in the generic err:SERE0003 error, but e.g. 
> Saxon 8.7.1J emits ill-formed XML instead. I think both XSLT 
> 1.0 and XSLT 2.0 should require doctype-public to be 
> syntactically correct, or failing that, XSLT 1.0's E4 should 
> be modified to allow the processor to signal an error in the 
> cases above.
> 
> regards,
> --
> Björn Höhrmann · mailto:bjoern@hoehrmann.de · 
> http://bjoern.hoehrmann.de Weinh. Str. 22 · Telefon: 
> +49(0)621/4309674 · http://www.bjoernsworld.de
> 68309 Mannheim · PGP Pub. KeyID: 0xA4357E78 · 
> http://www.websitedev.de/ 
> 
Received on Wednesday, 7 March 2007 09:03:28 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:59:58 GMT