[
Lists Home |
Date Index |
Thread Index
]
Hi Joe,
>> There are several aspects of HTML that can't be validated by
>> grammar-based schema languages, such as the fact that form elements
>> shouldn't occur within other form elements at any level [...]
>
> The HTML DTD specifies this constraint with an exclusion exception
> (a feature that was left out of XML):
>
> <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
>
> TREX can also express it concisely with a combination of CONCUR and
> NOTALLOWED. CONCUR was left out of RELAX-NG, but it can also express
> this constraint, as can RELAX and any other schema language based on
> tree-regular grammars.
Sorry, I should have said XHTML and specified XML Schema or RELAX NG.
What's pertinent here is that the XQuery Semantics doesn't (from what
I can tell) have a concur constraint, and even if it did you wouldn't
be able to express it in XML Schema in order to enable an XQuery or
XPath processor to check it.
But I should have picked a more indicative constraint. What about "The
name attribute of the META element should have a value from the
profile described at the URL specified by the profile attribute on the
HEAD element." or "If a table contains COLGROUP or COL elements, then
the number of columns indicated by the COLGROUP and COL elements must
match the number of columns in the longest row within the table." or
"In client-side image maps, the various areas defined by AREA elements
should completely cover the image's geometry."
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
|