Re: [xsl] XSLT 3.0 processor accepting non well-formed XML inputs

Subject: Re: [xsl] XSLT 3.0 processor accepting non well-formed XML inputs
From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 1 Mar 2019 11:37:36 -0000
Am 01.03.2019 um 12:23 schrieb Mukul Gandhi gandhi.mukul@xxxxxxxxx:
Hi all,
B B I've got some chance to try XSLT 3.0's streaming features, and have found them useful. I've a slight question as below,

The XSLT 3.0 spec, in the section "2.12 Streamed Validation" says following,

A streamed transformation that only accesses part of the input document (for example, a header at the start of a document) is not required to continue reading once the data it needs has been read. This means that XML well-formedness or validity errors occurring in the unread part of the input stream may go undetected.

As per above quoted text, is it ethical for an XSLT (3.0) processor to provide a functionality that's based on a non well-formed input XML document?

If you use Saxon 9.8 or 9.9 EE and streaming and for instance an `xsl:iterate` with an `xsl:break` then you will find that it indeed abandons parsing the input so non-wellformedness violations can go unnoticed.

I am not sure other processors do that, I remember trying to exploit that Saxon feature and testing whether it worked with Exselt as well and Abel in stated his concerns about that feature and interpretation of the spec.

As it seems so far there is no Exselt release that implements the final spec from 2017 and I think Altova never supported streaming I am not sure there is anything than Saxon 9 EE as a reference implementation for XSLT 3 and streaming.

Current Thread