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

From
Andrew Welch <>
To
Michael Kay <>
Date
2009-06-17T13:12:54Z
ID
<>
Thread
Re: [xml-dev] Separate data from rules ... is the XML Schema 1.1 <assert> element a step backwards?
>> First an example of a business rule:
>>
>>     A Level 1 manager has a maximum signature
>>     authority of $10K.
>>
>>
>>     An auto loan applicant, living in Ohio, is
>>     underage if he/she is under 18 years of age.
>>
>>     If a customer has no outstanding invoices,
>>     then the customer is of preferred status.
>>
>
> I agree those are business rules and are best kept out of a schema.
>
> What's more difficult are rules like "Every branch of the bank has a branch
> manager" - that's on the borderline between structural rules and business
> rules.

I've often wondered where you draw the line - do you check everything
possible in the xsd, or only in the application, or both.

There doesn't seem to be a simple answer, but a rough guide is: if you
don't want "branch manager" to ever be null, check it in the schema.
If however, you want a nice error message instead of one mentioning
"invalid content" and "complex type" then let it through to the app.



-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/