Issues for BOCA RTF-(defunct list)

To comment on any of these issues, send email to boca-rtf@omg.org. (Please include the issue number in the Subject: header, thusly: [Issue ###].) To submit a new issue, send email to issues@omg.org.

List of issues (green=resolved, yellow=pending Board vote, red=unresolved)

List options: All ; Open Issues only; or Closed Issues only

Issue 1166: CDL case Studies--examples missiin
Issue 1168: Inconsistency of Section 7.2, pages 234-288 with other partsd of doc.
Issue 1169: Non-normative MODL issue
Issue 1170: "Type Definition"/CDL Inconsistency
Issue 1238: IDL map for relationship/Framework alignment
Issue 1239: IDL/file structure mapping
Issue 1240: bom/98-02-17 B
Issue 1243: OBV/top of type hierarchy should be abstract
Issue 1244: OBV/inheritance restriction clarification
Issue 1246: CDL syntax for GeneralModel
Issue 1247: CDL syntax for CorbaModel
Issue 1249: CDL for BOCAModel
Issue 1291: Do not generate TypeManager for DependentObjects
Issue 1304: Keyword for BocaSignal as "event", should be "signal"
Issue 1412: OBV additions to CORBA core Model
Issue 1413: Syntax for triggers and expressions traversing many relationships
Issue 1414: BocaCommand keyword incorrect
Issue 1415: Typographical error-BocaBusinessProcess defined twice
Issue 1429: Lack of support of UML isRoot
Issue 1430: Lack of support for UML concurrency specifier on BocaOperation
Issue 1431: Section 2.2.4: Boca Meta-Model in CDL
Issue 1432: Section 2.2.4: The attribute has_feature is inappropriate
Issue 1433: Section 2.2.4: Change IspartOf to IsOwnedBy
Issue 1434: Section 2.2.4: Change grammar for relationship declarations
Issue 1435: Section 2.2.4: CorbaStructuredType is declared twice
Issue 1436: Section 2.2.4: In exception_element relationship change Many to Composes
Issue 1437: Section 2.2.4: can_be_raised should be modified
Issue 1438: Section 2.2.4: CorbaInterface should derive only from CorbaStructuredType
Issue 1439: Section 2.2.4: Change CDL grammar for relationship declarations
Issue 1440: Section 2.2.4: CorbaOperation should not derive from NameSpace
Issue 1442: Change CDL declaration or UML diagram
Issue 1443: CDL declaration should specify Composes rather than Many
Issue 1444: CDL declaration should specify IsOwnedBy rather than IsPartOf
Issue 1445: CDL declaration of is_in should specify IsOwnedBy rather than IsPartOf
Issue 1446: CorbaUnion should redefine the has_feature relationship
Issue 1447: The defined_in relationship should be removed
Issue 1448: Re-define AggregationKind
Issue 1449: In CDL declaration of relationship change IsPartOf to IsOwnedBy
Issue 1450: BocaFeature should redefine the defines relationship
Issue 1451: Change CDL declaration of relationship redefined_by
Issue 1452: Why is inherit_specification attribute declared here?
Issue 1453: identifiable BocaStateSet: BocaStructuralFeature
Issue 1455: Declare these attributes as [MANAGER, is_locked, is_read_only]
Issue 1458: BocarelationshipReference issue
Issue 1459: inverse_type for References should be References
Issue 1460: relationship_kind declaration issue
Issue 1462: relationship_kind declaration issue (02)
Issue 1463: relationship_kind declarations issue (03)
Issue 1464: Change applied_ppliance to applied_appliance --editorial
Issue 1465: The keyword "event" is incorrect
Issue 1466: The keyword "process" is incorrect
Issue 1467: Remove (re)declaration of pass_by_value from BocaCommand
Issue 1468: Declaration of the pass_by_value attribute is redundant
Issue 1469: Clarify purpose of this declaration
Issue 1470: This forward reference is not necessary, remove it
Issue 1471: Keyword appliance_kind for BocaApplianceKind
Issue 1472: Declare MultiplicityKind as a dependent
Issue 1473: Names of these meta types are confusing
Issue 1474: name_space relationship redundant if TypedElement is subtype of NamedEleme
Issue 1476: Constraint not appearing in CDL declaration
Issue 1477: Constraint should formally appear in CDL declaration of this meta-type
Issue 1479: Issue with InvocationArgument
Issue 1480: Inverses not reflected in CDL
Issue 1481: Attributes that are supposed to be relationships
Issue 1482: Information in CDL declaration of metamodel not reflected
Issue 1483: Section 2.2.2.1, UML diagram for Core Model
Issue 1485: Section 2.2.2.3, UML diagram for Structural Features
Issue 1487: Section 2.2.2.4, UML diagram for Domain Meta-Types
Issue 1488: Section 2.2.2.5, UML diagram for Appliances
Issue 1489: Section 2.2.2.7, UML diagram for Expressions
Issue 1490: Alignment with UML State Meta-model
Issue 1492: Alignment with UML Constraints
Issue 1493: Alignment with UML General
Issue 1494: Deriving from the legacy CORBA IDL meta-model
Issue 1495: Insufficient constraints in the meta-model
Issue 1611: Relationship of "Abstract Framework" to BOCA specification

Issue 1166: CDL case Studies--examples missiin (boca-rtf)

Click here for this issue's archive.
Nature: Clarification
Severity: Minor
Summary:
Summary: Table of Contents identifies Section 7 as Appendix 3 - CDL Case Studies and Examples, but the text does not include these examples.   Furthermore, Section 8 in the Table of Contents becomes Section 7 in the text.
 

Resolution:
Revised Text: Redo table of contents--issue closed
Actions taken:
April 22, 1998: received issue
June 23, 1998: closed issue

Discussion:
 closed issue


Issue 1168: Inconsistency of Section 7.2, pages 234-288 with other partsd of doc. (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 7.2, pages 234-288 will be inconsistent with other parts of
 document due to:
 1.  Several issues/resolutions arising from mof-rtf on transformation of
 MOF meta model to IDL.
 2.  Specific problems with MODL to MOF IDL, as identified in mof-rtf
 issues.
 3.  Probable (minor) changes to  BOCA meta model (as expressed in CDL),
 to correct inconsistencies in document.
 
 Recommendation:
 Re-issue the IDL section following resolution of  issues impacting BOCA
 meta model (as expressed in CDL).
 

Resolution:
Revised Text:
Actions taken:
April 22, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1169: Non-normative MODL issue (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 7.1, pages 225-234 include a representation of the Boca model
 expressed in MODL.   MODL is a non-normative, proprietary language which
 has some limitations with respect to proper representation and
 transformation of BOCA meta model semantics into MOF compliant IDL.  As
 explained in the preamble of the Appendix 3, MOF has no normative form
 of expression.   As referenced in the MODL text, there are a number of
 MOF/MODL representational problems.   There are errors due to the manual
 process of going from CDL to UML to MODL to MOF.  Somewhere in these
 manual transformations, there appeared added operations (e.g.,
 GeneralModel::NameSpace::lookup),   added assertions (e.g.,
 GeneralModel::NamedElement::NameSyntax), added exceptions (e.g.,
 GeneralModel::NameSpace::Element_Not_Found),  lost references ("blind"
 associations in their place), etc.   As a consequence, the MODL does not
 reflect the BOCA meta model.
 

Resolution:
Revised Text:
Actions taken:
April 22, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1170: "Type Definition"/CDL Inconsistency (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 The CDL contained within the "Type Definition" paragraphs throughout
 section 2.3 (Component Definition Language Specification) are not always
 consistent with the CDL listed in section 2.2.4, pages 73-81.   
 

Resolution:
Revised Text:
Actions taken:
April 22, 1998: received issue

Discussion:


Issue 1238: IDL map for relationship/Framework alignment (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: p. 152, line currently states:
 <relationship_get> is generated if relationship::is_naviagable=-=TRUE
 
 In the Interoperability Specification (bom/98-04-05), page 40, the
 mapping for a one-to-many relationship does not include
 <relationship_get>, with justification on pages 38-40.   
 
 Recommendation:
 To align with the Interoperability Specification, referenced line above
 should read:
 
 <relationship_get> is generated if (relationship::is_navigable &&
 relationship::multiplicity.upper==1)
 
 Also, on p. 151 the first production in the IDL Map definition should
 make it clear that <relationship_get> is optional  and should read:
 
 <relationship> ::= [<relationship_get> ] [[";"] <relationship_set> ]
 [[";"] <relationship_import>] [[";"] <relationship_inherit>]
 

Resolution: :is_naviagable=-=TRUE
Revised Text:
Actions taken:
April 27, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1239: IDL/file structure mapping (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 The relationship between generated IDL and file structure is not defined
 by the BOCA specification.   There could be several workable
 implementation-specific approaches to file structure, but without
 consistent file structure patterns the resultant idl would not be
 interoperable between different idl generator mechanisms.    MOF IDL
 generation faces a similar situation, as documented in Mof-rtf issue
 957.  Also, work by Dan Frantz on the IDL Style Guide addresses some of
 the same issues. 
 
 Recommendation:
 Work with Dan Frantz and mof-rtf to establish a consistent IDL/file
 structure mapping across BOCA, MOF, and the IDL Style Guide.
 

Resolution:
Revised Text:
Actions taken:
April 27, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1240: bom/98-02-17 B (boca-rtf)

Click
here for this issue's archive.
Nature: Clarification
Severity:
Summary:
Summary: BOCA
 The BOCA errata  document dated April 1, 1998 was intended to be an
 extension of the BOCA 1.1 Errata document bom/98-02-17, with revisions
 made in response to requests by the AB, and others, in the few days
 prior to April 1.    Unfortunately, there was a transcription error and
 some of the items contained in bom/98-02-17 were not included in the
 final errata.     Most of these items are typographical errors,
 inconsistencies, redundancies, or alignment considerations with the BOCA
 Interoperability Framework.    Those items which are in these categories
 follow, and I assume are not controversial.   There were a few items
 which may materially impact the specification - these will be
 re-introduced as separate issues. 
 

Resolution:
Revised Text:
Actions taken:
April 27, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1243: OBV/top of type hierarchy should be abstract (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 The OMG Objects By Value, document orbos/98-01-18,  defines abstract
 interfaces and indicates how they should be applied to a Busieess Object
 Framework.  Page 8-107, Section 8.10.1, includes the text:
 
 "A base type is a type that appears at the top of a hierarchy that
 includes both regular interface and value types.   For example, it could
 be the root type of a business object framework that includes both
 regular interface types and value types..."
 
 This requires that the common supertype of regular interfaces (e.g.,
 BocaIdentifiable) and  pass-by-value (e.g., most subtypes of
 BocaUnidentifiable) must be abstract.
 
 This issue was addressed in the BOCA errata document bom/98-02-17, but
 was inadvertently lost in the transcription to the final errata
 document.
 

Resolution:
Revised Text:
Actions taken:
April 27, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1244: OBV/inheritance restriction clarification (boca-rtf)

Click
here for this issue's archive.
Nature: Clarification
Severity:
Summary:
Summary: The OMG Objects By Value, document orbos/98-01-18,  defines restrictions
 on inheritance relationships starting on page 5-26, section 5.3.2.1.
 This section of the Object By Value document includes a summarization
 table for allowable inheritance relationships.   (This specifies that an
 interface may inherit from multiple interfaces, no abstract values, and
 no stateful values.  An abstract value may support multiple interfaces
 and abstract values.  A stateful value may support multiple interfaces
 and abstract values, inherit from a single stateful value.)
 
 The BOCA document, page 90, defines constraints on specification
 inheritance, including that "a type can inherit from other types and/or
 idl interfaces".   This statement, and the other contraints, may not
 adequately reflect the semantic constraints added by the Objects By
 Value specification.
 
 This issue was addressed in the BOCA errata document bom/98-02-17, but
 was inadvertently lost in the transcription to the final errata
 document.
 
 

Resolution:
Revised Text:
Actions taken:
April 27, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1246: CDL syntax for GeneralModel (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 There are a some syntactic inconsistencies in the BOCA "GeneralModel"
 Meta-Model CDL  starting on page 73.   These are primarily typographical
 errors.
 
 *	in identifiable NamedTypedElement:
 	*	inconsistent with UML model showing name
 "TypedNamedElement"
 *	in identifiable StructuralFeature:
 	*	inheritance inconsistent with UML model showing name
 "TypedNamedElement"
 *	in "identifiable Classifier"
 	*	two usages of feature name "used_by"
 	*	misspelling of "TypedElement"
 *	in "identifiable NameSpace"
 	*	two usages of feature name "named_element"
 *	in "identifiable FeatureOwner"
 	*	syntax of <multiplicity_kind> is invalid
 

Resolution:
Revised Text:
Actions taken:
April 28, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1247: CDL syntax for CorbaModel (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 There are a some syntactic inconsistencies in the BOCA "CorbaModel"
 Meta-Model CDL  starting on page 74.   Most of these are typographical
 errors, some are due to constraints on use of identifiable types as
 attributes.
 

Resolution:
Revised Text:
Actions taken:
April 28, 1998: received issue
June 23, 1998: closed issue

Discussion:
 Accept recommendatio. Issue closed


Issue 1249: CDL for BOCAModel (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BOCA
 The CDL  for the BocaModel, beginning page 76, has some inconsistencies.
 

Resolution:
Revised Text:
Actions taken:
April 28, 1998: received issue
June 23, 1998: closed issue

Discussion:
 received issue


Issue 1291: Do not generate TypeManager for DependentObjects (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Since DependentObject types will be instantiated locally and are not the
 direct subjects of queries there is no need for them to have type 
 managers.  Consequently, type manager interfaces should not be generated
 for these types.  This is consistent with the Interoperability
 Specification proposal.
 
 

Resolution:
Revised Text:
Actions taken:
April 30, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1304: Keyword for BocaSignal as "event", should be "signal" (boca-rtf)

Click
here for this issue's archive.
Nature: Clarification
Severity:
Summary:
Summary: keyword for BocaSignal as "event".  The correct keyword should be
 > "signal. 
 > 
 >         identifiable BocaSignal: BocaOperation{
 >           {is_readonly=TRUE;
 >           keyword="event";  <--------- should be keyword "signal"
 >           };
 >         };
 

Resolution:
Revised Text:
Actions taken:
May 4, 1998: received issue

Discussion:


Issue 1412: OBV additions to CORBA core Model (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The BocaErrata document, bom/98-03-15, on page 2, section "Appendix 5 -
 Objects By Value (OBV)" states:
 
 "The Corba-Core meta-model (as reflected in BOCA) has not been updated
 to reflect OBV, it is recommended that a Corba-Core Meta-Model that
 reflects the OBV additions be developed by the revision task force."
 
 This statement explicitly requests the boca-rtf to extend the CORBA-CORE
 model documented in the BOCA submission (bom/98-01-07) to incorporate
 CORBA Objects By Value.
 

Resolution:
Revised Text:
Actions taken:
June 1, 1998: received issue

Discussion:


Issue 1413: Syntax for triggers and expressions traversing many relationships (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: It is the intent of "triggers" that they can traverse relations, these
 > relations may be "many" or "one" associations.  This is provided for
 > in
 > the Meta-Model by setting the "collection_content" parameter of the
 > "Traversal" node of an expressions, setting collection_content implies
 > a
 > single-value projection of the contents of the relation.  In other
 > cases
 > it is required to access a framework method of the collection returned
 > by the traversal (such as count, sum or average).  It is not clear in
 > the specification how this distinction is made in CDL syntax.  All of
 > the examples of both kinds of traversal use a dot ".".
 

Resolution:
Revised Text:
Actions taken:
June 1, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1414: BocaCommand keyword incorrect (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Incorrect keyword in CDL specification of BocaCommand, should be
 > "command", not "dependant" (page 79).
 > identifiable BocaCommand: BocaDependent{
 >     [is_locked] attribute boolean pass_by_value=TRUE;
 >     [MANAGER, readonly, is_locked] attribute BocaType
 > base_type=BaseDependent;
 >     [MANAGER, readonly, is_locked] attribute string
 > keyword="dependent"; <-------------- should be "command"
 > }; /* DependentType */ <-------------- should be "/* CommandType */"
 

Resolution:
Revised Text: BocaDependent{
Actions taken:
June 1, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1415: Typographical error-BocaBusinessProcess defined twice (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: he following cdl declaration is repeated (typographical error) on
 > page 78
 > identifiable BocaBusinessProcess: BocaBusinessObject {
 >     [MANAGER, readonly, is_locked] attribute BocaType
 > base_type=BaseProcess;
 >     [MANAGER, readonly, is_locked] attribute string keyword="process";
 > }; /* processDef */
 >      
 

Resolution:
Revised Text: BocaBusinessObject {
Actions taken:
June 1, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1429: Lack of support of UML isRoot (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 6.1.2.1
 
 Lack of support for UML isRoot
 
 Recommendation:  Should be added as an attribute of BocaType

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1430: Lack of support for UML concurrency specifier on BocaOperation (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 6.1.2.1
 
 Lack of support for UML concurrency specifier on BocaOperation
 
 Recommendation: Should be added as an attribute of BocaOperation
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:
 Not technically persuasive. issue rejected


Issue 1431: Section 2.2.4: Boca Meta-Model in CDL (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Analysis: TypedElement derives from NamedElement, yet TypedNamedElement derives from both 
 TypedElement and from NamedElement.  It is not clear what the intent is here.  The corresponding UML 
 diagram (section 5.1) is ambiguous--it is hard to tell whether TypedElement derives from NamedElement or 
 ModelElement.  If the intent is for TypedElement to derive from NamedElement, then there would appear to 
 be no purpose for TypedNamedElement at all, since TypedElement is a NamedElement.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1432: Section 2.2.4: The attribute has_feature is inappropriate (boca-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable FeatureOwner: NameSpace{
         attribute Set<AbstractFeature> has_feature;
         relationship has_features Composes 0..1 is_ordered AbstractFeature inverse defines;
 };
 
 The attribute has_feature is inappropriate since:
 a) AbstractFeature is an identifiable BOCA type and thus should not be the type of an attribute, and
 b) The necessary semantics are expressed by the relationship has_features
 
 Recommendation: Remove attribute has_feature

Resolution:
Revised Text: NameSpace{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1433: Section 2.2.4: Change IspartOf to IsOwnedBy (boca-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaArgument:TypedNamedElement{
         attribute ParameterDirectionKind kind;
         relationship operation IsPartOf CorbaOperation inverse arguments;
 };
 
 The corresponding UML diagram (section 5.2) shows the relationship as one of composition (strong 
 aggregation).
 
 Recommendation:  Change IsPartOf to IsOwnedBy
 

Resolution:
Revised Text: TypedNamedElement{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1434: Section 2.2.4: Change grammar for relationship declarations (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaArgument:TypedNamedElement{
         attribute ParameterDirectionKind kind;
         relationship operation IsPartOf CorbaOperation inverse arguments;
 };
 
 The declaration of the operation relationship illustrates the fact that the CDL grammar for relationship 
 declarations permits multiplicity to be omitted, in which case defaults defined in the meta-model for specific 
 types of relationship are assumed.  This encourages a lack of explicitness contrary to the intention of CDL to 
 provide a readable text rendition of a domain model with the most important semantics clearly visible.
 

Resolution:
Revised Text: TypedNamedElement{
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1435: Section 2.2.4: CorbaStructuredType is declared twice (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaStructuredType:CorbaType,FeatureOwner{
 };
 ...
 identifiable CorbaStructuredType : FeatureOwner, CorbaType {};
 
 CorbaStructuredType is declared twice.
 Recommendation: Remove the first declaration.

Resolution:
Revised Text: CorbaType,FeatureOwner{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1436: Section 2.2.4: In exception_element relationship change Many to Composes (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaException:NameSpace{
         relationship exception_element Many CorbaExceptionMember inverse is_in;
         relationship can_be_raised 0..* CorbaOperation inverse may_raise;
 };
 
 The corresponding UML diagram (section 5.2) shows the exception_element relationship as being one of 
 composition.
 
 Recommendation: In the exception_element relationship, change Many to Composes.

Resolution:
Revised Text: NameSpace{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1437: Section 2.2.4: can_be_raised should be modified (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaException:NameSpace{
         relationship exception_element Many CorbaExceptionMember inverse is_in;
         relationship can_be_raised 0..* CorbaOperation inverse may_raise;
 };
 
 The can_be_raised relationship should be modified by a constraint stating that the CorbaOperation and the 
 CorbaException be within the same scope.  It is not clear whether the meta-model contains enough 
 information to support formal expression of this constraint.
 
 Recommendations: Review the declaration of NameSpace and of its descendents to determine whether new 
 relationships need to be declared to describe the semantics of the CORBA namespace scoping rules. (See 
 issue 54).

Resolution:
Revised Text: NameSpace{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1438: Section 2.2.4: CorbaInterface should derive only from CorbaStructuredType (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaStructuredType : FeatureOwner, CorbaType {};
 
 identifiable CorbaInterface:CorbaStructuredType, FeatureOwner{
         relationship subtype 0..* CorbaInterface inverse supertype;
         relationship supertype 0..* is_ordered CorbaInterface inverse subtype;
 };
 
 The declaration of CorbaInterface as deriving from FeatureOwner is redundant, since CorbaInterface also is 
 declared to derive from CorbaStructuredType which derives from FeatureOwner.
 
 Recommendation:  CorbaInterface should explicitly derive only from CorbaStructuredType.
 

Resolution:
Revised Text: FeatureOwner, CorbaType {};
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1439: Section 2.2.4: Change CDL grammar for relationship declarations (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaInterface:CorbaStructuredType, FeatureOwner{
         relationship subtype 0..* CorbaInterface inverse supertype;
         relationship supertype 0..* is_ordered CorbaInterface inverse subtype;
 };
 
 The declaration of the subtype and supertype relationships illustrates the fact that CDL grammar permits the 
 relationship_kind to be omitted from a relationship declaration.
 
 Recommendation: Change CDL grammar for relationship declarations to require explicit specification of the 
 relationship_kind.

Resolution:
Revised Text: CorbaStructuredType, FeatureOwner{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1440: Section 2.2.4: CorbaOperation should not derive from NameSpace (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaOperation:BehavioralFeature, 
    TypedNamedElement,CorbaInterfaceFeature,NameSpace{
         attribute NameList contexts;
         attribute boolean is_oneway;
         relationship may_raise 0..* CorbaException inverse can_be_raised;
         relationship arguments Many is_ordered CorbaArgument inverse operation;
 };
 
 It is noted that CorbaOperation derives from NameSpace.  NameSpace was introduced into the meta-model 
 in order to align with UML.  Note that in the MOF, Operation indirectly derives from Namespace but that that 
 is not the case in UML.  Since BOCA and UML are at the same meta-level, proper alignment with UML 
 requires making the BOCA meta-model as similar as possible to the UML analysis meta-model, as long as 
 derivation from CORBA is not compromised.  However, alignment with the MOF is quite another matter, 
 since BOCA is a meta-level above the MOF.  Alignment with the MOF simply requires that the MOF model is 
 used to describe BOCA, not that the models be isomorphic.
 
 Therefore, in cases such as this where the MOF and UML models are dissimilar, the UML approach should 
 win out over the MOF approach.
 
 Recommendation:  Unless there is a compelling technical reason for BOCA to diverge from the UML 
 approach in this case, CorbaOperation should not derive from NameSpace.
 

Resolution:
Revised Text: BehavioralFeature,
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1442: Change CDL declaration or UML diagram (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaOperation:BehavioralFeature, 
    TypedNamedElement,CorbaInterfaceFeature,NameSpace{
         attribute NameList contexts;
         attribute boolean is_oneway;
         relationship may_raise 0..* CorbaException inverse can_be_raised;
         relationship arguments Many is_ordered CorbaArgument inverse operation;
 };
 
 The UML diagram (section 5.2) describes the first attribute differently; specifically it shows this attribute as 
 having the name context_id and its type as a sequence of strings.
 
 Recommendation: Either change the CDL declaration of CorbaOperation or the UML diagram so that the 
 two agree.

Resolution:
Revised Text: BehavioralFeature,
Actions taken:
June 3, 1998: received issue
June 23, 1998: issue closed

Discussion:


Issue 1443: CDL declaration should specify Composes rather than Many (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaOperation:BehavioralFeature, 
    TypedNamedElement,CorbaInterfaceFeature,NameSpace{
         attribute NameList contexts;
         attribute boolean is_oneway;
         relationship may_raise 0..* CorbaException inverse can_be_raised;
         relationship arguments Many is_ordered CorbaArgument inverse operation;
 };
 
 In the corresponding UML diagram (Section 5.2) the arguments relationship is shown as being one of 
 composition.  Thus, the UML and CDL contradict each other.
 
 Recommendation: The CDL declaration of this relationship should specify Composes rather than Many.

Resolution:
Revised Text: BehavioralFeature,
Actions taken:
June 3, 1998: received issue
June 23, 1998: close issue

Discussion:


Issue 1444: CDL declaration should specify IsOwnedBy rather than IsPartOf (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaExceptionMember: TypedElement{
         relationship is_in IsPartOf CorbaException inverse exception_element;
 };
 
 In the corresponding UML diagram (Section 5.3), the relationship between CorbaException and 
 CorbaExceptionMember is shown as being one of composition.  Thus, the UML and CDL contradict each 
 other.
 
 Recommendation: The CDL declaration of this relationship should specify IsOwnedBy rather than IsPartOf.
 

Resolution:
Revised Text: TypedElement{
Actions taken:
June 3, 1998: received issue
June 23, 1998: close issue

Discussion:


Issue 1445: CDL declaration of is_in should specify IsOwnedBy rather than IsPartOf (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaEnumerator : TypedElement{
         relationship is_in IsPartOf CorbaException inverse exception_element;
 };
 
 Regarding the is_in relationship declaration:  The inverse exception_element is one of composition, and the 
 corresponding UML (section 5.3) confirms this.
 
 Recommendation: The CDL declaration of the is_in relationship should specify IsOwnedBy rather than 
 IsPartOf.
 

Resolution:
Revised Text: TypedElement{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
  The inverse exception_element is one of composition, and the 


Issue 1446: CorbaUnion should redefine the has_feature relationship (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaUnion: CorbaStructuredType{
         //attribute CorbaType discriminator_type;
 relationship discriminator_type Uses CorbaType;
 };
 ...
 identifiable CorbaUnionMember:StructuralFeature{
         attribute any label;
 };
 
 The corresponding UML diagram (section 5.3) shows an association wherein CorbaUnion is a composition 
 of CorbaUnionMember(s).  Yet, this is not reflected in the CDL.  It is not reflected in the CDL because of the 
 fact that this relationship is actually a specialization of the relationship between FeatureOwner and Feature.  
 It is understandable that this relationship was not declared in the CDL because of the following problem:
 

Resolution:
Revised Text: CorbaStructuredType{
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1447: The defined_in relationship should be removed (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable CorbaStruct:CorbaStructuredType{
 };
 
 identifiable CorbaStructureMember:StructuralFeature{
         // [required] attribute CorbaStruct defined_in;
         relationship defined_in Uses 1..1 CorbaStruct;
 };
 
 The problem and solution discussed in issue 18 applies here as well.  However, in this case, the relationship 
 is sort of redefined, but  with a different name, with a simple Uses specifier, and as a one-way relationship 
 (no inverse).  This despite the fact that the corresponding UML diagram (section 5.3) specializes the 
 Feature-FeatureOwner relationship. 
 
 Recommendation: The defined_in relationship should be removed.  CorbaStruct should redefine the 
 has_feature relationship it inherits from FeatureOwner by adding a constraint saying that the relationship 
 can be populated only with CorbaStructMember instances.  CorbaStructMember should redefine the defines 
 relationship it inherits from Feature by adding a constraint saying that the relationship can be populated only 
 with a CorbaStruct instance.

Resolution:
Revised Text: CorbaStructuredType{
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1448: Re-define AggregationKind (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 enum AggregationKind{
         NOT_AGGREGATE,
         IS_AGGREGATE,
         IS_COMPOSITE};
 
 AggregationKind is modeled after a corresponding data type in UML.  However, the names of the values 
 differ needlessly from those of UML  Perhaps these names fit the BOCA style better.  However, it is more 
 important not to cause any confusion to those familiar with UML.
 
 Recommendation:  Define AggregationKind as follows:
 
 enum AggregationKind{
         NONE,
         SHARED,
         COMPOSITE};

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1449: In CDL declaration of relationship change IsPartOf to IsOwnedBy (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable BocaDuring: BocaFeatureOwner   {
         relationship owner IsPartOf BocaFeatureOwner inverse during_kw;
         // attribute BooleanExpression condition;
 relationship condition Uses BooleanExpression;
 }; /* DuringBlockDef */
 
 The declaration of the relationship owner as an IsPartOf relationship conflicts with corresponding UML 
 (section 2.2.2.1) which shows the relationship as being one of composition.
 
 Recommendation: In the CDL declaration of the relationship, change IsPartOf to IsOwnedBy.

Resolution:
Revised Text: BocaFeatureOwner {
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1450: BocaFeature should redefine the defines relationship (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary:  BocaFeature should redefine the defines relationship that it inherits from Feature by 
 adding a constraint stating that the relationship can only be populated by an instance of 
 BocaFeatureOwner.   
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1451: Change CDL declaration of relationship redefined_by (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 [is_abstract] identifiable BocaFeature: AbstractFeature{
         attribute boolean is_read_only=FALSE;
         attribute ScopeKind target_scope=INSTANCES;
         attribute VisibilityKind visibility=PUBLIC;
         attribute EventKind events=TRIGGERED_EVENTS;
         attribute string event_subject;
         attribute boolean is_locked=FALSE;
         [MANAGER,is_read_only] attribute string keyword;
         attribute boolean export=FALSE;
         // attribute BocaFeature redefines;
         relationship redefines References BocaFeature inverse redefined_by;
         relationship redefined_by References BocaFeature inverse redefines;
 }; /* Feature */
 
 The corresponding UML diagram (section 2.2.2.1) shows the redefined_by relationship as having multiplicity 
 *.
 
 Recommendations:  Change the CDL declaration of the relationship redefined_by  to show 0..* multiplicity.

Resolution:
Revised Text: AbstractFeature{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1452: Why is inherit_specification attribute declared here? (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 [is_abstract] identifiable BocaStructuralFeature: BocaFeature
                 , StructuralFeature
 {
         //attribute Expression computation;
          relationship computation Uses Expression;
         attribute WhenKind computation_kind=NO_COMPUTATION;
         // attribute BooleanExpression constraint;
          relationship constraint Uses BooleanExpression;
         attribute ChangeableKind changeable=IS_CHANGEABLE;
         attribute boolean inherit_specification=FALSE;
         // attribute Classifier returned_type;
          relationship returned_type Uses Classifier;
         attribute boolean is_state=TRUE;
         // attribute Set<ChangeConsumer> consumer;
         relationship consumer Many ChangeConsumer inverse producer;
 }; /* StructuralFeature */
 
 It is not clear why the inherit_specification attribute is declared here rather than in 
 BocaRelatiohshipReference.
 
 Recommendation:  Either provide a reason for this attribute"s presence here or move it to 
 BocaRelationshipReference.

Resolution:
Revised Text: BocaFeature
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1453: identifiable BocaStateSet: BocaStructuralFeature (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable BocaStateSet: BocaStructuralFeature{
         {is_read_only=TRUE;
          keyword="state";
          };
 }; /* state */
 
 The corresponding UML diagram (section 2.2.2.3) shows an informally stated constraint "Type must be 
 CorbaEnumeration" but the constraint is not declared in the CDL.
 
 Recommendation: This constraint should appear formally in the CDL. If CDL expressions cannot express 
 the constraint, the expression syntax and meta-model should be upgraded accordingly.

Resolution:
Revised Text: BocaStructuralFeature{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1455: Declare these attributes as [MANAGER, is_locked, is_read_only] (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 [is_abstract] relationship_kind BocaRelationshipReference: BocaStructuralFeature
                 {
                 attribute AggregationKind aggregation;
                 attribute boolean implicit_delete=FALSE;
                 attribute boolean implicit_copy=FALSE;
                 attribute boolean implicit_move=FALSE;
                 attribute BocaRelationshipReference with_respect_to;
                 attribute MultiplicityKind multiplicity=MultiplicityKind(0..1);
                 attribute boolean is_navigable=TRUE;
                 relationship inverse References BocaRelationshipReference;
 };
 
 The following attributes of BocaRelationshipReference should be features of particular subtypes of this 
 abstract type that are inherent features of those relationship subtypes rather than features of instances of 
 the relationship subtypes:
 ? aggregation
 ? implicit_delete
 ? implicit_copy
 ? implicit_move
 
 In other words they should be typemanager-level features rather than instance-level features.  Yet, these 
 attributes are not declared with the MANAGER specifier.
 
 Recommendation: Declare these attributes as [MANAGER, is_locked, is_read_only].
 

Resolution:
Revised Text: BocaStructuralFeature
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1458: BocarelationshipReference issue (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 Another issue with the declaration of BocaRelationshipReference:  The inverse relationship declaration is 
 problematical because inverse is itself a keyword
 
 Recommendation: The relationship should be defined as follows:
 
 [MANAGER] relationship inverse_type References 1..1 BocaRelationshipReference

Resolution:
Revised Text: The inverse relationship declaration is
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1459: inverse_type for References should be References (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Recommendation: Issue 6 contains a recommendation to eliminate the Many specifier for relationship 
 declarations.  Thus, this declaration of the relationship_kind Many should be eliminated from the meta-
 model.  
 
 Furthermore, the inverse_type for References should be References.  The semantic constraints addressed 
 by having separate Many and References specifiers should be expressed as formal constraints on the 
 combinations of multiplicity of a relationship and of the relationship pointed to by the inverse_type 
 relationship. 
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1460: relationship_kind declaration issue (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 Another issue with the relationship_kind declarations:  As mentioned above (issue 6), it is preferable to force 
 relationship declarations to specify their multiplicity.  
 
 Recommendation: Rather than declare default multiplicities for a relationship_kind, it would be better to 
 declare, as invariant rules, appropriate constraints on the multiplicity for each relationship_kind.

Resolution:
Revised Text: As mentioned above (issue 6), it is preferable to force
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1462: relationship_kind declaration issue (02) (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 Another issue with the relationship_kind declarations:  They should include specifications of the value of the 
 aggregation attribute inherited from BocaRelationshipReference. 
 

Resolution:
Revised Text: They should include specifications of the value of the
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1463: relationship_kind declarations issue (03) (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 Another issue with the relationship_kind declarations: Some of the inverse_type specifications are incorrect.  
 
 Recommendation: The following table lists the ones that are incorrect and provides the corrected values:
 
 relationship_kind
 old  inverse_type 
 correct  inverse_type 
 References
 Many
 References*
 Aggregates
 IsOwnedBy
 IsPartOf
 IsOwnedBy
 Aggregates
 Composes
 Composes
 IsPartOf
 IsOwnedBy
 IsPartOf
 Composes
 Aggregates
 
 *See issue 30

Resolution:
Revised Text: Some of the inverse_type specifications are incorrect.
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1464: Change applied_ppliance to applied_appliance --editorial (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable BocaApply: BocaBehavioralFeature {
         attribute Appliance applied_ppliance;
 };
 
 Recommendation: Change applied_ppliance to applied_appliance.

Resolution:
Revised Text: BocaBehavioralFeature {
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
 Change applied_ppliance to applied_appliance.


Issue 1465: The keyword "event" is incorrect (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable BocaSignal: BocaOperation{
                 {is_read_only=TRUE;
                 keyword="event";
                 };
 };
 
 The keyword “event” is incorrect—this is a vestige from an earlier version of the specification.
 
 Recommendation: Change “event” to “signal”

Resolution:
Revised Text: BocaOperation{
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1466: The keyword "process" is incorrect (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable BocaBusinessEvent: BocaBusinessObject {
         [MANAGER, is_read_only, is_locked] relationship base_type Uses BocaType=BaseProcess;
         [MANAGER, is_read_only, is_locked] attribute string keyword="process";
 };  /* processDef */
 
 The keyword "process" is incorrect. 
 
 Recommendation: The obvious change is "process" to "event."  However, it is not clear what the purpose of BocaBusinessEvent is in the meta-model.  Some clarification is in order.
 

Resolution:
Revised Text: BocaBusinessObject {
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1467: Remove (re)declaration of pass_by_value from BocaCommand (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: BocaCommand, a subtype of BocaDependent, redeclares the pass_by_value attribute in a redundant 
 fashion.
 
 Recommendation: Remove the (re)declaration of pass_by_value from BocaCommand.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1468: Declaration of the pass_by_value attribute is redundant (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The declaration of the pass_by_value attribute is redundant, since that is the inherited value.  No redefinition 
 is needed.
 
 Recommendation: Remove the (re)declaration of pass_by_value from BocaApplianceKind.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1469: Clarify purpose of this declaration (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: [is_abstract] appliance_kind Appliance {
 }; /* Appliance */
 
 It is not clear what the purpose of this declaration is.  It seems to simply create a meaningless empty 
 subtype of BocaApplianceKind.
  
 Recommendation:  Clarify the purpose this declaration or else remove it from the meta-model.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
  Clarify the purpose this declaration or else remove it from the meta-model.


Issue 1470: This forward reference is not necessary, remove it (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 appliance_kind Dependency;
 
 This forward reference is unnecessary.
 
 Recommendation:  Remove it.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
  Remove it.


Issue 1471: Keyword appliance_kind for BocaApplianceKind (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The specification of the keyword appliance_kind for BocaApplianceKind means that the declaration of Label 
 as an appliance_kind automatically makes BocaApplianceKind the supertype of Label.  Therefore, if, in 
 keeping with issue 39, Appliance is removed from the meta-model, then the Label declaration need not have 
 any explicit supertype.
 
 Recommendation: If Appliance is removed from the meta-model then remove the specification of Appliance 
 as the supertype of Label.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1472: Declare MultiplicityKind as a dependent (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: MultiplicityKind instances should be lightweight objects that are passed by value.
 
 Recommendation:  Declare MultiplicityKind as a dependent.  All relationships with this type should be 
 changed to attributes.
 

Resolution:
Revised Text: Declare MultiplicityKind as a dependent. All relationships with this type should be
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1473: Names of these meta types are confusing (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: identifiable BocaEventConsumer{
         attribute boolean before=FALSE;
         // attribute Expression path_expression;
         relationship path_expression Uses Expression;
 }; /* TriggerElement */
 identifiable CallConsumer: BocaEventConsumer{
         attribute boolean failure=FALSE;
         relationship producer References 1..1 BocaOperation inverse consumer;
 };
 identifiable ChangeConsumer: BocaEventConsumer{
         attribute boolean remove=FALSE;
         relationship producer References 1..1 BocaStructuralFeature inverse consumer;
 };
 identifiable StateConsumer: ChangeConsumer{
         attribute boolean on_exit=FALSE;
 };
 The names of these meta-types are confusing.  
 
 Recommendation: The meta-type names should be changed as indicated in the following table:
 
 Old Name
 New Name
 BocaEventConsumer
 BocaTrigger
 CallConsumer
 BocaCallTrigger
 ChangeConsumer
 BocaChangeTrigger
 StateConsumer
 BocaStateChangeTrigger
 
 
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1474: name_space relationship redundant if TypedElement is subtype of NamedEleme (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The name_space relationship is redundant if TypedElement is a subtype of NamedElement (see issue 3) 
 because it duplicates the relationship between NamedElement and NameSpace.
 
 Recommendation: If, in fact, TypedElement is a subtype of NamedElement, then remove the name_space 
 relationship declaration from the declaration of BaseExpression.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1476: Constraint not appearing in CDL declaration (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.4 (BOCA Meta-Model in CDL)
 
 identifiable Expression: BaseExpression{
 };
 
 The corresponding UML diagram (section 2.2.2.7) informally states a constraint for this meta-type: “Must not 
 have side effects.”   However, the constraint does not appear in the CDL declaration.
 
 Recommendation: This constraint should appear formally in the CDL. The potential or lack of potential for 
 side effects can be detected by the by traversing the expression to determine what Invocations are made, 
 traversing the of_operation relationship that Invocation has with BocaOperation, and checking the value of 
 the the related BocaOperation’s is_query attribute.  If CDL expressions cannot express the constraint, the 
 expression syntax and meta-model should be upgraded accordingly

Resolution:
Revised Text: BaseExpression{
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1477: Constraint should formally appear in CDL declaration of this meta-type (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: identifiable InvocationArgument{
         //attribute ExpressionElement value;
         relationship invocationValue Uses ExpressionElement;
         //attribute CorbaArgument of_argument;
         relationship of_argument Uses CorbaArgument;
         relationship call IsPartOf Invocation inverse argument;
 };
 
 The corresponding UML diagram (section 2.2.2.7) informally states a constraint for this meta-type: “Only in 
 arguments allowed.”   However, the constraint does not appear in the CDL declaration.
 
 Recommendation: This constraint should appear formally in the CDL declaration of this meta-type.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1479: Issue with InvocationArgument (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 
 Another issue with InvocationArguement:  The relationship call is the inverse of a Composes relationship, so 
 it is incorrect to declare it as an IsPartOf relationship.
 
 Recommendation: In the CDL declaration of the relationship call, IsPartOf shold be changed to IsOwnedBy.
 

Resolution: The relationship call is the inverse of a Composes relationship, so
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
 Accept recommendation. issue closed


Issue 1480: Inverses not reflected in CDL (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: SubsetVariable’s function relationship and SubsetFunction’s variable relationship are logically inverses of 
 each other, yet that is not reflected in the CDL.  Furthermore, the corresponding UML diagram (section 
 2.2.2.7) shows the relationship as 1-1, yet the default multiplicities for Uses is not 1.
 
 Recommendation: Declare the inverses.  Determine the proper multiplicities for these relationships and state 
 them explicitly, making sure of agreement between the CDL and UML versions of the meta-model.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1481: Attributes that are supposed to be relationships (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 CorbaCollection
 content_type
 Classifier
 CorbaAlias
 alias_of
 Classifier
 CorbaUnion
 discriminator_type
 CorbaType
 
 Recommendation: Remove the attributes or else mark them as derived attributes.  Draw the associations 
 where practical.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue
April 25, 2011: closed issue

Discussion:


Issue 1482: Information in CDL declaration of metamodel not reflected (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 5.4, UML diagram for Corba Nesting
 
 This information does not appear to be reflected in the CDL declaration of the meta-model.
 
 Recommendation: A clarification must be provided.  Nesting semantics may need to be formally specified in 
 the CDL declarations of the various meta-types as constraints on certain relationships.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1483: Section 2.2.2.1, UML diagram for Core Model (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.2.1, UML diagram for Core Model
 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 BocaDuring
 condition
 BooleanExpression
 BocaStructuralFeature
 computation
 Expression
 BocaStructuralFeature
 constraint
 BooleanExpression
 BocaStructuralFeature
 returned_type
 Classifier
 BocaType
 base_type
 BocaType
 
 Recommendation: Remove the attributes or mark them as derived attributes. Draw the associations where 
 practical.

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:


Issue 1485: Section 2.2.2.3, UML diagram for Structural Features (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.2.3, UML diagram for Structural Features
 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 BocaStructuralFeature
 computation
 Expression
 BocaStructuralFeature
 constraint
 BooleanExpression
 BocaStructuralFeature
 returned_type
 Classifier
 BocaRelationshipReference
 with_respect_to
 BocaRelationshipReference
 
 Recommendation: Remove the attributes or mark them as derived attributes. Draw the associations where 
 practical.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1487: Section 2.2.2.4, UML diagram for Domain Meta-Types (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.2.4, UML diagram for Domain Meta-Types
 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 BocaType
 base_type
 BocaType
 BocaRelationKind
 inverse_type
 BocaRelationshipReference
 BocaCollectionKind
 content_type
 Classifier
 
 Recommendation: Remove the attributes or mark them as derived attributes. Draw the associations where 
 practical.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1488: Section 2.2.2.5, UML diagram for Appliances (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.2.5, UML diagram for Appliances
 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 Label
 labeled_element
 NamedElement
 Dependency
 guard
 BooleanExpression
 Dependency
 schedule
 ScheduleKind
 BocaEventConsumer
 path_expression
 Expression
 ECARule
 action
 ActionExpression
 
 Recommendation: Remove the attributes or mark them as derived attributes. Draw the associations where 
 practical.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1489: Section 2.2.2.7, UML diagram for Expressions (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Section 2.2.2.7, UML diagram for Expressions
 
 The following UML classifiers describing BOCA meta-types have attributes that are actually supposed to be 
 relationships.  The following table specifies the meta-types that have this problem and the problematic 
 attributes:
 
 BocaMeta-type
 Attribute
 Target BocaMeta-type
 Invocation
 of_operation
 CorbaOperation
 Invocation
 receiver
 ExpressionElement
 InvocationArgument
 value
 ExpressionElement
 InvocationArgument
 of_argument
 CorbaArgument
 BuiltInBinary
 left
 ExpressionElement
 BuiltInBinary
 right
 ExpressionElement
 Conditional
 condition
 ExpressionElement
 Conditional
 true_value
 ExpressionElement
 Conditional
 false_value
 ExpressionElement
 SubsetFunction
 the_set
 ExpressionElement
 SubsetFunction
 constraint
 ExpressionElement
 BuiltInUnary
 argument
 ExpressionElement
 ArrayAccess
 of_array
 ExpressionElement
 ArrayAccess
 argument
 ExpressionElement
 Traversal
 of_feature
 StructuralFeature
 Traversal
 argument
 ExpressionElement
 
 Recommendation: The apparent recommendation would be to remove the attributes or mark them as 
 derived attributes and to draw the associations where practical.  However, in this case it may be overkill to 
 have all of the expression types be full-blown identifiable objects that can engage in relationships.  It may be 
 more practical to make them dependent types and to use attributes.  This should be studied and any 
 changes must be reflected in the CDL declaration of the meta-model.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1490: Alignment with UML State Meta-model (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 
 Alignment with UML—State Meta-model
 
 Stated as only a general issue at this point:  The model for state and state transitions should be able to be 
 closer to UML.
 
 Recommendation: Close study of this issue, with input from OADTF and BOCA RTF.
 
 *ISSUE 63*

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue
June 23, 1998: closed issue

Discussion:
 Close study of this issue, with input from OADTF and BOCA RTF.


Issue 1492: Alignment with UML Constraints (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Aligment with UML—Constraints
 
 Stated as only a general issue at this point:  The model for expressions and constraints could probably be 
 better aligned with UML, understanding, however, that UML does not rigorously model expressions the way 
 BOCA does.  Nevertheless, UML has a Constraint meta-type with very clear associations with other meta-
 type elements.  BOCA could probably come very, very close to that, while preserving its expression meta-
 model.
 
 However, the BOCA expression language may not be powerful enough to state the kinds of constraints 
 required by a precise contract for a type.  For example, see issues 18, 25, and 48 for cases where the 
 expression language may not support  the expression of certain required constraints. 
 
 Therefore, it may be wise to allow OCL expressions as an optional expression form.and to provide a meta-
 model for it.  The BOCA submitters have already done quite a bit of work in this area and OCL was in and 
 out of various versions of BOCA.  Proper alignment with UML would require subtyping UML to provide a 
 rigorous meta-model for OCL, so that OCL constraints can appear in tractable form in UML metadata.  The 
 BOCA OCL meta-model would be as isomorphic as possible with the UML OCL meta-model, while 
 incorporating the CORBA data types.
 
 Recommendation: Close study of this issue, with input from OADTF and BOCA RTF.
 

Resolution:
Revised Text: The model for expressions and constraints could probably be
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1493: Alignment with UML General (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Alignment with UML—General
 
 It is extremely important to understand, and thus is worth reiterating, that any proposed UML subtyping is 
 not part of BOCA.  BOCA is a model for the CORBA target, so any subtyping of UML should stay in the UML 
 space and should have a matching (and as isomorphic as possible) set of constructs in the BOCA meta-
 model.  The reason for BOCA’s existence is to ensure that, when mapping a model expressed in UML to 
 CORBA, the rich semantics of UML are not lost in the translation.
 
 As stated in issue 61, those portions of the BOCA meta-model that do not carry the baggage (not meant as 
 a pejorative term) of the legacy CORBA IDL meta-model should align as closely as possible with UML.  
 Whereever subtyping of the UML meta-model is necessary it should be specified and proposed in 
 coordination with the OAD-TF and BOCA should have (as) isomorphic (as possible) elements in its own 
 meta-model.
 

Resolution:
Revised Text:
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1494: Deriving from the legacy CORBA IDL meta-model (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Deriving from the legacy CORBA IDL meta-model
 
 Stated as only a general issue at this point:  The need for MOF compliance required reengineering the 
 legacy CORBA IDL meta-model so that it could be expressed as a UML model following the MOF 
 constraints (such as only binary associations).  The legacy is also expressed in CDL.  The expression of the 
 CORBA IDL meta-model could probably be more obviously aligned with the structural features of the 
 interface repository types.  In this short RTF cycle it hasn’t been possible to delineate these adjustments, but 
 this should be addressed.
 
 Recommendation: Close study of this issue.
 

Resolution:
Revised Text: The need for MOF compliance required reengineering the
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1495: Insufficient constraints in the meta-model (boca-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Insufficient contraints in the meta-model
 
 Stated as only a general issue at this point: The meta-model has a dearth of formal constraints expressing 
 the semantics and well-formedness rules of the meta-model.
 
 Recommendation:  Close study of this issue.

Resolution:
Revised Text: The meta-model has a dearth of formal constraints expressing
Actions taken:
June 3, 1998: received issue

Discussion:


Issue 1611: Relationship of "Abstract Framework" to BOCA specification (boca-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Define relationship of "Abstract Framework" to Boca
 specification.
 

Resolution:
Revised Text:
Actions taken:
June 29, 1998: received issue
February 23, 1999: closed issue

Discussion:
 received issue