ubl-ndrsc — archive
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
— [Date Index]
| [Thread Index]
| [Month Index]
| [List Home]
RE: [ubl-ndrsc] Release Note Wording: Extensions and Ur
Thanks for sharing your thought process with us, fascinating ;-) On Thu, 2003-01-16 at 11:22, Burcham, Bill wrote:
> Thesis: "full" ur-types are no more "immediately reusable" than the "empty"
> ones. >
> Here's the scenario: I want to specialize a UBL address by removing one
> element (say, ZIP code -- heck, does it matter?) and, say also add an
> element or two. >
> Under the "full" ur-type scheme we have: >
> 1. a new schema
> 2. with a new complex type
> 3. derived from the "full" ur-type "Address-ur"
> 3.a. via "restriction"
> 4. the content model contains:
> 4.a. to add an element: add a new element declaration
> 4.b. to keep an element "unaltered": we'll often (usually) need a
> redeclaration since the minOccurs=0 in the ur-type will be inappropriate.
> This'll entail copying the definition (cut/paste) from the UBL schema (not
> the ur-schema).
> 4.c to drop an element: there is no action required -- just don't redeclare
> it >
> Under the "empty" ur-type scheme we have: >
> 1. a new schema
> 2. with a new complex type
> 3. derived from the "empty" ur-type "Address-ur"
> 3.a. via "extension"
> 4. the content model contains:
> 4.a. to add an element: add a new element declaration
> 4.b. to keep an element "unaltered": we'll ALWAYS have to declare the
> element -- copying the definition (cut/paste) from the UBL schema.
> 4.c. to drop an element: there is no action required -- just don't declare
> it >
> The two approaches differ (in this scenario) only at 4.b. And the
> difference comes in only when the _actual_ UBL model prescribes a
> minOccurs=0. In that case, the "full" ur-type approach is superior since at
> 4.b. there is no work to be done under "full" (whereas under "empty" you
> have to declare the element anyway). I analyzed the current UBL model and
> about two-thirds of our elements are minOccurs=0. (hello Tim: time to
> normalize better :) but I digress...) So with the current model, under this
> scenario "full" gets the nod 2/3 of the time whereas the two approaches are
> equal 1/3 of the time. >
> Another, and arguably the dominant scenario is one in which we are only
> _adding_ elements -- not taking any away. This is classic specialization.
> Under that scenario, the user simply extends the UBL schema. Both "full"
> and "empty" approaches are equivalent. >
> And now I've come full circle and convinced myself that "full" is better
> than "empty". My thesis is blown. I hope you have enjoyed this tour of my
> tortured thought process. Thank you for playing. Be sure to see the young
> man in the red blazer as you exit the building, for your free parting
> gift... > > -Bill > >
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
— [Date Index]
| [Thread Index]
| [Month Index]
| [List Home]