OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

uddi-spec message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel







A point of clarification - one CAN assign the same identifier to as many
entities as they please, even if this goes against its intended use.
Doing an identifier based search would recover all such instances in that
scenario.   If the identifier set was managed within the registry as a
"Checked Identifier" set, then a check would be performed by the provider
before these values could be saved in the registry.  It would therefore be
up to the provider in such cases to control (prevent) improper use.

- Tom Bellwood


Anne Thomas Manes <anne@manes.net> on 01/23/2003 12:21:59 PM

To:    Daniel Feygin <feygin@unitspace.com>, "'Von Riegen, Claus'"
       <claus.von.riegen@sap.com>, "'Uddi-Spec'"
       <uddi-spec@lists.oasis-open.org>
cc:
Subject:    RE: [uddi-spec] CR-010: isReplacedBy tModel



Question:

What is the expected behavior if someone queries for an entity using an
identifier and the registry finds more than one match? (has this expected
behavior been specified?)

Anne



> -----Original Message-----
> From: Daniel Feygin [mailto:feygin@unitspace.com]
> Sent: Thursday, January 23, 2003 9:36 AM
> To: 'Von Riegen, Claus'; 'Anne Thomas Manes'; 'Uddi-Spec'
> Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
>
>
> Claus,
>
> I did not realize that the identifiers' uniqueness is scoped to an
> entire registry.  I went by the assumption that a given entity could
> have only one value for a given identifier (one keydReference of a given
> tModelKey in the entity's identifierBag), but that there were no other
> requirements on that.  I looked through the spec and found no guidance
> as to what the registry is supposed to do when a businessEntity is
> published with an identifier that is already "claimed" (perhaps
> unjustifiably) by another businessEntity publisher.
>
> V3 definition of an identifier introduces by implication a requirement
> that establishes an indirect relationship between potentially unrelated
> entities.  Thus registry owners are put in the position of not only
> validating publishers' content, which is fine within clearly defined and
> reasonable syntactic and semantic bounds, but also policing
> publisher-to-publisher relationships, which may be quite tricky in some
> circumstances (consider the UBR as an extreme case).  Appendix E, Using
> Identifiers, does not mention the uniqueness requirements of identifier
> values, so one might question the suitability of introducing normative
> requirements (if my assessment of the definition is correct) in the
> glossary appendix of the specification.
>
> Clearly my prior remarks on isReplacedBy capability are inconsistent
> with the apparent 'idea' of the identifier in UDDI V3.  I found no
> references to the scope of identifier uniqueness in V2 though, so I
> wonder if my comments could still apply to V2.  With regard to V3 we
> thus have a choice between adopting the solution proposed in Anne's CR
> or adopting the alternative she mentioned with the implication that the
> definition of the identifier in V3 will have to be revised.  Also it
> would not hurt to add more normative guidance explaining the proper
> enforcement of identifiers' uniqueness characteristics.  If this could
> be left up to registry policy, then we should probably also specify
> that.
>
> Lets try to analyze your point of this being an errata, because it fixes
> an inconsistency.  I can identify 4 scenarios relevant to our
> discussion:
> 1. One entity is replaced by one other entity.  This is one-to-one
> relationship that is covered under existing specification.
> 2. One entity is replaced by multiple entities.  This is one-to-many
> relationship that cannot be implemented under existing specification and
> requires a categorization.  I do not see an inconsistency with the spec
> here, we are extending the spec to cover a new function.
> 3. Multiple entities are replaced by one other entity.  This is
> one-to-many relationship that can be modeled with isReplacedBy, but will
> cause the inconsistency which I assume you are referring to, as multiple
> entities will become identified by one value.  However, the replacement
> entity's identity can be traced to the multiple entities it is
> replacing.  Therefore IMHO it would be more consistent with the general
> idea of identity to model this relationship with an identifier rather
> than with a categorization.  But even if we choose to represent this
> scenario with a categorization, this would still be a new capability
> which I would therefore favor being implemented with a new tModel (say,
> isConsolidatedReplacedBy for the purpose of discussion).
> 4. Multiple entities are replaced by multiple other entities.  I do not
> have a clue as to how this might be modeled without the use of an
> intermediary entity, which would have one-to-many relationships to the
> group of multiple entities being replaced and to the group of newly
> created entities.  That is covered in (2) and (3).
>
> So I assume it is scenario (3) above you find inconsistent with the
> wording of the identifier definition.  I would argue though, that that
> definition is inconsistent with the ability for one-to-many
> transformation of an entity's identity.  Thereby the inconsistency is
> only with the V3 definition of identifiers in UDDI.  isReplacedBy could
> be used as identification scheme tModel to model scenario (3).
> Alternatively, it is possible to model scenario (3) with a
> categorization.  Then we face another choice of either making up another
> tModel or redefining isReplacedBy as a categorization scheme, risking to
> inflict pain on the users.
>
> Also, I searched through the text of V2 specs and found no reference to
> the V3 definition of identifier.  So it is only an inconsistency in V2
> if you consider the general agreement of the Consortium's Working Group
> members as to the concept of identifiers.
>
> Regards,
> Daniel
>
>
> > -----Original Message-----
> > From: Von Riegen, Claus [mailto:claus.von.riegen@sap.com]
> > Sent: Thursday, January 23, 2003 11:31 AM
> > To: 'Anne Thomas Manes'; Daniel Feygin; 'Uddi-Spec'
> > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> >
> >
> > Anne, Daniel,
> >
> > Daniel's proposal to let two businessEntities be "identified"
> > by the merged businessEntity (second case from below) seems
> > to be attractive at first view, but it actually contradicts
> > to the idea of an identifier in UDDI.
> >
> > An entity's identifierBag contains identifiers (specified as
> > keyValues in keyedReferences) for the entity itself (see
> > section 3.3.2.10 of the UDDI V3 specification). That's why
> > any identifier should be used only once in a UDDI registry -
> > the V3 glossary (see Appendix L of the UDDI V3 specification)
> > defines an identifier system as "Any value set intended to be
> > used to identify the entities in which it is referenced. An
> > identifier system is distinct from a category system in that
> > only one entitty in a given registry should be associated
> > with a given identifier." And that's why we changed the
> > categorization of the owningBusiness tModel from "identifier"
> > to "categorization" in one of the V2 errata sets. It is used
> > in a tModel to identify the businessEntity that owns the
> > tModel - but it does not identify the tModel, it categorizes
> > it (and many tModels can carry the same category, i.e. be
> > owned by the same businessEntity).
> >
> > Again, the most consistent solution, IMO, would be to change
> > the categorization for the isReplacedBy tModel in both UDDI
> > V2 and V3, if possible at all (in V2). The change can
> > certainly be viewed as a valid errata, since it removes an
> > inconsistency. If the change in V2 is not acceptable, we can
> > start to find the second-best solution.
> >
> > Claus
> >
> >
> > -----Original Message-----
> > From: Anne Thomas Manes [mailto:anne@manes.net]
> > Sent: Mittwoch, 22. Januar 2003 17:34
> > To: Daniel Feygin; 'Uddi-Spec'; Von Riegen, Claus
> > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> >
> >
> > +1
> >
> > > -----Original Message-----
> > > From: Daniel Feygin [mailto:feygin@unitspace.com]
> > > Sent: Wednesday, January 22, 2003 11:18 AM
> > > To: 'Uddi-Spec'; 'Anne Thomas Manes'; 'Von Riegen, Claus'
> > > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> > >
> > >
> > > Anne, Claus,
> > >
> > > Please see my comments inline.
> > >
> > > Thank you,
> > > Daniel
> > >
> > >
> > > > -----Original Message-----
> > > > From: Von Riegen, Claus [mailto:claus.von.riegen@sap.com]
> > > > Sent: Wednesday, January 22, 2003 5:56 PM
> > > > To: 'Anne Thomas Manes'; Uddi-Spec
> > > > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> > > >
> > > >
> > > > Anne,
> > > >
> > > > If we have two different tModels for nearly the same concept,
> > > > it would complicate the decision for the publisher which
> > > > tModel to use, but would of course help the inquirer to more
> > > > clearly distinguish between the different cases.
> > > >
> > > > So, let us assume three cases.
> > > >
> > > > First, tModel T1 represents a Web service type for which a
> > > > new version is developed and published as tModel T2. Assuming
> > > > that this is a one-to-one relationship (one tModel can be
> > > > found by using the key of one tModel it is replaced with),
> > > > the publisher of tModel T1 should then add an identifierBag
> > > > to T1 that contains a keyedReference isReplaceBy / tModelKey T2.
> > >
> > > That is how I would prefer to see this recommended.
> > >
> > > > Second, businessEntities B1 and B2 represent businesses that
> > > > are merged to a business, that is published as businessEntity
> > > > B3. This is a many-to-one relationship (many businessEntities
> > > > can be found by using the key of one businessEntity they are
> > > > replaced with), that means the key of B3 is not an
> > > > identifier, neither for B1 nor for B2. Should we recommend to
> > > > use "isReplacedByMultiple" due to this reason, that is, the
> > > > publishers of B1 and B2 each add a categoryBag to their
> > > > businessEntities that contains a keyedReference
> > > > isReplacedByMultiple / businessKey B3?
> > >
> > > No, I would rather see this done by the application of existing
> > > identifier isReplacedBy to both B1 and B2.  That is, the
> > publishers of
> > > B1 and B2 would each add an identifierBag to their businessEntities
> > > that contains a keyedReference isReplacedBy referring to the
> > > businessKey of B3.  The use of isReplacedByMultiple would
> > apply in the
> > > unlikely event of a businessEntity B selling off all of its
> > > businesses, resulting in a number of identities Bx that are
> > separate
> > > from the original B (perhaps a sad example of this could be the
> > > sell-off of some defunct dom-com's assets to different
> > buyers; another
> > > one could have been the court-ordered break up of our good friend
> > > Microsoft [no emotion of any kind intended]).  Then the original B
> > > would add a categoryBag containing several keyedReferences
> > > isReplacedByMultiple enumerating businessKeys of each of resultant
> > > businessEntities Bx.  Am I missing something here?
> > >
> > > > Third, tModel T1 represents a Web service type for which a
> > > > new version is developed that consists of multiple single Web
> > > > service types that are published as separate tModels, for
> > > > example, T2 - T4. The RosettaNet PIP 3A4 is an example for
> > > > this, since up to version 1.4, it consists of messages that
> > > > represent a Purchase Order Request, a Purchase Order Change,
> > > > a Purchase Order Cancellation, and a Purchase Order
> > > > Acceptance, whereas it is followed by PIP 3A4 2.0 (Purchase
> > > > Order Request & Purchase Order Confirmation), PIP 3A8 1.0
> > > > (Purchase Order Change) and PIP 3A9 1.0 (Purchase Order
> > > > Cancellation). This is a one-to-many relationship (one
> > > > businessEntity can be found by using one of the keys of many
> > > > tModels it is replaced with), that means the keys of T2, T3
> > > > and T4 are identifiers, the all "identify" T1. Should we
> > > > recommend to use "isReplacedBy" due to this reason, that is,
> > > > the publisher of T1 adds a categoryBag to A1 that contains
> > > > three keyedReferences isReplacedByMultiple / tModelKey T2,
> > > > isReplacedByMultiple / tModelKey T3, isReplacedByMultiple /
> > > > tModelKey T4?
> > >
> > > That is exactly along the lines of what I am thinking.
> > >
> > > > I fear that I would have problems to explain this to
> > > > publishers so that they make consistent use of the different
> > > > isReplacedBy tModels.
> > > The publishers shouldn't really care - that would be taken
> > care of by
> > > the software they use.  Their only problem would be if we
> > deprecate or
> > > change the definition of existing isReplacedBy tModel that
> > they use.
> > > Guidance to UDDI client implementers is fairly simple too:
> > > 1) when an entity is replaced by one other entity, the
> > _preferred_ way
> > > of communicating that is isReplacedBy;
> > > 2) when an entity is replaced by more than one other entity, the
> > > _only_ way of communicating that is isReplacedByMultiple.
> > >
> > > Hence my interpretation that we are introducing a new
> > capability and
> > > not fixing a bug.  What am I missing?
> > >
> > > > What do you think?
> > > >
> > > > Claus
> > > >
> > > > -----Original Message-----
> > > > From: Anne Thomas Manes [mailto:anne@manes.net]
> > > > Sent: Mittwoch, 22. Januar 2003 14:25
> > > > To: Von Riegen, Claus; Uddi-Spec
> > > > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> > > >
> > > >
> > > > I'm thinking that the better alternative is to create an
> > > > isReplacedByMultiple tModel.
> > > >
> > > > > -----Original Message-----
> > > > > From: Von Riegen, Claus [mailto:claus.von.riegen@sap.com]
> > > > > Sent: Wednesday, January 22, 2003 7:42 AM
> > > > > To: 'Anne Thomas Manes'; Uddi-Spec
> > > > > Subject: RE: [uddi-spec] CR-010: isReplacedBy tModel
> > > > >
> > > > >
> > > > > Anne,
> > > > >
> > > > > Thanks for the well-prepared change request.
> > > > >
> > > > > As you note in section 3 (Impact statement), there is a
> > > > > significant
> > > > > impact for UDDI V2 registries if we make the change for
> > V2 also,
> > > > > especially if the tModel is already used often.
> > > > >
> > > > > However, there is at least a similar impact for UDDI V3
> > registries
> > > > > that also support UDDI V2 APIs: at the time UDDI V3 is
> > implemented,
> > > > > all keyedReferences to the V2 isReplacedBy identifier
> > > > system within an
> > > > > identifierBag have to be migrated to then occur within a
> > > > categoryBag.
> > > > > Otherwise, the V2/V3 multi-version registry would have to switch
> > > > > between the two personalities of the keyedReference on the
> > > > fly - and
> > > > > would have to support two personalities of the same
> > tModel for the
> > > > > different UDDI versions as well (note that the key for the
> > > > > isReplacedBy tModel is not changed).
> > > > > But the migration would mean that V2 API call response messages
> > > > > would contain the isReplaceBy tModel as a category system, which
> > > > > is simply wrong per the V2 specification.
> > > > > Thus, I have the dim feeling that we have to change the
> > > > > categorization for the isReplacedBy tModel already in
> > V2 in order
> > > > > to prevent problems that can occur later.
> > > > >
> > > > > An alternative could be to not change the categorization at all
> > > > > ...
> > > > >
> > > > > Thoughts?
> > > > >
> > > > > Claus
> > > > >
> > > > > -----Original Message-----
> > > > > From: Anne Thomas Manes [mailto:anne@manes.net]
> > > > > Sent: Mittwoch, 22. Januar 2003 00:39
 > > > > > To: Uddi-Spec
> > > > > Subject: [uddi-spec] CR-010: isReplacedBy tModel
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Anne Thomas Manes
> > > > > 617-497-1748 (land)
> > > > > 617-642-3144 (mobile)
>
>
> ----------------------------------------------------------------
> To subscribe or unsubscribe from this elist use the subscription
> manager: <http://lists.oasis-open.org/ob/adm.pl>
>


----------------------------------------------------------------
To subscribe or unsubscribe from this elist use the subscription
 manager: <http://lists.oasis-open.org/ob/adm.pl>



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC