[Bug 29492] New: [XSLT30] streamability of xsl:attribute-set may not be complete

https://www.w3.org/Bugs/Public/show_bug.cgi?id=29492

            Bug ID: 29492
           Summary: [XSLT30] streamability of xsl:attribute-set may not be
                    complete
           Product: XPath / XQuery / XSLT
           Version: Candidate Recommendation
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XSLT 3.0
          Assignee: mike@saxonica.com
          Reporter: abel.braaksma@xs4all.nl
        QA Contact: public-qt-comments@w3.org
  Target Milestone: ---

I have spent some time disentangling the rules on xsl:attribute-sets with
regards to guaranteed streamability and I think we are missing some key point
here.

a) under 10.2.3 we say "considered as a seqtor" and then point to 19.8.6 where
this precondition seems not to apply anymore

b) under 19.8.6 Classifying Attribute Sets we say "usage transmission", but
attribute sets are always grounded

c) under 19.8.6 we don't say anything about the context posture

d) section on xsl:element classifies @use-attribute-sets with usage absorption,
this seems to not make sense

I think all of these can be fixed by treating the streamability similar to
other declarations (i.e., accumulators and stylesheet functions) where the
direction of streaming is not known beforehand.

Suggestions:

1) Under 10.2.3. item (2): every xsl:attribute-set has motionless sweep and
grounded posture according to the rules in Classifying Attribute Sets

2) Under 19.8.6.: remove the reliability on the general streamability rules

3) Under 19.8.6.: Change the text to something like (all apply):
   i)   The posture of an attribute set is grounded
   ii)  The sweep of an attribute set is motionless if all xsl:attribute
instructions are motionless according to the streamability rules on
xsl:attribute with the context posture set to striding.
   iii) Otherwise free-ranging.

4) Under 19.8.6: add in a Note that all referenced attribute sets must have
streamable="yes" and abide by those rules, and/or point back to 10.2.3.

5) Replace any place where @use-attribute-sets is mentioned in the
streamability rules and (perhaps) point to the section on Classifying Attribute
Sets. I don't think they should have a usage, but if any, the usage is
inspection and have themselves no additional operands, as they are not allowed
to "absorb" any node.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Saturday, 20 February 2016 18:19:59 UTC