[
Lists Home |
Date Index |
Thread Index
]
Hi Valeri,
> how matrix like example below can be discribed in XML schema in such
> way that actual number of rows and columns in XML file could be
> checked during the validation against this schema?
The only kinds of schema languages that will enable you to check this
kind of complex co-occurrence constraint are those that use
"rule-based validation" such as Schematron. W3C XML Schema (which is
what I guess you mean by XML schema) doesn't support these kinds of
constraints. In Schematron, you could do:
<sch:rule context="Matrix">
<sch:assert test="Description/rows = count(row)">
The number of rows in the Matrix must be the same as the value of
the 'rows' element within the Description.
</sch:assert>
</sch:rule>
<sch:rule context="row">
<sch:assert test="../Description/columns = count(cell)">
The number of cells in the row must be the same as the value of
the 'columns' element within the Description of the Matrix.
</sch:assert>
</sch:rule>
These Schematron rules can be embedded within a W3C XML Schema; see:
http://www.topologi.com/public/Schtrn_XSD/Paper.html
and try using Topologi's Schematron validator:
http://www.topologi.com/validator
to do the validation.
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
|