- From: <bugzilla@jessica.w3.org>
- Date: Tue, 28 Oct 2014 22:21:10 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=9026
Jonathan Robie <jonathan.robie@gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jonathan.robie@gmail.com
--- Comment #4 from Jonathan Robie <jonathan.robie@gmail.com> ---
Didn't we resolve this in Hurseley?
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Jul/0092.html
Q2.1.2 Update primitive items, PULs as items, and Bugzilla Bug 9026,
[Update 3.0] Inability to combine expressions creating pending updates & values
See https://lists.w3.org/Archives/Member/w3c-xsl-query/2013Jul/0101.html
Status: In progress; see
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Jan/0052.html,
et al, and
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Feb/0116.html, et seq
See
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Mar/0010.html
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Feb/0123.html
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Feb/0126.html
1. "Minimalist" solution (2014Feb/0126.html) but complex queries will
need extensive rewriting if they become updating
. least editing work
. probably least implementation work
. keeps the complexity of different kinds of expressions & how they combine
. "it's a hack"
. hard to retract later
2. Full query mode (Josh has indicated Oracle doesn't want to implement)
. hard to implement for some people
3. Allow more restrictive modes
4. Status quo
. we have a MUST requirement, may get formal objections
Need more feedback from implementors in the WG
(Ghislain's Proposal)
Can we make one of the modes be the proposal and get rid of the modes?
It'd have to be the partial mode.
re-reading Ghislain's proposal...
Jonathan: it'll probably take a couple more weeks to add Ghislain's
"partitioned" [Liam's term] proposal to update.
Can live with it. Preferable to modes. Seems only viable approach today.
DECISION: accept the partial query mode from Ghislain's proposal in
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Jan/0052.html
but allowing updates inside constructors for nodes, maps and arrays.
ACTION A-579-19: John Snelson to incorporate Ghislain's proposal from
https://lists.w3.org/Archives/Member/w3c-xsl-query/2014Jan/0052.html
into update spec, but allowing updates inside constructors for nodes,
maps and arrays. ETA 9th September.
Jonathan's notes from the discussion [[
. Minimalist solution
- requires expressions combining updates + values to be extensively
rewritten.
- least editing work, easiest to write up
- keeps the complexity of different kinds of expressions and how they
combine
2. "Full query mode" as the only mode
- Oracle won't implement
3. Allow more restrictive modes
- Modes? compatibility!
4. Status quo
-------------
* FLWOR Expressions
If the query mode is query, only the return clause may be updating.
If the query mode is full, the constraint that the nonreturn
clauses in a FLWOR expression must be simple is relaxed.
* Typeswitch Expressions
If the query mode is query, the test expression must be simple.
If the query mode is full, the constraint that the test
expression must be simple is relaxed.
* Conditional Expressions
If the query mode is query, the test expression must be simple.
If the query mode is full, the constraint that the test expression must be
simple is relaxed.
* Switch Expressions Constructor functions
Simple map expressions
Validate expressions
Transform expressions (modify operand may also be updating in "query"
query mode!)
If the query mode is query, the test expression and the test clauses must
be simple.
If the query mode is full, there is no constraint.
* Expressions that may be simple or updating:
If the query mode is full, the following expressions are updating
if one of their direct operands is updating, simple otherwise.
If the query mode is query though, they are always simple and
operands must be simple as well (except the modify clause of a transform
expression).
Filter expressions
a[b]
error if b is updating
Simple dynamic function calls (operands may still be updating in "full"
query mode!)
$a(b)
error if b is updating
Simple static function call (operands may still be updating in "full"
query mode!)
a(b)
error if b is updating
Path expressions
a/b
error if b is updating
Comma expressions
a,b
error if b is updating? a or b?
Arithmetic expressions
a*b
error if b is updating? a or b?
String concatenation expressions
Comparison expressions
Logical expressions
Quantified expressions
Node constructors
#### => Take this out of the list! (ask Josh nicely ....)
Unordered, ordered expressions
Instance/Cast/Castable/Treat expressions
Constructor functions
Simple map expressions
Validate expressions
Transform expressions (modify operand may also be updating in "query"
query mode!)
#=> Do not include map constructors, array constructors in this list
]]
--
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Tuesday, 28 October 2014 22:21:13 UTC