This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
3.2.1 Processing model Step 3, "Normalization" contains statements that are contradicted in Section 3.5.3 "SequenceType Syntax", to wit: 1. Section 3.2.1 contains "... the [XPath/XQuery] Core language...is a subset of the XQuery grammar" but 3.5.3 points out that the type system in the Core grammar is not a subset of XQuery grammar. The correction would be to reword 3.2.1 to say that Core is mostly a subset of XQuery, except that the type system in Core is richer than XQuery's. 2. Section 3.2.1 portrays Normalization as a phase that can be performed in entirety after phase 2, "static context processing", and before phase 3, "static type analysis". Section 3.5.3 says that normalization of sequence types can occur "whenever a dynamic or static rule requires it". Presumably the reference to "static rule" is a reference to phase 4 "static type analysis" in section 3.2.1. This could be clarified in both sections.
(In reply to comment #0) > 3.5.3 points out that > the type system in the Core grammar is not a subset of > XQuery grammar. The correction would be to reword 3.2.1 to say > that Core is mostly a subset of XQuery, except that the type > system in Core is richer than XQuery's. As far as I can tell, the SequenceType grammar is the same for XQuery and Core. It's true that "the type system" is richer than can be expressed by SequenceType, but that is outside the XQuery and Core grammars. ('Type' is a Formal symbol.)
Thanks for the response. I see your point, SequenceType is part of Core, but Type is not. I think the following things can be done to ameliorate this confusion for other readers: 1. Change the spelling of Type to FormalType. Otherwise it is way too confusing distinguishing "Type" from "type", the latter being the ordinary English word which is part of our metalanguage. I imagine this confusion must occur repeatedly in spoken English in the working group, and even if the working group can manage it, what about the public at large? 2. Use some other term than normalization for the conversion of SequenceType to FormalType. That way you can be 100% consistent that "normalization" refers to phase 3 of static analysis. For example, you can provide a judgment "FormalType is formal type for SequenceType" with FormalType and SequenceType italicized and the rest in bold. The inference rules for this judgment are as follows: statEnv |- FormalType is formal type for SequenceType ------------------------------------------------------ statEnv |- FormalType OccurrenceIndicator is formal type for SequenceType OccurrenceIndicator - (no premise) -------------- statEnv |- empty is formal type for void() - (no premise) -------------- |- statEnv |- AtomicType is formal type for AtomicType and so forth, converting all the mapping rules of 3.5.4 to inferences.
>1. Change the spelling of Type to FormalType. Although the WGs can see some merit in this change, we have decided to not make this change at this time since the term "Type" is used so many times in the document. >2. Use some other term than normalization for the conversion of SequenceType to FormalType. The WGs have assigned this item to the Editors and will let them decide if they will adopt your proposed change. The Editors were optimistic that they will be able to adopt your change. In addition we have changed the Severity of this comment to Minor to indicate the two parts are being treated editorially. Please let us know if you are not satisifed with this response. Paul Cotton On behalf of the XML Query and XSL WGs
The WGs decided to keep the Note and to change the text "the static typing behaviour of" to "static type of". Please let know if you are not satisfied with this response. Paul Cotton On behalf of the XML Query and XSL WGs