RE: [xml-dev] Separate data from rules ... is the XML Schema 1.1 <assert> element a step backwards?

From
Costello, Roger L. <>
To
"''" <>
Date
2009-06-17T15:29:14Z
ID
<>
Thread
RE: [xml-dev] Separate data from rules ... is the XML Schema 1.1 <assert> element a step backwards?
> a paragraph cannot appear nested
> within another paragraph unless 
> there is an intervening table, which is in
> my book a structural rule 

Awesome example!

So "structural rules" are those that specify constraints on the structure of XML instances? That is, they specify what elements and attributes can go where.

Here's a rule that has nothing to do with the structure of XML instances: 

   The meeting start-time must be before the end-time.

Therefore, this is a business rule and should not be expressed in XML Schema using the <assert> element, correct?

Another example,

    The total-amount-due for an order is
    computed as the sum of the line-item
    amount(s) for the order plus tax.

Again, this has nothing to do with the structure of XML instances and therefore is a business rule and should not be expressed in XML Schema using the <assert> element, correct?


Let me summarize what I've learned:

1. Use the <assert> element only to express structural rules.

2. Structural rules are those that specify constraints on the structure of XML instances; that is, what elements and attributes can go where.

3. All other rules (non-structural rules) are business rules and should be not expressed in XML Schema using the <assert> element.

Do you agree?

/Roger