zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #06412
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
Nicolae Brinza has proposed merging lp:~nbrinza/zorba/parse-fragment into lp:zorba.
Requested reviews:
William Candillon (wcandillon)
Matthias Brantner (matthias-brantner)
David Graf (davidagraf)
For more details, see:
https://code.launchpad.net/~nbrinza/zorba/parse-fragment/+merge/97701
Fully streaming parse-xml module.
--
https://code.launchpad.net/~nbrinza/zorba/parse-fragment/+merge/97701
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2012-03-12 20:01:39 +0000
+++ CMakeLists.txt 2012-03-15 17:04:36 +0000
@@ -237,11 +237,21 @@
MESSAGE(STATUS "Looking for LibXml2")
FIND_PACKAGE(LibXml2)
IF(LIBXML2_FOUND)
- MESSAGE(STATUS "Found LIBXML2 library -- " ${LIBXML2_LIBRARIES})
-
- INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
- SET(requiredlibs-store ${requiredlibs-store} ${LIBXML2_LIBRARIES})
- SET(CXXFLAGS ${CXXFLAGS} ${LIBXML2_DEFINITONS})
+ # Now check LibXml2's version
+ FILE(STRINGS ${LIBXML2_INCLUDE_DIR}/libxml/xmlversion.h LIBXML2_VERSION_TMP REGEX
+ "^#define[ \t]+LIBXML_DOTTED_VERSION[ \t]+\".*\"")
+ STRING(REGEX REPLACE "^#define[ \t]+LIBXML_DOTTED_VERSION[ \t]+\"(.*)\"" "\\1"
+ LIBXML2_VERSION ${LIBXML2_VERSION_TMP})
+
+ IF(LIBXML2_VERSION VERSION_EQUAL "2.7.0" OR LIBXML2_VERSION VERSION_GREATER "2.7.0")
+ MESSAGE(STATUS "Found LIBXML2 library -- " ${LIBXML2_LIBRARIES})
+ INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
+ SET(requiredlibs-store ${requiredlibs-store} ${LIBXML2_LIBRARIES})
+ SET(CXXFLAGS ${CXXFLAGS} ${LIBXML2_DEFINITONS})
+ ELSE(LIBXML2_VERSION VERSION_EQUAL "2.7.0" OR LIBXML2_VERSION VERSION_GREATER "2.7.0")
+ MESSAGE(FATAL_ERROR "The libxml2 library version 2.7.0 or higher is required in order to build Zorba.")
+ ENDIF(LIBXML2_VERSION VERSION_EQUAL "2.7.0" OR LIBXML2_VERSION VERSION_GREATER "2.7.0")
+
ELSE(LIBXML2_FOUND)
MESSAGE(FATAL_ERROR "The libxml2 library and headers are required in order to build simple store.")
ENDIF(LIBXML2_FOUND)
=== modified file 'ChangeLog'
--- ChangeLog 2012-03-12 20:01:39 +0000
+++ ChangeLog 2012-03-15 17:04:36 +0000
@@ -6,6 +6,8 @@
* Add --compile-plan (-c) and --execute-plan (-e) options to zorba command line.
* Add XQuery 3.0 concat operator (http://www.w3.org/TR/xquery-30/#id-string-concat-expr)
* New URI module providing percent-decoding functions.
+ * The core parse-xml module is now able to parse input files in a streaming mode. A number of new options have also been added.
+ * LibXml2 version 2.7.0 or higher is now required in order to build Zorba.
* Added index management function to the C++ api's StaticCollectionManager.
* Added createDayTimeDuration, createYearMonthDuration, createDocumentNode, createCommentNode, createPiNode to api's ItemFactory.
* Fixed bug #905050 (setting and getting the context item type via the c++ api).
=== modified file 'modules/com/zorba-xquery/www/modules/CMakeLists.txt'
--- modules/com/zorba-xquery/www/modules/CMakeLists.txt 2012-03-07 15:49:25 +0000
+++ modules/com/zorba-xquery/www/modules/CMakeLists.txt 2012-03-15 17:04:36 +0000
@@ -63,6 +63,8 @@
URI "http://www.zorba-xquery.com/modules/schema")
DECLARE_ZORBA_MODULE(FILE string.xq VERSION 2.1
URI "http://www.zorba-xquery.com/modules/string")
+DECLARE_ZORBA_SCHEMA(FILE xml-options.xsd
+ URI "http://www.zorba-xquery.com/modules/xml-options")
DECLARE_ZORBA_MODULE(FILE uri.xq VERSION 1.0
URI "http://www.zorba-xquery.com/modules/uri")
DECLARE_ZORBA_MODULE(FILE xml.xq VERSION 2.0
=== added file 'modules/com/zorba-xquery/www/modules/xml-options.xsd'
--- modules/com/zorba-xquery/www/modules/xml-options.xsd 1970-01-01 00:00:00 +0000
+++ modules/com/zorba-xquery/www/modules/xml-options.xsd 2012-03-15 17:04:36 +0000
@@ -0,0 +1,86 @@
+<?xml version="1.0"?>
+<!--
+ - Copyright 2006-2012 The FLWOR Foundation.
+ -
+ - Licensed 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.
+-->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.zorba-xquery.com/modules/xml-options"
+ elementFormDefault="qualified" attributeFormDefault="qualified">
+
+ <element name="options">
+ <complexType>
+ <all>
+
+ <element name="base-uri" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <attribute name="value" type="anyURI" use="required"/>
+ </complexType>
+ </element>
+ <element name="no-error" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="schema-validate" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <attribute name="mode" default="strict">
+ <simpleType>
+ <restriction base="string">
+ <enumeration value="strict"/>
+ <enumeration value="lax"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ </complexType>
+ </element>
+ <element name="DTD-validate" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="DTD-load" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="default-DTD-attributes" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="parse-external-parsed-entity" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <attribute name="skip-root-nodes" use="optional">
+ <simpleType>
+ <restriction base="int">
+ <minInclusive value="0"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ <attribute name="skip-top-level-text-nodes" type="boolean" use="optional"/>
+ </complexType>
+ </element>
+ <element name="substitute-entities" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="xinclude-substitutions" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="remove-redundant-ns" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="no-CDATA" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+ <element name="no-xinclude-nodes" minOccurs="0" maxOccurs="1">
+ <complexType/>
+ </element>
+
+ </all>
+ </complexType>
+ </element>
+
+</schema>
=== modified file 'modules/com/zorba-xquery/www/modules/xml.xq' (properties changed: +x to -x)
--- modules/com/zorba-xquery/www/modules/xml.xq 2011-08-10 02:50:23 +0000
+++ modules/com/zorba-xquery/www/modules/xml.xq 2012-03-15 17:04:36 +0000
@@ -1,4 +1,4 @@
-xquery version "1.0";
+xquery version "3.0";
(:
: Copyright 2006-2010 The FLWOR Foundation.
@@ -23,13 +23,46 @@
: external parsed entities, described by
: <a href="http://www.w3.org/TR/xml/#wf-entities">XML 1.0 Well-Formed
: Parsed Entities</a>. The functions can also perform Schema and DTD
- : validation of the input documents.
+ : validation of the input documents.
: </p>
:
+ : <p>The following example parses a sequence of XML elements and returns
+ : them in a streaming fashion - each at a time:</p>
+ :
+ : <pre class="brush: xquery;">
+ : import module namespace parse-xml = "http://www.zorba-xquery.com/modules/xml";
+ : import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+ : parse-xml:parse(
+ : "<from1>Jani</from1><from2>Jani</from2><from3>Jani</from3>",
+ : <opt:options>
+ : <opt:parse-external-parsed-entity/>
+ : </opt:options>
+ : )
+ : </pre>
+ :
+ : <p>Another useful option allows to skip an arbitrary number of levels
+ : before returning a sequence of nodes as shown in the following example:</p>
+ :
+ : <pre class="brush: xquery;">
+ : import module namespace parse-xml = "http://www.zorba-xquery.com/modules/xml";
+ : import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+ : parse-xml:parse(
+ : "<root>
+ : <from1>Jani1</from1>
+ : <from2>Jani2</from2>
+ : <from3>Jani3</from3>
+ : </root>",
+ : <opt:options>
+ : <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ : </opt:options>
+ : )
+ : </pre>
+ :
: @see <a href="http://www.w3.org/TR/xml/#wf-entities">XML 1.0 Well-Formed
: Parsed Entities</a>
: @see <a href="http://www.w3.org/TR/xpath-functions-30/#func-parse-xml">
: fn:parse-xml() function in XPath and XQuery Functions and Operators 3.0</a>
+ : @see <a href="http://xmlsoft.org/html/libxml-parser.html">LibXml2 parser</a>
:
: @author Nicolae Brinza
: @project data processing/data converters
@@ -37,6 +70,8 @@
:)
module namespace parse-xml = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace parse-xml-options = "http://www.zorba-xquery.com/modules/xml-options";
+
declare namespace zerr = "http://www.zorba-xquery.com/errors";
declare namespace err = "http://www.w3.org/xqt-errors";
@@ -48,6 +83,159 @@
: A function to parse XML files and fragments (i.e.
: <a href="http://www.w3.org/TR/xml/#wf-entities">external general parsed
: entities</a>). The functions takes two arguments: the first one is the
+ : string to be parsed and the second argument is an <options/> element that
+ : passes a list of options to the parsing function. They are described below.
+ : The options element must conform to the xml-options.xsd schema. Some of these
+ : will be passed to the underlying library (LibXml2) and further documentation
+ : for them can be found at <a href="http://xmlsoft.org/html/libxml-parser.html">
+ : LibXml2 parser</a>.
+ :
+ : The list of available options:
+ :
+ : <ul>
+ : <li>
+ : <base-uri/> - the element must have a "value" attribute, which will provide
+ : the baseURI that will be used as the baseURI for every node returned by this
+ : function.
+ : </li>
+ :
+ : <li>
+ : <no-error/> - if present, the option will disable fatal error processing. Any
+ : failure to parse or validate the input in the requested manner will result
+ : in the function returning an empty sequence and no error will raised.
+ : </li>
+ :
+ : <li>
+ : <schema-validate/> - if present, it will request that the input string be Schema
+ : validated. The element accepts an attribute named "mode" which can have two
+ : values: "strict and "lax". Enabling the option will produce a result that is
+ : equivalent to processing the input with the option disabled, and then copying
+ : the result using the XQuery "validate strict|lax" expression. This option can not
+ : be used together with either the <DTD-validate/> or the <parse-external-parsed-entity/>
+ : option. Doing so will raise a zerr:ZXQD0003 error.
+ : </li>
+ :
+ : <li>
+ : <DTD-validate/> - the option will enable the DTD-based validation. If this
+ : option is enabled and the input references a DTD, then the input must be a
+ : well-formed and DTD-valid XML document. The <DTD-load/> option must be used for
+ : external DTD files to be loaded. If the option is enabled and the input does
+ : not reference a DTD then the option is ignored. If the option is disabled, the
+ : input is not required to reference a DTD and if it does reference a DTD then
+ : the DTD is ignored for validation purposes. This option can not
+ : be used together with either the <schema-validate/> or the <parse-external-parsed-entity>
+ : option. Doing so will raise a zerr:ZXQD0003 error.
+ : </li>
+ :
+ : <li>
+ : <DTD-load/> - if present, it will enable loading of external DTD files.
+ : </li>
+ :
+ : <li>
+ : <default-DTD-attributes/> - if present, it will enable the default DTD attributes.
+ : </li>
+ :
+ : <li>
+ : <parse-external-parsed-entity/> - if present, it will enable the processing of XML
+ : external entities. If the option
+ : is enabled, the input must conform to the syntax extParsedEnt (production
+ : [78] in XML 1.0, see <a href="http://www.w3.org/TR/xml/#wf-entities">
+ : Well-Formed Parsed Entities</a>). The result of the function call is a list
+ : of nodes corresponding to the top-level components of the content of the
+ : external entity: that is, elements, processing instructions, comments, and
+ : text nodes. CDATA sections and character references are expanded, and
+ : adjacent characters are merged so the result contains no adjacent text
+ : nodes. If the option is disabled, the input must be a well-formed XML
+ : document conforming to the Document production
+ : (<a href="http://www.w3.org/TR/xml/#sec-well-formed">production [1] in XML 1.0</a>).
+ : This option can not be used together with either the <schema-validate/> or the <DTD-validate/>
+ : option. Doing so will raise a zerr:ZXQD0003 error.
+ : The <parse-external-parsed-entity/> option has two parameters, given by attributes. The first
+ : attribute is "skip-root-nodes" and it can have a non-negative value. Specifying the paramter
+ : tells the parser to skip the given number of root nodes and return only their children. E.g.
+ : skip-root-nodes="1" is equivalent to parse-xml($xml-string)/node()/node() . skip-root-nodes="2" is equivalent
+ : to parse-xml($xml-string)/node()/node()/node() , etc. The second attribute is "skip-top-level-text-nodes" with a
+ : boolean value. Specifying "true" will tell the parser to skip top level text nodes, returning
+ : only the top level elements, comments, PIs, etc. This parameter works in combination with
+ : the "skip-root-nodes" paramter, thus top level text nodes are skipped after "skip-root-nodes" has
+ : been applied.
+ : </li>
+ :
+ : <li>
+ : <substitute-entities/> - if present, it will enable the XML entities substitutions.
+ : </li>
+ :
+ : <li>
+ : <remove-redundant-ns/> - if present, the parser will remove redundant namespaces declarations.
+ : </li>
+ :
+ : <li>
+ : <no-CDATA/> - if present, the parser will merge CDATA nodes as text nodes.
+ : </li>
+ :
+ : <li>
+ : <xinclude-substitutions/> - if present, it will enable the XInclude substitutions.
+ : </li>
+ :
+ : <li>
+ : <no-xinclude-nodes/> - if present, the parser will not generate XInclude START/END nodes.
+ : </li>
+ :
+ : </ul>
+ :
+ : <p>
+ : An example that sets the base-uri of the parsed external entities:
+ : </p>
+ : <pre class="brush: xquery;">
+ : import module namespace parse-xml = "http://www.zorba-xquery.com/modules/xml";
+ : import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+ : parse-xml:parse("<from1>Jani</from1><from2>Jani</from2><from3>Jani</from3>",
+ : <opt:options>
+ : <opt:base-uri opt:value="urn:test"/>
+ : <opt:parse-external-parsed-entity/>
+ : </opt:options>
+ : )
+ : </pre>
+ :
+ : @param $xml-string The string that holds the XML to be parsed. If empty,
+ : the function will return an empty sequence
+ : @param $options The options for the parsing
+ : @return The parsed XML as a document node or a list of nodes, or an empty
+ : sequence.
+ :
+ : @error zerr:ZXQD0003 The error will be raised if the options to the function
+ : are inconsistent.
+ :
+ : @error err:FODC0006 The error will be raised if the input string is not a
+ : valid XML document or fragment (external general parsed
+ : entity) or if DTD validation was enabled and the
+ : document has not passed it.
+ :
+ : @error err:XQDY0027 The error will be raised if schema validation was enabled
+ : and the input document has not passed it or if the parsing options are not
+ : conformant to the xml-options.xsd schema.
+ :
+ :
+ :
+ : @example test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-03.xq
+ : @example test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-01.xq
+ : @example test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-07.xq
+ :
+ :)
+declare function parse-xml:parse(
+ $xml-string as xs:string?,
+ $options as element()?) as node()* external;
+
+
+(:~
+ : <br/><p>
+ : Note: this function is included for backwards compatibility purposes. It
+ : is recommended that you use the parse-xml:parse() function instead.
+ : </p><br/>
+ :
+ : A function to parse XML files and fragments (i.e.
+ : <a href="http://www.w3.org/TR/xml/#wf-entities">external general parsed
+ : entities</a>). The functions takes two arguments: the first one is the
: string to be parsed and the second argument is a flags string
: (eEdDsSlLwWfF]*(;[\p{L}]*)?) selecting the options described below.
: <br/>
@@ -136,10 +324,35 @@
:)
declare function parse-xml:parse-xml-fragment(
$xml-string as xs:string?,
- $options as xs:string) as node()* external;
+ $options as xs:string) as node()*
+{
+ let $new_options := <parse-xml-options:options>{
+ if (contains($options, "e"))
+ then <parse-xml-options:parse-external-parsed-entity/> else (),
+ if (contains($options, "d"))
+ then <parse-xml-options:DTD-validate/> else (),
+ if (contains($options, "s"))
+ then <parse-xml-options:schema-validate parse-xml-options:mode="strict"/>
+ else (),
+ if (contains($options, "l"))
+ then <parse-xml-options:schema-validate parse-xml-options:mode="lax"/>
+ else (),
+ if (contains($options, "w"))
+ then <parse-xml-options:strip-boundary-space/> else (),
+ if (contains($options, "f"))
+ then <parse-xml-options:no-error/> else ()
+ }</parse-xml-options:options>
+ return
+ parse-xml:parse($xml-string, $new_options)
+};
(:~
+ : <br/><p>
+ : Note: this function is included for backwards compatibility purposes. It
+ : is recommended that you use the parse-xml:parse() function instead.
+ : </p><br/>
+ :
: A function to parse XML files and fragments. The behavior is the
: same as the parse-xml-fragment with two arguments.
:
@@ -169,4 +382,27 @@
declare function parse-xml:parse-xml-fragment(
$xml-string as xs:string?,
$base-uri as xs:string,
- $options as xs:string) as node()* external;
+ $options as xs:string) as node()*
+{
+ let $new_options := <parse-xml-options:options>{
+ if (contains($options, "e"))
+ then <parse-xml-options:parse-external-parsed-entity/> else (),
+ if (contains($options, "d"))
+ then <parse-xml-options:DTD-validate/> else (),
+ if (contains($options, "s"))
+ then <parse-xml-options:schema-validate parse-xml-options:mode="strict"/>
+ else (),
+ if (contains($options, "l"))
+ then <parse-xml-options:schema-validate parse-xml-options:mode="lax"/>
+ else (),
+ if (contains($options, "w"))
+ then <parse-xml-options:strip-boundary-space/> else (),
+ if (contains($options, "f"))
+ then <parse-xml-options:no-error/> else (),
+ <parse-xml-options:base-uri>{
+ attribute{xs:QName("parse-xml-options:value")}{$base-uri}}
+ </parse-xml-options:base-uri>
+ }</parse-xml-options:options>
+ return
+ parse-xml:parse($xml-string, $new_options)
+};
=== modified file 'src/api/annotationimpl.cpp' (properties changed: +x to -x)
=== modified file 'src/api/xmldatamanagerimpl.cpp'
--- src/api/xmldatamanagerimpl.cpp 2012-01-23 10:06:24 +0000
+++ src/api/xmldatamanagerimpl.cpp 2012-03-15 17:04:36 +0000
@@ -75,7 +75,7 @@
********************************************************************************/
XmlDataManagerImpl::XmlDataManagerImpl()
- :
+ :
theDocManager(0),
theColManager(0),
theW3CColManager(0)
@@ -126,7 +126,9 @@
std::ostringstream lProlog;
lProlog
<< "import module namespace d = '" << static_context::ZORBA_FETCH_FN_NS << "';"
- << "import module namespace x = '" << static_context::ZORBA_XML_FN_NS << "';";
+ << "import module namespace x = '" << static_context::ZORBA_XML_FN_NS << "';"
+ << "import schema namespace opt = '" << static_context::ZORBA_XML_FN_OPTIONS_NS << "';";
+
theContext->loadProlog(lProlog.str(), lHints);
}
@@ -151,7 +153,7 @@
DocumentManager*
XmlDataManagerImpl::getDocumentManager() const
{
- if (!theDocManager)
+ if (!theDocManager)
{
theDocManager = new DocumentManagerImpl(theContext, theFactory);
theDocManager->registerDiagnosticHandler(theDiagnosticHandler);
@@ -166,7 +168,7 @@
CollectionManager*
XmlDataManagerImpl::getCollectionManager() const
{
- if (!theColManager)
+ if (!theColManager)
{
theColManager = new CollectionManagerImpl(
theContext,
@@ -185,7 +187,7 @@
CollectionManager*
XmlDataManagerImpl::getW3CCollectionManager() const
{
- if (!theW3CColManager)
+ if (!theW3CColManager)
{
theW3CColManager = new CollectionManagerImpl(
theContext,
@@ -280,21 +282,34 @@
ZORBA_DM_TRY
{
Item lQName = theFactory->createQName(static_context::ZORBA_XML_FN_NS,
- "parse-xml-fragment");
+ "parse");
// create a streamable string item
std::vector<ItemSequence_t> lArgs;
- lArgs.push_back(
- new SingletonItemSequence(theFactory->createStreamableString(aStream,
- &streamReleaser)));
-
- std::ostringstream lOptions;
- lOptions << (aOptions.isDtdValidationEnabled()?"d":"D");
-
- lOptions << (aOptions.isExternalEntityProcessingEnabled()?"e":"E");
-
- lArgs.push_back(
- new SingletonItemSequence(theFactory->createString(lOptions.str())));
+ lArgs.push_back(new SingletonItemSequence(
+ theFactory->createStreamableString(aStream, &streamReleaser)));
+
+ Item empty_item;
+ Item validated_options;
+ NsBindings nsPairs;
+ Item untyped_type = theFactory->createQName("http://www.w3.org/2001/XMLSchema", "xs", "untyped");
+ Item options_node = theFactory->createElementNode(empty_item,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "options"),
+ untyped_type, false, false, nsPairs);
+
+ if (aOptions.isDtdValidationEnabled())
+ theFactory->createElementNode(options_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "DTD-validate"),
+ untyped_type, false, false, nsPairs);
+
+ if (aOptions.isExternalEntityProcessingEnabled())
+ theFactory->createElementNode(options_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "parse-external-parsed-entity"),
+ untyped_type, false, false, nsPairs);
+
+ theContext->validate(options_node, validated_options, validate_strict);
+
+ lArgs.push_back(new SingletonItemSequence(validated_options));
return theContext->invoke(lQName, lArgs);
}
@@ -315,23 +330,42 @@
ZORBA_DM_TRY
{
Item lQName = theFactory->createQName(static_context::ZORBA_XML_FN_NS,
- "parse-xml-fragment");
+ "parse");
// create a streamable string item
std::vector<ItemSequence_t> lArgs;
- lArgs.push_back(
- new SingletonItemSequence(theFactory->createStreamableString(aStream,
- &streamReleaser)));
- lArgs.push_back(
- new SingletonItemSequence(theFactory->createString(aBaseURI)));
-
- std::ostringstream lOptions;
- lOptions << (aOptions.isDtdValidationEnabled()?"d":"D");
-
- lOptions << (aOptions.isExternalEntityProcessingEnabled()?"e":"E");
-
- lArgs.push_back(
- new SingletonItemSequence(theFactory->createString(lOptions.str())));
+ lArgs.push_back(new SingletonItemSequence(
+ theFactory->createStreamableString(aStream, &streamReleaser)));
+
+ Item empty_item;
+ Item validated_options;
+ NsBindings nsPairs;
+ Item untyped_type = theFactory->createQName("http://www.w3.org/2001/XMLSchema", "xs", "untyped");
+ Item options_node = theFactory->createElementNode(empty_item,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "options"),
+ untyped_type, false, false, nsPairs);
+
+ if (aOptions.isDtdValidationEnabled())
+ theFactory->createElementNode(options_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "DTD-validate"),
+ untyped_type, false, false, nsPairs);
+
+ if (aOptions.isExternalEntityProcessingEnabled())
+ theFactory->createElementNode(options_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "parse-external-parsed-entity"),
+ untyped_type, false, false, nsPairs);
+
+ Item base_uri_node = theFactory->createElementNode(options_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "base-uri"),
+ untyped_type, false, false, nsPairs);
+ theFactory->createAttributeNode(base_uri_node,
+ theFactory->createQName(static_context::ZORBA_XML_FN_OPTIONS_NS, "value"),
+ Item(),
+ theFactory->createString(aBaseURI));
+
+ theContext->validate(options_node, validated_options, validate_strict);
+
+ lArgs.push_back(new SingletonItemSequence(validated_options));
return theContext->invoke(lQName, lArgs);
}
@@ -382,15 +416,15 @@
theDiagnosticHandler = aDiagnosticHandler;
theUserDiagnosticHandler = true;
- if (theColManager)
+ if (theColManager)
{
theColManager->registerDiagnosticHandler(theDiagnosticHandler);
}
- if (theDocManager)
+ if (theDocManager)
{
theDocManager->registerDiagnosticHandler(theDiagnosticHandler);
}
- if (theW3CColManager)
+ if (theW3CColManager)
{
theW3CColManager->registerDiagnosticHandler(theDiagnosticHandler);
}
@@ -400,17 +434,17 @@
/*******************************************************************************
********************************************************************************/
-void XmlDataManagerImpl::registerStemmerProvider(StemmerProvider const *p)
+void XmlDataManagerImpl::registerStemmerProvider(StemmerProvider const *p)
{
SYNC_CODE(AutoLatch lock(theLatch, Latch::WRITE);)
- if ( theStemmerProviderWrapper )
+ if ( theStemmerProviderWrapper )
{
if ( theStemmerProviderWrapper->get_provider() == p )
return;
delete theStemmerProviderWrapper;
theStemmerProviderWrapper = nullptr;
}
- if ( p )
+ if ( p )
{
theStemmerProviderWrapper = new internal::StemmerProviderWrapper( p );
theStore->setStemmerProvider( theStemmerProviderWrapper );
@@ -421,7 +455,7 @@
/*******************************************************************************
********************************************************************************/
-void XmlDataManagerImpl::registerTokenizerProvider(TokenizerProvider const *p)
+void XmlDataManagerImpl::registerTokenizerProvider(TokenizerProvider const *p)
{
SYNC_CODE(AutoLatch lock(theLatch, Latch::WRITE);)
theStore->setTokenizerProvider( p );
=== modified file 'src/context/static_context.cpp'
--- src/context/static_context.cpp 2012-03-07 15:49:25 +0000
+++ src/context/static_context.cpp 2012-03-15 17:04:36 +0000
@@ -273,11 +273,11 @@
static_context::W3C_XML_NS = "http://www.w3.org/XML/1998/namespace";
const char*
-static_context::ZORBA_MATH_FN_NS =
+static_context::ZORBA_MATH_FN_NS =
"http://www.zorba-xquery.com/modules/math";
const char*
-static_context::ZORBA_BASE64_FN_NS =
+static_context::ZORBA_BASE64_FN_NS =
"http://www.zorba-xquery.com/modules/converters/base64";
@@ -286,11 +286,11 @@
"http://www.zorba-xquery.com/modules/converters/json";
const char*
-static_context::ZORBA_NODEREF_FN_NS =
+static_context::ZORBA_NODEREF_FN_NS =
"http://www.zorba-xquery.com/modules/node-reference";
const char*
-static_context::ZORBA_NODEPOS_FN_NS =
+static_context::ZORBA_NODEPOS_FN_NS =
"http://www.zorba-xquery.com/modules/node-position";
const char*
@@ -298,121 +298,126 @@
"http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl";
const char*
-static_context::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_FN_NS =
+static_context::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_FN_NS =
"http://www.zorba-xquery.com/modules/store/dynamic/collections/dml";
const char*
-static_context::ZORBA_STORE_STATIC_COLLECTIONS_DDL_FN_NS =
+static_context::ZORBA_STORE_STATIC_COLLECTIONS_DDL_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/collections/ddl";
const char*
-static_context::ZORBA_STORE_STATIC_COLLECTIONS_DML_FN_NS =
+static_context::ZORBA_STORE_STATIC_COLLECTIONS_DML_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/collections/dml";
const char*
-static_context::ZORBA_STORE_STATIC_INDEXES_DDL_FN_NS =
+static_context::ZORBA_STORE_STATIC_INDEXES_DDL_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/indexes/ddl";
const char*
-static_context::ZORBA_STORE_STATIC_INDEXES_DML_FN_NS =
+static_context::ZORBA_STORE_STATIC_INDEXES_DML_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/indexes/dml";
const char*
-static_context::ZORBA_STORE_STATIC_INTEGRITY_CONSTRAINTS_DDL_FN_NS =
+static_context::ZORBA_STORE_STATIC_INTEGRITY_CONSTRAINTS_DDL_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl";
const char*
-static_context::ZORBA_STORE_STATIC_INTEGRITY_CONSTRAINTS_DML_FN_NS =
+static_context::ZORBA_STORE_STATIC_INTEGRITY_CONSTRAINTS_DML_FN_NS =
"http://www.zorba-xquery.com/modules/store/static/integrity_constraints/dml";
const char*
-static_context::ZORBA_STORE_DYNAMIC_DOCUMENTS_FN_NS =
+static_context::ZORBA_STORE_DYNAMIC_DOCUMENTS_FN_NS =
"http://www.zorba-xquery.com/modules/store/dynamic/documents";
const char*
-static_context::ZORBA_STORE_DYNAMIC_UNORDERED_MAP_FN_NS =
+static_context::ZORBA_STORE_DYNAMIC_UNORDERED_MAP_FN_NS =
"http://www.zorba-xquery.com/modules/store/data-structures/unordered-map";
const char*
-static_context::ZORBA_SCHEMA_FN_NS =
+static_context::ZORBA_SCHEMA_FN_NS =
"http://www.zorba-xquery.com/modules/schema";
const char*
-static_context::ZORBA_XQDOC_FN_NS =
+static_context::ZORBA_XQDOC_FN_NS =
"http://www.zorba-xquery.com/modules/xqdoc";
const char*
-static_context::ZORBA_RANDOM_FN_NS =
+static_context::ZORBA_RANDOM_FN_NS =
"http://www.zorba-xquery.com/modules/random";
const char*
-static_context::ZORBA_INTROSP_SCTX_FN_NS =
+static_context::ZORBA_INTROSP_SCTX_FN_NS =
"http://www.zorba-xquery.com/modules/introspection/sctx";
const char*
-static_context::ZORBA_REFLECTION_FN_NS =
+static_context::ZORBA_REFLECTION_FN_NS =
"http://www.zorba-xquery.com/modules/reflection";
const char*
-static_context::ZORBA_UTIL_FN_NS =
+static_context::ZORBA_UTIL_FN_NS =
"http://www.zorba-xquery.com/zorba/util-functions";
const char*
-static_context::ZORBA_SCRIPTING_FN_NS =
+static_context::ZORBA_SCRIPTING_FN_NS =
"http://www.zorba-xquery.com/zorba/scripting";
const char*
-static_context::ZORBA_STRING_FN_NS =
+static_context::ZORBA_STRING_FN_NS =
"http://www.zorba-xquery.com/modules/string";
const char*
-static_context::ZORBA_URI_FN_NS =
+static_context::ZORBA_URI_FN_NS =
"http://www.zorba-xquery.com/modules/uri";
const char*
-static_context::ZORBA_FETCH_FN_NS =
+static_context::ZORBA_FETCH_FN_NS =
"http://www.zorba-xquery.com/modules/fetch";
const char*
-static_context::ZORBA_NODE_FN_NS =
+static_context::ZORBA_NODE_FN_NS =
"http://www.zorba-xquery.com/modules/node";
const char*
-static_context::ZORBA_XML_FN_NS =
+static_context::ZORBA_XML_FN_NS =
"http://www.zorba-xquery.com/modules/xml";
+const char*
+static_context::ZORBA_XML_FN_OPTIONS_NS =
+"http://www.zorba-xquery.com/modules/xml-options";
+
+
/***************************************************************************//**
Target namespaces of zorba reserved modules
********************************************************************************/
const char*
-static_context::XQUERY_OP_NS =
+static_context::XQUERY_OP_NS =
"http://www.zorba-xquery.com/internal/xquery-ops";
const char*
-static_context::ZORBA_OP_NS =
+static_context::ZORBA_OP_NS =
"http://www.zorba-xquery.com/internal/zorba-ops";
/***************************************************************************//**
Options-related namespaces
********************************************************************************/
-const char*
-static_context::ZORBA_OPTIONS_NS =
+const char*
+static_context::ZORBA_OPTIONS_NS =
"http://www.zorba-xquery.com/options";
-const char*
-static_context::ZORBA_OPTION_WARN_NS =
+const char*
+static_context::ZORBA_OPTION_WARN_NS =
"http://www.zorba-xquery.com/options/warnings";
-const char*
-static_context::ZORBA_OPTION_FEATURE_NS =
+const char*
+static_context::ZORBA_OPTION_FEATURE_NS =
"http://www.zorba-xquery.com/options/features";
-const char*
-static_context::ZORBA_OPTION_OPTIM_NS =
+const char*
+static_context::ZORBA_OPTION_OPTIM_NS =
"http://www.zorba-xquery.com/options/optimizer";
-const char*
-static_context::ZORBA_VERSIONING_NS =
+const char*
+static_context::ZORBA_VERSIONING_NS =
"http://www.zorba-xquery.com/options/versioning";
@@ -450,7 +455,7 @@
ns == ZORBA_FETCH_FN_NS ||
ns == ZORBA_NODE_FN_NS ||
ns == ZORBA_XML_FN_NS);
- }
+ }
else if (ns == W3C_FN_NS || ns == XQUERY_MATH_FN_NS)
{
return true;
@@ -496,7 +501,8 @@
ns == ZORBA_STRING_FN_NS ||
ns == ZORBA_JSON_FN_NS ||
ns == ZORBA_URI_FN_NS ||
- ns == ZORBA_RANDOM_FN_NS);
+ ns == ZORBA_RANDOM_FN_NS ||
+ ns == ZORBA_XML_FN_NS);
}
return false;
@@ -527,7 +533,7 @@
if (lVarName == static_context::DOT_POS_VAR_NAME)
{
lVarName = "context position";
- }
+ }
else if (lVarName == static_context::DOT_SIZE_VAR_NAME)
{
lVarName = "context size";
@@ -715,7 +721,7 @@
if (theVariablesMap)
delete theVariablesMap;
-
+
if (theImportedPrivateVariablesMap)
delete theImportedPrivateVariablesMap;
@@ -963,7 +969,7 @@
ar & theContextItemType;
ar & theVariablesMap;
- ar & theImportedPrivateVariablesMap;
+ ar & theImportedPrivateVariablesMap;
ar.set_serialize_only_for_eval(true);
ar & theFunctionMap;
@@ -1464,7 +1470,7 @@
********************************************************************************/
std::auto_ptr<internal::Resource> static_context::resolve_uri(
- zstring const& aUri,
+ zstring const& aUri,
internal::EntityData::Kind aEntityKind,
zstring& oErrorMessage) const
{
@@ -1496,7 +1502,7 @@
internal::EntityData const lData(aEntityKind);
apply_uri_mappers(aUri, &lData, internal::URIMapper::COMPONENT, oComponents);
- if (oComponents.size() == 0)
+ if (oComponents.size() == 0)
{
oComponents.push_back(aUri);
}
@@ -1507,9 +1513,9 @@
********************************************************************************/
void static_context::apply_uri_mappers(
- zstring const& aUri,
+ zstring const& aUri,
internal::EntityData const* aEntityData,
- internal::URIMapper::Kind aMapperKind,
+ internal::URIMapper::Kind aMapperKind,
std::vector<zstring>& oUris) const
{
// Initialize list with the one input URI.
@@ -1525,7 +1531,7 @@
mapper != sctx->theURIMappers.end(); mapper++)
{
// Only call mappers of the appropriate kind
- if ((*mapper)->mapperKind() != aMapperKind)
+ if ((*mapper)->mapperKind() != aMapperKind)
{
continue;
}
@@ -1541,16 +1547,16 @@
size_t const lPreNumResultUris = lResultUris.size();
(*mapper)->mapURI(*uri, aEntityData, *this, lResultUris);
size_t const lPostNumResultUris = lResultUris.size();
- if (lPreNumResultUris == lPostNumResultUris)
+ if (lPreNumResultUris == lPostNumResultUris)
{
// Mapper didn't map this URI to anything new, therefore add
// the original URI to the result list
lResultUris.push_back(*uri);
}
- else
+ else
{
// Check the new entries for DENY_ACCESS.
- for (size_t i = lPreNumResultUris; i < lPostNumResultUris; i++)
+ for (size_t i = lPreNumResultUris; i < lPostNumResultUris; i++)
{
if (lResultUris.at(i) == internal::URIMapper::DENY_ACCESS) {
throw XQUERY_EXCEPTION(zerr::ZXQP0029_URI_ACCESS_DENIED,
@@ -1574,14 +1580,14 @@
void static_context::apply_url_resolvers(
std::vector<zstring>& aUrls,
internal::EntityData const* aEntityData,
- std::auto_ptr<internal::Resource>& oResource,
+ std::auto_ptr<internal::Resource>& oResource,
zstring& oErrorMessage) const
{
oErrorMessage = "";
// Iterate through all candidate URLs...
for (std::vector<zstring>::iterator url = aUrls.begin();
- url != aUrls.end(); url++)
+ url != aUrls.end(); url++)
{
// We should never try to load the http-client module using its original URI,
// because that URI starts with http:, so we'll try to load the http-client
@@ -1600,7 +1606,7 @@
sctx->theURLResolvers.begin();
resolver != sctx->theURLResolvers.end(); resolver++)
{
- try
+ try
{
// Take ownership of returned Resource (if any)
oResource.reset((*resolver)->resolveURL(*url, aEntityData));
@@ -1611,15 +1617,15 @@
return;
}
}
- catch (const std::exception& e)
+ catch (const std::exception& e)
{
- if (oErrorMessage == "")
+ if (oErrorMessage == "")
{
// Really no point in saving anything more than the first message
oErrorMessage = e.what();
}
}
- catch (...)
+ catch (...)
{
// Not much we can do here except try the rest of the
// candidate URIs
@@ -2169,7 +2175,7 @@
{
if (externalVarsOnly)
{
- if((*ite).second->is_external())
+ if((*ite).second->is_external())
vars.push_back((*ite).second);
}
else
@@ -2179,7 +2185,7 @@
}
}
}
-
+
if (returnPrivateVars && sctx->theImportedPrivateVariablesMap != NULL)
{
VariableMap::iterator ite = sctx->theImportedPrivateVariablesMap->begin();
@@ -2199,7 +2205,7 @@
{
if(externalVarsOnly)
{
- if((*ite).second->is_external())
+ if((*ite).second->is_external())
vars.push_back((*ite).second);
}
else
@@ -3220,11 +3226,11 @@
PrologOption option(qname, value);
store::Item* qname2 = option.theName.getp();
-
+
zstring lNamespace = qname2->getNamespace();
// If option namespace starts with zorba options namespace
- if ( lNamespace.find(ZORBA_OPTIONS_NS) == 0 )
+ if ( lNamespace.find(ZORBA_OPTIONS_NS) == 0 )
{
zstring lLocalName = qname2->getLocalName();
@@ -3239,7 +3245,7 @@
process_feature_option(lVal1, lLocalName == "enable", loc);
lCommaFound = true;
}
- process_feature_option(lCommaFound ? lVal2 : lVal1,
+ process_feature_option(lCommaFound ? lVal2 : lVal1,
lLocalName == "enable",
loc);
}
@@ -3254,7 +3260,7 @@
process_optim_option(lVal1, lLocalName == "enable", loc);
lCommaFound = true;
}
- process_optim_option(lCommaFound ? lVal2 : lVal1,
+ process_optim_option(lCommaFound ? lVal2 : lVal1,
lLocalName == "enable",
loc);
}
@@ -3282,7 +3288,7 @@
// Re-use "ModuleVersion" class since it does 98% of the work for us;
// just use a fake URI
ModuleVersion lOptVersion(zstring(ZORBA_VERSIONING_NS) + "/corezorba", value);
- if (! lOptVersion.is_valid_version())
+ if (! lOptVersion.is_valid_version())
{
RAISE_ERROR(zerr::ZXQP0039_INVALID_VERSION_SPECIFICATION, loc,
ERROR_PARAMS(value));
@@ -3291,7 +3297,7 @@
ModuleVersion lZorbaVersion(zstring(ZORBA_VERSIONING_NS) + "/corezorba",
ZORBA_VERSION);
- if ( ! lZorbaVersion.satisfies(lOptVersion))
+ if ( ! lZorbaVersion.satisfies(lOptVersion))
{
RAISE_ERROR(zerr::ZXQP0038_INAPPROPRIATE_ZORBA_VERSION, loc,
ERROR_PARAMS(value, ZORBA_VERSION));
@@ -3301,7 +3307,7 @@
// If the option is in (starts-with) Zorba's own namespace but not known,
// we raise an error
- else
+ else
{
RAISE_ERROR(zerr::ZXQP0060_OPTION_NOT_KNOWN, loc,
ERROR_PARAMS(qname2->getNamespace() + ":" + qname2->getLocalName()));
@@ -3352,7 +3358,7 @@
const zstring& name,
const QueryLoc& loc)
{
- store::Item_t lQName = parse_and_expand_qname( value, ZORBA_WARN_NS, loc );
+ store::Item_t lQName = parse_and_expand_qname( value, ZORBA_WARN_NS, loc );
std::vector<store::Item_t>::iterator lIter;
@@ -3418,7 +3424,7 @@
RAISE_ERROR(zerr::ZDST0060_FEATURE_NOT_SUPPORTED, loc,
ERROR_PARAMS(featureName->getStringValue(),
ZED(ZDST0060_unknown_namespace),
- featureName->getNamespace()));
+ featureName->getNamespace()));
}
feature::kind k;
@@ -3434,7 +3440,7 @@
RAISE_ERROR(zerr::ZDST0060_FEATURE_NOT_SUPPORTED, loc,
ERROR_PARAMS(featureName->getStringValue(),
ZED(ZDST0060_unknown_localname),
- featureName->getLocalName()));
+ featureName->getLocalName()));
}
}
@@ -3450,7 +3456,7 @@
if (value != "for-serialization-only")
{
RAISE_ERROR(zerr::ZDST0060_FEATURE_NOT_SUPPORTED, loc,
- ERROR_PARAMS(value, ZED(ZDST0060_unknown_localname), value));
+ ERROR_PARAMS(value, ZED(ZDST0060_unknown_localname), value));
}
}
@@ -3974,11 +3980,11 @@
{
theImportedPrivateVariablesMap = new VariableMap(0, NULL, 8, false);
}
-
+
if (!theImportedPrivateVariablesMap->insert(ve->get_name(), ve))
{
throw XQUERY_EXCEPTION_VAR(err::XQST0049, ERROR_PARAMS( ve->get_name()->getStringValue() ), ERROR_LOC( loc ));
- }
+ }
}
}
}
=== modified file 'src/context/static_context.h'
--- src/context/static_context.h 2012-03-07 15:49:25 +0000
+++ src/context/static_context.h 2012-03-15 17:04:36 +0000
@@ -273,7 +273,7 @@
theExternalModulesMap :
-----------------------
- theTypeMnager :
+ theTypeManager :
---------------
If non NULL, then "this" is the root sctx of a module, and theTypeManager stores
the schemas that are imported by the associated module (in-scope element
@@ -296,7 +296,7 @@
theVariablesMap :
-----------------
-
+
theImportedPrivateVariablesMap :
--------------------------------
@@ -469,6 +469,7 @@
static const char* ZORBA_FETCH_FN_NS;
static const char* ZORBA_NODE_FN_NS;
static const char* ZORBA_XML_FN_NS;
+ static const char* ZORBA_XML_FN_OPTIONS_NS;
// Namespaces of virtual modules declaring zorba builtin functions
static const char* ZORBA_UTIL_FN_NS;
@@ -522,7 +523,7 @@
xqtref_t theContextItemType;
VariableMap * theVariablesMap;
-
+
VariableMap * theImportedPrivateVariablesMap;
FunctionMap * theFunctionMap;
=== modified file 'src/diagnostics/diagnostic_en.xml'
--- src/diagnostics/diagnostic_en.xml 2012-03-12 23:43:56 +0000
+++ src/diagnostics/diagnostic_en.xml 2012-03-15 17:04:36 +0000
@@ -1753,7 +1753,7 @@
</diagnostic>
<diagnostic code="ZXQD0003" name="INCONSISTENT_PARSE_FRAGMENT_OPTIONS">
- <value>inconsistent options to the parse-xml-fragment() function: $1</value>
+ <value>inconsistent options to the parse-xml() function: $1</value>
</diagnostic>
<diagnostic code="ZXQD0004" name="INVALID_PARAMETER">
@@ -2620,6 +2620,10 @@
<entry key="BadXMLDocument_2o">
<value>malformed XML document${ at "2"}</value>
</entry>
+
+ <entry key="BadXMLNoOpeningTag">
+ <value>closing tag without matching opening tag</value>
+ </entry>
<entry key="BadXMLForXQDoc_3">
<value>can not parse as XML for xqdoc: $3</value>
@@ -3517,12 +3521,12 @@
<value>xqueryx content is empty</value>
</entry>
- <entry key="ParseFragmentOptionDSLNotAllowed">
- <value>if the e option is specified, none of the options d, s, or l may be enabled</value>
- </entry>
-
<entry key="ParseFragmentOptionCombinationNotAllowed">
- <value>specifying both $2 and $3 is an error</value>
+ <value>only one of the <schema-validate/>, <DTD-validate/> or <parse-external-parsed-entity/> options can be specified</value>
+ </entry>
+
+ <entry key="ParseFragmentInvalidOptions">
+ <value>invalid options passed to the parse-xml:parse() function, the element must in the schema target namespace</value>
</entry>
</subvalues>
=== modified file 'src/diagnostics/pregenerated/dict_en.cpp'
--- src/diagnostics/pregenerated/dict_en.cpp 2012-03-12 23:43:56 +0000
+++ src/diagnostics/pregenerated/dict_en.cpp 2012-03-15 17:04:36 +0000
@@ -386,7 +386,7 @@
{ "ZWST0006", "\"$1\": function caching might not give the intended result because the function is declared as $2" },
{ "ZXQD0001", "\"$1\": prefix not declared when calling function \"$2\" from $3" },
{ "ZXQD0002", "\"$1\": $2" },
- { "ZXQD0003", "inconsistent options to the parse-xml-fragment() function: $1" },
+ { "ZXQD0003", "inconsistent options to the parse-xml() function: $1" },
{ "ZXQD0004", "invalid parameter: $1" },
{ "ZXQD0005", "key with type $1 not subtype or castable to target type $2 of map ($3)" },
{ "ZXQD0006", "\"$1\": invalid UTF-8 byte sequence" },
@@ -464,6 +464,7 @@
{ "~BadWordNetPtr_2", "\"$2\": invalid pointer type" },
{ "~BadXMLDocument_2o", "malformed XML document${ at \"2\"}" },
{ "~BadXMLForXQDoc_3", "can not parse as XML for xqdoc: $3" },
+ { "~BadXMLNoOpeningTag", "closing tag without matching opening tag" },
{ "~BadXQueryVersion", "unsupported XQuery version" },
{ "~Base64BadChar", "invalid Base64 character" },
{ "~Base64Equals", "in Base64, '=' must be at the end and followed by one of [AEIMQUYcgkosw048]" },
@@ -582,8 +583,8 @@
{ "~OpNodeBeforeMustHaveNodes", "op:node-before() must have nodes as parameters" },
{ "~OperationNotDef_23", "$2 not defined for type \"$3\"" },
{ "~OperationNotPossibleWithTypes_234", "\"$2\": operation not possible with parameters of type \"$3\" and \"$4\"" },
- { "~ParseFragmentOptionCombinationNotAllowed", "specifying both $2 and $3 is an error" },
- { "~ParseFragmentOptionDSLNotAllowed", "if the e option is specified, none of the options d, s, or l may be enabled" },
+ { "~ParseFragmentInvalidOptions", "invalid options passed to the parse-xml:parse() function, the element must in the schema target namespace" },
+ { "~ParseFragmentOptionCombinationNotAllowed", "only one of the <schema-validate/>, <DTD-validate/> or <parse-external-parsed-entity/> options can be specified" },
{ "~ParserInitFailed", "parser initialization failed" },
{ "~ParserNoCreateTree", "XML tree creation failed" },
{ "~PromotionImpossible", "promotion not possible" },
=== modified file 'src/functions/pregenerated/func_parse_fragment.cpp'
--- src/functions/pregenerated/func_parse_fragment.cpp 2012-02-16 12:48:17 +0000
+++ src/functions/pregenerated/func_parse_fragment.cpp 2012-03-15 17:04:36 +0000
@@ -31,7 +31,7 @@
-PlanIter_t fn_zorba_xml_parse_xml_fragment::codegen(
+PlanIter_t fn_zorba_xml_parse::codegen(
CompilerCB*,
static_context* sctx,
const QueryLoc& loc,
@@ -46,26 +46,12 @@
{
- DECL_WITH_KIND(sctx, fn_zorba_xml_parse_xml_fragment,
- (createQName("http://www.zorba-xquery.com/modules/xml","","parse-xml-fragment"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_ZORBA_XML_PARSE_XML_FRAGMENT_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_zorba_xml_parse_xml_fragment,
- (createQName("http://www.zorba-xquery.com/modules/xml","","parse-xml-fragment"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_ZORBA_XML_PARSE_XML_FRAGMENT_3);
+ DECL_WITH_KIND(sctx, fn_zorba_xml_parse,
+ (createQName("http://www.zorba-xquery.com/modules/xml","","parse"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::FN_ZORBA_XML_PARSE_2);
}
=== modified file 'src/functions/pregenerated/func_parse_fragment.h'
--- src/functions/pregenerated/func_parse_fragment.h 2012-01-11 17:30:25 +0000
+++ src/functions/pregenerated/func_parse_fragment.h 2012-03-15 17:04:36 +0000
@@ -38,11 +38,11 @@
-//fn-zorba-xml:parse-xml-fragment
-class fn_zorba_xml_parse_xml_fragment : public function
+//fn-zorba-xml:parse
+class fn_zorba_xml_parse : public function
{
public:
- fn_zorba_xml_parse_xml_fragment(const signature& sig, FunctionConsts::FunctionKind kind)
+ fn_zorba_xml_parse(const signature& sig, FunctionConsts::FunctionKind kind)
:
function(sig, kind)
{
=== modified file 'src/functions/pregenerated/function_enum.h'
--- src/functions/pregenerated/function_enum.h 2012-03-08 18:51:25 +0000
+++ src/functions/pregenerated/function_enum.h 2012-03-15 17:04:36 +0000
@@ -256,8 +256,7 @@
FN_FORMAT_NUMBER_3,
FN_FORMAT_INTEGER_2,
FN_FORMAT_INTEGER_3,
- FN_ZORBA_XML_PARSE_XML_FRAGMENT_2,
- FN_ZORBA_XML_PARSE_XML_FRAGMENT_3,
+ FN_ZORBA_XML_PARSE_2,
FN_PARSE_XML_1,
FN_PARSE_XML_2,
FN_SERIALIZE_1,
=== modified file 'src/runtime/parsing_and_serializing/fragment_istream.h' (properties changed: +x to -x)
--- src/runtime/parsing_and_serializing/fragment_istream.h 2011-07-16 13:33:13 +0000
+++ src/runtime/parsing_and_serializing/fragment_istream.h 2012-03-15 17:04:36 +0000
@@ -18,55 +18,99 @@
#define ZORBA_RUNTIME_PARSING_AND_SERIALIZING_FRAGMENT_ISTREAM_H
#include <iostream>
+#include <libxml/parser.h>
+#include <store/api/iterator.h>
namespace zorba {
/**
- * A class to hold an input stream for the parse-xml-fragment function
- * Author: Zorba Team
+ * A class to hold an input stream for the parse-xml:parse() function
+ * Author: Nicolae Brinza
*/
class FragmentIStream : public std::istream
{
public:
+ static const unsigned int BUFFER_SIZE = 4096;
+ static const unsigned int LOOKAHEAD_BYTES = 3; // lookahead fetching is implemented, but currently not used
+ static const unsigned int PARSED_NODES_BATCH_SIZE = 1024;
+
+public:
FragmentIStream()
:
std::istream(NULL),
theIss(NULL),
theStream(NULL),
theBuffer(NULL),
- buffer_size(0),
- current_offset(0)
+ bytes_in_buffer(0),
+ current_offset(0),
+ current_element_depth(0),
+ root_elements_to_skip(0),
+ ctxt(NULL),
+ first_start_doc(true),
+ forced_parser_stop(false),
+ reached_eof(false),
+ parsed_nodes_count(0),
+ children(NULL)
{
};
+ bool stream_is_consumed()
+ {
+ return reached_eof && current_offset >= bytes_in_buffer;
+ }
+
void reset()
{
if (theBuffer)
+ {
delete[] theBuffer;
+ }
+
if (theIss)
+ {
delete theIss;
+ }
+
+ if (ctxt)
+ {
+ xmlCtxtReset(ctxt);
+ xmlFreeParserCtxt(ctxt);
+ }
theIss = NULL;
theStream = NULL;
theBuffer = NULL;
- buffer_size = 0;
+ bytes_in_buffer = 0;
current_offset = 0;
+ current_element_depth = 0;
+ root_elements_to_skip = 0;
+ ctxt = NULL;
+ first_start_doc = true;
+ forced_parser_stop = false;
+ reached_eof = false;
+ parsed_nodes_count = 0;
+ children = NULL;
}
virtual ~FragmentIStream()
{
- if (theBuffer)
- delete[] theBuffer;
- if (theIss)
- delete theIss;
+ reset();
}
public:
std::istringstream* theIss;
std::istream* theStream;
char* theBuffer;
- unsigned long buffer_size;
+ unsigned long bytes_in_buffer;
unsigned long current_offset;
+ int current_element_depth;
+ int root_elements_to_skip;
+ xmlParserCtxtPtr ctxt;
+ bool first_start_doc;
+ bool forced_parser_stop;
+ bool reached_eof;
+ unsigned int parsed_nodes_count;
+ store::Iterator_t children;
};
}
=== modified file 'src/runtime/parsing_and_serializing/parse_fragment_impl.cpp' (properties changed: +x to -x)
--- src/runtime/parsing_and_serializing/parse_fragment_impl.cpp 2011-08-10 02:50:23 +0000
+++ src/runtime/parsing_and_serializing/parse_fragment_impl.cpp 2012-03-15 17:04:36 +0000
@@ -25,117 +25,150 @@
#include "store/api/store.h"
#include "store/api/item.h"
#include "store/api/item_factory.h"
+#include "store/api/load_properties.h"
#include "system/globalenv.h"
#include "types/schema/schema.h"
#include "types/schema/validate.h"
+
namespace zorba
{
/*******************************************************************************
- 14.9.1 fn-zorba-xml:parse-xml-fragment
+ 14.9.1 fn-zorba-xml:parse
********************************************************************************/
-class ParseXmlFragmentOptions
-{
-public:
- // all options are false by default, except for enableFatelErrorProcessing which is true
- bool enableExternalEntitiesProcessing;
- bool enableDTDValidation;
- bool enableStrictSchemaValidation;
- bool enableLaxSchemaValidation;
- bool enableWhitespaceStripping;
- bool enableFatelErrorProcessing;
-
-public:
- ParseXmlFragmentOptions() :
- enableExternalEntitiesProcessing(false),
- enableDTDValidation(false),
- enableStrictSchemaValidation(false),
- enableLaxSchemaValidation(false),
- enableWhitespaceStripping(false),
- enableFatelErrorProcessing(true) // only enableFatelErrorProcessing is set to true
- {
- }
-
- void reset()
- {
- enableExternalEntitiesProcessing = false;
- enableDTDValidation = false;
- enableStrictSchemaValidation = false;
- enableLaxSchemaValidation = false;
- enableWhitespaceStripping = false;
- enableFatelErrorProcessing = true; // only enableFatelErrorProcessing is set to true
- }
-
- static ParseXmlFragmentOptions parseOptions(const zstring& options, const QueryLoc& loc)
- {
- ParseXmlFragmentOptions opt;
-
- if (options.find("e") != zstring::npos && options.find("E") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "e", "E"), ERROR_LOC( loc ));
-
- if (options.find("d") != zstring::npos && options.find("D") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "d", "D"), ERROR_LOC( loc ));
-
- if (options.find("s") != zstring::npos && options.find("S") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "s", "S"), ERROR_LOC( loc ));
-
- if (options.find("l") != zstring::npos && options.find("L") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "l", "L"), ERROR_LOC( loc ));
-
- if (options.find("w") != zstring::npos && options.find("W") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "w", "W"), ERROR_LOC( loc ));
-
- if (options.find("f") != zstring::npos && options.find("F") != zstring::npos)
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed), "f", "F"), ERROR_LOC( loc ));
-
- if (options.find("e") != zstring::npos)
- opt.enableExternalEntitiesProcessing = true;
- if (options.find("d") != zstring::npos)
- opt.enableDTDValidation = true;
- if (options.find("s") != zstring::npos)
- opt.enableStrictSchemaValidation = true;
- if (options.find("l") != zstring::npos)
- opt.enableLaxSchemaValidation = true;
- if (options.find("w") != zstring::npos)
- opt.enableWhitespaceStripping = true;
- if (options.find("f") != zstring::npos)
- opt.enableFatelErrorProcessing = true;
-
- if (options.find("E") != zstring::npos)
- opt.enableExternalEntitiesProcessing = false;
- if (options.find("D") != zstring::npos)
- opt.enableDTDValidation = false;
- if (options.find("S") != zstring::npos)
- opt.enableStrictSchemaValidation = false;
- if (options.find("L") != zstring::npos)
- opt.enableLaxSchemaValidation = false;
- if (options.find("W") != zstring::npos)
- opt.enableWhitespaceStripping = false;
- if (options.find("F") != zstring::npos)
- opt.enableFatelErrorProcessing = false;
-
- if (opt.enableExternalEntitiesProcessing
- &&
- (opt.enableDTDValidation || opt.enableStrictSchemaValidation || opt.enableLaxSchemaValidation))
- {
- throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
- ERROR_PARAMS(ZED(ParseFragmentOptionDSLNotAllowed)), ERROR_LOC( loc ));
- }
-
- return opt;
- }
-};
-
+store::Item_t getFirstAttribute(store::Item_t node)
+{
+ store::Item_t attr;
+ store::Iterator_t attributes = node->getAttributes();
+ attributes->open();
+ attributes->next(attr);
+ attributes->close();
+ return attr;
+}
+
+void processOptions(store::Item_t item, store::LoadProperties& props, static_context* theSctx, const QueryLoc& loc)
+{
+ URI lValidatedBaseUri;
+ store::Item_t child, tempItem;
+
+ if (item.getp() == NULL)
+ return;
+
+#ifndef ZORBA_NO_XMLSCHEMA
+ if (item->isValidated())
+ {
+ if (item->getNodeName() == NULL
+ ||
+ item->getNodeName()->getNamespace() != static_context::ZORBA_XML_FN_OPTIONS_NS)
+ {
+ throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
+ ERROR_PARAMS(ZED(ParseFragmentInvalidOptions)), ERROR_LOC( loc ));
+ }
+ }
+ else
+ {
+ tempItem = NULL; // used as the effectiveValidationValue()'s typeName
+ Validator::effectiveValidationValue(
+ item,
+ item,
+ tempItem,
+ theSctx->get_typemanager(),
+ ParseConstants::val_strict,
+ theSctx,
+ loc);
+ }
+#endif
+
+ store::Iterator_t children = item->getChildren();
+ children->open();
+
+ while (children->next(child))
+ {
+ if (child->getNodeKind() != store::StoreConsts::elementNode)
+ continue;
+
+ if (child->getNodeName()->getLocalName() == "base-uri")
+ {
+ store::Item_t attr = getFirstAttribute(child);
+
+ try {
+ lValidatedBaseUri = URI(attr->getStringValue());
+ } catch (ZorbaException const& /* e */) {
+ throw XQUERY_EXCEPTION(
+ err::FODC0007,
+ ERROR_PARAMS( attr->getStringValue() ),
+ ERROR_LOC( loc )
+ );
+ }
+
+ if (!lValidatedBaseUri.is_absolute()) {
+ throw XQUERY_EXCEPTION(
+ err::FODC0007,
+ ERROR_PARAMS( lValidatedBaseUri.toString() ),
+ ERROR_LOC( loc )
+ );
+ }
+
+ props.setBaseUri(attr->getStringValue());
+ }
+ else if (child->getNodeName()->getLocalName() == "no-error")
+ props.setNoError(true);
+ else if (child->getNodeName()->getLocalName() == "strip-boundary-space")
+ props.setStripWhitespace(true);
+ else if (child->getNodeName()->getLocalName() == "schema-validate")
+ {
+ store::Item_t attr = getFirstAttribute(child);
+ if (attr->getStringValue() == "strict")
+ props.setSchemaStrictValidate(true);
+ else
+ props.setSchemaLaxValidate(true);
+ }
+ else if (child->getNodeName()->getLocalName() == "DTD-validate")
+ props.setDTDValidate(true);
+ else if (child->getNodeName()->getLocalName() == "DTD-load")
+ props.setDTDLoad(true);
+ else if (child->getNodeName()->getLocalName() == "default-DTD-attributes")
+ props.setDefaultDTDAttributes(true);
+ else if (child->getNodeName()->getLocalName() == "parse-external-parsed-entity")
+ {
+ props.setParseExternalParsedEntity(true);
+ store::Item_t attr;
+ store::Iterator_t attribs = child->getAttributes();
+ attribs->open();
+ while (attribs->next(attr))
+ {
+ if (attr->getNodeName()->getLocalName() == "skip-root-nodes")
+ props.setSkipRootNodes(ztd::aton<xs_int>(attr->getStringValue().c_str()));
+ else if (attr->getNodeName()->getLocalName() == "skip-top-level-text-nodes")
+ props.setSkipTopLevelTextNodes(true);
+ }
+ attribs->close();
+ }
+ else if (child->getNodeName()->getLocalName() == "substitute-entities")
+ props.setSubstituteEntities(true);
+ else if (child->getNodeName()->getLocalName() == "xinclude-substitutions")
+ props.setXincludeSubstitutions(true);
+ else if (child->getNodeName()->getLocalName() == "remove-redundant-ns")
+ props.setRemoveRedundantNS(true);
+ else if (child->getNodeName()->getLocalName() == "no-CDATA")
+ props.setNoCDATA(true);
+ else if (child->getNodeName()->getLocalName() == "no-xinclude-nodes")
+ props.setNoXIncludeNodes(true);
+ }
+
+ children->close();
+
+ if (props.getSchemaLaxValidate() + props.getSchemaStrictValidate() +
+ props.getDTDValidate() + props.getParseExternalParsedEntity() > 1)
+ {
+ throw XQUERY_EXCEPTION(zerr::ZXQD0003_INCONSISTENT_PARSE_FRAGMENT_OPTIONS,
+ ERROR_PARAMS(ZED(ParseFragmentOptionCombinationNotAllowed)), ERROR_LOC( loc ));
+ }
+}
/*******************************************************************************
@@ -145,8 +178,7 @@
{
PlanIteratorState::reset(planState);
theFragmentStream.reset();
- theProperties.setEnableDtd(false);
- theProperties.setEnableExtParsedEntity(false);
+ theProperties.reset();
theProperties.setStoreDocument(false);
baseUri = "";
docUri = "";
@@ -161,9 +193,7 @@
{
store::Store& lStore = GENV.getStore();
zstring docString;
- URI lValidatedBaseUri;
store::Item_t tempItem;
- ParseXmlFragmentOptions parseOptions;
bool validated = true;
FnParseXmlFragmentIteratorState* state;
@@ -182,87 +212,61 @@
state->theFragmentStream.theStream = state->theFragmentStream.theIss;
}
- // optional base URI argument
- if (theChildren.size() == 3)
- {
- consumeNext(result, theChildren[1].getp(), planState);
- ZORBA_ASSERT(result);
-
- try {
- lValidatedBaseUri = URI(result->getStringValue());
- } catch (ZorbaException const& /* e */) {
- throw XQUERY_EXCEPTION(
- err::FODC0007,
- ERROR_PARAMS( result->getStringValue() ),
- ERROR_LOC( loc )
- );
- }
-
- if (!lValidatedBaseUri.is_absolute()) {
- throw XQUERY_EXCEPTION(
- err::FODC0007,
- ERROR_PARAMS( lValidatedBaseUri.toString() ),
- ERROR_LOC( loc )
- );
- }
-
- result->getStringValue2(state->baseUri);
-
- // read options
- consumeNext(tempItem, theChildren[2].getp(), planState);
- parseOptions = ParseXmlFragmentOptions::parseOptions(tempItem->getStringValue(), loc);
-
- } else {
- // read options
- consumeNext(tempItem, theChildren[1].getp(), planState);
- parseOptions = ParseXmlFragmentOptions::parseOptions(tempItem->getStringValue(), loc);
-
- state->baseUri = theSctx->get_base_uri();
- }
+ // read options
+ consumeNext(tempItem, theChildren[1].getp(), planState);
+ state->theProperties.setBaseUri(theSctx->get_base_uri());
+ state->theProperties.setStoreDocument(false);
+ processOptions(tempItem, state->theProperties, theSctx, loc);
// baseURI serves both as the base URI used by the XML parser
// to resolve relative entity references within the document,
// and as the base URI of the document node that is returned.
- state->docUri = state->baseUri;
-
- // The DTD and ExternalEntitiesProcessing options/props cannot both be true at the same time
- if (parseOptions.enableDTDValidation)
- state->theProperties.setEnableDtd(true);
- if (parseOptions.enableExternalEntitiesProcessing)
- state->theProperties.setEnableExtParsedEntity(true);
- state->theProperties.setStoreDocument(false);
-
- if (state->theProperties.getEnableExtParsedEntity())
+ state->baseUri = state->theProperties.getBaseUri();
+ state->docUri = state->theProperties.getBaseUri();
+
+
+ ////////////////////////////////////////////////////////////////////////
+ // External parsed entity processing
+ ////////////////////////////////////////////////////////////////////////
+ if (state->theProperties.getParseExternalParsedEntity())
{
- // state->theFragmentStream.root_elements_to_skip = 0;
+ state->theFragmentStream.root_elements_to_skip = state->theProperties.getSkipRootNodes();
- while (state->theFragmentStream.theBuffer == NULL
- ||
- state->theFragmentStream.current_offset < state->theFragmentStream.buffer_size)
+ while ( ! state->theFragmentStream.stream_is_consumed())
{
try {
result = lStore.loadDocument(state->baseUri, state->docUri, state->theFragmentStream, state->theProperties);
} catch (ZorbaException const& e) {
- if (parseOptions.enableFatelErrorProcessing)
- throw XQUERY_EXCEPTION( err::FODC0006, ERROR_PARAMS("parse-xml:parse-xml-fragment()", e.what()), ERROR_LOC( loc ));
+ if ( ! state->theProperties.getNoError())
+ throw XQUERY_EXCEPTION( err::FODC0006, ERROR_PARAMS("parse-xml:parse()", e.what()), ERROR_LOC( loc ));
else
result = NULL;
}
- if (result != NULL)
+ if (result == NULL)
+ continue;
+
+ // Return the children of document node
+ state->theFragmentStream.children = result->getChildren();
+ while (state->theFragmentStream.children->next(result) && result != NULL)
{
- result->getChildren()->next(result);
+ if (state->theProperties.getSkipTopLevelTextNodes() && result->getNodeKind() == store::StoreConsts::textNode)
+ continue;
+
STACK_PUSH(true, state);
}
}
}
+ ////////////////////////////////////////////////////////////////////////
+ // XML document processing
+ ////////////////////////////////////////////////////////////////////////
else // if (!state->theProperties.getEnableExtParsedEntity())
{
try {
result = lStore.loadDocument(state->baseUri, state->docUri, *state->theFragmentStream.theStream, state->theProperties);
} catch (ZorbaException const& e) {
- if (parseOptions.enableFatelErrorProcessing)
- throw XQUERY_EXCEPTION( err::FODC0006, ERROR_PARAMS("parse-xml:parse-xml-fragment()", e.what()), ERROR_LOC( loc ));
+ if ( ! state->theProperties.getNoError())
+ throw XQUERY_EXCEPTION( err::FODC0006, ERROR_PARAMS("parse-xml:parse()", e.what()), ERROR_LOC( loc ));
else
result = NULL;
}
@@ -270,7 +274,7 @@
if (result != NULL)
{
#ifndef ZORBA_NO_XMLSCHEMA
- if (parseOptions.enableStrictSchemaValidation || parseOptions.enableLaxSchemaValidation)
+ if (state->theProperties.getSchemaLaxValidate() || state->theProperties.getSchemaStrictValidate())
{
try
{
@@ -280,13 +284,13 @@
result,
tempItem,
theSctx->get_typemanager(),
- parseOptions.enableLaxSchemaValidation ? ParseConstants::val_lax : ParseConstants::val_strict,
+ state->theProperties.getSchemaLaxValidate() ? ParseConstants::val_lax : ParseConstants::val_strict,
theSctx,
this->loc);
}
catch (ZorbaException& /*e*/)
{
- if (parseOptions.enableFatelErrorProcessing)
+ if ( ! state->theProperties.getNoError())
throw;
else
{
@@ -298,11 +302,6 @@
#endif
// Ignore the schema validation options if Zorba is built without schema support
- if (result != NULL && validated && parseOptions.enableWhitespaceStripping)
- {
- // TODO: whitespace stripping
- }
-
STACK_PUSH(validated, state);
} // if (result != NULL)
} // if (state->theProperties.getEnableExtParsedEntity())
=== modified file 'src/runtime/parsing_and_serializing/pregenerated/parse_fragment.cpp' (properties changed: +x to -x)
=== modified file 'src/runtime/parsing_and_serializing/pregenerated/parse_fragment.h' (properties changed: +x to -x)
--- src/runtime/parsing_and_serializing/pregenerated/parse_fragment.h 2011-10-19 15:28:51 +0000
+++ src/runtime/parsing_and_serializing/pregenerated/parse_fragment.h 2012-03-15 17:04:36 +0000
@@ -36,7 +36,7 @@
namespace zorba {
/**
- * fn-zorba-xml:parse-xml-fragment
+ * fn-zorba-xml:parse
* Author: Zorba Team
*/
class FnParseXmlFragmentIteratorState : public PlanIteratorState
=== modified file 'src/runtime/sequences/sequences_impl.cpp'
--- src/runtime/sequences/sequences_impl.cpp 2012-02-15 10:25:02 +0000
+++ src/runtime/sequences/sequences_impl.cpp 2012-03-15 17:04:36 +0000
@@ -464,13 +464,13 @@
state->theIsChildReset = false;
CONSUME(startPosItem, 1);
- startPos =
+ startPos =
static_cast<xs_long>(startPosItem->getDoubleValue().round().getNumber()) - 1;
if (theChildren.size() == 3)
{
CONSUME(lengthItem, 2);
- state->theRemaining =
+ state->theRemaining =
static_cast<xs_long>(lengthItem->getDoubleValue().round().getNumber());
}
@@ -1033,7 +1033,7 @@
}
bool FnDeepEqualIterator::nextImpl(
- store::Item_t& result,
+ store::Item_t& result,
PlanState& planState) const
{
PlanIteratorState* state;
@@ -1061,7 +1061,7 @@
break;
}
- if (arg1->isFunction() || arg2->isFunction())
+ if (arg1->isFunction() || arg2->isFunction())
{
throw XQUERY_EXCEPTION(
err::FOTY0015,
@@ -1161,12 +1161,12 @@
DEFAULT_STACK_INIT(PlanIteratorState, state, planState);
- for (;;)
+ for (;;)
{
// load items
- for (i = 0; i < 2; i++)
+ for (i = 0; i < 2; i++)
{
- if (item [i] == NULL)
+ if (item [i] == NULL)
{
if (!CONSUME (item[i], i))
{
@@ -1178,7 +1178,7 @@
// advance, output
order = GENV_STORE.compareNodes(item[0].getp(), item[1].getp());
- if ( order == 0 )
+ if ( order == 0 )
{
result = item[0];
STACK_PUSH (true, state);
@@ -1739,7 +1739,7 @@
planState.theGlobalDynCtx->theDocLoadingUserTime +=
zorbatm::get_cputime_elapsed(t0user, t1user);
- planState.theGlobalDynCtx->theDocLoadingTime +=
+ planState.theGlobalDynCtx->theDocLoadingTime +=
zorbatm::get_walltime_elapsed(t0, t1);
}
@@ -1833,7 +1833,7 @@
// Prepare a LoadProperties for loading the stream into the store
store::LoadProperties lLoadProperties;
lLoadProperties.setStoreDocument(true);
- lLoadProperties.setEnableDtd( aSctx->is_feature_set( feature::dtd ) );
+ lLoadProperties.setDTDValidate( aSctx->is_feature_set( feature::dtd ) );
// Resolve URI to a stream
zstring lErrorMessage;
=== modified file 'src/runtime/spec/parsing_and_serializing/parse_fragment.xml'
--- src/runtime/spec/parsing_and_serializing/parse_fragment.xml 2011-07-15 16:39:51 +0000
+++ src/runtime/spec/parsing_and_serializing/parse_fragment.xml 2012-03-15 17:04:36 +0000
@@ -19,27 +19,20 @@
<!--
/*******************************************************************************
- * 14.9.1 fn:parse-xml-fragment
+ * 14.9.1 parse-xml:parse
********************************************************************************/
-->
<zorba:iterator name="FnParseXmlFragmentIterator">
- <zorba:description author="Zorba Team">fn-zorba-xml:parse-xml-fragment</zorba:description>
+ <zorba:description author="Zorba Team">fn-zorba-xml:parse</zorba:description>
<zorba:function>
- <zorba:signature localname="parse-xml-fragment" prefix="fn-zorba-xml">
- <zorba:param>xs:string?</zorba:param> <!-- string to parse -->
- <zorba:param>xs:string</zorba:param> <!-- parse-xml options -->
+ <zorba:signature localname="parse" prefix="fn-zorba-xml">
+ <zorba:param>xs:string?</zorba:param> <!-- string to parse -->
+ <zorba:param>element()?</zorba:param> <!-- parse() options -->
<zorba:output>node()*</zorba:output>
</zorba:signature>
- <zorba:signature localname="parse-xml-fragment" prefix="fn-zorba-xml">
- <zorba:param>xs:string?</zorba:param> <!-- string to parse -->
- <zorba:param>xs:string</zorba:param> <!-- baseURI -->
- <zorba:param>xs:string</zorba:param> <!-- parse-xml options -->
- <zorba:output>node()*</zorba:output>
- </zorba:signature>
-
<zorba:methods>
<zorba:accessesDynCtx returnValue="true"/>
</zorba:methods>
=== modified file 'src/store/api/load_properties.h'
--- src/store/api/load_properties.h 2011-06-29 15:03:41 +0000
+++ src/store/api/load_properties.h 2012-03-15 17:04:36 +0000
@@ -35,12 +35,70 @@
{
private:
bool theStoreDocument;
- bool theEnableDtdLoader;
- bool theEnableExtParsedEntityLoader;
+ zstring theBaseUri;
+ bool theNoError;
+ bool theStripWhitespace;
+ bool theSchemaLaxValidate;
+ bool theSchemaStrictValidate;
+ bool theDTDValidate;
+ bool theDTDLoad;
+ bool theDefaultDTDAttributes;
+ bool theParseExternalParsedEntity;
+ unsigned int theSkipRootNodes;
+ bool theSkipTopLevelTextNodes;
+ bool theSubstituteEntities;
+ bool theXincludeSubstitutions;
+ bool theRemoveRedundantNS;
+ bool theNoCDATA;
+ bool theNoXIncludeNodes;
public:
- LoadProperties() : theStoreDocument(true), theEnableDtdLoader(false), theEnableExtParsedEntityLoader(false) {}
- virtual ~LoadProperties() {}
+ LoadProperties()
+ :
+ theStoreDocument(true),
+ theBaseUri(""),
+ theNoError(false),
+ theStripWhitespace(false),
+ theSchemaLaxValidate(false),
+ theSchemaStrictValidate(false),
+ theDTDValidate(false),
+ theDTDLoad(false),
+ theDefaultDTDAttributes(false),
+ theParseExternalParsedEntity(false),
+ theSkipRootNodes(0),
+ theSkipTopLevelTextNodes(false),
+ theSubstituteEntities(false),
+ theXincludeSubstitutions(false),
+ theRemoveRedundantNS(false),
+ theNoCDATA(false),
+ theNoXIncludeNodes(false)
+ {
+ }
+
+ virtual ~LoadProperties()
+ {
+ }
+
+ void reset()
+ {
+ theStoreDocument = true;
+ theBaseUri = "";
+ theNoError = false;
+ theStripWhitespace = false;
+ theSchemaLaxValidate = false;
+ theSchemaStrictValidate = false;
+ theDTDValidate = false;
+ theDTDLoad = false;
+ theDefaultDTDAttributes = false;
+ theParseExternalParsedEntity = false;
+ theSkipRootNodes = 0;
+ theSkipTopLevelTextNodes = false;
+ theSubstituteEntities = false;
+ theXincludeSubstitutions = false;
+ theRemoveRedundantNS = false;
+ theNoCDATA = false;
+ theNoXIncludeNodes = false;
+ }
/**
* Set the property storeDocument, it specifies whether the document
@@ -60,40 +118,168 @@
return theStoreDocument;
}
- /**
- * Set the property enableDtd, it specifies whether the document's
- * dtd should be enabled when loading
- */
- void setEnableDtd(bool aEnableDtdLoader)
- {
- theEnableDtdLoader = aEnableDtdLoader;
- }
-
- /**
- * Get the property enableDtd, it specifies whether the document's
- * dtd should be enabled when loading
- */
- bool getEnableDtd() const
- {
- return theEnableDtdLoader;
- }
-
- /**
- * Set the property enableExtParsedEntity, it specifies whether the document
- * should be parsed as an enxternal general parsed entity
- */
- void setEnableExtParsedEntity(bool aEnableExtParsedEntityLoader)
- {
- theEnableExtParsedEntityLoader = aEnableExtParsedEntityLoader;
- }
-
- /**
- * Get the property enableDtd, it specifies whether the document
- * should be parsed as an enxternal general parsed entity
- */
- bool getEnableExtParsedEntity() const
- {
- return theEnableExtParsedEntityLoader;
+ // theBaseUri
+ void setBaseUri(const zstring& aBaseUri)
+ {
+ theBaseUri = aBaseUri;
+ }
+ zstring getBaseUri() const
+ {
+ return theBaseUri;
+ }
+
+ // theNoError
+ void setNoError(bool aNoError)
+ {
+ theNoError = aNoError;
+ }
+ bool getNoError() const
+ {
+ return theNoError;
+ }
+
+ // theStripWhitespace
+ void setStripWhitespace(bool aStripWhitespace)
+ {
+ theStripWhitespace = aStripWhitespace;
+ }
+ bool getStripWhitespace() const
+ {
+ return theStripWhitespace;
+ }
+
+ // theSchemaLaxValidate
+ void setSchemaLaxValidate(bool aSchemaLaxValidate)
+ {
+ theSchemaLaxValidate = aSchemaLaxValidate;
+ if (theSchemaLaxValidate)
+ theSchemaStrictValidate = false;
+ }
+ bool getSchemaLaxValidate() const
+ {
+ return theSchemaLaxValidate;
+ }
+
+ // theSchemaStrictValidate
+ void setSchemaStrictValidate(bool aSchemaStrictValidate)
+ {
+ theSchemaStrictValidate = aSchemaStrictValidate;
+ if (theSchemaStrictValidate)
+ theSchemaLaxValidate = false;
+ }
+ bool getSchemaStrictValidate() const
+ {
+ return theSchemaStrictValidate;
+ }
+
+ // theDTDValidate
+ void setDTDValidate(bool aDTDValidate)
+ {
+ theDTDValidate = aDTDValidate;
+ }
+ bool getDTDValidate() const
+ {
+ return theDTDValidate;
+ }
+
+ // theDTDLoad
+ void setDTDLoad(bool aDTDLoad)
+ {
+ theDTDLoad = aDTDLoad;
+ }
+ bool getDTDLoad() const
+ {
+ return theDTDLoad;
+ }
+
+ // theDefaultDTDAttributes
+ void setDefaultDTDAttributes(bool aDefaultDTDAttributes)
+ {
+ theDefaultDTDAttributes = aDefaultDTDAttributes;
+ }
+ bool getDefaultDTDAttributes() const
+ {
+ return theDefaultDTDAttributes;
+ }
+
+ // theParseExternalParsedEntity
+ void setParseExternalParsedEntity(bool aParseExternalParsedEntity)
+ {
+ theParseExternalParsedEntity = aParseExternalParsedEntity;
+ }
+ bool getParseExternalParsedEntity() const
+ {
+ return theParseExternalParsedEntity;
+ }
+
+ // theSkipRootNodes
+ void setSkipRootNodes(unsigned int aSkipRootNodes)
+ {
+ theSkipRootNodes = aSkipRootNodes;
+ }
+ unsigned int getSkipRootNodes() const
+ {
+ return theSkipRootNodes;
+ }
+
+ // theSkipTopLevelTextNodes
+ void setSkipTopLevelTextNodes(bool aSkipTopLevelTextNodes)
+ {
+ theSkipTopLevelTextNodes = aSkipTopLevelTextNodes;
+ }
+ bool getSkipTopLevelTextNodes() const
+ {
+ return theSkipTopLevelTextNodes;
+ }
+
+ // theSubstituteEntities
+ void setSubstituteEntities(bool aSubstituteEntities)
+ {
+ theSubstituteEntities = aSubstituteEntities;
+ }
+ bool getSubstituteEntities() const
+ {
+ return theSubstituteEntities;
+ }
+
+ // theXincludeSubstitutions
+ void setXincludeSubstitutions(bool aXincludeSubstitutions)
+ {
+ theXincludeSubstitutions = aXincludeSubstitutions;
+ }
+ bool getXincludeSubstitutions() const
+ {
+ return theXincludeSubstitutions;
+ }
+
+ // theRemoveRedundantNS
+ void setRemoveRedundantNS(bool aRemoveRedundantNS)
+ {
+ theRemoveRedundantNS = aRemoveRedundantNS;
+ }
+ bool getRemoveRedundantNS() const
+ {
+ return theRemoveRedundantNS;
+ }
+
+ // theNoCDATA
+ void setNoCDATA(bool aNoCDATA)
+ {
+ theNoCDATA = aNoCDATA;
+ }
+ bool getNoCDATA() const
+ {
+ return theNoCDATA;
+ }
+
+ // theNoXIncludeNodes
+ void setNoXIncludeNodes(bool aNoXIncludeNodes)
+ {
+ theNoXIncludeNodes = aNoXIncludeNodes;
+ }
+ bool getNoXIncludeNodes() const
+ {
+ return theNoXIncludeNodes;
}
};
=== modified file 'src/store/naive/loader.h'
--- src/store/naive/loader.h 2012-02-28 20:45:43 +0000
+++ src/store/naive/loader.h 2012-03-15 17:04:36 +0000
@@ -21,6 +21,7 @@
#include <libxml/xmlstring.h>
#include "store/api/item.h"
+#include "store/api/load_properties.h"
#include "ordpath.h"
@@ -74,6 +75,8 @@
static const ulong INPUT_CHUNK_SIZE = 8192;
protected:
+ const store::LoadProperties & theLoadProperties;
+
xmlParserCtxtPtr ctxt;
xmlSAXHandler theSaxHandler;
@@ -89,12 +92,19 @@
bool theBuildDataGuide;
+
+protected:
+ void applyLoadOptions(const store::LoadProperties& props, xmlParserCtxtPtr ctxt);
+
+
public:
XmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
+ const store::LoadProperties& loadProperties,
bool dataguide)
:
+ theLoadProperties(loadProperties),
ctxt(NULL),
theFactory(factory),
theXQueryDiagnostics(xqueryDiagnostics),
@@ -156,6 +166,7 @@
FastXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
+ const store::LoadProperties& loadProperties,
bool dataguide);
~FastXmlLoader();
@@ -245,6 +256,7 @@
FragmentXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
+ const store::LoadProperties& loadProperties,
bool dataguide);
~FragmentXmlLoader();
@@ -255,7 +267,15 @@
std::istream& xmlStream);
protected:
- static void checkStopParsing(void* ctx);
+ bool fillBuffer(FragmentIStream* theFragmentStream);
+
+ unsigned long getCurrentInputOffset() const;
+
+ static void checkStopParsing(void* ctx, bool force = false);
+
+ static void startDocument(void * ctx);
+
+ static void endDocument(void * ctx);
static void startElement(
void * ctx,
@@ -295,7 +315,6 @@
protected:
FragmentIStream* theFragmentStream;
- int element_depth;
};
/*******************************************************************************
@@ -331,8 +350,6 @@
zorba::Stack<PathStepInfo> thePathStack;
std::stack<NsBindingsContext*> theBindingsStack;
- bool theParseExtParsedEntity;
-
#ifdef DATAGUIDE
zorba::Stack<ElementGuideNode*> theGuideStack;
#endif
@@ -341,8 +358,8 @@
DtdXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
- bool dataguide,
- bool parseExtParsedEntity);
+ const store::LoadProperties& loadProperties,
+ bool dataguide);
~DtdXmlLoader();
=== modified file 'src/store/naive/loader_dtd.cpp'
--- src/store/naive/loader_dtd.cpp 2012-02-15 10:25:02 +0000
+++ src/store/naive/loader_dtd.cpp 2012-03-15 17:04:36 +0000
@@ -76,12 +76,51 @@
/*******************************************************************************
********************************************************************************/
+void XmlLoader::applyLoadOptions(const store::LoadProperties& props, xmlParserCtxtPtr ctxt)
+{
+ int options = 0;
+
+ if (props.getStripWhitespace())
+ options |= XML_PARSE_NOBLANKS;
+
+ if (props.getDTDValidate())
+ options |= XML_PARSE_DTDVALID;
+
+ if (props.getDTDLoad())
+ options |= XML_PARSE_DTDLOAD;
+
+ if (props.getDefaultDTDAttributes())
+ options |= XML_PARSE_DTDATTR;
+
+ if (props.getSubstituteEntities())
+ options |= XML_PARSE_NOENT;
+
+ if (props.getXincludeSubstitutions())
+ options |= XML_PARSE_XINCLUDE;
+
+ if (props.getRemoveRedundantNS())
+ options |= XML_PARSE_NSCLEAN;
+
+ if (props.getNoCDATA())
+ options |= XML_PARSE_NOCDATA;
+
+ if (props.getNoXIncludeNodes())
+ options |= XML_PARSE_NOXINCNODE;
+
+ xmlCtxtUseOptions(ctxt, options);
+}
+
+
+/*******************************************************************************
+
+********************************************************************************/
FragmentXmlLoader::FragmentXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
+ const store::LoadProperties& loadProperties,
bool dataguide)
:
- FastXmlLoader(factory, xqueryDiagnostics, dataguide)
+ FastXmlLoader(factory, xqueryDiagnostics, loadProperties, dataguide)
{
theOrdPath.init();
@@ -109,6 +148,39 @@
{
}
+bool FragmentXmlLoader::fillBuffer(FragmentIStream* theFragmentStream)
+{
+ if (theFragmentStream->ctxt->input->length > 0 && theFragmentStream->current_offset < theFragmentStream->bytes_in_buffer)
+ {
+ memmove(theFragmentStream->theBuffer, theFragmentStream->theBuffer + theFragmentStream->current_offset,
+ theFragmentStream->bytes_in_buffer - theFragmentStream->current_offset);
+ }
+ theFragmentStream->bytes_in_buffer -= theFragmentStream->current_offset;
+
+ std::streamsize numChars = readPacket(*theFragmentStream->theStream, theFragmentStream->theBuffer + theFragmentStream->bytes_in_buffer,
+ FragmentIStream::BUFFER_SIZE+FragmentIStream::LOOKAHEAD_BYTES - theFragmentStream->bytes_in_buffer);
+ if (numChars < 0)
+ {
+ theXQueryDiagnostics->add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0020_LOADER_IO_ERROR));
+ throw 0; // the argument to throw is not used by the catch clause
+ }
+
+ if (theFragmentStream->theStream->eof())
+ theFragmentStream->reached_eof = true;
+
+ theFragmentStream->bytes_in_buffer += numChars;
+ theFragmentStream->current_offset = 0;
+ theFragmentStream->ctxt->input->base = (xmlChar*)(theFragmentStream->theBuffer);
+ theFragmentStream->ctxt->input->length = (theFragmentStream->bytes_in_buffer < FragmentIStream::BUFFER_SIZE? theFragmentStream->bytes_in_buffer : FragmentIStream::BUFFER_SIZE);
+ theFragmentStream->ctxt->input->cur = theFragmentStream->ctxt->input->base;
+ theFragmentStream->ctxt->input->end = theFragmentStream->ctxt->input->base + theFragmentStream->ctxt->input->length;
+ theFragmentStream->ctxt->checkIndex = 0;
+
+ if (theFragmentStream->bytes_in_buffer < FragmentIStream::BUFFER_SIZE+FragmentIStream::LOOKAHEAD_BYTES)
+ theFragmentStream->theBuffer[theFragmentStream->bytes_in_buffer] = 0;
+
+ return !theFragmentStream->stream_is_consumed();
+}
store::Item_t FragmentXmlLoader::loadXml(
const zstring& baseUri,
@@ -138,88 +210,105 @@
{
theFragmentStream = static_cast<FragmentIStream*>(&stream);
- // Prepare the input buffer
+ // Prepare the input buffer and the parser context
if (theFragmentStream->theBuffer == NULL)
{
- theFragmentStream->theStream->seekg(0, std::ios::end);
- std::streamoff fileSize = theFragmentStream->theStream->tellg();
- theFragmentStream->theStream->seekg(0, std::ios::beg);
-
- theFragmentStream->theBuffer = new char[static_cast<unsigned int>(fileSize+1)];
- theFragmentStream->theBuffer[fileSize] = 0;
-
- std::streamsize numChars = readPacket(*theFragmentStream->theStream,
- theFragmentStream->theBuffer,
- fileSize);
- theFragmentStream->buffer_size = numChars;
- if (numChars < 0)
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0020_LOADER_IO_ERROR));
-
- abortload();
- return NULL;
- }
- else if (numChars == 0)
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0020_LOADER_IO_ERROR,
- ERROR_PARAMS(ZED(NoInputData))));
-
- abortload();
- return NULL;
- }
- }
-
- // Create the LibXml parser context
- ctxt = xmlCreatePushParserCtxt(&theSaxHandler, this, NULL, 0, 0);
- // ctxt = xmlCreate
- if (ctxt == NULL)
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(ParserInitFailed))));
-
- abortload();
- return NULL;
- }
-
- // Delete the initial empty input stream
- xmlFreeInputStream(inputPop(ctxt));
-
- // Create the LibXml parser input
- xmlParserInputPtr input = xmlNewInputStream(ctxt);
- if (input == NULL)
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(ParserInitFailed))));
-
- abortload();
- return NULL;
- }
-
- // Initialize the parser input
- input->filename = (const char*)(xmlCanonicPath((const xmlChar*)theDocUri.c_str()));
- input->base = (xmlChar*)(theFragmentStream->theBuffer + theFragmentStream->current_offset);
- input->cur = (xmlChar*)(theFragmentStream->theBuffer + theFragmentStream->current_offset);
- input->length = theFragmentStream->buffer_size - theFragmentStream->current_offset;
- input->end = input->base + input->length;
- xmlPushInput(ctxt, input);
-
- // Reset element_depth
- element_depth = 0;
-
- // Finally call the parser
- if (xmlParseExtParsedEnt(ctxt)==-1)
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(ParserNoCreateTree))));
-
- abortload();
- return NULL;
- }
+ // Allocate input buffer
+ theFragmentStream->theBuffer = new char[FragmentIStream::BUFFER_SIZE + FragmentIStream::LOOKAHEAD_BYTES+1];
+ theFragmentStream->theBuffer[FragmentIStream::BUFFER_SIZE + FragmentIStream::LOOKAHEAD_BYTES] = 0;
+
+ // Create the LibXml parser context
+ theFragmentStream->ctxt = xmlCreatePushParserCtxt(&theSaxHandler, this, NULL, 0, 0);
+ if (theFragmentStream->ctxt == NULL)
+ {
+ theXQueryDiagnostics->add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( ParserInitFailed ) )));
+ throw 0; // the argument to throw is not used by the catch clause
+ }
+
+ // Apply parser options
+ applyLoadOptions(theLoadProperties, theFragmentStream->ctxt);
+
+ // Delete the initial empty input stream
+ xmlFreeInputStream(inputPop(theFragmentStream->ctxt));
+
+ // Create the LibXml parser input
+ xmlParserInputPtr input = xmlNewInputStream(theFragmentStream->ctxt);
+ if (input == NULL)
+ {
+ theXQueryDiagnostics->add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( ParserInitFailed ) )));
+ throw 0; // the argument to throw is not used by the catch clause
+ }
+
+ // Initialize the parser input (only filename and the pointer to the current char)
+ theFragmentStream->theBuffer[0] = ' '; // This assignment is needed for LibXml2-2.7.6, which tries to read the buffer when xmlPushInput() is called
+ input->cur = (xmlChar*)(theFragmentStream->theBuffer);
+ input->filename = (const char*)(xmlCanonicPath((const xmlChar*)theDocUri.c_str()));
+ xmlPushInput(theFragmentStream->ctxt, input);
+ }
+
+ theFragmentStream->ctxt->userData = this; // the loader has changed, update the address
+ theFragmentStream->ctxt->disableSAX = false; // xmlStopParser() sets disableSAX to true
+ theFragmentStream->parsed_nodes_count = 0;
+ theFragmentStream->forced_parser_stop = false;
+
+ if ( ! theFragmentStream->first_start_doc)
+ {
+ theFragmentStream->ctxt->instate = XML_PARSER_CONTENT;
+ FragmentXmlLoader::startDocument(theFragmentStream->ctxt->userData);
+ }
+
+ while ( ! theFragmentStream->forced_parser_stop && fillBuffer(theFragmentStream))
+ {
+ // std::cerr << "\n==================\n--> skip_root: " << theFragmentStream->root_elements_to_skip << " current_depth: " << theFragmentStream->current_element_depth << " about to parse: [" << theFragmentStream->ctxt->input->cur << "] " << std::endl;
+
+ // This case needs to be handled here, otherwise LibXml2 will segfault
+ if (theFragmentStream->ctxt->input->cur[0] == '<' &&
+ theFragmentStream->ctxt->input->cur[1] == '/' &&
+ theFragmentStream->current_element_depth == 0)
+ {
+ theXQueryDiagnostics->add_error(theDocUri.empty() ?
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLNoOpeningTag ))) :
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLNoOpeningTag ), theDocUri))
+ );
+ throw 0; // the argument to throw is not used by the catch clause
+ }
+
+ xmlParseChunk(theFragmentStream->ctxt, (const char*)theFragmentStream->ctxt->input->cur,
+ theFragmentStream->ctxt->input->length, 0);
+
+ if (theFragmentStream->ctxt->input->base == (xmlChar*)(theFragmentStream->theBuffer)
+ &&
+ theFragmentStream->current_offset < getCurrentInputOffset())
+ theFragmentStream->current_offset = getCurrentInputOffset();
+
+ // If we didn't get an error and we haven't moved, we might have some freestanding text. Parse it as element character data.
+ if (theXQueryDiagnostics->errors().empty()
+ &&
+ theFragmentStream->current_offset == 0)
+ {
+ // The input has been reset by xmlStopParser()
+ theFragmentStream->ctxt->input->base = (xmlChar*)(theFragmentStream->theBuffer);
+ theFragmentStream->ctxt->input->cur = theFragmentStream->ctxt->input->base;
+ xmlParseCharData(theFragmentStream->ctxt, 0);
+ }
+
+ if ( ! theXQueryDiagnostics->errors().empty())
+ throw 0; // the argument to throw is not used by the catch clause
+ }
+
+ // this happens when there are tags that have not been closed
+ if (theFragmentStream->stream_is_consumed()
+ &&
+ theFragmentStream->current_element_depth > 0)
+ {
+ theXQueryDiagnostics->add_error(theDocUri.empty() ?
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ))) :
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ), theDocUri))
+ );
+ throw 0;
+ }
+
+ FragmentXmlLoader::endDocument(theFragmentStream->ctxt->userData); // this would not be called otherwise
}
catch (...)
{
@@ -228,49 +317,36 @@
return NULL;
}
- bool ok = ctxt->wellFormed != 0;
-
// The doc may be well formed, but it may have other kinds of errors, e.g., unresolved ns prefixes.
if (!theXQueryDiagnostics->errors().empty())
{
abortload();
return NULL;
}
- else if (!ok )
+ else if ( ! theFragmentStream->ctxt->wellFormed)
{
- if (!theDocUri.empty())
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o), theDocUri)));
- }
- else
- {
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o))));
- }
+ theXQueryDiagnostics->add_error(theDocUri.empty() ?
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ))) :
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ), theDocUri))
+ );
abortload();
return NULL;
}
- else if ( ctxt->lastError.code != XML_ERR_OK )
+ else if (theFragmentStream->ctxt->lastError.code != XML_ERR_OK)
{
- if ( ctxt->lastError.code == XML_NS_ERR_UNDEFINED_NAMESPACE ||
- ctxt->lastError.code != XML_ERR_NO_DTD )
+ if (theFragmentStream->ctxt->lastError.code == XML_NS_ERR_UNDEFINED_NAMESPACE
+ ||
+ theFragmentStream->ctxt->lastError.code != XML_ERR_NO_DTD )
{
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o))));
-
+ theXQueryDiagnostics->add_error(theDocUri.empty() ?
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ))) :
+ NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR, ERROR_PARAMS( ZED( BadXMLDocument_2o ), theDocUri))
+ );
abortload();
return NULL;
}
}
- xmlCtxtReset(ctxt);
- xmlFreeParserCtxt(ctxt);
- ctxt = NULL;
-
thePathStack.pop();
assert(thePathStack.empty());
@@ -280,23 +356,59 @@
return resultNode;
}
-
-void FragmentXmlLoader::checkStopParsing(void* ctx)
-{
- FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
- ZORBA_LOADER_CHECK_ERROR(loader);
-
- if (loader.element_depth == 0)
- {
- /* if (loader.ctxt->inputNr <= 1)
- loader.theFragmentStream->current_offset = loader.theFragmentStream->buffer_size;
- else */
- loader.theFragmentStream->current_offset += (loader.ctxt->input->cur - loader.ctxt->input->base)
- + loader.ctxt->input->consumed;
- xmlStopParser(loader.ctxt);
- }
-}
-
+unsigned long FragmentXmlLoader::getCurrentInputOffset() const
+{
+ unsigned long offset = theFragmentStream->ctxt->input->cur
+ - theFragmentStream->ctxt->input->base
+ + theFragmentStream->ctxt->input->consumed;
+
+ return offset;
+}
+
+void FragmentXmlLoader::checkStopParsing(void* ctx, bool force)
+{
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+
+ unsigned long offset = loader.getCurrentInputOffset();
+
+ if (force
+ ||
+ loader.theFragmentStream->current_element_depth == 0
+ ||
+ (offset >= loader.theFragmentStream->bytes_in_buffer
+ &&
+ loader.theFragmentStream->reached_eof)
+ ||
+ (loader.theFragmentStream->current_element_depth <= loader.theFragmentStream->root_elements_to_skip
+ &&
+ loader.theFragmentStream->parsed_nodes_count >= FragmentIStream::PARSED_NODES_BATCH_SIZE))
+ {
+ loader.theFragmentStream->current_offset = offset;
+ xmlStopParser(loader.theFragmentStream->ctxt);
+ loader.theFragmentStream->ctxt->errNo = XML_SCHEMAV_MISC; // fake error to force stopping
+ loader.theFragmentStream->forced_parser_stop = true;
+ }
+
+ loader.theFragmentStream->parsed_nodes_count++;
+}
+
+void FragmentXmlLoader::startDocument(void * ctx)
+{
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+ FastXmlLoader::startDocument(ctx);
+ if (loader.theFragmentStream->first_start_doc)
+ {
+ loader.theFragmentStream->first_start_doc = false;
+ FragmentXmlLoader::checkStopParsing(ctx, true);
+ }
+}
+
+void FragmentXmlLoader::endDocument(void * ctx)
+{
+ FastXmlLoader::endDocument(ctx);
+}
void FragmentXmlLoader::startElement(
void * ctx,
@@ -309,27 +421,34 @@
int nb_defaulted,
const xmlChar ** attributes)
{
- FastXmlLoader::startElement(ctx, localname, prefix, URI, nb_namespaces, namespaces, nb_attributes, nb_defaulted, attributes);
-
FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
ZORBA_LOADER_CHECK_ERROR(loader);
- loader.element_depth++;
+ loader.theFragmentStream->current_element_depth++;
+ if (loader.theFragmentStream->current_element_depth > loader.theFragmentStream->root_elements_to_skip)
+ {
+ const xmlChar** nsTab = namespaces;
+
+ if (loader.theFragmentStream->current_element_depth == loader.theFragmentStream->root_elements_to_skip + 1)
+ {
+ nsTab = loader.theFragmentStream->ctxt->nsTab;
+ nb_namespaces = loader.theFragmentStream->ctxt->nsNr/2;
+ }
+
+ FastXmlLoader::startElement(ctx, localname, prefix, URI, nb_namespaces, nsTab, nb_attributes, nb_defaulted, attributes);
+ }
}
-
void FragmentXmlLoader::endElement(
void * ctx,
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI)
{
- FastXmlLoader::endElement(ctx, localname, prefix, URI);
-
FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
ZORBA_LOADER_CHECK_ERROR(loader);
-
- loader.element_depth--;
-
+ if (loader.theFragmentStream->current_element_depth > loader.theFragmentStream->root_elements_to_skip)
+ FastXmlLoader::endElement(ctx, localname, prefix, URI);
+ loader.theFragmentStream->current_element_depth--;
checkStopParsing(ctx);
}
@@ -338,7 +457,10 @@
const xmlChar * ch,
int len)
{
- FastXmlLoader::characters(ctx, ch, len);
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+ if (loader.theFragmentStream->current_element_depth >= loader.theFragmentStream->root_elements_to_skip)
+ FastXmlLoader::characters(ctx, ch, len);
checkStopParsing(ctx);
}
@@ -347,7 +469,10 @@
void * ctx,
const xmlChar * value)
{
- FastXmlLoader::comment(ctx, value);
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+ if (loader.theFragmentStream->current_element_depth >= loader.theFragmentStream->root_elements_to_skip)
+ FastXmlLoader::comment(ctx, value);
checkStopParsing(ctx);
}
@@ -357,7 +482,10 @@
const xmlChar * value,
int len)
{
- FastXmlLoader::cdataBlock(ctx, value, len);
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+ if (loader.theFragmentStream->current_element_depth >= loader.theFragmentStream->root_elements_to_skip)
+ FastXmlLoader::cdataBlock(ctx, value, len);
checkStopParsing(ctx);
}
@@ -367,7 +495,10 @@
const xmlChar * target,
const xmlChar * data)
{
- FastXmlLoader::processingInstruction(ctx, target, data);
+ FragmentXmlLoader& loader = *(static_cast<FragmentXmlLoader*>(ctx));
+ ZORBA_LOADER_CHECK_ERROR(loader);
+ if (loader.theFragmentStream->current_element_depth >= loader.theFragmentStream->root_elements_to_skip)
+ FastXmlLoader::processingInstruction(ctx, target, data);
checkStopParsing(ctx);
}
@@ -378,14 +509,13 @@
DtdXmlLoader::DtdXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
- bool dataguide,
- bool parseExtParsedEntity)
+ const store::LoadProperties& loadProperties,
+ bool dataguide)
:
- XmlLoader(factory, xqueryDiagnostics, dataguide),
+ XmlLoader(factory, xqueryDiagnostics, loadProperties, dataguide),
theTree(NULL),
theRootNode(NULL),
- theNodeStack(2048),
- theParseExtParsedEntity(parseExtParsedEntity)
+ theNodeStack(2048)
{
theOrdPath.init();
@@ -511,10 +641,7 @@
Return the number of bytes actually read, throw an exception if any I/O
error occured.
********************************************************************************/
-std::streamsize DtdXmlLoader::readPacket(
- std::istream& stream,
- char* buf,
- std::streamoff size)
+std::streamsize DtdXmlLoader::readPacket(std::istream& stream, char* buf, std::streamoff size)
{
try
{
@@ -626,23 +753,26 @@
}
// Set the LibXml DTD validation options
+ /*
int options = XML_PARSE_COMPACT;
options |= XML_PARSE_DTDVALID;
options |= XML_PARSE_DTDLOAD;
+ */
//options |= XML_PARSE_SAX1;
//xmlSAXDefaultVersion(1);
+ // xmlCtxtUseOptions(ctxt, options);
+
xmlLoadExtDtdDefaultValue |= XML_DETECT_IDS;
xmlLoadExtDtdDefaultValue |= XML_COMPLETE_ATTRS;
- xmlCtxtUseOptions(ctxt, options);
+ // Apply loader options
+ applyLoadOptions(theLoadProperties, ctxt);
if ( xmlParseDocument(ctxt)==-1 )
{
// std::cout << " xmlParseDocument: Error: Unable to create tree: " << ctxt->lastError.message << std::endl;
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(ParserNoCreateTree))));
+ theXQueryDiagnostics->add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,ERROR_PARAMS( ZED( ParserNoCreateTree ) )));
abortload();
return NULL;
}
@@ -667,15 +797,21 @@
{
if (!theDocUri.empty())
{
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o), theDocUri)));
+ theXQueryDiagnostics->add_error(
+ NEW_ZORBA_EXCEPTION(
+ zerr::ZSTR0021_LOADER_PARSING_ERROR,
+ ERROR_PARAMS( ZED( BadXMLDocument_2o ), theDocUri )
+ )
+ );
}
else
{
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o))));
+ theXQueryDiagnostics->add_error(
+ NEW_ZORBA_EXCEPTION(
+ zerr::ZSTR0021_LOADER_PARSING_ERROR,
+ ERROR_PARAMS( ZED( BadXMLDocument_2o ) )
+ )
+ );
}
abortload();
@@ -691,9 +827,12 @@
if ( ctxt->lastError.code == XML_NS_ERR_UNDEFINED_NAMESPACE ||
ctxt->lastError.code != XML_ERR_NO_DTD )
{
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(BadXMLDocument_2o))));
+ theXQueryDiagnostics->add_error(
+ NEW_ZORBA_EXCEPTION(
+ zerr::ZSTR0021_LOADER_PARSING_ERROR,
+ ERROR_PARAMS( ZED( BadXMLDocument_2o ) )
+ )
+ );
abortload();
return NULL;
@@ -704,10 +843,12 @@
xmlDoc *doc = ctxt->myDoc;
if (doc == NULL)
{
- theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZSTR0021_LOADER_PARSING_ERROR,
- ERROR_PARAMS(ZED(ParserNoCreateTree))));
-
+ theXQueryDiagnostics->add_error(
+ NEW_ZORBA_EXCEPTION(
+ zerr::ZSTR0021_LOADER_PARSING_ERROR,
+ ERROR_PARAMS( ZED( ParserNoCreateTree ) )
+ )
+ );
abortload();
return NULL;
}
@@ -859,8 +1000,9 @@
}
catch (...)
{
- loader.theXQueryDiagnostics->
- add_error(NEW_ZORBA_EXCEPTION(zerr::ZXQP0003_INTERNAL_ERROR));
+ loader.theXQueryDiagnostics->add_error(
+ NEW_ZORBA_EXCEPTION( zerr::ZXQP0003_INTERNAL_ERROR )
+ );
}
}
=== modified file 'src/store/naive/loader_fast.cpp'
--- src/store/naive/loader_fast.cpp 2012-02-15 10:25:02 +0000
+++ src/store/naive/loader_fast.cpp 2012-03-15 17:04:36 +0000
@@ -76,9 +76,10 @@
FastXmlLoader::FastXmlLoader(
BasicItemFactory* factory,
XQueryDiagnostics* xqueryDiagnostics,
+ const store::LoadProperties& loadProperties,
bool dataguide)
:
- XmlLoader(factory, xqueryDiagnostics, dataguide),
+ XmlLoader(factory, xqueryDiagnostics, loadProperties, dataguide),
theTree(NULL),
theRootNode(NULL),
theNodeStack(2048)
@@ -298,6 +299,13 @@
static_cast<int>(numChars),
docUri.c_str());
+ // Apply loader options
+ store::LoadProperties new_props = theLoadProperties;
+ new_props.setSubstituteEntities(true); // This is required for some Zorba tests,
+ // e.g. rbkt/Queries/zorba/entity/entity.xq
+ // It should probably be handled in a different way
+ applyLoadOptions(new_props, ctxt);
+
if (ctxt == NULL)
{
theXQueryDiagnostics->
=== modified file 'src/store/naive/simple_store.cpp'
--- src/store/naive/simple_store.cpp 2012-03-13 10:04:44 +0000
+++ src/store/naive/simple_store.cpp 2012-03-15 17:04:36 +0000
@@ -354,7 +354,7 @@
std::cerr << "Reference: " << (*iter).second
<< "is still in the nodes to references map" << std::endl;
}
- ZORBA_FATAL(0, theNodeToReferencesMap.size() +
+ ZORBA_FATAL(0, theNodeToReferencesMap.size() +
" node references still in the nodes to references map");
}
@@ -364,7 +364,7 @@
RefNodeMap::iterator end = theReferencesToNodeMap.end();
for (; iter != end; ++iter)
{
- std::cerr << "Reference: " << (*iter).first
+ std::cerr << "Reference: " << (*iter).first
<< "is still in the references to nodes map" << std::endl;
}
ZORBA_FATAL(0, theReferencesToNodeMap.size() +
@@ -490,18 +490,20 @@
XmlLoader* SimpleStore::getXmlLoader(XQueryDiagnostics* aXQueryDiagnostics,
const store::LoadProperties& loadProperties)
{
- if (loadProperties.getEnableExtParsedEntity())
+ if (loadProperties.getParseExternalParsedEntity())
return new FragmentXmlLoader(theItemFactory,
aXQueryDiagnostics,
+ loadProperties,
store::Properties::instance()->buildDataguide());
- else if (loadProperties.getEnableDtd())
+ else if (loadProperties.getDTDValidate())
return new DtdXmlLoader(theItemFactory,
aXQueryDiagnostics,
- store::Properties::instance()->buildDataguide(),
- loadProperties.getEnableExtParsedEntity());
+ loadProperties,
+ store::Properties::instance()->buildDataguide());
else
return new FastXmlLoader(theItemFactory,
aXQueryDiagnostics,
+ loadProperties,
store::Properties::instance()->buildDataguide());
}
@@ -987,7 +989,7 @@
return NULL;
store::Collection_t collection;
- if (theCollections->get(aName, collection, aDynamicCollection))
+ if (theCollections->get(aName, collection, aDynamicCollection))
{
return collection;
}
@@ -1315,7 +1317,7 @@
Computes the Structural Reference for the given node.
********************************************************************************/
bool SimpleStore::getStructuralInformation(
- store::Item_t& result,
+ store::Item_t& result,
const store::Item* node)
{
#ifdef TEXT_ORDPATH
@@ -1355,7 +1357,7 @@
/*******************************************************************************
Computes the reference of the given node.
-
+
@param node XDM node
@return the identifier as an item of type xs:anyURI
********************************************************************************/
@@ -1388,7 +1390,7 @@
/*******************************************************************************
Returns the node which is identified by the given reference.
-
+
@param reference an xs:anyURI item
@result the node identified by the reference, or NULL if no node with the given
reference exists
@@ -1417,7 +1419,7 @@
/*******************************************************************************
Returns whether a reference has already been generated for the given node.
-
+
@param item XDM node
@return whether a reference has already been generated for the given node.
********************************************************************************/
@@ -1429,7 +1431,7 @@
/*******************************************************************************
Removes a node from the reference-to-nodes and nodes-to-references maps.
-
+
@param node XDM node
@return whether the node was registered or not.
********************************************************************************/
=== modified file 'src/types/typeimpl.cpp'
--- src/types/typeimpl.cpp 2012-01-10 10:52:15 +0000
+++ src/types/typeimpl.cpp 2012-03-15 17:04:36 +0000
@@ -361,7 +361,7 @@
bool NodeXQType::is_subtype(
- const TypeManager* tm,
+ const TypeManager* tm,
const NodeXQType& supertype,
const QueryLoc& loc) const
{
@@ -443,7 +443,7 @@
bool NodeXQType::is_supertype(
- const TypeManager* tm,
+ const TypeManager* tm,
const store::Item* subitem,
const QueryLoc& loc) const
{
@@ -488,14 +488,30 @@
}
}
- if (m_node_kind != store::StoreConsts::elementNode &&
- m_node_kind != store::StoreConsts::attributeNode)
+ // document-node( E ) matches any document node that contains exactly one element
+ // node, optionally accompanied by one or more comment and processing instruction
+ // nodes, if E is an ElementTest or SchemaElementTest that matches the element node.
+ bool is_element_test = (
+ m_node_kind == store::StoreConsts::documentNode &&
+ m_content_type != NULL &&
+ m_content_type->type_kind() == XQType::NODE_TYPE_KIND &&
+ dynamic_cast<const NodeXQType*>(m_content_type.getp())->m_schema_test == false);
+
+ if (m_node_kind != store::StoreConsts::elementNode &&
+ m_node_kind != store::StoreConsts::attributeNode &&
+ !is_element_test)
return true;
if (m_content_type == NULL ||
m_content_type->type_kind() == XQType::ANY_TYPE_KIND)
return true;
+ if (is_element_test)
+ {
+ xqtref_t documentNodeType = tm->create_value_type(subitem, loc);
+ return TypeOps::is_subtype(tm, *documentNodeType, *this);
+ }
+
xqtref_t subContentType = tm->create_named_type(subitem->getType(),
TypeConstants::QUANT_ONE,
loc,
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<from1>Jani</from1>
\ No newline at end of file
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <from1>Jani1</from1>
+ <from2>Jani2</from2>
+ <from3>Jani3</from3>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1Jani2Jani3
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<root>
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+</root>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <from1>Jani1</from1>
+
+ <from2>Jani2</from2>
+
+ <from3>Jani3</from3>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1Jani2Jani3
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<root><from1>Jani1</from1></root>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<from1>Jani1</from1>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<from1>Jani1</from1>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+root3 text<from1>Jani1</from1>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Jani1
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <level4>level4 text</level4>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+level4 text
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <level4>level4 text</level4>
+ level3 end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+level4 text
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+level4 textlevel4 textlevel4 textlevel4 text
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<doc>
+ <foo>0</foo>
+ <foo>1</foo>
+ <foo>2</foo>
+ <foo>3</foo>
+ <foo>4</foo>
+ <foo>5</foo>
+ <foo>6</foo>
+ <foo>7</foo>
+ <foo>8</foo>
+ <foo>9</foo>
+ <foo>10</foo>
+</doc>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <foo>0</foo>
+ <foo>1</foo>
+ <foo>2</foo>
+ <foo>3</foo>
+ <foo>4</foo>
+ <foo>5</foo>
+ <foo>6</foo>
+ <foo>7</foo>
+ <foo>8</foo>
+ <foo>9</foo>
+ <foo>10</foo>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+012345678910
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<n1:root xmlns:n1="ns" xmlns:m1="ms"><n2:root2 xmlns:n2="ns2" xmlns:m2="ms2"><n1:from1 xmlns:n3="ns3"><from2>Text from2</from2></n1:from1></n2:root2></n1:root>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<n2:root2 xmlns:n1="ns" xmlns:m1="ms" xmlns:n2="ns2" xmlns:m2="ms2"><n1:from1 xmlns:n3="ns3"><from2>Text from2</from2></n1:from1></n2:root2>
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<n1:from1 xmlns:n1="ns" xmlns:m1="ms" xmlns:n2="ns2" xmlns:m2="ms2" xmlns:n3="ns3"><from2>Text from2</from2></n1:from1>
\ No newline at end of file
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<from2 xmlns:n1="ns" xmlns:m1="ms" xmlns:n2="ns2" xmlns:m2="ms2" xmlns:n3="ns3">Text from2</from2>
\ No newline at end of file
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+Text from2
\ No newline at end of file
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
\ No newline at end of file
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mediawiki>
+ <page>
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+
+ </page>
+</mediawiki>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <page>
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+
+ </page>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mediawiki>
+ <page>
+abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab
+
+ </page>
+</mediawiki>
+
=== added file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xml.res'
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xml.res 1970-01-01 00:00:00 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xml.res 2012-03-15 17:04:36 +0000
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <page>
+abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab
+
+ </page>
+
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-01.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-03.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-04.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-05.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-07.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-10.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-11.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-12.xml.res' (properties changed: +x to -x)
--- test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-12.xml.res 2011-07-15 16:39:51 +0000
+++ test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-12.xml.res 2012-03-15 17:04:36 +0000
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<fragment><from1>Jani</from1>
<from2>Jani</from2>
-<from3>Jani</from3><count>5</count></fragment>
\ No newline at end of file
+<from3>Jani</from3><count>6</count></fragment>
\ No newline at end of file
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-14.xml.res' (properties changed: +x to -x)
=== modified file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-15.xml.res' (properties changed: +x to -x)
=== renamed file 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-18.xml.res' => 'test/rbkt/ExpQueryResults/zorba/parsing_and_serializing/parse-xml-fragment-16.xml.res'
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-01.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?><root><from1>Jani</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-02.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <from1>Jani1</from1>
+ <from2>Jani2</from2>
+ <from3>Jani3</from3>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-03.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <from1>Jani1</from1>
+ <from2>Jani2</from2>
+ <from3>Jani3</from3>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-04.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,19 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-05.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,19 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-06.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,19 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-07.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,19 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>
+ <root2>
+ <from1>Jani1</from1>
+ </root2>
+ <root2>
+ <from2>Jani2</from2>
+ </root2>
+ <root2>
+ <from3>Jani3</from3>
+ </root2>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-08.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><from1>Jani1</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-09.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><from1>Jani1</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-10.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><from1>Jani1</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-11.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><from1>Jani1</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-12.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><root2><from1>Jani1</from1></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-13.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><root2><root3><from1>Jani1</from1></root3></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-14.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root><root2><root3><from1>Jani1</from1></root3></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-15.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?><root>root1 text<root2>root2 text<root3>root3 text<from1>Jani1</from1></root3></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-16.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?><root>root1 text<root15>root15 text</root15><root2>root2 text<root3>root3 text<from1>Jani1</from1></root3></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-17.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?><root>root1 text<root15>root15 text</root15><root2>root2 text<root3>root3 text<from1>Jani1</from1></root3></root2></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-18.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<root>Jani0<from1>Jani1</from1></root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-19.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,15 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-20.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,15 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-21.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,15 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-22.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,15 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-23.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,15 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-24.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,16 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ <level2>
+ <level3>
+ <level4>level4 text</level4>
+ level3 end
+ </level3>
+ </level2>
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-25.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-26.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-27.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-28.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-29.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-30.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,21 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="5"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-31.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-32.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-33.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-34.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-35.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-36.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,65 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text
+<level1>
+ level1 text start
+ <level2>
+ level2 text start
+ <level3>
+ level3 text start
+ <level4>level4 text</level4>
+ level3 text end
+ </level3>
+ level2 text end
+ </level2>
+ level1 text end
+</level1>
+level0 text",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="5"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-37.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,20 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<doc>
+ <foo>0</foo>
+ <foo>1</foo>
+ <foo>2</foo>
+ <foo>3</foo>
+ <foo>4</foo>
+ <foo>5</foo>
+ <foo>6</foo>
+ <foo>7</foo>
+ <foo>8</foo>
+ <foo>9</foo>
+ <foo>10</foo>
+</doc>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-38.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,20 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<doc>
+ <foo>0</foo>
+ <foo>1</foo>
+ <foo>2</foo>
+ <foo>3</foo>
+ <foo>4</foo>
+ <foo>5</foo>
+ <foo>6</foo>
+ <foo>7</foo>
+ <foo>8</foo>
+ <foo>9</foo>
+ <foo>10</foo>
+</doc>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-39.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,20 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<doc>
+ <foo>0</foo>
+ <foo>1</foo>
+ <foo>2</foo>
+ <foo>3</foo>
+ <foo>4</foo>
+ <foo>5</foo>
+ <foo>6</foo>
+ <foo>7</foo>
+ <foo>8</foo>
+ <foo>9</foo>
+ <foo>10</foo>
+</doc>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-40.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-41.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-42.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-43.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="3"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-44.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="4"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-45.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,9 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+<n1:root xmlns:n1='ns' xmlns:m1='ms'><n2:root2 xmlns:n2='ns2' xmlns:m2='ms2'><n1:from1 xmlns:n3='ns3'><from2>Text from2</from2></n1:from1></n2:root2></n1:root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="5"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-46.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,37 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<?xml version='1.0'?>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text
+<level1/>
+level0 text",
+<opt:options>
+ <opt:parse-external-parsed-entity/>
+</opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-47.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+ </bad>
+</root>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-48.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+ </bad>
+</root>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-49.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+ </bad>
+</root>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="2"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-50.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+</root>
+</bad>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-51.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,11 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="0"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-52.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,11 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root>
+ <test/>
+ <test/>
+",
+ <opt:options>
+ <opt:parse-external-parsed-entity opt:skip-root-nodes="1"/>
+ </opt:options>
+)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-53.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,13 @@
+import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+x:parse("<mediawiki>
+ <page>
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+
+ </page>
+</mediawiki>",
+ <opt:options>
+ <opt:parse-external-parsed-entity
+ opt:skip-root-nodes="0"/>
+ </opt:options>)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-54.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+import module namespace file = "http://expath.org/ns/file";
+
+x:parse("<mediawiki>
+ <page>
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+
+ </page>
+</mediawiki>",
+ <opt:options>
+ <opt:parse-external-parsed-entity
+ opt:skip-root-nodes="1"/>
+ </opt:options>)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-55.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+import module namespace file = "http://expath.org/ns/file";
+
+x:parse("<mediawiki>
+ <page>
+abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab
+
+ </page>
+</mediawiki>",
+ <opt:options>
+ <opt:parse-external-parsed-entity
+ opt:skip-root-nodes="0"/>
+ </opt:options>)
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-fragment-skip-root-56.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+import module namespace file = "http://expath.org/ns/file";
+
+x:parse("<mediawiki>
+ <page>
+abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab
+
+ </page>
+</mediawiki>",
+ <opt:options>
+ <opt:parse-external-parsed-entity
+ opt:skip-root-nodes="1"/>
+ </opt:options>)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-01.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-01.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-01.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,7 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
@@ -15,4 +16,7 @@
<body>Don't forget me this weekend</body>
</note>
",
-"d")
+ <opt:options>
+ <opt:DTD-validate/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-02.spec' (properties changed: +x to -x)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-02.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-02.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-02.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,7 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
@@ -12,4 +13,7 @@
<incorrect>Element not in DTD</incorrect>
</note>
",
-"d")
+ <opt:options>
+ <opt:DTD-validate/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-03.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-03.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-03.xq 2012-03-15 17:04:36 +0000
@@ -1,8 +1,12 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<from1>Jani</from1>
<from2>Jani</from2>
<from3>Jani</from3>
",
-"e")
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-04.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-04.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-04.xq 2012-03-15 17:04:36 +0000
@@ -1,8 +1,12 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("
+x:parse("
<from1>Jani</from1>
<from2>Jani</from2>
<from3>Jani</from3>
",
-"e")
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-05.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-05.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-05.xq 2012-03-15 17:04:36 +0000
@@ -1,3 +1,9 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-
-x:parse-xml-fragment("<?xml version='1.0'?><a/>", "e")
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+x:parse("<?xml version='1.0'?><a/>",
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
+
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-06.spec' (properties changed: +x to -x)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-06.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-06.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-06.xq 2012-03-15 17:04:36 +0000
@@ -1,8 +1,12 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<from1>Jani</from1>
<from2>Jani</from2>
<from3>Jani</from3>
",
-"d")
+ <opt:options>
+ <opt:DTD-validate/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-07.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-07.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-07.xq 2012-03-15 17:04:36 +0000
@@ -1,10 +1,14 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
import schema namespace weather = "http://www.w3.org/test/weather" at "weather.xsd";
-x:parse-xml-fragment("<?xml version='1.0' encoding = 'UTF-8'?>
+x:parse("<?xml version='1.0' encoding = 'UTF-8'?>
<weather:weather xmlns:weather='http://www.w3.org/test/weather' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<weather:temperature>30</weather:temperature>
<weather:precipitation>20</weather:precipitation>
</weather:weather>
",
-"s")
+ <opt:options>
+ <opt:schema-validate opt:mode="lax"/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-08.spec' (properties changed: +x to -x)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-08.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-08.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-08.xq 2012-03-15 17:04:36 +0000
@@ -1,10 +1,15 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
import schema namespace weather = "http://www.w3.org/test/weather" at "weather.xsd";
-x:parse-xml-fragment("<?xml version='1.0' encoding = 'UTF-8'?>
+x:parse("<?xml version='1.0' encoding = 'UTF-8'?>
<weather:weather xmlns:weather='http://www.w3.org/test/weather' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<weather:incorrect>30</weather:incorrect>
<weather:precipitation>20</weather:precipitation>
</weather:weather>
",
-"s")
+ <opt:options>
+ <opt:schema-validate opt:mode="strict"/>
+ </opt:options>
+)
+
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-09.spec' (properties changed: +x to -x)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-09.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-09.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-09.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,10 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0' encoding = 'UTF-8'?>
+x:parse("<?xml version='1.0' encoding = 'UTF-8'?>
<atomic:root xmlns:atomic='http://www.w3.org/XQueryTest'>
<atomic:duration>P1Y2M3DT10H30M</atomic:duration>",
-"e")
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-10.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-10.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-10.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,6 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<root>
<from1>Jani</from1>
@@ -8,4 +8,4 @@
<from3>Jani</from3>
</root>",
-"")
+() )
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-11.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-11.xq 2011-07-03 13:45:27 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-11.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,7 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0'?>
+x:parse("<?xml version='1.0'?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
@@ -12,4 +13,8 @@
<incorrect>Element not in DTD</incorrect>
</note>
",
-"dF")
+ <opt:options>
+ <opt:DTD-validate/>
+ <opt:no-error/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-12.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-12.xq 2011-07-09 15:49:26 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-12.xq 2012-03-15 17:04:36 +0000
@@ -1,8 +1,12 @@
import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-let $var := z:parse-xml-fragment("<?xml version='1.0'?>
+let $var := z:parse("<?xml version='1.0'?>
<from1>Jani</from1>
<from2>Jani</from2>
<from3>Jani</from3>",
-"e")
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
return <fragment>{ $var }<count>{ count($var) }</count></fragment>
\ No newline at end of file
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-13.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-13.xq 2011-07-12 17:24:41 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-13.xq 2012-03-15 17:04:36 +0000
@@ -1,4 +1,10 @@
import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-for $var in z:parse-xml-fragment("<from1>Jani</from1><from2>Jani</from2><from3>Jani</from3>", "urn:foo", "e")
+for $var in z:parse("<from1>Jani</from1><from2>Jani</from2><from3>Jani</from3>",
+ <opt:options>
+ <opt:base-uri opt:value="urn:foo"/>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
return <fragment base="{fn:base-uri($var)}">{ $var }</fragment>
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-14.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-14.xq 2011-07-15 16:39:51 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-14.xq 2012-03-15 17:04:36 +0000
@@ -1,6 +1,7 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
-x:parse-xml-fragment("<?xml version='1.0' encoding='UTF-8'?>
+x:parse("<?xml version='1.0' encoding='UTF-8'?>
<!-- Comment-1 -->
<?a-pi pi-1?>
<!-- Comment-2 -->
@@ -37,4 +38,7 @@
<?a-pi pi-6?>
<!-- Comment-7 -->
",
-"e")
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-15.xq' (properties changed: +x to -x)
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-15.xq 2011-07-15 16:39:51 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-15.xq 2012-03-15 17:04:36 +0000
@@ -1,3 +1,9 @@
import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-
-x:parse-xml-fragment("<a/>", "e")
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+x:parse("<a/>",
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
+
=== removed file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.spec 2011-08-10 02:50:23 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.spec 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-Error: http://www.zorba-xquery.com/errors:ZXQD0003
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,14 @@
+import module namespace x = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+x:parse("<?xml version='1.0'?>
+<!DOCTYPE note [
+<!ELEMENT note (#PCDATA)>
+<!ATTLIST note nmt NMTOKENS #REQUIRED>
+]>
+<note nmt='aaa'/>
+",
+ <opt:options>
+ <opt:DTD-validate/>
+ </opt:options>
+)
=== removed file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq 2011-08-10 02:50:23 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-16.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-
-x:parse-xml-fragment("<?xml version='1.0'?>
-<from1>Jani</from1>
-<from2>Jani</from2>
-<from3>Jani</from3>
-",
-"eEdDsSlLwWfF")
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== removed file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec 2011-08-10 02:50:23 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.spec 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-Error: http://www.zorba-xquery.com/errors:ZXQD0003
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,18 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root><a id='0'>
+ 0
+ </b>
+</a>
+<a id='1'>
+ 1
+</a>
+<a id='2'>
+ 2
+</a>
+</root>",
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== removed file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq 2011-08-10 02:50:23 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-17.xq 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-
-x:parse-xml-fragment("<?xml version='1.0'?>
-<from1>Jani</from1>
-<from2>Jani</from2>
-<from3>Jani</from3>
-",
-"edls")
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.spec'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.spec 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.spec 2012-03-15 17:04:36 +0000
@@ -0,0 +1,1 @@
+Error: http://www.w3.org/2005/xqt-errors:FODC0006
=== added file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq 1970-01-01 00:00:00 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq 2012-03-15 17:04:36 +0000
@@ -0,0 +1,8 @@
+import module namespace z = "http://www.zorba-xquery.com/modules/xml";
+import schema namespace opt = "http://www.zorba-xquery.com/modules/xml-options";
+
+z:parse("<root><a id='0'/></root></test>",
+ <opt:options>
+ <opt:parse-external-parsed-entity/>
+ </opt:options>
+)
=== removed file 'test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq'
--- test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq 2011-10-12 07:17:05 +0000
+++ test/rbkt/Queries/zorba/parsing_and_serializing/parse-xml-fragment-18.xq 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
-import module namespace x = "http://www.zorba-xquery.com/modules/xml";
-
-x:parse-xml-fragment("<?xml version='1.0'?>
-<!DOCTYPE note [
-<!ELEMENT note (#PCDATA)>
-<!ATTLIST note nmt NMTOKENS #REQUIRED>
-]>
-<note nmt='aaa'/>
-",
-"d")
=== modified file 'test/rbkt/Queries/zorba/parsing_and_serializing/weather.xsd' (properties changed: +x to -x)
Follow ups
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: noreply, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Matthias Brantner, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: David Graf, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Matthias Brantner, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: William Candillon, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: William Candillon, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Zorba Build Bot, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Nicolae Brinza, 2012-03-16
-
[Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Matthias Brantner, 2012-03-16
-
Re: [Merge] lp:~nbrinza/zorba/parse-fragment into lp:zorba
From: Matthias Brantner, 2012-03-16