On 08/03/2011 11:09 AM, Benoit Maisonny wrote: > > Do you have any plan to support NVDL? > http://en.wikipedia.org/wiki/Namespace-based_Validation_Dispatching_Language >
We know and like NVDL but we find it overkill for the most common needs. We don't plan to support this ISO standard. > I think this would be a nice standard way to solve a problem I have with > certain documents edited in XXE that mix elements from various namespaces: > > For example: > <a xmlns="a"> > <x:x xmlns:x="x"/> > </a> > > The problem is that I have a DTD for "a", which doesn't know anything > about "x". I have an XML Schema for "x", which likewise doesn't know > about "a". NVDL would be able to validate the document anyway. > We have implemented our poor man's NVDL: the <validate> configuration element. See http://www.xmlmind.com/xmleditor/_distrib/doc/configure/validate.html We currently use this feature: * to ``inject'' the MathML schema into the DITA DTD and the DocBook 5 RELAX NG schema. * to ``inject'' the XHTML DTD into various schemas such as the Schema for W3C XML Schemas (this allows us to document a W3C XML schema using XHTML). DITA example. Excerpts from mathml_config/ditamml/ditamml.xxe: --- <configuration name="DITA" ...> ... <include location="xxe-config:dita/topic.xxe" /> <validate namespace="http://www.w3.org/1998/Math/MathML"> <relaxng location="../common_rng/mathml2.rng" /> </validate> --- WXS example. Excerpts from wxs_config/wxs.xxe: --- <configuration name="W3C XML Schema" ...> ... <schema> <location>http://www.w3.org/2001/XMLSchema xsd/XMLSchema.xsd</location> </schema> <validate namespace="http://www.w3.org/1999/xhtml"> <dtd publicId="-//W3C//DTD XHTML 1.0 Strict//EN" systemId="xxe-config:xhtml/dtd/1.0/xhtml1-strict.dtd" /> </validate> --- However, you cannot use this feature unless: [1] Your DTD has an ANY element which can be used to host x elements. More generally the main schema must have elements which can be used to host elements coming from the secondary schemas. [2] The XML Schema for "x" has a target namespace. Notice that the <validate> configuration element requires one --and only one-- namespace. However XXE supports several different <validate> configuration elements in the same configuration file. -- XMLmind XML Editor Support List [email protected] http://www.xmlmind.com/mailman/listinfo/xmleditor-support

