You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vxquery.apache.org by pr...@apache.org on 2016/07/26 19:18:38 UTC
vxquery git commit: Implementation of Array Libraries and Testing
Repository: vxquery
Updated Branches:
refs/heads/master 0361e4f20 -> d553a8c30
Implementation of Array Libraries and Testing
Project: http://git-wip-us.apache.org/repos/asf/vxquery/repo
Commit: http://git-wip-us.apache.org/repos/asf/vxquery/commit/d553a8c3
Tree: http://git-wip-us.apache.org/repos/asf/vxquery/tree/d553a8c3
Diff: http://git-wip-us.apache.org/repos/asf/vxquery/diff/d553a8c3
Branch: refs/heads/master
Commit: d553a8c30a37babde8fc8ef10ee2b8429cfaddd5
Parents: 0361e4f
Author: Christina Pavlopoulou <cp...@ucr.edu>
Authored: Mon Jul 18 18:59:59 2016 -0700
Committer: Christina Pavlopoulou <cp...@ucr.edu>
Committed: Tue Jul 26 11:08:45 2016 -0700
----------------------------------------------------------------------
.../vxquery/functions/builtin-functions.xml | 14 +
...nDescendantArraysScalarEvaluatorFactory.java | 139 +++++
.../LibjnFlattenScalarEvaluatorFactory.java | 107 ++++
.../Json/Libraries/descendant_arrays.txt | 3 +
.../Json/Libraries/descendant_arrays2.txt | 4 +
.../Json/Libraries/flatten.txt | 9 +
.../XQuery/Json/Libraries/descendant_arrays.xq | 24 +
.../XQuery/Json/Libraries/descendant_arrays2.xq | 24 +
.../Queries/XQuery/Json/Libraries/flatten.xq | 29 ++
.../src/test/resources/VXQueryCatalog.xml | 501 +++++++++----------
.../test/resources/cat/LibrariesInJSONiq.xml | 38 ++
11 files changed, 638 insertions(+), 254 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-functions.xml
----------------------------------------------------------------------
diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-functions.xml b/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-functions.xml
index 27f0768..8f777a5 100644
--- a/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-functions.xml
+++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-functions.xml
@@ -1191,4 +1191,18 @@
<return type="js:null"/>
<runtime type="scalar" class="org.apache.vxquery.runtime.functions.json.JnNullScalarEvaluatorFactory"/>
</function>
+
+ <!-- libjn:descendant-arrays($sequence as item()*) as array()* -->
+ <function name="libjn:descendant-arrays">
+ <param name="sequence" type="item()*"/>
+ <return type="json-item()*"/>
+ <runtime type="scalar" class="org.apache.vxquery.runtime.functions.json.LibjnDescendantArraysScalarEvaluatorFactory"/>
+ </function>
+
+ <!-- libjn:flatten($sequence as item()*) as item()* -->
+ <function name="libjn:flatten">
+ <param name="sequence" type="item()*"/>
+ <return type="item()*"/>
+ <runtime type="scalar" class="org.apache.vxquery.runtime.functions.json.LibjnFlattenScalarEvaluatorFactory"/>
+ </function>
</functions>
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnDescendantArraysScalarEvaluatorFactory.java
----------------------------------------------------------------------
diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnDescendantArraysScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnDescendantArraysScalarEvaluatorFactory.java
new file mode 100644
index 0000000..7896555
--- /dev/null
+++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnDescendantArraysScalarEvaluatorFactory.java
@@ -0,0 +1,139 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.vxquery.runtime.functions.json;
+
+import java.io.IOException;
+
+import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
+import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator;
+import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory;
+import org.apache.hyracks.api.context.IHyracksTaskContext;
+import org.apache.hyracks.data.std.api.IPointable;
+import org.apache.hyracks.data.std.primitive.UTF8StringPointable;
+import org.apache.hyracks.data.std.util.ArrayBackedValueStorage;
+import org.apache.vxquery.datamodel.accessors.SequencePointable;
+import org.apache.vxquery.datamodel.accessors.TaggedValuePointable;
+import org.apache.vxquery.datamodel.accessors.jsonitem.ArrayPointable;
+import org.apache.vxquery.datamodel.accessors.jsonitem.ObjectPointable;
+import org.apache.vxquery.datamodel.builders.sequence.SequenceBuilder;
+import org.apache.vxquery.datamodel.values.ValueTag;
+import org.apache.vxquery.datamodel.values.XDMConstants;
+import org.apache.vxquery.exceptions.ErrorCode;
+import org.apache.vxquery.exceptions.SystemException;
+import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator;
+import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory;
+
+public class LibjnDescendantArraysScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory {
+
+ private static final long serialVersionUID = 1L;
+
+ public LibjnDescendantArraysScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) {
+ super(args);
+ }
+
+ @Override
+ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args)
+ throws AlgebricksException {
+ final SequencePointable sp = (SequencePointable) SequencePointable.FACTORY.createPointable();
+ final ArrayPointable ap = (ArrayPointable) ArrayPointable.FACTORY.createPointable();
+ final ObjectPointable op = (ObjectPointable) ObjectPointable.FACTORY.createPointable();
+ final UTF8StringPointable stringp = (UTF8StringPointable) UTF8StringPointable.FACTORY.createPointable();
+ final SequenceBuilder sb = new SequenceBuilder();
+ final ArrayBackedValueStorage abvs = new ArrayBackedValueStorage();
+
+ return new AbstractTaggedValueArgumentScalarEvaluator(args) {
+
+ @Override
+ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException {
+ abvs.reset();
+ sb.reset(abvs);
+ TaggedValuePointable tvp = args[0];
+ if (tvp.getTag() == ValueTag.SEQUENCE_TAG) {
+ TaggedValuePointable tempTvp = ppool.takeOne(TaggedValuePointable.class);
+ tvp.getValue(sp);
+ int size = sp.getEntryCount();
+ for (int i = 0; i < size; i++) {
+ sp.getEntry(i, tempTvp);
+ if (tempTvp.getTag() == ValueTag.ARRAY_TAG) {
+ nested(tempTvp, ap);
+ }
+ if (tempTvp.getTag() == ValueTag.OBJECT_TAG) {
+ insideObject(tempTvp);
+ }
+ }
+ ppool.giveBack(tempTvp);
+ } else if (tvp.getTag() == ValueTag.ARRAY_TAG) {
+ nested(tvp, ap);
+ } else if (tvp.getTag() == ValueTag.OBJECT_TAG) {
+ insideObject(tvp);
+ } else {
+ XDMConstants.setEmptySequence(tvp);
+ }
+ try {
+ sb.finish();
+ result.set(abvs);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ }
+
+ public void nested(TaggedValuePointable tvp, ArrayPointable ap) throws SystemException {
+ TaggedValuePointable tempTvp = ppool.takeOne(TaggedValuePointable.class);
+ ArrayPointable tempAp = ppool.takeOne(ArrayPointable.class);
+ appendSequence(tvp, ap);
+ int size = ap.getEntryCount();
+ for (int i = 0; i < size; i++) {
+
+ ap.getEntry(i, tempTvp);
+ if (tempTvp.getTag() == ValueTag.ARRAY_TAG) {
+ nested(tempTvp, tempAp);
+ }
+ }
+ ppool.giveBack(tempTvp);
+ ppool.giveBack(tempAp);
+ }
+
+ public void appendSequence(TaggedValuePointable tvp, ArrayPointable ap) throws SystemException {
+ tvp.getValue(ap);
+ try {
+ sb.addItem(tvp);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ }
+
+ public void insideObject(TaggedValuePointable tvp) throws SystemException {
+ tvp.getValue(op);
+ TaggedValuePointable tempTvp = ppool.takeOne(TaggedValuePointable.class);
+ try {
+ op.getKeys(tvp);
+ tvp.getValue(stringp);
+ op.getValue(stringp, tempTvp);
+ } catch (IOException e1) {
+ throw new SystemException(ErrorCode.SYSE0001, e1);
+ }
+ if (tempTvp.getTag() == ValueTag.OBJECT_TAG) {
+ insideObject(tempTvp);
+ } else {
+ nested(tempTvp, ap);
+ }
+ ppool.giveBack(tempTvp);
+ }
+ };
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnFlattenScalarEvaluatorFactory.java
----------------------------------------------------------------------
diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnFlattenScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnFlattenScalarEvaluatorFactory.java
new file mode 100644
index 0000000..2e3e901
--- /dev/null
+++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/json/LibjnFlattenScalarEvaluatorFactory.java
@@ -0,0 +1,107 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.vxquery.runtime.functions.json;
+
+import java.io.IOException;
+
+import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
+import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator;
+import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory;
+import org.apache.hyracks.api.context.IHyracksTaskContext;
+import org.apache.hyracks.data.std.api.IPointable;
+import org.apache.hyracks.data.std.util.ArrayBackedValueStorage;
+import org.apache.vxquery.datamodel.accessors.SequencePointable;
+import org.apache.vxquery.datamodel.accessors.TaggedValuePointable;
+import org.apache.vxquery.datamodel.accessors.jsonitem.ArrayPointable;
+import org.apache.vxquery.datamodel.builders.sequence.SequenceBuilder;
+import org.apache.vxquery.datamodel.values.ValueTag;
+import org.apache.vxquery.exceptions.ErrorCode;
+import org.apache.vxquery.exceptions.SystemException;
+import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator;
+import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory;
+
+public class LibjnFlattenScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory {
+
+ private static final long serialVersionUID = 1L;
+
+ public LibjnFlattenScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) {
+ super(args);
+ }
+
+ @Override
+ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args)
+ throws AlgebricksException {
+ final SequencePointable sp = (SequencePointable) SequencePointable.FACTORY.createPointable();
+ final SequenceBuilder sb = new SequenceBuilder();
+ final ArrayBackedValueStorage abvs = new ArrayBackedValueStorage();
+
+ return new AbstractTaggedValueArgumentScalarEvaluator(args) {
+
+ @Override
+ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException {
+ abvs.reset();
+ sb.reset(abvs);
+ TaggedValuePointable tvp = args[0];
+ if (tvp.getTag() == ValueTag.SEQUENCE_TAG) {
+ TaggedValuePointable tempTvp = ppool.takeOne(TaggedValuePointable.class);
+ tvp.getValue(sp);
+ int size = sp.getEntryCount();
+ for (int i = 0; i < size; i++) {
+ sp.getEntry(i, tempTvp);
+ flatten(tempTvp);
+ }
+ ppool.giveBack(tempTvp);
+ } else {
+ flatten(tvp);
+ }
+ try {
+ sb.finish();
+ result.set(abvs);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ }
+
+ public void loopInsideArray(TaggedValuePointable tvp) throws SystemException {
+ TaggedValuePointable tempTvp = ppool.takeOne(TaggedValuePointable.class);
+ ArrayPointable ap = ppool.takeOne(ArrayPointable.class);
+ tvp.getValue(ap);
+ int size = ap.getEntryCount();
+ for (int i = 0; i < size; i++) {
+ ap.getEntry(i, tempTvp);
+ flatten(tempTvp);
+ }
+ ppool.giveBack(tempTvp);
+ ppool.giveBack(ap);
+ }
+
+ public void flatten(TaggedValuePointable tvp) throws SystemException {
+ if (tvp.getTag() == ValueTag.ARRAY_TAG) {
+ loopInsideArray(tvp);
+ } else {
+ try {
+ sb.addItem(tvp);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ }
+ }
+
+ };
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays.txt
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays.txt b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays.txt
new file mode 100644
index 0000000..4ce97f8
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays.txt
@@ -0,0 +1,3 @@
+[1,2]
+[[{"foo":"bar","bar":"foo"}]]
+[{"foo":"bar","bar":"foo"}]
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays2.txt
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays2.txt b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays2.txt
new file mode 100644
index 0000000..69ce1ea
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/descendant_arrays2.txt
@@ -0,0 +1,4 @@
+[1,2]
+[[{"foo":"bar","bar":"foo"}],[1,2]]
+[{"foo":"bar","bar":"foo"}]
+[1,2]
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/flatten.txt
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/flatten.txt b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/flatten.txt
new file mode 100644
index 0000000..1674b85
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/ExpectedTestResults/Json/Libraries/flatten.txt
@@ -0,0 +1,9 @@
+{"foo":{"bar":[1,2]}}
+1
+2
+{"foo":"bar","bar":"foo"}
+3
+4
+true
+1
+null
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays.xq
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays.xq
new file mode 100644
index 0000000..3f48494
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays.xq
@@ -0,0 +1,24 @@
+(: Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License. :)
+
+(: JSONiq libjn:descendant_arrays :)
+(
+ libjn:descendant-arrays(({ "foo" : { "bar" : [ 1, 2 ] } },
+ [ [ { "foo" : "bar", "bar" : "foo" } ] ],true(),
+ 1,
+ jn:null()))
+)
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays2.xq
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays2.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays2.xq
new file mode 100644
index 0000000..17aedfc
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/descendant_arrays2.xq
@@ -0,0 +1,24 @@
+(: Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License. :)
+
+(: JSONiq libjn:descendant_arrays :)
+(
+ libjn:descendant-arrays(({ "foo" : { "bar" : [ 1, 2 ] } },
+ [ [ { "foo" : "bar", "bar" : "foo" } ],[1,2] ],true(),
+ 1,
+ jn:null()))
+)
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/flatten.xq
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/flatten.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/flatten.xq
new file mode 100644
index 0000000..98106c6
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Json/Libraries/flatten.xq
@@ -0,0 +1,29 @@
+(: Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License. :)
+
+(: JSONiq libjn:flatten :)
+(
+ libjn:flatten(
+ (
+ { "foo" : { "bar" : [ 1, 2 ] } },
+ [ 1, 2, [ { "foo" : "bar", "bar" : "foo" } ], 3, 4 ],
+ true(),
+ 1,
+ jn:null()
+ )
+)
+)
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/VXQueryCatalog.xml b/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
index 0ac46f4..e8a3a43 100644
--- a/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
+++ b/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
@@ -50,297 +50,290 @@
<!ENTITY JsonObjectNavigationQueries SYSTEM "cat/JsonObjectNavigationQueries.xml">
<!ENTITY JsonArrayNavigationQueries SYSTEM "cat/JsonArrayNavigationQueries.xml">
<!ENTITY JsonParserQueries SYSTEM "cat/JsonParserQueries.xml">
+<!ENTITY LibrariesInJSONiq SYSTEM "cat/LibrariesInJSONiq.xml">
<!ENTITY TraceQuery SYSTEM "cat/TraceQuery.xml">
]>
-<test-suite xmlns="http://www.w3.org/2005/02/query-test-XQTSCatalog"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- CatalogDesignDate="2014-04-01"
- version="0.0.1"
- SourceOffsetPath="./"
- ResultOffsetPath="ExpectedTestResults/"
- XQueryQueryOffsetPath="Queries/XQuery/"
- XQueryXQueryOffsetPath="Queries/XQueryX/"
- XQueryFileExtension=".xq"
- XQueryXFileExtension=".xqx"
- xsi:schemaLocation="http://www.w3.org/2005/02/query-test-XQTSCatalog XQTSCatalog.xsd">
- <test-suite-info>
- <title>VXQuery Test Suite</title>
- <description>
- Test Suite for VXQuery.
- </description>
- </test-suite-info>
- <sources>
- <source ID="VXQueryCatalog" FileName="VXQueryCatalog.xml" Creator="VXQuery team">
- <description last-mod="2014-04-02">VXQuery Test Suite Catalog</description>
- </source>
- <source ID="ghcnd" FileName="TestSources/ghcnd" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_half_1" FileName="TestSources/ghcnd/half_1" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_half_2" FileName="TestSources/ghcnd/half_2" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_quarter_1" FileName="TestSources/ghcnd/half_1/quarter_1" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_quarter_2" FileName="TestSources/ghcnd/half_1/quarter_2" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_quarter_3" FileName="TestSources/ghcnd/half_2/quarter_3" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="ghcnd_quarter_4" FileName="TestSources/ghcnd/half_2/quarter_4" Creator="Preston Carman">
- <description last-mod="2014-04-02">Collection of files</description>
- </source>
- <source ID="jsonCollection" FileName="TestSources/jsonCollection" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_half_1" FileName="TestSources/jsonCollection/half_1" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_half_2" FileName="TestSources/jsonCollection/half_2" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_quarter_1" FileName="TestSources/jsonCollection/half_1/quarter_1" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_quarter_2" FileName="TestSources/jsonCollection/half_1/quarter_2" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_quarter_3" FileName="TestSources/jsonCollection/half_2/quarter_3" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="json_quarter_4" FileName="TestSources/jsonCollection/half_2/quarter_4" Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-12">Collection of files</description>
- </source>
- <source ID="station_xml_file" FileName="TestSources/ghcnd/half_1/quarter_1/stations/US000000001.xml"
- Creator="Shivani Mall">
- <description last-mod="2015-06-26">File</description>
- </source>
- <source ID="array_json_file" FileName="TestSources/json/array/array.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="int_json_file" FileName="TestSources/json/atomic_int.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="double_json_file" FileName="TestSources/json/atomic_double.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="string_json_file" FileName="TestSources/json/atomic_string.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="nested_arrays_json_file" FileName="TestSources/json/array/nested_array.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="object_json_file" FileName="TestSources/json/object/object.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="nested_object_json_file" FileName="TestSources/json/object/nested_object.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="nested_object_array_json_file" FileName="TestSources/json/object/nested_object_array.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-02">File</description>
- </source>
- <source ID="nested_array_object_json_file" FileName="TestSources/json/array/nested_array_object.json"
- Creator="Christina Pavlopoulou">
- <description last-mod="2016-07-05">File</description>
- </source>
- </sources>
- <test-group name="SingleQuery" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Single Query</title>
- <description/>
- </GroupInfo>
- <test-group name="SingleTestAdd" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Single Test Add</title>
+<test-suite xmlns="http://www.w3.org/2005/02/query-test-XQTSCatalog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" CatalogDesignDate="2014-04-01" version="0.0.1" SourceOffsetPath="./" ResultOffsetPath="ExpectedTestResults/" XQueryQueryOffsetPath="Queries/XQuery/" XQueryXQueryOffsetPath="Queries/XQueryX/" XQueryFileExtension=".xq" XQueryXFileExtension=".xqx" xsi:schemaLocation="http://www.w3.org/2005/02/query-test-XQTSCatalog XQTSCatalog.xsd">
+ <test-suite-info>
+ <title>VXQuery Test Suite</title>
+ <description>
+ Test Suite for VXQuery.
+ </description>
+ </test-suite-info>
+ <sources>
+ <source ID="VXQueryCatalog" FileName="VXQueryCatalog.xml" Creator="VXQuery team">
+ <description last-mod="2014-04-02">VXQuery Test Suite Catalog</description>
+ </source>
+ <source ID="ghcnd" FileName="TestSources/ghcnd" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_half_1" FileName="TestSources/ghcnd/half_1" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_half_2" FileName="TestSources/ghcnd/half_2" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_quarter_1" FileName="TestSources/ghcnd/half_1/quarter_1" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_quarter_2" FileName="TestSources/ghcnd/half_1/quarter_2" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_quarter_3" FileName="TestSources/ghcnd/half_2/quarter_3" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="ghcnd_quarter_4" FileName="TestSources/ghcnd/half_2/quarter_4" Creator="Preston Carman">
+ <description last-mod="2014-04-02">Collection of files</description>
+ </source>
+ <source ID="jsonCollection" FileName="TestSources/jsonCollection" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_half_1" FileName="TestSources/jsonCollection/half_1" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_half_2" FileName="TestSources/jsonCollection/half_2" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_quarter_1" FileName="TestSources/jsonCollection/half_1/quarter_1" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_quarter_2" FileName="TestSources/jsonCollection/half_1/quarter_2" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_quarter_3" FileName="TestSources/jsonCollection/half_2/quarter_3" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="json_quarter_4" FileName="TestSources/jsonCollection/half_2/quarter_4" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-12">Collection of files</description>
+ </source>
+ <source ID="station_xml_file" FileName="TestSources/ghcnd/half_1/quarter_1/stations/US000000001.xml" Creator="Shivani Mall">
+ <description last-mod="2015-06-26">File</description>
+ </source>
+ <source ID="array_json_file" FileName="TestSources/json/array/array.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="int_json_file" FileName="TestSources/json/atomic_int.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="double_json_file" FileName="TestSources/json/atomic_double.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="string_json_file" FileName="TestSources/json/atomic_string.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="nested_arrays_json_file" FileName="TestSources/json/array/nested_array.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="object_json_file" FileName="TestSources/json/object/object.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="nested_object_json_file" FileName="TestSources/json/object/nested_object.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="nested_object_array_json_file" FileName="TestSources/json/object/nested_object_array.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-02">File</description>
+ </source>
+ <source ID="nested_array_object_json_file" FileName="TestSources/json/array/nested_array_object.json" Creator="Christina Pavlopoulou">
+ <description last-mod="2016-07-05">File</description>
+ </source>
+ </sources>
+ <test-group name="SingleQuery" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Single Query</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="SingleTestAdd" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Single Test Add</title>
+ <description/>
+ </GroupInfo>
&SingleQuery;
- </test-group>
- <test-group name="SingleTestList" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Single Test List</title>
- <description/>
- </GroupInfo>
+ </test-group>
+ <test-group name="SingleTestList" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Single Test List</title>
+ <description/>
+ </GroupInfo>
&SingleAlternateQuery;
- </test-group>
- </test-group>
- <test-group name="AggregatePartitionQueries" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Aggregate Partition Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="AggregateParallelExecutionTests" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Aggregate Parallel Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="AggregatePartitionQueries" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Aggregate Partition Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="AggregateParallelExecutionTests" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Aggregate Parallel Execution Tests</title>
+ <description/>
+ </GroupInfo>
&AggregatePartition1Queries;
&AggregatePartition2Queries;
&AggregatePartition4Queries;
- </test-group>
- </test-group>
- <test-group name="FunctionsAndOperatorsOnNumericsQueries" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Functions And Operators On Numerics Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="FunctionsAndOperatorsOnNumericsExecutionTests" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Functions And Operators On Numerics Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="FunctionsAndOperatorsOnNumericsQueries" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Functions And Operators On Numerics Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="FunctionsAndOperatorsOnNumericsExecutionTests" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Functions And Operators On Numerics Execution Tests</title>
+ <description/>
+ </GroupInfo>
&FunctionsAndOperatorsOnNumericsQueries;
- </test-group>
- </test-group>
- <test-group name="FunctionsAndOperatorsThatGenerateSequencesQueries" featureOwner="Shivani Mall">
- <GroupInfo>
- <title>Functions And Operators That Generate Sequences Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="FunctionsAndOperatorsThatGenerateSequencesTests" featureOwner="Shivani Mall">
- <GroupInfo>
- <title>Functions And Operators That Generate Sequences Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="FunctionsAndOperatorsThatGenerateSequencesQueries" featureOwner="Shivani Mall">
+ <GroupInfo>
+ <title>Functions And Operators That Generate Sequences Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="FunctionsAndOperatorsThatGenerateSequencesTests" featureOwner="Shivani Mall">
+ <GroupInfo>
+ <title>Functions And Operators That Generate Sequences Execution Tests</title>
+ <description/>
+ </GroupInfo>
&FunctionsAndOperatorsThatGenerateSequences;
- </test-group>
- </test-group>
- <test-group name="GhcndPartitionQueries" featureOwner="Preston Carman">
- <GroupInfo>
- <title>GHCND Partition Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="ParallelExecutionTests" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Parallel Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="GhcndPartitionQueries" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>GHCND Partition Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="ParallelExecutionTests" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Parallel Execution Tests</title>
+ <description/>
+ </GroupInfo>
&GhcndPartition1Queries;
&GhcndPartition2Queries;
&GhcndPartition4Queries;
- </test-group>
- </test-group>
- <test-group name="GhcndCountPartitionQueries" featureOwner="Preston Carman">
- <GroupInfo>
- <title>GHCND Count Partition Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="CountParallelExecutionTests" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Parallel Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="GhcndCountPartitionQueries" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>GHCND Count Partition Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="CountParallelExecutionTests" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Parallel Execution Tests</title>
+ <description/>
+ </GroupInfo>
&GhcndCountPartition1Queries;
&GhcndCountPartition2Queries;
&GhcndCountPartition4Queries;
- </test-group>
- </test-group>
- <test-group name="GhcndRecordsPartitionQueries" featureOwner="Preston Carman">
- <GroupInfo>
- <title>GHCND Records Partition Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="RecordsParallelExecutionTests" featureOwner="Preston Carman">
- <GroupInfo>
- <title>Records Parallel Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="GhcndRecordsPartitionQueries" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>GHCND Records Partition Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="RecordsParallelExecutionTests" featureOwner="Preston Carman">
+ <GroupInfo>
+ <title>Records Parallel Execution Tests</title>
+ <description/>
+ </GroupInfo>
&GhcndRecordsPartition1Queries;
&GhcndRecordsPartition2Queries;
&GhcndRecordsPartition4Queries;
- </test-group>
- </test-group>
- <test-group name="HDFSAggregateQueries" featureOwner="Efi Kaltirimidou">
- <GroupInfo>
- <title>Aggregate Partition Queries in HDFS</title>
- <description/>
- </GroupInfo>
- <test-group name="CollectionReadFromHDFSAggregateTests" featureOwner="Efi Kaltirimidou">
- <GroupInfo>
- <title>Aggregate HDFS Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="HDFSAggregateQueries" featureOwner="Efi Kaltirimidou">
+ <GroupInfo>
+ <title>Aggregate Partition Queries in HDFS</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="CollectionReadFromHDFSAggregateTests" featureOwner="Efi Kaltirimidou">
+ <GroupInfo>
+ <title>Aggregate HDFS Execution Tests</title>
+ <description/>
+ </GroupInfo>
&HDFSAggregateQueries;
- </test-group>
- </test-group>
- <test-group name="IndexingQueries" featureOwner="Steven Jacobs">
- <GroupInfo>
- <title>Indexing Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="IndexingTests" featureOwner="Steven Jacobs">
- <GroupInfo>
- <title>Indexing Execution Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="IndexingQueries" featureOwner="Steven Jacobs">
+ <GroupInfo>
+ <title>Indexing Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="IndexingTests" featureOwner="Steven Jacobs">
+ <GroupInfo>
+ <title>Indexing Execution Tests</title>
+ <description/>
+ </GroupInfo>
&IndexingQueries;
- </test-group>
- </test-group>
- <test-group name="JsoniqQueries" featureOwner="Christina Pavlopoulou">
- <GroupInfo>
- <title>Jsoniq Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="JsoniqTesting" featureOwner="Christina Pavlopoulou">
- <GroupInfo>
- <title>Json Constructor Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="JsoniqQueries" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Jsoniq Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="JsoniqTesting" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Json Constructor Tests</title>
+ <description/>
+ </GroupInfo>
&JsonArrayQueries;
&JsonObjectQueries;
- </test-group>
- </test-group>
- <test-group name="FunctionsInJSONiq" featureOwner="Riyafa Abdul Hameed">
- <GroupInfo>
- <title>Functions in JSONiq</title>
- <description>The functions extended and newly created for JSONiq</description>
- </GroupInfo>
- <test-group name="FunctionsInJSONiqTesting" featureOwner="Riyafa Abdul Hameed">
- <GroupInfo>
- <title>Tests for functions in JSONiq</title>
- </GroupInfo>
+ </test-group>
+ </test-group>
+ <test-group name="FunctionsInJSONiq" featureOwner="Riyafa Abdul Hameed">
+ <GroupInfo>
+ <title>Functions in JSONiq</title>
+ <description>The functions extended and newly created for JSONiq</description>
+ </GroupInfo>
+ <test-group name="FunctionsInJSONiqTesting" featureOwner="Riyafa Abdul Hameed">
+ <GroupInfo>
+ <title>Tests for functions in JSONiq</title>
+ </GroupInfo>
&FunctionsInJSONiq;
- </test-group>
- </test-group>
- <test-group name="JsonNavigation" featureOwner="Riyafa Abdul Hameed">
- <GroupInfo>
- <title>Json navigation queries</title>
- <description>Json navigation tests</description>
- </GroupInfo>
- <test-group name="JsonNavigationTesting" featureOwner="Riyafa Abdul Hameed">
- <GroupInfo>
- <title>Json navigation tests</title>
- </GroupInfo>
+ </test-group>
+ </test-group>
+ <test-group name="JsonNavigation" featureOwner="Riyafa Abdul Hameed">
+ <GroupInfo>
+ <title>Json navigation queries</title>
+ <description>Json navigation tests</description>
+ </GroupInfo>
+ <test-group name="JsonNavigationTesting" featureOwner="Riyafa Abdul Hameed">
+ <GroupInfo>
+ <title>Json navigation tests</title>
+ </GroupInfo>
&JsonObjectNavigationQueries;
&JsonArrayNavigationQueries;
&JsonParserQueries;
- </test-group>
- </test-group>
- <test-group name="TraceQuery" featureOwner="Christina Pavlopoulou">
- <GroupInfo>
- <title>Trace Function Queries</title>
- <description/>
- </GroupInfo>
- <test-group name="TraceTesting" featureOwner="Christina Pavlopoulou">
- <GroupInfo>
- <title>Trace Function Tests</title>
+ </test-group>
+ </test-group>
+ <test-group name="TraceQuery" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Trace Function Queries</title>
<description/>
- </GroupInfo>
+ </GroupInfo>
+ <test-group name="TraceTesting" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Trace Function Tests</title>
+ <description/>
+ </GroupInfo>
&TraceQuery;
- </test-group>
- </test-group>
-</test-suite>
\ No newline at end of file
+ </test-group>
+ </test-group>
+ <test-group name="LibrariesInJSONiq" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Libraries in JSONiq</title>
+ <description>Libraries created for JSONiq</description>
+ </GroupInfo>
+ <test-group name="LibrariesInJSONiqTesting" featureOwner="Christina Pavlopoulou">
+ <GroupInfo>
+ <title>Tests for libraries in JSONiq</title>
+ </GroupInfo>
+ &LibrariesInJSONiq;
+ </test-group>
+ </test-group>
+</test-suite>
http://git-wip-us.apache.org/repos/asf/vxquery/blob/d553a8c3/vxquery-xtest/src/test/resources/cat/LibrariesInJSONiq.xml
----------------------------------------------------------------------
diff --git a/vxquery-xtest/src/test/resources/cat/LibrariesInJSONiq.xml b/vxquery-xtest/src/test/resources/cat/LibrariesInJSONiq.xml
new file mode 100644
index 0000000..4c18447
--- /dev/null
+++ b/vxquery-xtest/src/test/resources/cat/LibrariesInJSONiq.xml
@@ -0,0 +1,38 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<test-group xmlns="http://www.w3.org/2005/02/query-test-XQTSCatalog" name="JsonArrayQueries" featureOwner="VXQuery">
+ <GroupInfo>
+ <title>Json Libraries</title>
+ <description/>
+ </GroupInfo>
+ <test-case name="descendant-arrays" FilePath="Json/Libraries/" Creator="Christina Pavlopoulou">
+ <description>Json Libraries.</description>
+ <query name="descendant_arrays" date="2016-07-18"/>
+ <output-file compare="Text">descendant_arrays.txt</output-file>
+ </test-case>
+ <test-case name="descendant-arrays2" FilePath="Json/Libraries/" Creator="Christina Pavlopoulou">
+ <description>Json Libraries.</description>
+ <query name="descendant_arrays2" date="2016-07-19"/>
+ <output-file compare="Text">descendant_arrays2.txt</output-file>
+ </test-case>
+ <test-case name="flatten" FilePath="Json/Libraries/" Creator="Christina Pavlopoulou">
+ <description>Json Libraries.</description>
+ <query name="flatten" date="2016-07-20"/>
+ <output-file compare="Text">flatten.txt</output-file>
+ </test-case>
+</test-group>