This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The rules for fn:parse-json say: If the escape option is set to true, escape sequences are retained in their escaped form, whether or not they represent valid characters. (This is in rule 3 underneath the options table. I would have expected to find it in the "escape=true" row of the table, but never mind.) This rule means that, for example, parse-json("\u0025" map{"escape":true()}) returns "\u0025" rather than "%". For the fn:json-to-xml() function I cannot find a corresponding rule. There doesn't seem to be anything that dictates whether "\u0025" should end up as <string escaped="true">\u0025</string> or as <string>%</string>. I suggest we adopt the same rule (and move it into the table, in both cases.)
The changes were agreed and have been applied.
This decision was subsequently reversed: see comment #11 et seq of bug #28812.