I think you're conflating several meanings of the word "power" (as an ex-physicist I have opinions :) )
A string has a much bigger value space than a boolean: I don't think that's the same thing as the boolean being less expressive. Expressive 'power' can be about accuracy of conveying a meaning, in which case the fact that you are dealing with a more specific type is of enormous help!
On 1 Mar 2022, 12:20 +0000, Roger L Costello <costello@mitre.org>, wrote:
Hi Folks,
I would like to expand upon (generalize) something Michael Kay said [1] the other day.
An attribute is less powerful than an element. Attributes can't repeat, they have no order, and their values are simple strings whereas elements can repeat, they may or may not have a required order, and their values may be simple or complex.
A boolean type is less powerful than a string type. The value space of boolean is true, false, 0, 1 whereas the value space of string is virtually infinite.
Corollary: an attribute or element of type boolean is less powerful than an attribute or element of type string.
A string type that is constrained to a maxLength of 10 is less powerful than a string type that is constrained to a maxLength of 20.
We could continue to state XML constructs that are less powerful than other XML constructs.
Now we state the law:
The Law of Least Power
Use an XML construct that has all the power
you need and no more.
Comments?
/Roger
[1] http://lists.xml.org/archives/xml-dev/202202/msg00120.html
_______________________________________________________________________
XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.
[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php