Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[xslt30] xsl:expose is not classified as a declaration #20

Open
michaelhkay opened this issue Dec 1, 2020 · 1 comment
Open

[xslt30] xsl:expose is not classified as a declaration #20

michaelhkay opened this issue Dec 1, 2020 · 1 comment

Comments

@michaelhkay
Copy link
Contributor

The xsl:expose element is not classified as a "declaration", either in the element syntax summary, or in the list of declarations appearing in section 3.7 of the spec.

(As a result of this omission, Saxon 10 handles xsl:expose incorrectly when the stylesheet uses forwards compatible mode).

@michaelhkay
Copy link
Contributor Author

michaelhkay commented Dec 2, 2020

The content model of xsl:package is given as

<!-- Content: ((xsl:expose | declarations)*) -->

Suggesting that it's a deliberate decision not to classify xsl:expose as a declaration. Presumably the reason is that it can only appear as a child of xsl:package, not of xsl:transform/stylesheet.

It's not actually clear whether classifying an element as a declaration has any normative effect. Section 3.10 contains the text

If the element is in the XSLT namespace and appears as a child of the xsl:stylesheet element, and XSLT 3.0 does not allow the element to appear as a child of the xsl:stylesheet element, then the element and its content must be ignored.

which probably ought to say something about children of xsl:package, but it's not exactly wrong as written.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant