- From: <bugzilla@jessica.w3.org>
- Date: Thu, 28 Apr 2016 22:57:57 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29574 Michael Kay <mike@saxonica.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Group| |XSLXQuery_WG --- Comment #9 from Michael Kay <mike@saxonica.com> --- The main change needed to implement this is to change the final sentence of the second para of 3.5.3.2 which currently reads: For every component CQ in package Q that is not matched by any xsl:override or xsl:accept element in the package manifest of P, there will be a corresponding component CP in package P that has the same symbolic identifier and declaration as CQ. The visibility of CP will be the same as the visibility of CQ, except that where the visibility of CQ is private, the visibility of CP will be hidden. Now, we have accepted that if CQ is public, CP should be private. This raises the question of what happens for other values of CQ's visibility. * If CQ is final, CP should clearly be private. * If CQ is hidden, CP should clearly be hidden. * If CQ is abstract, it's not so clear. The status quo, where CP is abstract, would be quite inconsistent with the handling of public and final components. I think there are two alternatives: either make it an error if there is an abstract component in Q that is not matched by any xsl:accept or xsl:override element; or accept the component as absent. Looking at exactly what happens with absent components, I think this option probably makes most sense. * What happens when CQ is absent? And why does the table below this paragraph have no column for "absent"? We don't seem to have worked out the full implications of visibility=absent. For example section 3.5.3 ("The properties of a component are...") says that the visibility of a component must be one of public, private, final, abstract, or hidden; "absent" is not mentioned. We repeat this in 3.5.3.1 when we define "visibility". The section on exposing components doesn't mention absent components. And yet we clearly say in 3.5.3.2 that <xsl:accept visibility="absent"/> causes the using package to contain a component whose visibility is absent. (Terminology problems here: Is the component absent, or is its visibility absent? Or is its visibility present with a value of "absent"?) I think the answer here might be to try and merge visibility="absent" into visibility="hidden". I'll sleep on this... -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Thursday, 28 April 2016 22:58:00 UTC