Project

Profile

Help

Feature #3619

closed

Support for streaming in fn:transform()

Added by Michael Kay over 6 years ago. Updated about 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
-
Start date:
2018-01-12
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 specification of the fn:transform() function does not allow the principal source document to be supplied in streamable form (for example as a URI of a document to be read using streaming).

We are developing a test driver that relies on fn:transform() to invoke transformations, so this is a serious limitation.

I'm fixing this by adding an optional parameter source-location="uri" that can be used in place of the source-node parameter; its value is a URI. The XML document located at the supplied URI is used as the initial match selection for an apply-templates invocation of the stylesheet. The option may be used whether or not streaming is required.

Actions #1

Updated by Michael Kay over 6 years ago

  • Status changed from New to In Progress
  • Applies to branch 9.8, trunk added
  • Fix Committed on Branch 9.8, trunk added

Change committed on the 9.8 and development branches.

Further work is needed to allow the streamed input document to be schema-validated.

Actions #2

Updated by Michael Kay over 6 years ago

See also bug 3624, which arose when attempting to solve the validation problem by setting the FeatureKeys.SCHEMA_VALIDATION option in the Configuration.

For the time being, I have made changes that allow schema validation to be requested on the source-location document by setting the property saxon:schema-validation-mode to (strict | lax | preserve | strip).

Actions #3

Updated by Michael Kay about 6 years ago

  • Status changed from In Progress to Resolved
Actions #4

Updated by O'Neil Delpratt about 6 years ago

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

Bug fix applied in the Saxon 9.8.0.8 maintenance release.

Please register to edit this issue

Also available in: Atom PDF