Project

Profile

Help

Bug #3852

closed

No failure when fn:transform() requests streaming and streaming not available

Added by Michael Kay over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
XPath conformance
Sprint/Milestone:
-
Start date:
2018-07-19
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
9.8, trunk
Fix Committed on Branch:
9.8, trunk
Fixed in Maintenance Release:
Platforms:

Description

The fn:transform() function has the opporunity to request an XSLT processor with support for particular optional features. If it requests a processor that supports streaming then the request should fail FOXT0001 if no streaming XSLT processor is available (for example, under Saxon-HE). Currently it is not failing, but rather falls back to non-streaming mode, which is not conformant.

Actions #1

Updated by Michael Kay over 5 years ago

Similar considerations apply when the request is for higher-order-function or dynamic-evaluation support.

Actions #2

Updated by Michael Kay over 5 years ago

  • Category set to XPath conformance
  • Status changed from New to Resolved
  • Priority changed from Low to Normal
  • Applies to branch 9.8, trunk added
  • Fix Committed on Branch 9.8, trunk added

We now fail the fn:transform call if a requested feature is not available because it requires PE/EE and/or a license key. For requests such as dynamic evaluation, schema awareness, and streaming, if the request is to have the feature OFF, we disable it in the target configuration when the target configuration would otherwise allow it.

Actions #3

Updated by Michael Kay over 5 years ago

The changes caused a regression for test fn-transform-71 which requests a non-schema-aware processor and then tries to do a schema-aware transformation. This is because setting SCHEMA_AWARE = false on the processor doesn't have the expected effect of disabling schema awareness - in fact, it is the default. The meaning of the flag is explained in CompilerInfo.setSchemaAware: "Say that the stylesheet must be compiled to be schema-aware, even if it contains no xsl:import-schema declarations." In the presence of xsl:import-schema, as in this test case, the flag is ignored.

So a request for is-schema-aware=false will be rejected if the processor is EE.

Actions #4

Updated by Debbie Lockett over 5 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in Maintenance Release 9.8.0.14 added

Bug fix applied in the Saxon 9.8.0.14 maintenance release.

Please register to edit this issue

Also available in: Atom PDF