XMI 2.4 RTF Avatar
  1. OMG Issue

XMI24 — Production rule wrongly includes type on link elements

  • Key: XMI24-122
  • Legacy Issue Number: 15409
  • Status: closed  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Production rule 2c in section 6.4 is as follows:

    2c:XMIReferenceElement::= "<" xmiName (2g:TypeAttrib)? 2l:LinkAttribs "/>"

    However this does not make sense: the TypeAttrib is redundant with the xmi:type on the object referenced (making it fragile to change) and the spec says nothing about what happens if they are inconsistent or one may be the superclass of the other. In fact the text describing rule 2c says nothing about the use of 2g or the TypeAttrib:

    “2c. Use this production rule to serialize a reference to an object using an XML element. If you use identity

    attributes, the values of the identity attributes must match the values of the identity attributes for the object

    that is referenced.”

    Finally, none of the examples of use of href or idref in the document use the TypeAttrib e.g. example in 4.10.3 or 4.10.2.2.

    Proposed resolution: remove the use of 2g from rule 2c

  • Reported: XMI 2.1.1 — Fri, 6 Aug 2010 04:00 GMT
  • Disposition: Resolved — XMI 2.4
  • Disposition Summary:

    Further to the issue, the XSD generated for References (rule 4e) (corrected by resolution to 11002) does not allow for xmi:type to be specified
    Note that if people want to ‘cache’ the type for whatever reason, that it can be done, as for any other property such as ‘name’, as per the following bullet of 4.10.1:
    “When acting as a proxy, XML attributes may be defined, but not contents. The XML attributes act as a cache that gives an indication if the link should be followed.”

  • Updated: Fri, 6 Mar 2015 20:59 GMT