- From: <bugzilla@jessica.w3.org>
- Date: Thu, 11 Sep 2014 11:50:20 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=26784
Bug ID: 26784
Summary: [SER 3.1] Comments on JSON Serialization Method
Product: XPath / XQuery / XSLT
Version: Working drafts
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P2
Component: Serialization 3.1
Assignee: cmsmcq@blackmesatech.com
Reporter: mike@saxonica.com
QA Contact: public-qt-comments@w3.org
Apologies that this review could have been done months ago; I only just noticed
the spec.
The comment applies to XSLT and XQuery Serialization 3.1 dated 24 April 2014,
mainly section 9.
1. Serializing maps. After converting keys to strings there may be duplicate
keys, e.g. the string "2014-09-11" and the date 2014-09-11 are not equal but
both convert to the same string. What happens?
2. Serializing maps. Should be explicit that the serialization order of entries
is impl-dep.
3. The proposal is that nodes in the input should be atomized. I think it would
generally be more useful if they are serialized (using the XML output method
with default properties plus omit-xml-declaration="yes"). Also note,
atomization of a node does not produce a single atomic value, it produces a
sequence of atomic values.
4. indent: I think we should specify that if indent="no", the serializer must
output no whitepace between tokens (none is required to satisfy the grammar).
Because this could generate very long lines, while indent="yes" might generate
very verbose output, perhaps there's a need for an intermediate option to
insert a newline occasionally to limit the line length?
5. suppress-indentation: I can't see how this is relevant to JSON
serialization.
6. We should specify which characters should be escaped using JSON escape
sequences. Probably only (a) those where escaping is mandatory, e.g. backslash
and double-quotes, plus \n, \t etc; plus any characters that can't be
represented directly in the chosen encoding. (So encoding="us-ascii" forces
escaping of non-ASCII characters).
7. Section 9 (JSON output method) says that the effect of item-separator is
described in section 2 (Sequence Normalization), but section 2 (on my reading)
says that it does not apply to the JSON output method. (An alternative reading
is that sequence normalization is mandatory for all output methods except JSON,
where it is presumably optional...)
8. There seem to be values for which no JSON serialization is defined. For
example, sequences. What is the JSON serialization of (1 to 10)? Is this an
error? I would be inclined to serialize any sequence of length > 1 as an array.
9 Other values that cannot be serialized into legal JSON include INF, NaN, and
function items. These should probably be serialization errors.
--
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Thursday, 11 September 2014 11:50:31 UTC