- From: <bugzilla@jessica.w3.org>
- Date: Sat, 28 Feb 2015 21:24:36 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=28114 --- Comment #1 from Michael Kay <mike@saxonica.com> --- We say in 10.2.2 <quote> Cycles in attribute sets (that is, where an attribute set directly or indirectly invokes itself) are not permitted, and are detected statically. An attribute set A is dependent on an attribute set B if A contains an attribute set invocation that is bound to B, or if A contains an attribute set invocation that is bound to an attribute set C that is dependent on B. A cycle exists if any attribute set is dependent on itself. Such a cycle is an error even if the attribute set is never invoked, and even if the cycle is subsequently broken by overriding one or more of the attribute sets participating in the cycle. As a consequence, it is possible to detect a cycle during the static analysis of a package, before it is known how the package will be used. </quote> The problem here is that an attribute set invocation is not bound statically to an attribute set; our only definition of such binding occurs when packages are assembled, and takes overrides into account. We could define some kind of concept of binding within the scope of a single package, but it's not clear how it would handle references to attribute sets in a used package. In 9.11 we have a more general treatment of circularities among component definitions, which includes attribute sets within its scopy, and which deems all circularities to be dynamic errors, to avoid the kind of problems referred to above. I suggest we simply delete section 10.2.2, and rely on the general mechanisms in 9.11. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Saturday, 28 February 2015 21:24:38 UTC