- From: <bugzilla@jessica.w3.org>
- Date: Tue, 05 Feb 2013 11:10:03 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=20874 Bug ID: 20874 Summary: [XSLT 3.0] doubled curlies in AVTs and TVTs Classification: Unclassified Product: XPath / XQuery / XSLT Version: Member-only Editors Drafts Hardware: PC OS: All Status: NEW Severity: normal Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: mike@saxonica.com QA Contact: public-qt-comments@w3.org We currently describe the way curly brackets are escaped in a different way from the way XQuery does it, and there is one practical consequence of the difference: we have a rule that when the expression ends in "}", this must be separated from the delimiting "}" by a space, while XQuery has no such rule. The point is a little academic, since the result of the expression is always atomized, and the only expressions that can end in "}" (map constructors and function literals) cannot be atomized. But other expressions ending in "}" might be introduced in the future. When AVTs were introduced in 1.0, it was feasible to scan the text looking for the closing "}" delimiter, taking care to avoid catching a "}" that appeared inside a string literal, and then pass the text found within the braces to the XPath parser. The syntax of XPath has become too complicated for this to be a feasible approach anymore; you need to parse the XPath expression and then check whether the character that follows it is a closing "}". This makes the rule that a final "}" in the XPath expression must be separated by whitespace from the delimiting "}" nothing more than a nuisance, so I propose that we change it. I would suggest introducing a grammar similar to that used in XQuery: CVT ::= ((Char - '{}') | '{{' | '}}' | ('{' Expr '}') )* Test case cvt-016 is affected. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Tuesday, 5 February 2013 11:10:08 UTC