This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 4347 - Deprecate ID(S)/IDREF(S), scrap constraints, redefine in terms of "as if" key/keyref
Summary: Deprecate ID(S)/IDREF(S), scrap constraints, redefine in terms of "as if" key...
Status: RESOLVED WONTFIX
Alias: None
Product: XML Schema
Classification: Unclassified
Component: Structures: XSD Part 1 (show other bugs)
Version: 1.1 only
Hardware: PC Linux
: P2 normal
Target Milestone: ---
Assignee: C. M. Sperberg-McQueen
QA Contact: XML Schema comments list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-23 18:24 UTC by Henry S. Thompson
Modified: 2007-03-28 18:25 UTC (History)
0 users

See Also:


Attachments

Description Henry S. Thompson 2007-02-23 18:24:49 UTC
Proposal:

1) Deprecate the builtin simple types ID, IDS, IDREF, IDREFS;

2) Remove all existing co-constraints wrt ID;

3) Remove all the special validation rules and _ad-hoc_ PSVI structures associated with ID/IDREF;

4) Define the semantics of ID/IDREF 'as if' every attr/elt of type ID contributed to a synthetic 'unique' constraint on the validation root of the form
  <xs:select xpath='[all possible parents]'/>
  <xs:field xpath='elt or @attr, as appropriate'/>
and every attr/elt of type IDREF contributed similarly to a synthetic 'keyref' constraint

5) Change the {fields} property of Identity Constraints to be a property record containing {xpath} and a new {distributed} property with a boolean value, mapped from xs:field/@distributed, with semantics of 'false' being _status quo_, and 'true' being, roughly "when this xpath matches something validated as a list, treat each item in that list as a field value"

6) Use that new property to define the semantics of IDS and IDREFS, parallel to (4)
Comment 1 C. M. Sperberg-McQueen 2007-03-28 18:25:00 UTC
The WG discussed this at a face to face meeting on 28 March and
decided to close it as WONTFIX.  Our rationale is that part of 
the proposal appears to be at variance with our charter obligation 
to support the functionality of DTDs, and the work involved appears 
(a) potentially time-consuming and (b) not needed if we don't 
deprecate ID and IDREF.