Hi Folks, I am learning the Alloy modelling language. It is so cool. One interesting aspect of Alloy is this rule: An expression is erroneous if it can be shown A common and simple case of redundancy is an expression that is equal to the empty relation (set). For example, if sets A and B are disjoint, then (A intersect B) is empty and therefore redundant
(and therefore erroneous). I am trying to see if any of the XML technologies have an equivalent rule. It seems that XSD does not. Consider: the following schema says that an XML instance document can never have a <Foo> element: <xs:element
name="Book"> The Foo element declaration is redundant – it declares an element that can never manifest in XML instances. Redundancy is not an error in XSD. It also seems that redundancy is not an error in XSLT/XPath. Consider: the following XSLT has an XPath expression that can never be satisfied: <xsl:template
match="/"> In the vast universe of XML technologies, is there anywhere a rule that requires redundancy be treated as an error? /Roger |