[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Are people really using Identity constraints specified in
John Sowa posted the following to the CG list. Not surprisingly, I disagree with the conclusion in this situation, but I do agree with the rest of the text: "The basic point of the paper is the following restriction: "all quantifications are bounded by some variables". This kind of restriction is very common for most practical applications. For database queries and constraints, an even stronger restriction holds: every quantifier is bounded by a *constant*, namely the cardinality (number of rows) of the corresponding table. In natural languages, it is extremely rare to find any sentence with an unrestricted quantifier. Even when the word "everything" is used, some implicit domain is almost always intended. Furthermore, those domains are almost always finite. (The major exceptions are books, papers, and courses on mathematics.) In logic, a noun phrase such as "every employee" maps to a typed, sorted, or restricted quantifier of the form (Ax:Employee). Those quantifiers usually have a constant upper bound, although that bound may be very large for the domains of people, bacteria, or web pages. This means that for most practical applications, theories stated in first-order logic with restricted quantifiers are decidable. However, the domains might be so large that even a polynomial amount of time is beyond the age of the universe. Bottom line: The most important issue is scalability, not decidability." From: Roger L. Costello [mailto:costello@m...] Hi Folks, Here are some thoughts: 1. Constraints on data are not equal to business rules. 2. Business rules change. Constraints on data do not. 3. Constraints on data should be specified in XML Schemas. Business rules should not. Business rules should be specified in higher level application code. Example: A company has employees. The current company policy on the minimum age requirement is 16. Should the company create an XML Schema that constrains <minimum-age> to 16? Or, should the company create an XML Schema that simply constrains <minimum-age> to an integer, and let applications higher up provide further constraints? Answers: - Mandating that the minimum age of an employee be 16 is a business rule. It is highly likely to change over time. - The value of the <minimum-age> must be an integer. This is a constraint on the data. It will not change over time. 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. Comments? How would you characterize the distinction between "business rules" and "constraints on data"? /Roger
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|