Just separate the two declarations:
import schema namespace "" at "http://example.org/xyz.xsd";
declare default element namespace "";
//Mary
On Mon, 10 Aug 2009 11:56:35 -0700, Tim Meagher <[email protected]> wrote:
I'm using MarkLogic 4.1 to try to validate against a schema that has no
namespace associated with it. Rather than using
xsi:noNamespaceSchemaLocation in each XML document to references the
schema
file in the Schemas database, I would like to import the schema. The
schema
itself has no namespace associated with it, so according to
http://www.w3.org/TR/xquery/, the syntax for doing so is described as
follows:
The following example imports a schema that has no target namespace,
providing a location hint, and sets the default element/type namespace to
"no namespace" so that the definitions in the imported schema can be
referenced:
import schema default element namespace ""
at "http://example.org/xyz.xsd";
However, when attempting such an import statement in a MarkLogic xquery,
I
get the following error message:
query evaluated in fabrication at Modules:/ as 1.0-ml (cq v4.1-1)
[1.0-ml] XDMP-SCHPRFX: (err:XQST0057) Cannot declare a prefix for the
empty
namespace URI in a schema import
Stack trace:
line 3:
1: xquery version "1.0-ml";
2:
3: import schema default element namespace "" at
"/citation-match-request.xsd";
4:
5: let $node :=
xdmp:eval("xquery version "1.0-ml"; import
sch...", (), <options
xmlns="xdmp:eval"><database>10474121819804666683</database><modules>15178358
166571...</options>)
in /eval.xqy line 111:
Any suggestions?
Thank you!
Tim Meagher - AAOM Consulting
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general