This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
Add the ability to define and enforce co-constraints on attribute values, or on attribute values and sub-elements. For example, if attribute a has value foo, the attribute b must have one of the values fuzz, duz, or buzz; but if attribute a has value bar, the attribute b must have one of the values car, far, or tar. Or: if attribute href occurs, the element must be empty; if it does not occur, then it must have type phrase-level-content. See http://lists.w3.org/Archives/Public/www-xml-schema-comments/2000OctDec/0040.html: LC-193 Response. See http://lists.w3.org/Archives/Public/www-xml-schema-comments/2001AprJun/0175.html: R-7 in Errata List. This issue was also formerly known as co-occurrence (RQ-27; removed) Input from Straw Poll O-13 Opportunistic desideratum for 1.1: At our meeting in August 2002, some members of the WG felt that co-constraints needed to be a requirement for 1.1, others that the feature is too complex to design in the time available and with the compatibility constraints agreed for 1.1. Some WG members thought an 80/20 solution would be easy to specify, and undertook to demonstrate this by doing so. This item was abandoned in the meeting of 2004-03-25 (http://lists.w3.org/Archives/Member/w3c-xml-schema-ig/2004Mar/0133.html). A request to reopen it was was received on 25 May from Fabio Vitali (http://lists.w3.org/Archives/Member/w3c-xml-schema-ig/2004May/0066.html) (member-only link), and the WG has informally agreed to do so. A proposal from Paul Biron was received at the end of January 2006 (http://lists.w3.org/Archives/Member/w3c-xml-schema-ig/2006Jan/0137.html) [member-only link]; there is also the work done by Fabio Vitale and others (http://tesi.fabio.web.cs.unibo.it/schemapath).
The Working Group agreed to add support for simple Schematron-style check clauses, at the face to face meeting in Redwood Shores, April 2006. Accordingly I'm changing this from needsAgreement to needsDrafting.
The Schematron-style assertions mentioned in comment #1 were added to the spec in late summer 2006, and are reflected in the public working draft of August 2006. This entry should have been updated then. The Working Group has also agreed in principle to add conditional type assignment as a second class of co-constraint; we reached consensus on the technical content of the mechanism at the face to face meeting in Pisa in June 2007. A wording proposal for conditional type assignment has now been drafted and is at http://www.w3.org/XML/Group/2004/06/xmlschema-1/structures.cta.rt.200707.html (member-only link). Accordingly, I'm changing the keyword on this entry from needsDrafting to needsReview.
The wording proposal for conditional type assignment mentioned in comment #2 was accepted by the Working Group at its call of 27 July 2007, with amendments. The largest of these amendments was that Type Alternatives should be components, not property records, and that they should carry their own annotations. So I'm marking this issue as RESOLVED / FIXED.