Hi everyone,

The dev guide and admin docs talk about how to load and retrieve an XML Schema, and in various parts of the marketing material Mark Logic is described as "schema-aware". The dev guide has a section on Loading Schemas and says:

"Schemas are automatically invoked by the server when loading documents (for conducting content repair) and when evaluating queries (for proper data typing)."

and

"The most common activity developers want to carry out with schema is to read them."

I've managed to load a schema into the database, and import it into my XQuery (using "import schema"), but how can I declare variables as elements of my schema?

In XQuery 1.0, I can do this:

declare variable $input as schema-element(result) := doc('myfile.xml')/*;

There is another similar construct for attributes. Does anyone know what the equivalent syntax in ML 3.2 (XQuery WD 2003) is? I've tried reading the specs but they're not very clear on the issue. It seems that my schemas are not being automatically invoked, as I can construct XPath expressions which do not conform to my Schema and the query processor does not complain.

Can anyone explain the "schema-awareness" of ML? What does it use the schema for? As I understand it, I can't validate documents using the Schema?

As an unrelated XQuery side issue, I'd also like to have some control over XML serialization. What control does ML give me in this regard? The dev guide seems silent on the issue. For example, I'd like to be able to output a DOCTYPE and specify an encoding for my results. In XSLT I can do this:

<xsl:output doctype-public=""-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system=""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"; encoding="UTF-8" />

http://www.w3.org/TR/xslt-xquery-serialization/ lists many other options. There are "declare options" settings for these in eXist. Can I do the equivalent in ML - or is this not possible?
Many thanks,
-Steve

p.s. The following article by Michael Kay has a very good overview of schema aware queries, and it is from here that I got the idea:

   http://www.stylusstudio.com/schema_aware.html


_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to