- From: Michael Dyck <jmdyck@ibiblio.org>
- Date: Mon, 2 Nov 2015 18:44:08 -0500
- To: "public-xsl-query@w3.org" <public-xsl-query@w3.org>
> ACTION A-621-03: Michael Dyck to update the grammar for empty > expressions in braces. Done. I changed the grammar and also the conversion-to-XQueryX code. As I stated in an earlier post, the WG decision on this matter was not very clear. So here are the specific changes I made to the grammar. Please check if these are the desired changes. ------------------------------------------------------------------- The following grammar edits do not change the set of valid queries. In: CompAttrConstructor CompPIConstructor I changed: "{" Expr? "}" to: EnclosedExpr In: CompElemConstructor I changed: "{" ContentExpr? "}" to: EnclosedContentExpr ------------------------------------------------------------------ The following grammar edits *do* change the set of valid queries, and so should presumably have corresponding tests created/altered. In: CatchClause ValidateExpr OrderedExpr UnorderedExpr CompDocConstructor CompTextConstructor CompCommentConstructor I changed: "{" Expr "}" to: EnclosedExpr In: TryClause I changed: "{" TryTargetExpr "}" to: EnclosedTryTargetExpr In: CompNamespaceConstructor I changed: "{" PrefixExpr "}" to: EnclosedPrefixExpr and changed: "{" URIExpr "}" to: EnclosedURIExpr ------------------------------------------------------------------- There are a few remaining occurrences of braced Exprs (outside of EnclosedExpr): In: CompElemConstructor CompAttrConstructor CompPIConstructor I did NOT change: "{" Expr "}" because those are 'name expressions', which cannot legally yield empty sequence. In: ExtensionExpr I did NOT (ultimately) change: "{" Expr? "}" because an omitted Expr has different semantics there than it does elsewhere. (See https://lists.w3.org/Archives/Public/public-xsl-query/2015Nov/0000.html) Also, in CurlyArrayConstructor I did NOT change "{" Expr? "}" because it wasn't in the list of expressions to 'consider', despite that it presumably it has the "{} means {()}" semantics. (I say "presumably" because I don't think the spec actually defines the meaning of "array {}".) -Michael
Received on Monday, 2 November 2015 23:45:14 UTC