Merge lp:~zorba-coders/zorba/fn-serialize-json into lp:zorba

Proposed by Ghislain Fourny
Status: Rejected
Rejected by: Matthias Brantner
Proposed branch: lp:~zorba-coders/zorba/fn-serialize-json
Merge into: lp:zorba
Diff against target: 128 lines (+79/-0)
7 files modified
schemas/xslt-xquery-serialization.xsd (+44/-0)
test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-2.xml.res (+1/-0)
test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-3.xml.res (+1/-0)
test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize.xml.res (+1/-0)
test/rbkt/Queries/zorba/jsoniq/fn-serialize-2.xq (+7/-0)
test/rbkt/Queries/zorba/jsoniq/fn-serialize-3.xq (+19/-0)
test/rbkt/Queries/zorba/jsoniq/fn-serialize.xq (+6/-0)
To merge this branch: bzr merge lp:~zorba-coders/zorba/fn-serialize-json
Reviewer Review Type Date Requested Status
Chris Hillery Pending
Matthias Brantner Pending
Review via email: mp+120569@code.launchpad.net

Commit message

Allowing fn:serialize to also serialize JSON/JSONiq.

Description of the change

Allowing fn:serialize to also serialize JSON/JSONiq.

To post a comment you must log in.
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue job fn-serialize-json-2012-08-21T13-52-54.553Z is finished. The final status was:

All tests succeeded!

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Voting does not meet specified criteria. Required: Approve > 1, Disapprove < 1, Needs Fixing < 1, Pending < 1. Got: 2 Pending.

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue job fn-serialize-json-2012-08-21T15-24-00.276Z is finished. The final status was:

All tests succeeded!

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Voting does not meet specified criteria. Required: Approve > 1, Disapprove < 1, Needs Fixing < 1, Pending < 1. Got: 2 Pending.

Revision history for this message
Matthias Brantner (matthias-brantner) wrote :

I would like to finish the discussion about serialization before we merge this fix.

Revision history for this message
Matthias Brantner (matthias-brantner) wrote :

I think this branch has become obsolete with the latest discussion about serialization.

@Ghislain: do you agree? If so, could you please mark the merge proposal as "rejected"?

Unmerged revisions

10996. By Ghislain Fourny

Adding test and modified schema.

10995. By Ghislain Fourny

Adding tests as well as JSONiq serialization parameters.

10994. By Ghislain Fourny

Added json and jsoniq to allowed methods in fn:serialize.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'schemas/xslt-xquery-serialization.xsd'
2--- schemas/xslt-xquery-serialization.xsd 2012-08-16 18:31:02 +0000
3+++ schemas/xslt-xquery-serialization.xsd 2012-08-21 14:08:21 +0000
4@@ -61,6 +61,8 @@
5 <xs:enumeration value="text"/>
6 <xs:enumeration value="xml"/>
7 <xs:enumeration value="xhtml"/>
8+ <xs:enumeration value="json"/>
9+ <xs:enumeration value="jsoniq"/>
10 </xs:restriction>
11 </xs:simpleType>
12 <xs:simpleType>
13@@ -324,6 +326,48 @@
14 type="output:string-param-type"
15 substitutionGroup="output:serialization-parameter-element"/>
16
17+ <!-- <JSONiq> -->
18+
19+ <!--
20+ - Serialization parameter element for jsoniq-extensions parameter
21+ -->
22+ <xs:element id="jsoniq-extensions" name="jsoniq-extensions" type="output:yes-no-param-type"
23+ substitutionGroup="output:serialization-parameter-element"/>
24+
25+ <!--
26+ - Serialization parameter element for jsoniq-xdm-node-output-method
27+ - parameter
28+ -->
29+ <xs:element id="jsoniq-xdm-node-output-method" name="jsoniq-xdm-node-output-method" type="output:method-param-type"
30+ substitutionGroup="output:serialization-parameter-element"/>
31+
32+ <!--
33+ - Serialization parameter type for jsoniq-multiple-items
34+ - serialization parameters
35+ -->
36+ <xs:complexType name="jsoniq-multiple-items-param-type">
37+ <xs:complexContent>
38+ <xs:extension base="output:base-param-type">
39+ <xs:attribute name="value" use="required">
40+ <xs:simpleType>
41+ <xs:restriction base="xs:token">
42+ <xs:enumeration value="no"/>
43+ <xs:enumeration value="array"/>
44+ <xs:enumeration value="appended"/>
45+ </xs:restriction>
46+ </xs:simpleType>
47+ </xs:attribute>
48+ </xs:extension>
49+ </xs:complexContent>
50+ </xs:complexType>
51+
52+ <!--
53+ - Serialization parameter element for jsoniq-multiple-items parameter
54+ -->
55+ <xs:element id="jsoniq-multiple-items" name="jsoniq-multiple-items" type="output:jsoniq-multiple-items-param-type"
56+ substitutionGroup="output:serialization-parameter-element"/>
57+
58+ <!-- </JSONiq> -->
59 <xs:element name="serialization-parameters">
60 <xs:complexType>
61 <xs:sequence>
62
63=== added file 'test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-2.xml.res'
64--- test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-2.xml.res 1970-01-01 00:00:00 +0000
65+++ test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-2.xml.res 2012-08-21 14:08:21 +0000
66@@ -0,0 +1,1 @@
67+<json>{ "foo" : "bar" }{ "bar" : "blub" }</json>
68
69=== added file 'test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-3.xml.res'
70--- test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-3.xml.res 1970-01-01 00:00:00 +0000
71+++ test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize-3.xml.res 2012-08-21 14:08:21 +0000
72@@ -0,0 +1,1 @@
73+{ "a1" : { "JSONiq XDM node" : "&lt;a1&gt;1&lt;/a1&gt;" } }{ "a2" : { "JSONiq XDM node" : "&lt;a2&gt;2&lt;/a2&gt;" } }{ "a3" : { "JSONiq XDM node" : "&lt;a3&gt;3&lt;/a3&gt;" } }
74
75=== added file 'test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize.xml.res'
76--- test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize.xml.res 1970-01-01 00:00:00 +0000
77+++ test/rbkt/ExpQueryResults/zorba/jsoniq/fn-serialize.xml.res 2012-08-21 14:08:21 +0000
78@@ -0,0 +1,1 @@
79+<json>{ "foo" : "bar" }</json>
80
81=== added file 'test/rbkt/Queries/zorba/jsoniq/fn-serialize-2.xq'
82--- test/rbkt/Queries/zorba/jsoniq/fn-serialize-2.xq 1970-01-01 00:00:00 +0000
83+++ test/rbkt/Queries/zorba/jsoniq/fn-serialize-2.xq 2012-08-21 14:08:21 +0000
84@@ -0,0 +1,7 @@
85+<json>{
86+ fn:serialize(({ "foo" : "bar"}, { "bar" : "blub" }),
87+ <output:serialization-parameters xmlns:output="http://www.w3.org/2010/xslt-xquery-serialization">
88+ <output:method value="json"/>
89+ <output:jsoniq-multiple-items value="appended"/>
90+ </output:serialization-parameters>)
91+}</json>
92\ No newline at end of file
93
94=== added file 'test/rbkt/Queries/zorba/jsoniq/fn-serialize-3.xq'
95--- test/rbkt/Queries/zorba/jsoniq/fn-serialize-3.xq 1970-01-01 00:00:00 +0000
96+++ test/rbkt/Queries/zorba/jsoniq/fn-serialize-3.xq 2012-08-21 14:08:21 +0000
97@@ -0,0 +1,19 @@
98+import schema namespace out = "http://www.w3.org/2010/xslt-xquery-serialization";
99+
100+let $params :=
101+ <out:serialization-parameters>
102+ <out:indent value="no" />
103+
104+ <out:jsoniq-extensions value="yes" />
105+ <out:jsoniq-xdm-node-output-method value="xml" />
106+ <out:jsoniq-multiple-items value="appended" />
107+ </out:serialization-parameters>
108+return
109+ serialize(
110+ for $i in 1 to 3
111+ let $name := "a" || $i,
112+ $value := element { $name } { $i }
113+ return
114+ { $name : $value },
115+ $params
116+ )
117
118=== added file 'test/rbkt/Queries/zorba/jsoniq/fn-serialize.xq'
119--- test/rbkt/Queries/zorba/jsoniq/fn-serialize.xq 1970-01-01 00:00:00 +0000
120+++ test/rbkt/Queries/zorba/jsoniq/fn-serialize.xq 2012-08-21 14:08:21 +0000
121@@ -0,0 +1,6 @@
122+<json>{
123+ fn:serialize({ "foo" : "bar"},
124+ <output:serialization-parameters xmlns:output="http://www.w3.org/2010/xslt-xquery-serialization">
125+ <output:method value="json"/>
126+ </output:serialization-parameters>)
127+}</json>
128\ No newline at end of file

Subscribers

People subscribed via source and target branches