Lists Home |
Date Index |
When I read this I feel good about how we have engineered CAM.
These real world examples show that we have it right - since it
can handle all of this in its stride. 3 different ways of
looking at one value? No problems. And context driven - yes!
Sure people can bitch about this not being 'simple' - but the
kind of use cases you have shown only proves you need strong
adaptability and flexibility to solve these real world needs.
Fortunately - unlike Tim's thoughts on XQuery - I feel very
confident that CAM has managed to address the needs.
Quoting "Thomas B. Passin" <firstname.lastname@example.org>:
> Roger L. Costello wrote:
> > - The value of the <minimum-age> must be an integer. This is a
> > constraint on the data. It will not change over time.
> Ha! What happens when the government decides that some relevant age is
> 67.5 years instead of 67?
> > Therefore, an XML Schema should simply constrain <minimum-age> to be
> > an integer. Higher level applications should implement the business
> > rule that <minimum-age> be further constrained to 16.
> > How would you characterize the distinction between "business rules"
> > and "constraints on data"?
> A tricky, tricky issue - what is or is not a "business rule". I suspect
> that in practice most constraints that are not business rules are in
> place for supposed programming reasons, or by force of habit.
> In one project I work on, we have a data type that is a union of 1) an
> enumeration of strings, 2) a string that follows a certain regex
> pattern, and 3) an integer constrained to a certain range. No, don't
> bother to ask - it's one of those multi-agency reconciliations.
> Thomas B. Passin
> Explorer's Guide to the Semantic Web (Manning Books)
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> The list archives are at http://lists.xml.org/archives/xml-dev/
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>