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 5862 - Please retain redefine as well as override
Summary: Please retain redefine as well as override
Status: RESOLVED WORKSFORME
Alias: None
Product: XML Schema
Classification: Unclassified
Component: Structures: XSD Part 1 (show other bugs)
Version: 1.1 only
Hardware: All All
: P2 normal
Target Milestone: ---
Assignee: C. M. Sperberg-McQueen
QA Contact: XML Schema comments list
URL:
Whiteboard:
Keywords: resolved
Depends on:
Blocks:
 
Reported: 2008-07-13 15:53 UTC by Anthony B. Coates
Modified: 2008-08-04 16:26 UTC (History)
1 user (show)

See Also:


Attachments

Description Anthony B. Coates 2008-07-13 15:53:31 UTC
I know that redefine isn't widely used, largely because of flaky implementations in the early days of XML Schema 1.0.  However, an increasingly common approach for enterprise data modelling is to define a "core" data model that contains all possible fields, and then allow individual groups to customise data types *by restriction*, so that all customisations are held in sync by their common ancestor.

While redefine was too restrictive in the past (because sometimes you do want to just override), redefine allows you to prove that you are using a restriction, not an extension, and to manage the use of extension versus restriction across sets of Schemas derived from a core set of Schemas.  It's possible that as people move to Schema 1.1, and start to experiment with all of the features that they aren't currently using now with 1.0, they may revisit "redefine" and its uses.
Comment 1 David Ezell 2008-08-04 16:26:25 UTC
On 2008-08-01 the WG reviewed the request from Mr. Coates and decided not to take any action other than to close this item as "works for me".  Following is the rationale for that decision.

Point 1 - the actual request for this bug entry is "please retain redefine as well as override."  Since the WG is deprecating redefine but not removing it, then strictly speaking the WG is retaining redefine.  It will be up to some future working group at some future time to decide whether to eliminate redefine in some future revision; in no way does the deprecated label force a decision on such a future working group.  So from a very precise point of view, the WG is already complying with the commenter's request -- hence the WORKSFORME classification.

Point 2 - the WG has struggled with redefine and how it fits into schema composition.  XML Schema 1.1 notably (at least at this point) does >not< address composition - the story is the essentially the same as with 1.0.  Designating redefine as "deprecated" is in part a signal that future work should address composition and redefine in particular.  

Point 3 - the WG (as a group) was unwilling to extend the rec to include xs:override without some compensating measure with regard to redefine.  Hence the "deprecated" label.

The WG hopes that commenter can understand that this issue is a difficult one, and that we believe that the status quo is the best possible outcome at this time.