Issues for CWM 1.2 Revision Task Force discussion list
To comment on any of these issues, send email to cwm-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)
Issue 4247: XML metamodel should be based on W3C XML Information Set
Issue 4398: supplierDependency reference is missing from ModelElement
Issue 4399: CWM Object resource package does not provide support for exceptions
Issue 4400: XML Schema package issue
Issue 4401: package may fail to permit definition of transformations
Issue 4402: consider changing DeployedComponent from being subclass of Core::Package
Issue 4403: Identify precise CWM definition to which interchange doc. conforms
Issue 4404: Review the semantics of existing attribute types that are also CWM classes
Issue 4405: diagram named "CWM Package Dependencies" shows wrong dependency arrow
Issue 4406: provide an example of extending the Management packages
Issue 4407: Inconsistencies caused by changing Expression etc from Data Types to Classe
Issue 4408: taggedValue reference is missing from ModelElement
Issue 4430: Add a representation for sequence to CWM relational package
Issue 4431: stereotype reference is missing from ModelElement
Issue 4442: Revise the IMS metamodel
Issue 4458: Data mining metamodel
Issue 4459: All OCL sections should be reviewed to ensure that they are complete
Issue 4460: Description, Document, ResponsibleParty should be made subtypes of Comment
Issue 4461: The metamodel for DTD should be reviewed
Issue 4462: Generic Data Mining metamodel issue
Issue 4467: The XML package should be revised/extended to represent XML schema metadata
Issue 4469: Missing letters in chapter 9 diagrams.
Issue 4470: Make it easier to interchange UML Models
Issue 4471: CWM does not reflect the latest version of UML
Issue 4472: Practical changes to Contact metamodel
Issue 4473: Inadequate support for Organizational Structures
Issue 4474: CWM model needs to be augmented to allow specification of level& hierarchy
Issue 4475: Attribute.initialValue incorrectly implemented as mandatory.
Issue 4482: Optimize Instance data values
Issue 4509: CWM should consider using MOF 1.4 for it's metamodel
Issue 4510: CWM should consider generating XMI 1.2 DTDs
Issue 4511: CWM should consider generating XML Schemas, in both XMI 1.x and XMI 2.0
Issue 4512: Component Re-use unclear
Issue 4513: Predefined' values not defined in metamodel
Issue 4514: Supplier and version underspecified
Issue 4515: Make ChangeRequest useful
Issue 4516: Rationalize 'Measurement'
Issue 4517: Diagram 8-7-3 missing lines
Issue 4518: Logical-physical deployment modeling
Issue 4519: Warehouse processes missing physical information
Issue 4583: Modeling and packaging guidelines
Issue 4744: We only need one COBOL Data Division metamodel.
Issue 4834: We only need one COBOL Data Division model
Issue 5106: SQLParameter
Issue 5299: page 9-276/Section: 9.3.22 of ptc/2002-01-02 -- CWM issue
Issue 5695: Invalid explicit references for some 'association generalizations' in the
Issue 5697: TaggedValue
Issue 5921: Parameter
Issue 5925: figure 6, page 212
Issue 8707: formal/03-03-02
Issue 12298: Foreword
Issue 12299: Introduction - references
Issue 12300: Location: 3 Normative References
Issue 12301: Location: 3 Normative References -- OCL
Issue 12302: Location: 3 Normative References - ISO/IEC 9075:2003 Database language SQL
Issue 12303: Location: 4 Abbreviations and Conventions
Issue 12304: Location: 4 Abbreviations and Conventions - ODBC
Issue 12306: Location: 4 Abbreviations and Conventions - SQL
Issue 12307: 4 Abbreviations and Conventions - SQL-92 and SQL-99
Issue 12308: Location: 10.1 Overview
Issue 12309: Location: 10.1 Overview
Issue 12310: Location: 10.2.4 Structured Types and Object Extensions
Issue 12311: Location: 10.2.4 Structured Types and Object Extension , Figure 10.5
Issue 12312: Location: 10.2.6 Index
Issue 12313: Location: 10.2.8 Procedures
Issue 12314: Location: 10.3.14 SQLDataType
Issue 12315: Location: 10.3.15 SQLDistinctType
Issue 12316: Location: 10.3.16 SQLIndex
Issue 12317: 10.3.17 SQLIndexColumn
Issue 12318: 10.3.18 SQLParameter
Issue 12319: 10.3.20 SQLStructuredType
Issue 12320: 10.3.20 SQLStructuredType - referencingColumn
Issue 12321: 10.4.2 ColumnRefStructuredType
Issue 12322: Location: 12.1 Overview
Issue 12323: 13.1 Overview
Issue 12324: 13.3.9 Schema
Issue 12325: 21.5 SQL-99 Data Types
Issue 12326: 21.6 Type Mapping Examples
Issue 12327: Annex A: References
Issue 12328: Annex B: Compatibility with other Standards
Issue 12329: Annex C: Glossary
Issue 12330: Annex D: Legal Information
Issue 12331: Annex F: Acknowledgements
Issue 12332: Introduction, Page XVII
Issue 12333: value "name" attribute of ModelElement
Issue 12334: Location: 5.4
Issue 12335: 5.4 datatype attributes don't incorporate the features of 11404 datatype
Issue 12336: Add syntax type to the metamodel.
Issue 12337: Add datatype generators
Issue 12338: Add features for 11404 aggregates
Issue 12339: Add support for flat and nested N-dimensional arrays
Issue 12340: Support the full set of 11404 aggregates.
Issue 12341: The XML features should support current XML data structures
Issue 4247: XML metamodel should be based on W3C XML Information Set (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary:
XML metamodel should be based on W3C XML Information Set. W3C has a standard called XML Information Set http://www.w3.org/TR/xml-infoset/ (at Candidate Recommendation status) "This specification defines an abstract data set called the XML Information Set (Infoset). Its purpose is to provide a consistent set of definitions for use in other specifications that need to refer to the information in a well-formed XML document"
In effect it defines an information model for XML with the following Information Items (the equivalent of classes in CWM): Document, Element, Attribute, Processing Instruction, Unexpanded Entity Reference, Character, Comment, Document Type Declaration, Unparsed Entity,Notation, Namespace. It would seem that since this is what W3C says should be modeled for XML documents then this should be the basis of the CWM XML model (the content part as opposed to the Schema part), or at least CWM should specify how it maps to this Information Set.
Resolution:
Revised Text:
Actions taken:
April 3, 2001: received issue
Issue 4398: supplierDependency reference is missing from ModelElement (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: The supplierDependency reference is missing from ModelElement, which existed in the CWM Adapted Specification.This change makes the model illogical and unbalanced. Dependency is always defined between two ModelElements (a client and a supplier). Its definition involves two associations and four association ends. Either the supplierDependency reference should be put back (which makes a more flexible model) or the client reference on Dependency should also be removed (which makes a more restrictive model, but at least it is logical and balanced). (This is a revised write-up for issue #3398.)
Resolution:
Revised Text:
Actions taken:
July 20, 2001: received issue
Discussion:
Issue 4399: CWM Object resource package does not provide support for exceptions (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: Modern object-oriented programming languages such as Java and C#
support the notion of exceptions as first class objects. However, the CWM
Object resource package does not provide support for exceptions. Although
exceptions might be added to extension packages specifically designed for
each language that needs them, such an approach would not promote
interchange of exceptions between data warehouse components written in
different languages. This problem will become particularly accute for .NET
languages in which particular exceptions are defined by language independent
components (such as the .NET CLR libraries) and can be returned to
application components written in any of a group of languages. Suggested
approaches to resolving this difficulty might include (1) adding exceptions
to the CWM Behavioral package or (2) creating an Object package and placing
the new exception classes in it.
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Discussion:
Issue 4400: XML Schema package issue (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: The planned XML Schema package proposed for inclusion in CWM 1.1
should be cognizant of and wherever possible, equivalent to, the XML Schema
model planned for the inclusion in the XMI specification. Within reason,
corresponding XML Schema-specific class in the two specifications show share
the same names, attributes, and relationships to other classes.
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Issue 4401: package may fail to permit definition of transformations (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: Usage experience with the CWM 1.0 Transformation package has
uncovered several situations in which the package may fail to permit
definition of transformations that fully capture the intent of implementors.
Such problems have appeared in several unrelated modeling venues and have
led some implementors to seek alternative means for describing
transformations. The existing transformation package should be reviewed by
the RTF and changed as needed to improve its ability to represent the
breadth of transformation semantics found in practical usage scenarios. As
part of this effort, the RTF should consider incorporating the existing
TypeMapping package into an evolved Transformation package -- TypeMappings
are, after all, really just lightweight transformations.
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Discussion:
Issue 4402: consider changing DeployedComponent from being subclass of Core::Package (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: In the SoftwareDeployment package, consider changing
DeployedComponent from being a subclass of Core::Package to being as
subclasss of Core::Subsystem. This change preserves the package nature of
DeployedComponents and, at the same time, adds the ability of
DeployedComponents to have features (because Core::Subsystem is a subclass
of Core::Classifier, as well as Core::Package).
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Discussion:
Issue 4403: Identify precise CWM definition to which interchange doc. conforms (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: Provide in the body of a CWM interchange document, a means for
identifying the precise CWM definition to which the interchange document
conforms. Something similar to the way the XML documents identify the URI
of the XML definition they conform to would do nicely. Such a mechanism in
effect creates a name space within which the contents of the CWM interchange
document can be evaluated. Useful side effects of having such a namespace
include: (1) the definition of CWM extension packages without the present
need that they be accompanied by the CWM definition itself, (2) a framework
in which Universally Unique Identifiers (UUIDs) can be defined for each CWM
object. Several requests for CWM UUIDs have already been received
informally.
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Issue 4404: Review the semantics of existing attribute types that are also CWM classes (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: The precise semantics of the use of the CWM Expression class (and
its subclasses) as the type of attributes of CWM classes is not clearly
delineated (as discussed at the 7/12/01 CWM RTF meeting in Danvers, MA).
Review the semantics of existing attribute types that are also CWM classes
and correct them as needed.
Resolution:
Revised Text:
Actions taken:
July 18, 2001: received issue
Issue 4405: diagram named "CWM Package Dependencies" shows wrong dependency arrow (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Enhancement
Severity: Significant
Summary: In the CWM .mdl file, the diagram named "CWM Package Dependencies"
contains a dependency arrow showing that the Relational package depends on
the SoftwareDeployment package. This dependency arrow is erroneous and
should be removed (the dependency does not appear in the definitional CWM
XMI file).
Resolution: Resolved by CWM 1.1 RTF
Revised Text:
Actions taken:
July 18, 2001: received issue
July 1, 2003: closed issue
Issue 4406: provide an example of extending the Management packages (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Enhancement
Severity: Minor
Summary: Volume 2 of the CWM Specification does not provide an example of extending the Management packages (Warehous Process and Warehouse Operation). It will be very useful to provide an example of extending these packages (and their dependent packages) based on IBM's DB2 Data Warehouse Center. This product has implemented the CWM Management packages and has demonstrated the need for such extensions as well as how they can be done.
Resolution: Resolved by CWM 1.1 RTF
Revised Text:
Actions taken:
July 17, 2001: received issue
July 1, 2003: closed issue
Issue 4407: Inconsistencies caused by changing Expression etc from Data Types to Classe (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: Expression and their subtypes (BooleanExpression, etc.) were changed from Data Types (in the CWM Adapted Specification) to Classes in CWM 1.0. As a result, it caused design inconsistency in CWM. For example, ExpressionNode inherits from Element. This was designed originally based on the fact that Expression was a Data Type and could not be subclassed. It should now inherit from Expression, which can be subclassed. The CWM RTF should review and revise all such inconsistencies caused by changing Expression, Multiplicity, etc. from Data Types to Classes.
Resolution:
Revised Text:
Actions taken:
July 24, 2001: received issue
Issue 4408: taggedValue reference is missing from ModelElement (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Critical
Summary: The taggedValue reference is missing from ModelElement, which existed in the CWM Adapted Specification. This is an error and must be corrected immediately. TaggedValue is a critical, light-weight extension mechanism and is used extensively in our implementation of CWM. Without the taggedValue reference on ModelElement, we will not be able to support CWM 1.0. (This is a revised write-up for issue #4408.)
Resolution: see below
Revised Text: In the CWM Rose model (document ad/01-02-07), add the attribute ModelElement::taggedValue with of type "TaggedValue" and stereotype "reference". Set the rose2mof.multiplicity property to "0..n" on the MOF tab of the specification sheet, and check the "derived" box on the Detail tab.
In the CWM XML file (document ad/01-02-03), insert the following text following the definition of the ModelElement.namespace reference on line 74 and preceding the end tag for Model:Namespace.contents on line 75 (note that values '<<id>>' are created by the generation software will be added during generation of the file):
<Model:Reference xmi.id='<<id>>' name='clientDependency' annotation='' scope='instance_level' visibility='public_vis' isChangeable='true' type='<<id>>' referencedEnd='<<id>>'>
<Model:StructuralFeature.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>true</XMI.field> <!-- is_unique -->
</Model:StructuralFeature.multiplicity>
</Model:Reference>
In the CWM IDL file (document ad/01-02-06), insert the following in the definition of Interface ModelElement before line 159 (which contains the text "}; // end of interface ModelElement") in the file core.idl:
TaggedValueSet tagged_value ()
raises (Reflective::MofError);
void set_tagged_value (in TaggedValueSet new_value)
raises (Reflective::MofError);
void unset_tagged_value ()
raises (Reflective::MofError);
void add_tagged_value (in TaggedValue new_element)
raises (Reflective::MofError);
void modify_tagged_value (
in TaggedValue old_element,
in TaggedValue new_element)
raises (Reflective::NotFound, Reflective::MofError);
void remove_tagged_value (in TaggedValue old_element)
raises (Reflective::NotFound, Reflective::MofError);
In the formal specification (document formal/2001-10-01, page 4-16), following the definition of the "namespace" reference and before the "Constraints" subheading, add description of the taggedValue, with the text
taggedValue
References the set of taggedValue instances that extend the ModelElement.
class: TaggedValue
defined by: TaggedElement::taggedValue
multiplicity: zero or more
inverse: TaggedValue::modelElement
In the formal specification (document formal/2001-10-01) remove the last sentence of the second paragraph on page 4-3. The removed text is "Figure 4-4 on page 4-4 contains classes and associations that provide generic extension mechanisms to existing metamodels."
In the formal specification (document formal/2001-10-01), remove Figure 4-4 on page 4-4 in its entirety, including the figure caption. The figure removed is
Actions taken:
July 24, 2001: received issue
July 24, 2001: closed issue
July 25, 2001: re-opened issue, part 2 of issue 4398
May 13, 2002: closed issue
Discussion: The default resolution will be to apply the following changes to the CWM 1.0 specification, document ad/01-02-01:
(1) On page 7-80, following the definition of the 'namespace' reference and before the "Constraints" subheading, add:taggedValue References the set of taggedValue instances that extend the ModelElement.
class: TaggedValue defined by: TaggedElement::taggedValue
multiplicity: zero or more
inverse: TaggedValue::modelElement
(2) On pages 7-67 and 7-68, merge Figure 7-3-1 and Figure 7-3-3 into a new Figure 7-3-1 that contains all the elements from both original figures there will no longer be a Figure 7-3-3). [Note: the absence of the taggedValue reference on ModelElement allowed these figures to be drawn separately. With its return, the figure must be merged.]
(3) On page 7-67, remove the last sentence of the second paragraph on the page. [Note: This sentence references "Figure 7-4" and should have referenced "Figure 7-3-3", making this a typographically convenient deletion.]
Issue 4430: Add a representation for sequence to CWM relational package (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Enhancement
Severity: Minor
Summary: A sequence is a relational database object that allows the automatic generation of values. Sequences are ideally suited to the task of generating unique key values. Applications can use sequences to avoid possible concurrency and performance problems resulting from the generation of a unique counter outside the database. Currently, the CWM Relational package does not provide a representation for sequence. It should be added.
Resolution:
Revised Text:
Actions taken:
July 26, 2001: received issue
Issue 4431: stereotype reference is missing from ModelElement (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Revision
Severity: Significant
Summary: In the Core package, the stereotype reference, that maps to the
stereotype end of the StereotypedElement association, is missing from
ModelElement. This is a result of an error in the construction of the final
CWM 1.0 spec (the same error is associated with Issue #4408).
Resolution: No change is required. The metamodel is less restrictive without the stereotype reference
Revised Text:
Actions taken:
July 30, 2001: received issue
May 13, 2002: closed issue
Discussion:
Issue 4442: Revise the IMS metamodel (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: IBM has implemented the IMS metamodel of CWM 1.0. In doing so, we have found it necessary to make some significant changes to improve usability and completeness, and to handle new facilities of IMS. The CWM RTF should revise the IMS metamodel incorporating these changes.
Resolution: Resolved by CWM 1.1 RTF
Revised Text:
Actions taken:
August 1, 2001: received issue
July 1, 2003: closed issue
Discussion:
Issue 4458: Data mining metamodel (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: This is an issue deferred from the CWM FTF. The Data Mining metamodel should be revised based on feedback from the JSR-73 (JDMAPI) work
Resolution:
Revised Text: The CWM 1.0 Data Mining Model had the following hierarchial structure:
The new model is as follows:
In the above model that outlines the package dependency, notice that the various types of Data Mining algorithms have been seperated into individual packages. This new package structure is as follows:
DataMiningCore -- Common classes to all Data Mining algorithms
AssociationRules -- A type of algorithm
Clustering -- A type of algorithm
Supervised -- A type of algorithm
AttributeImportance -- A type of algorithm
Classification -- A type of algorithm
Approximation -- A type of algorithm
This re-factoring of the model will allow users who implement only a sub-set of the Data Mining Algorithms to participate as CWM compliant.
The overall resolution to this issue was to replace the entire Data Mining Chapter (chapter 12) in the formal specification (document formal/2001-10-01) to reflect new metamodel definitions.
Actions taken:
August 3, 2001: received issue
May 13, 2002: closed issue
Discussion: Resolution:
The CWM.Analysis.DataMining package was re-factored to allow for varied implementaions. In DataMining the various products all support some sub-set of the existing DataMining features and algorithms. The current model is fine for interchange where a user who doesn't support a specific feature or algorithm can simply ignore it on import. The CWM model forms the basis for JDMAPI which is an API specification. The structure of the model must now reflect a way to specify various compliance points based on implementation options. In order to achieve this, the DataMining model was split into finer grained packages which are based on the different DataMining algorithms. We felt this was the correct path to take, and felt justified based on the fact that to our knowledge there are no implementers of the DataMining portion of CWM.
The resolution was to replace the existing CWM.Analysis.DataMining package with the revised one, this was distributed for review on 8/23/01 and presented in Toronto on 9/11/01.
Revised Text:
Issue 4459: All OCL sections should be reviewed to ensure that they are complete (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Clarification
Severity: Minor
Summary: This is an issue deferred from the CWM FTF. Per recommendation from the Architecture Board, all OCL sections should be reviewed to ensure that they are complete
Resolution:
Revised Text:
Actions taken:
August 3, 2001: received issue
Issue 4460: Description, Document, ResponsibleParty should be made subtypes of Comment (cwm-rtf)
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Minor
Summary: This is an issue deferred from the CWM FTF. Description, Document and ResponsibleParty should be made subtypes of Comment, allowing use of the corresponding reference on ModelElement.
Resolution:
Revised Text:
Actions taken:
August 3, 2001: received issue
Issue 4461: The metamodel for DTD should be reviewed (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: This is an issue deferred from the CWM FTF. The metamodel for DTD should be reviewed, and revised if necessary, to make sure that it fully represents DTD information and that it is consistent with the new metamodel for XML Schema.
Resolution:
Revised Text:
Actions taken:
August 3, 2001: received issue
Issue 4462: Generic Data Mining metamodel issue (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: The Data Mining metamodel contains a sub-metamodel on classification/categorization, which is generic and which can be useful outside of data mining but in a data warehousing/business intelligence context. Following the tradition of CWM's design emphasis on modularity and reuse, this sub-metamodel should be made a separate package from the Data Mining package.
Resolution:
Revised Text:
Actions taken:
August 3, 2001: received issue
Issue 4467: The XML package should be revised/extended to represent XML schema metadata (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: This issue is to capture what has been stated in Chapter 12 of the CWM specification. The XML package should be revised and extended to represent XML Schema metadata as soon as XML Schema is adopted by W3Cas a recommendation (which happened in 5/01).
Resolution:
Revised Text:
Actions taken:
August 3, 2001: received issue
Issue 4469: Missing letters in chapter 9 diagrams. (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Clarification
Severity: Minor
Summary: Figure 9-1 has initial letters missing from ModelElement and Constraint classes. Figure 9-9 has initial letter missing from Table class. Figure 9-10 has initial leters missing from the Parameter and SQLParameter classes. Figure 9-13 has initial letter missing from DataValue class.
Resolution:
Revised Text: Replaced figures 6-1, 6-9, 6-12 and 6-13 in the formal specification (document formal/2001-10-01)see below
Actions taken:
August 6, 2001: received issue
May 13, 2002: closed issue
Discussion: This issue was caused when cutting and pasting from rose into the spec. This problem will be corrected by adding the figures correctly to the revised spec..
Issue 4470: Make it easier to interchange UML Models (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Significant
Summary: CWM uses a subset of UML for practical reasons. It also delegates the modeling of Object Oriented resources to that subset. However the way this is currently done makes it unnecessarily hard to take a model exported from a UML tool and import it as the model of an OO resource in CWM.
CWM should provide support e.g. via metamodel and/or documented best practice (e.g. use of XMI namespaces) for this.
Resolution:
Revised Text:
Actions taken:
August 6, 2001: received issue
Issue 4471: CWM does not reflect the latest version of UML (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Significant
Summary: CWM aims to be a subset of UML. Various changes have occurred in Core at UML 1.4 which are not reflected in CWM. CWM 1.1 should be updated to reflect the latest UML. For example, the old TaggedValue now has been split between new TaggedValue which just holds the value (in a multivalued 'dataValue' attribute or as a 'referenceValue' ModelElement) and a new TagDefinition class which provides the tag name, reference to Stereotype and a multiplicity. Document ad/01-02-24 contains the UML 1.4 changes, though only changes to the Core will be relevant to CWM.
Resolution: see above
Revised Text:
Actions taken:
August 6, 2001: received issue
May 13, 2002: closed issue
Discussion: No update is required. The ObjectModel, though derived from UML, is independent of UML and its evolution. In the future, when MOF 2.0 and UML 2.0 are adopted, CWM 2.0 should be aligned with them.
Issue 4472: Practical changes to Contact metamodel (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: These are gained from having tried to use the model in real situations.
a) Add new attribute Contact.applicability: String (0..1), to allow a fuller description of when that
contact should be used (e.g. "After hours or weekend emergencies only: when completion of a
time-critical run is threatened").
b) the associations between COntact and its constituent parts (Telephhone etc) should be shown as aggregations (not compositions) for clarity. This will have no effect on generated code/DTDs.
c) split the phoneNumber attribute into its constituent parts. This is because the actual number to ring is dependent on context), and there may be uses where automatic dialing is required (e.g. for fax/pager access to contacts). [It is assumed that the calling progam knows what country/area it is dialing from). The proposed replacement attributes (all optional and of type String) are: countryCode inCountryAreaPrefix (e.g. for UK it would be "0" - one dials +44 1202 449419 outside UK but 01202 449419 inside UK) areaCode corePhoneNumber.
Resolution:
Revised Text:
Actions taken:
August 6, 2001: received issue
Issue 4473: Inadequate support for Organizational Structures (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: Sections 8.3 and 8.3.1.7 justify ResponsibleParty inheriting from Namespace in that it can be used for "capturing organizational structures or similar relationships". This is not only quite obscure but is inadequate for even very simple and common Warehouse-oriented situations - due to the strict composition semantics of Namespace. In particular it does not allow a single person to belong to more than one Position/Team, nor does it allow the representation of matrix/management relationships which are very common. Moreover it does not allow the separation of two very different concepts: packaging of models and organizational relationships.
An example 'test' scenario is of 2 support teams: one for Corp Database A, another for Corp Database B. Both will always have the same Manager (regardless of who is currently filling that position) and make use the same Performance Specialist, John Wicks.
It is proposed that CWM adopt a simple but specific Organization Structure metamodel (no more than 5 classes such as Unit, Position, Person) that also aims for consistency with OMG's recently adopted Organizational Structure Facility.
Resolution:
Revised Text:
Actions taken:
August 6, 2001: received issue
Issue 4474: CWM model needs to be augmented to allow specification of level& hierarchy (cwm-rtf)
Click here for this issue's archive.
Source: Oracle (Mr. David Mellor, david.mellor(at)oracle.com)
Nature: Enhancement
Severity: Significant
Summary: The CWM model currently defines the physical mapping of a Cube based only on a level of a dimension. The model needs to be augmented to allow the specification of both a level and a hierarchy.
Resolution: Add a new sub-type of MemberSelectionGroup which contains a reference to a hierarchy
Revised Text: Added a definition of HierarchyMemberSelectionGroup to the OLAP Chapter in the CWM specification (formal/2001-10-01). This consists of the following additions of new text to the OLAP specification chapter:
Modification Added a reference pointing to HierarchyMemberSelectionGroup, as part of the definition of Hierarchy. The new text is:
hierarchyMemberSelectionGroup
References HierarchyMemberSelectionGroups that are based upon this Hierarchy.
class: HierarchyMemberSelectionGroup
defined by: HierarchyMemberSelectionGroupReferencesHierarchy::hierarchyMemberSelectionGroup
multiplicity: zero or many
inverse: HierarchyMemberSelectionGroup:hierarchy
Modification Added the definition of the HierarchyMemberSelectionGroup class. The new text is:
11.x.x HierarchyMemberSelectionGroup
This subtype of MemberSelectionGroup allows users to specify that a particular cube region is determined by hierarchy. This allows the description of data to vary by hierarhcy and, therefore, provides the ability to model multiple measure values per hierarchy.
Superclasses
MemberSelectionGroup
References
hierarchy
References the Hierarchies that this HierarchyMemberSelectionGroup is based upon.
class: Hierarchy
defined by: HierarchyMemberSelectionGroupReferencesHierarchy::hierarchy
multiplicity: one or more
inverse: Hierarchy::hierarchyMemberSelectionGroup
Constraints
Each Hierarchy referenced by a HierarchyMemberSelectionGroup must have precisely one corresponding MemberSelection (of the same Dimension) in the HierarchyMemberSelectionGroup's collection of MemberSelections. [C-15]
Modification Added the definition of the HierarchyMemberSelectionGroupReferencesHierarchy association relating Hierarchy and HierarchyMemberSelectionGroup to the references section of Hierarchy 11.4.10.2. The new text is:
HierarchyMemberSelectionGroupReferencesHierarchy
A HierarchyMemberSelectionGroup references one or more Hierarchies.
Ends
hierarchyMemberSelectionGroup
The HierarchyMemberSelectionGroups referencing one or more Hierarchies.
class: HierarchyMemberSelectionGroup
multiplicity: zero or more
hierarchy
The Hierarchies referenced by one or more HierarchyMemberSelectionGroups.
class: Hierarchy
multiplicity: one or more
Modification: Added the definition of constraint "C-15" on HierarchyMemberSelectionGroup. The new text is:
[C-15] Each Hierarchy referenced by a HierarchyMemberSelectionGroup must have precisely one corresponding MemberSelection (of the same Dimension) in the HierarchyMemberSelectionGroup's collection of MemberSelections.
contextHierarchyMemberSelectionGroup
inv:self.hierarchy->forAll( h |
self.memberSelection->exists( m | m.dimension = h.dimension ) )
inv:self.hierarchy->size = self.memberSelection->size
Replaced the existing diagrams of Figure 11-1 , Figure 11-2 , and Figure 11-3 with new diagrams showing the new HierarchyMemberSelectionGroup class and its attendent associations and references. The diagram of Figure 11-4 did not need to be changed. The old and new diagrams are as follows:
Actions taken:
August 7, 2001: received issue
May 13, 2002: closed issue
Issue 4475: Attribute.initialValue incorrectly implemented as mandatory. (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Critical
Summary: The XMI representation of the CWM metamodel does not implement the specification for the initialValue attribute of the Core.Attribute class: in the specification (section 7.3.2.1 on p7-71) it clearly states the "multiplicity: zero or one"). However in the XMI file the lower bound is 1. Note: the lower bound of 0 is consistent with the UML metamodel.
The impact is that,despite the DTD not being affected, XMI imports fail when any subclass of Attribute (see below IDL changes for a list) does not specify an initialValue Expression.
This affects the XMI file, the Rose model, and the IDL. It does not affect the DTD since DTDs do not reflect attribute multiplicity.
Proposed resolution: Update the CWM XMI file, document ad/01-02-03 to change the value of Core.Attribute.initialValue.multiplicity.lower from 1 to 0.
Update the CWM Rose model, document ad/01-02-07 for attribute initialValue of Core:Attribute to change the value of the tag 'rose2mof.multiplicity' from "1" to "0..1".
Update the following in the CWM IDL files, document ad/01-02-06: In core.idl change the declaration of Attribute and its class proxy to:
typedef sequence<Expression> ExpressionBag; interface AttributeClass : StructuralFeatureClass { readonly attribute AttributeSet all_of_type_attribute; readonly attribute AttributeSet all_of_class_attribute; Attribute create_attribute ( in Core::Name name, in VisibilityKind visibility, in ScopeKindBag owner_scope, in ChangeableKind changeability, in MultiplicityBag multiplicity, in OrderingKindBag ordering, in ScopeKindBag target_scope, in ExpressionBag initial_value) raises (Reflective::MofError); }; interface Attribute : AttributeClass, StructuralFeature { Expression initial_value () raises (Reflective::NotSet, Reflective::MofError); void set_initial_value (in Expression new_value) raises (Reflective::MofError); void unset_initial_value () raises (Reflective::MofError); }; // end of interface Attribute
And in the following files and the following class proxies change the initial_value parameter of the 'create_x' constructor to be of type Core::ExpressionBag rather than Core::Expression:
Multidimensional.idl: DimensionedObjectClass Olap.idl: MeasureClass Record.idl: FieldClass, FixedOffsetFieldClass Relational.idl: ColumnClass CML.idl: XMLAttributeClass, ElementTypeReferenceClass, TextClass InformationReporting.idl: ReportAttribute DataTypes.idl : UnionMemberClass DataMining.idl: MiningAttributeClass, NumericAttributeClass, CategoricalAttributeClass, Ordinal,AttributeClass, ApplicationAttributeClass COBOLData.idl: COBOLFieldClass, RenamesClass DMSII.idl: DataItemClass, RemapItemClass ER.idl: ErAttributeClass Essbase.idl: AliasClass, CommentClass, ConsolidationClass, CurrencyConversionClass, DataStorageClass, FormulaClass, GenerationClass, ImmediateParentClass, LevelClass, MemberNameClass, TimeBalanceClass, TwoPassCalculationClass, UDAClass, VarianceReportingClass Express.idl: VariableClass, FormulaClass, ValueSetClass, RelationClass IMSDatabase.idl: ImsFieldClass, SenFieldClass.
Resolution: see below
Revised Text: In the Rose model (document ad/01-02-07), change the value of the rose2mof.multiplicity value on the MOF tab of the Core::Attribute::initialValue attribute's specification sheet from "1" to "0..1".
In the formal specification (document formal/2001-10-01), change multiplicity of the initialValue attribute of Attribute class on page 4-7 from "exactly one" to "zero or one".
In the CWM XML file (document ad/01-02-03), change the lower bound of the Attribute::initialValue attribute at line 198 from
<XMI.field>1</XMI.field> <!-- lower -->
to
<XMI.field>0</XMI.field> <!-- lower -->
In the CWM IDL file (document ad/01-02-06), change lines 359 and 381 in the Core.idl file from:
interface AttributeClass : StructuralFeatureClass
{
readonly attribute AttributeSet all_of_type_attribute;
readonly attribute AttributeSet all_of_class_attribute;
Attribute create_attribute (
in Core::Name name,
in VisibilityKind visibility,
in ScopeKindBag owner_scope,
in ChangeableKind changeability,
in MultiplicityBag multiplicity,
in OrderingKindBag ordering,
in ScopeKindBag target_scope,
in Expression initial_value)
raises (Reflective::MofError);
};
interface Attribute : AttributeClass, StructuralFeature
{
Expression initial_value ()
raises (Reflective::MofError);
void set_initial_value (in Expression new_value)
raises (Reflective::MofError);
}; // end of interface Attribute
to
typedef sequence ExpressionBag;
interface AttributeClass : StructuralFeatureClass
{
readonly attribute AttributeSet all_of_type_attribute;
readonly attribute AttributeSet all_of_class_attribute;
Attribute create_attribute (
in Core::Name name,
in VisibilityKind visibility,
in ScopeKindBag owner_scope,
in ChangeableKind changeability,
in MultiplicityBag multiplicity,
in OrderingKindBag ordering,
in ScopeKindBag target_scope,
in ExpressionBag initial_value)
raises (Reflective::MofError);
};
interface Attribute : AttributeClass, StructuralFeature
{
Expression initial_value ()
raises (Reflective::NotSet, Reflective::MofError);
void set_initial_value (in Expression new_value)
raises (Reflective::MofError);
void unset_initial_value ()
raises (Reflective::MofError);
}; // end of interface Attribute
In the CWM IDL zip file, change the type of the initial_value parameters from "Core::Expression" to "Core::ExpressionBag" at the locations indicated in the following table:
File Line No. Interface Name
Constructor Name Original Parameter Text New Parameter Text
COBOLData.idl 321 COBOLFieldClass
create_cobolfield in Core::Expression initial_value, in Core::ExpressionBag initial_value,
COBOLData.idl 504 RenamesClass
create_renames in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DataMining.idl 225 MiningAttributeClass
create_mining_attribute in Core::Expression initial_value) in Core::ExpressionBag initial_value)
DataMining.idl 339 NumericAttributeClass
create_numeric_attribute in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DataMining.idl 400 CategoricalAttributeClass
create_categorical_attribute in Core::Expression initial_value) in Core::ExpressionBag initial_value)
DataMining.idl 440 OrdinalAttributeClass
create_ordinal_attribute in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DataMining.idl 762 ApplicationAttributeClass
create_application_attribute in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DMSII.idl 230 DataItemClass
create_data_item in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DMSII.idl 648 RemapItemClass
create_remap_item in Core::Expression initial_value, in Core::ExpressionBag initial_value,
DataTypes.idl 157 UnionMemberClass
create_union_member in Core::Expression initial_value, in Core::ExpressionBag initial_value,
ER.idl 162 ErAttributeClass
create_er_attribute in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 100 AliasClass
create_alias in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 134 CommentClass
create_comment in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 154 ConsolidationClass
create_consolidation in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 174 CurrencyConversionClass
create_currency_conversion in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 194 DataStorageClass
create_data_storage in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 266 FormulaClass
create_formula in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 286 GenerationClass
create_generation in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 306 ImmediateParentClass
create_immediate_parent in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 326 CreateLevel
create_level in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 346 CreateMemberName
create_member_name in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 460 TimeBalanceClass
create_time_balance in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 500 TwoPassCalculationClass
create_two_pass_calculation in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 520 UDAClass
create_uda in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Essbase.idl 540 VarianceReportingClass
create_variance_reporting in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Express.idl 175 VariableClass
create_variable in Core::Expression initial_value, in Core::ExpressionBag initial_value,
Express.idl 214 FormulaClass
create_formula in Core::Expression initial_value, in Core::ExpressionBag initial_value,
Express.idl 239 ValueSetClass
create_value_set in Core::Expression initial_value, in Core::ExpressionBag initial_value,
Express.idl 268 RelationClass
create_relation in Core::Expression initial_value, in Core::ExpressionBag initial_value,
IMSDatabase.idl 848 ImsFieldClass
create_ims_field in Core::Expression initial_value, in Core::ExpressionBag initial_value,
IMSDatabase.idl 1191 SenFieldClass
create_sen_field in Core::Expression initial_value, in Core::ExpressionBag initial_value,
InformationReporting.idl 70 ReportAttributeClass
create_report_attribute in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Multidimensional.idl 125 DimensionedObjectClass create_dimensioned_object in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Olap.idl 777 MeasureClass
create_measure in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Record.idl 53 FieldClass
create_field in Core::Expression initial_value, in Core::ExpressionBag initial_value,
Record.idl 138 FixedOffsetFieldClass
create_fixed_offset_field in Core::Expression initial_value, in Core::ExpressionBag initial_value,
XML.idl 146 XMLAttributeClass
create_xml_attribute in Core::Expression initial_value) in Core::ExpressionBag initial_value)
XML.idl 298 ElementTypeReferenceClass
create_element_type_reference in Core::Expression initial_value, in Core::ExpressionBag initial_value,
XML.idl 337 TextClass
create_text in Core::Expression initial_value) in Core::ExpressionBag initial_value)
Actions taken:
August 6, 2001: received issue
May 13, 2002: closed issue
Discussion: Update the CWM XMI file, document ad/01-02-03 to change the value of Core.Attribute.initialValue.multiplicity.lower from 1 to 0.
Update the CWM Rose model, document ad/01-02-07 for attribute initialValue of Core:Attribute to change the value of the tag 'rose2mof.multiplicity' from "1" to "0..1".
Update the following in the CWM IDL files, document ad/01-02-06: In core.idl change the declaration of Attribute and its class proxy to: typedef sequence ExpressionBag; interface AttributeClass : StructuralFeatureClass { readonly attribute AttributeSet all_of_type_attribute; readonly attribute AttributeSet all_of_class_attribute; Attribute create_attribute ( in Core::Name name, in VisibilityKind visibility, in ScopeKindBag owner_scope, in ChangeableKind changeability, in MultiplicityBag multiplicity, in OrderingKindBag ordering, in ScopeKindBag target_scope, in ExpressionBag initial_value) raises (Reflective::MofError); }; interface Attribute : AttributeClass, StructuralFeature { Expression initial_value () raises Reflective::NotSet, Reflective::MofError); void set_initial_value (in Expression new_value) raises (Reflective::MofError); void unset_initial_value () raises (Reflective::MofError); }; // end of interface Attribute And in the following files and the following class proxies change the initial_value parameter of the 'create_x' constructor to be of type Core::ExpressionBag rather than Core::Expression: Multidimensional.idl: DimensionedObjectClass Olap.idl:
MeasureClass Record.idl: FieldClass FixedOffsetFieldClass Relational.idl: ColumnClass CML.idl: XMLAttributeClass, ElementTypeReferenceClass,
TextClass InformationReporting.idl: ReportAttribute DataTypes.idl : UnionMemberClass DataMining.idl: MiningAttributeClass, NumericAttributeClass,
CategoricalAttributeClass, Ordinal,AttributeClass, ApplicationAttributeClass COBOLData.idl: COBOLFieldClass, RenamesClass DMSII.idl:
DataItemClass, RemapItemClass ER.idl: ErAttributeClass Essbase.idl: AliasClass, CommentClass, ConsolidationClass, CurrencyConversionClass,
DataStorageClass, FormulaClass, GenerationClass, ImmediateParentClass, LevelClass, MemberNameClass, TimeBalanceClass, TwoPassCalculationClass, UDAClass, VarianceReportingClass Express.idl: VariableClass, FormulaClass, ValueSetClass, RelationClass
IMSDatabase.idl: ImsFieldClass, SenFieldClass.
Issue 4482: Optimize Instance data values (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Significant
Summary: The Instances (hence MultiDimensional) metamodel is very wasteful
in requiring a separate DataValue object for each simple string slot value:
this in effect doubles the number of objects for value-oriented schemas such
as Dimension definitions (in MultiDimensional where DataValue is inherited
into MemberValue). This is a problem for XMI files and their processing, but
even more so for repository implementations which tend to have management
overheads associated with each object. Moreover these DataValue objects end
up being directly contained in the MemberSet for the Dimension, which surely
was not the intention. This means that when navigating from the Dimension to
process its Members one also has to filter out a large number of these
unwanted Data/MemberValue objects.
Resolution: see below
Revised Text: In the CWM specification (document formal/2001-10-01), insert the following paragraph as the last paragraph page 4-57 and immediately before Figure 4-7 which appears on page 4-58:
Data values may be stored in one of two alternative ways. The Slot class is a generic container that can hold either DataValue or Object instances. One way of storing a data value is to create a Slot instance and place a DataValue instance "in" the Slot via the SlotValue assocation. The alternate way is to create an instance of DataSlot, storing the value into its dataValue attribute. The former method is more general while the latter creates fewer total objects. Both techniques are illustrated in the example in Figure 4-9.
Update 4-7 to show added class DataSlot and the association DataSlotType between it and DataType as well as the altered multiplicity for Slot.value, from
to
Change the last three paragraphs on page 4-59 from
George is represented by Object A, and Martha, by Object B. These person objects own Slots C and D, respectively. Slot C holds DataValue E whose value attribute records George’s name. Similarly, Slot D holds Martha’s name in DataValue F.
The valid values of the MaritalStatus attribute are recorded by DataValue instances K, L, and M.
The marital relationship between George and Martha is represented, from George’s perspective, by Object H which is an instance of the Marriage association. Object H owns Slots G, J, and I. Slot G holds the person association end and references Object A (George), whereas Slot I holds the spouse association end, referencing Object B (Martha). Slot J holds a DataValue instance describing the current value ("Married") of the MaritalStatus attribute for Object H.
to
George is represented by Object A, and Martha, by Object B. These person objects own DataSlots C and D, respectively, that contain the names of the individuals.
The valid values of the MaritalStatus attribute are recorded by DataValue instances I, J, and K.
The marital relationship between George and Martha is represented, from George’s perspective, by Object F which is an instance of the Marriage association. Object F owns Slots E, F, and G. Slot E holds the person association end and references Object A (George), whereas Slot G holds the spouse association end, referencing Object B (Martha). Slot H holds a DataValue instance describing the current value ("Married") of the MaritalStatus attribute for Object F.
Change Figure 4-9 from
to
Renumber sections 4.6.1.1 through 4.6.1.5, inclusive, to 4.6.1.2 through 4.6.1.6, respectively.
Insert new section 4.6.1.1 before newly renumbered 4.6.1.2 on page 4-61:
4.6.1.1 DataSlot
A Slot which is used to hold a data value where there is no need to manage the value as an element in its own right (in which case a DataValue would be used) - for example it is a one-off string value or a number. The dataValue (and dataType where set) must be consistent with the type of the DataSlot's feature (Attribute) and must obey any constraints on the full descriptor of the Attribute's DataType (including both explicit constraints and built-in constraints such as multiplicity).
Superclasses
Slot
Attributes
dataValue
The value for the slot expressed as a string.
type: String
multiplicity: exactly one
References
dataType
The type of the dataValue. If not set the type is taken as the type of the Attribute (StructuralFeature) which is the feature for the DataSlot.
class: DataType
defined-by: DataSlotType::dataType
multiplicity: zero or one
Constraints
A DataType instance associated with a DataSlot instance must be compatible with the type of the DataSlot indicated by the feature::type inherited from Slot. [C-6-6]
The StructuralFeature instance obtained via the feature reference inherited from Slot must be an Attribute. [C-6-7]
The value reference inherited from Slot must be empty. [C-6-8]
In the CWM Rose model (document ad/01-02-07), define the Instances::DataSlot class consistent with its immediately preceding definition in the specification.
In the CWM XML file (document ad/01-02-03), add the following definition for the DataSlot class immediately following the definition of Instances::Slot that ends on line 1264 and immediately preceding the definition of Instances::DataValue that begins on line 1265 (note that XML attributes whose values are represented as '<<id>>' will be replaced by appropriate values when the XML file is created by the generation software):
<Model:Class xmi.id='<<id>>' name='DataSlot' annotation='A Slot which is used to hold a data value where there is no
need to manage the value as an element in its own right (in which case a DataValue would be used) - for example it
is a one-off string value or a number. The dataValue (and dataType where set) must be consistent with the type of
the DataSlot's feature (Attribute) and must obey any constraints on the full descriptor of the Attribute's DataType
(including both explicit constraints and built-in constraints such as multiplicity).'
isRoot='false' isLeaf='false' isAbstract='false' visibility='public_vis' isSingleton='false' supertypes='<<id>>'>
<Model:Namespace.contents>
<Model:Attribute xmi.id='<<id>>' name='dataValue' annotation='The value for the slot expressed as a string.'
scope='instance_level' visibility='public_vis' isChangeable='true' isDerived='false' type='<<id>>'>
<Model:StructuralFeature.multiplicity>
<XMI.field>1</XMI.field> <!-- lower -->
<XMI.field>1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:StructuralFeature.multiplicity>
</Model:Attribute>
<Model:Reference xmi.id='<<id>>' name='dataType' annotation='The type of the dataValue. If not set the type is
taken as the type of the Attribute (StructuralFeature) which is the feature for the DataSlot.'
scope='instance_level' visibility='public_vis' isChangeable='true' type='<<id>>' referencedEnd='<<id>>'>
<Model:StructuralFeature.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:StructuralFeature.multiplicity>
</Model:Reference>
</Model:Namespace.contents>
</Model:Class>
In the CWM IDL zip file (document ad/01-02-06), add the following interface definitions for the DataSlot class in the Instances.idl file:
Between lines 14 and 15, insert:
interface DataSlotClass;
interface DataSlot;
typedef sequence<DataSlot> DataSlotSet;
Between lines 66 and 67, insert:
interface DataSlotClass : InstanceClass
{
readonly attribute DataSlotSet all_of_type_slot;
readonly attribute DataSlotSet all_of_class_slot;
DataSlot create_data_slot (
in Core::Name name,
in Core::VisibilityKind visibility
in string data_value)
raises (Reflective::MofError);
};
interface DataSlot : DataSlotClass, Instance
{
string data_value ()
raises (Reflective::MofError);
void set_data_value (in string new_value)
raises (Reflective::MofError);
Core::DataType data_type ()
raises (Reflective::NotSet, Reflective::MofError);
void set_data_type (in Core::DataType new_value)
raises (Reflective::MofError);
void unset_data_type ()
raises (Reflective::MofError);
}; // end of interface DataSlot
In the CWM specification (formal/2001-10-01), change the multiplicity of the Slot::value reference in newly numbered section 4.6.1.6 on page 4-64 from "exactly one" to "zero or more".
In the CWM XML file (ad/01-02-03), change the multiplicity lower bound of the Slot::value reference at line 1249 from
<XMI.field>1</XMI.field> <!-- lower -->
to
<XMI.field>0</XMI.field> <!-- lower -->
In the CWM IDL file (ad/01-02-06), insert the following lines between lines 60 and 61:
void unset_value ()
raises (Reflective::MofError);
In newly numbered section 4.6.1.6 of the CWM specification (formal/2001-10-01), add a new constraint at the end of the list of Constraints on page 4-64:
If the Slot instance is not also a DataSlot, the value reference must be present. [C-6-9]
In the CWM specification (formal/2001-10-01), renumber sections 4.6.2.1 through 4.6.2.4, inclusive, to 4.6.2.2 through 4.6.2.5, respectively.
In the CWM specification (formal/2001-10-01), insert new section 4.6.2.1 before newly numbered 4.6.2.2 (formal/2001-10-01, page 4-65), with the text:
4.6.2.1 DataSlotType
The DataSlotType association connects DataSlot instances with the DataType instance that identifies the type of information stored in the DataSlot::dataValue attribute.
Ends
dataSlot
Identifies the DataSlot instances for which the DataType instance is the type of information stored in the DataSlot::dataValue attribute.
class: DataSlot
multiplicity: zero or more
dataType
Identifies the DataType instance representing the type of the information stored in the dataValue attribute.
class: DataType
multiplicity: zero or more
In the CWM XML file (document ad/01-02-03), add the following definition for the DataSlotType association immediately following the definition of Instances::FeatureSlot that ends on line 1378 and immediately preceding the Model.Namespace.contents end tag on line 1379 (note that XML attributes whose values are represented as '<<id>>' will be replaced by appropriate values when the XML file is created by the generation software):
<Model:Association xmi.id='<<id>>' name='DataSlotType' annotation='The DataSlotType association connects DataSlot
instances with the DataType instance that identifies the type of information stored in the
DataSlot::dataValueattribute.' isRoot='true' isLeaf='true' isAbstract='false' visibility='public_vis' isDerived='false'>
<Model:Namespace.contents>
<Model:AssociationEnd xmi.id='<<id>>' name='dataSlot' annotation='Identifies the DataSlot instances for which the
DataType instance is the type of information stored in the DataSlot::dataValue attribute.' isNavigable='true'
aggregation='none' isChangeable='true' type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>true</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
<Model:AssociationEnd xmi.id='<<id>>' name='dataType' annotation='Identifies the DataType instance
representing the type of the information stored in the dataValue attribute.' isNavigable='true'
aggregation='none' isChangeable='true' type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
</Model:Namespace.contents>
</Model:Association>
In the CWM IDL zip file (document ad/01-02-06), add the following interface definitions for the DataSlotType association in the Instances.idl file:
struct DataSlotTypeLink
{
DataSlot data_slot;
Core::DataType data_type;
};
typedef sequence<DataSlotTypeLink> DataSlotTypeLinkSet;
interface DataSlotType : Reflective::RefAssociation
{
DataSlotTypeLinkSet all_data_slot_type_links()
raises (Reflective::MofError);
boolean exists (
in DataSlot data_slot,
in Core::DataType data_type)
raises (Reflective::MofError);
DataSlotSet data_slot (in Core::DataType data_type)
raises (Reflective::MofError);
Core::DataType data_type (in DataSlot data_slot)
raises (Reflective::MofError);
void add (
in DataSlot data_slot,
in Core::DataType data_type)
raises (Reflective::MofError);
void modify_data_slot (
in DataSlot data_slot,
in Core::DataType data_type,
in DataSlot new_data_slot)
raises (Reflective::NotFound, Reflective::MofError);
void modify_data_type (
in DataSlot data_slot,
in Core::DataType data_type,
in Core::DataType new_data_type)
raises (Reflective::NotFound, Reflective::MofError);
void remove (
in DataSlot data_slot,
in Core::DataType data_type)
raises (Reflective::NotFound, Reflective::MofError);
}; // end of interface DataSlotType
In the CWM specification (formal/2001-10-01), add the following constraints to the end of the list of Constraints on page 4-67:
[C-6-6] A DataType instance associated with a DataSlot instance must be compatible with the type of the DataSlot indicated by the feature::type inherited from Slot.
context DataSlot inv:
self.dataType->notEmpty implies self.dataType.oclIsKindOf(self.feature.type)
[C-6-7] The StructuralFeature instance obtained via the feature reference inherited from Slot must be an Attribute.
context DataSlot inv:
self.feature.oclIsTypeOf(Attribute)
[C-6-8] The value reference inherited from Slot must be empty.
context DataSlot inv:
self.value->isEmpty()
[C-6-9] If the Slot instance is not also a DataSlot, the value reference must be present.
context Slot inv:
self.oclIsTypeOf(Slot) implies self.value->notEmpty()
Actions taken:
August 10, 2001: received issue
May 13, 2002: closed issue
Discussion: Proposed resolution
-------------------
a) Add new subclass of Slot called 'DataSlot' with description: "A Slot
which is used to hold a data value where there is no need to manage the
value as an element in its own right (in which case a DataValue would be
used) - for example it is a one-off string value or a number."
b) Add String attribute 'dataValue', description: "The value for the slot
expressed as a string."
c) Add reference 'dataType'[0..1] to DataType, description: "The type of the
dataValue. If not set the type is taken as the type of the StructuralFeature
associated with the DataSlot."
d) Add constraint that DataSlot.value (reference inherited from Slot) must
be empty.
e) Update Figure 7-6-3 to change the 2 instances of Slot associated with the
'name' Attribute to be instances of DataSlot, delete the attached instances
of DataValue, and attach the 'value=' strings directly to the DataSlots
making them 'dataValue='.
Rationale
---------
This is intended to be a minimal-impact proposal that is incremental and
does not impact existing implementations.
It does not replace the existing DataValue class where there is the real
need to have stand-alone managed data values (the equivalent of Constant in
MOF and EnumerationLiteral in UML), but is for use where the values are pure
one-off values for which the overhead of a separate ModelElement is not
justified: for example most numeric and string values.
The George and Martha example in Figure 7-6-3 illustrates the distinction:
for the one-off names "George Washington" and "Martha Custis Washington"
then the new DataSlot is used, but for the pseudo-enumeration values
associated with the MaritalStatus attribute ("Married", "Widowed",
"Divorced") then DataValue is still used: in particular because some of the
values (e.g. "Divorced") are not yet associated with any actual Slot.
a) Add new subclass of Slot called 'DataSlot' with description: "A Slot which is used to hold a data value where there is no need to manage the value as an element in its own right (in which case a DataValue would be used) - for example it is a one-off string value or a number.
The dataValue (and dataType where set) must be consistent with the type of the DataSlot's feature (Attribute) and must obey any constraints on the full
descriptor of the Attribute's DataType (including both explicit constraints and built-in constraints such as multiplicity)."
b) Add String attribute 'dataValue', description: "The value for the slot expressed as a string."
c) Add reference 'dataType'[0..1] to DataType, description: "The type of the dataValue. If not set the type is taken as the type of the Attribute
(StructuralFeature) which is the feature for the DataSlot. "
d) Add constraint that the feature of a DataSlot must be an Attribute. In OCL:
self.feature.oclIsTypeOf(Attribute).
e) Add constraint that a DataType associated with a DataSlot must be type compatible with that associated
with the Attribute which is its feature. In OCL: self.dataType.oclIsKindOf(self.feature.type).
f) Change multiplicity of reference Slot.value from 1 to 0..1 and add constraints that it must not be empty
for direct instances of Slot and must be empty for instances of DataSlot. In OCL: [on Slot] self.oclIsTypeOf(Slot)implies self.value->notEmpty()
and [on DataSlot] self.value->isEmpty().
g) Update Figure 7-6-3 to change the 2 instances of Slot associated with the'name' Attribute to be instances of DataSlot, delete the attached instances
of DataValue, and attach the 'value=' strings directly to the DataSlots making them 'dataValue='.
Issue 4509: CWM should consider using MOF 1.4 for it's metamodel (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: Support for MOF 1.4 MOF 1.4 will probably be adopted at the September 2001 meeting. CWM should consider using MOF 1.4 for its metamodel, which will bring particular benefits in the area of DataTypes. Note that there is a new OMG directory and naming structure that allows a single metamodel to have many physical artifacts at different versions with clarity of access.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4510: CWM should consider generating XMI 1.2 DTDs (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: Support for XMI 1.2 XMI 1.2 will probably be adopted at the September 2001 meeting. CWM should consider generating XMI 1.2 DTDs. Note that there is a new directory and naming structure that allows a single metamodel to have many physical artifacts at different versions with clarity of access.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4511: CWM should consider generating XML Schemas, in both XMI 1.x and XMI 2.0 (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: Support for XMI for XML Schemas The above will probably be adopted at the September 2001 meeting. CWM should consider generating XML Schemas, in both XMI 1.x and XMI 2.0 flavors. Note that there is a new directory and naming structure that allows a single metamodel to have many physical artifacts at different versions with clarity of access.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4512: Component Re-use unclear (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: By using the inherited ElementOwnership association to link SOftwareSystem and Component, this would seem to prevent the same component being reused in many systems. Though an Import association is depicted in Figure 8-7-1, nothing is said in the text about its semantics in this context: typically this would be used just for definitions/types ("extending the namespace" according to the description in the Core model) and not something that would need to be physically deployed as part of the SoftwareSystem.
Proposed resolution: Introduce a new many-to-many shared aggregation to link SoftwareSystem and Component.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4513: Predefined' values not defined in metamodel (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: The 'predefined' values for SoftwareDeployment::SoftwareSystem.type (and subtype) should be formally defined as Constants in the metamodel. Similarly for WarehouseOperation::ChangeRequest.status and WarehouseOperation::Measure.type (there are probably others).
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4514: Supplier and version underspecified (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: Supplier and version of SoftwareSystem should be optional: they are not always known or relevant.
The description for supplier should clarify whether it represents any/all of: a) the original developer (e.g. "Oracle"); b) the entity who sold the software to the organization (e.g. a reseller); c) the IT support group within the organization who deployed it for a particular set of business users.
It would make more sense to model supplier as a reference to BusinessInformation::ResponsibleParty, since this would allow reuse, contact information and impact analysis ("supplier X has gone out of business, what have they supplied us?"). Version might also make sense on DeployedSoftwareSystem (at a logical/design level one might not care what the version is: but it might be required to record which version is actually deployed).
Resolution: see below
Revised Text: In the formal specification (document formal/2001-10-01), add an "Attributes" subsection heading between the "Superclasses" and "References" subsections of the DeployedSoftwareSystem class description on page 5-57.
Add text for fixLevel attribute to "Attributes" subsection of DeployedSoftwareSystem (document formal/2001-10-01) on page 5-57:
fixLevel
Describes the fix level of the DeployedSoftwareSystem instance.
type: String
multiplicity: exactly one
In the CWM Rose model (document ad/01-02-07), add attribute DeployedSoftwareSystem::fixLevel of type "String".
In the CWM XML file (document ad/01-02-03), within the bounds of the definition of class DeployedSoftwareSystem, add the following definitions after line 2587 (with the text "<Model:Namespace.contents>") and before the definition of the softwareSystem reference that begins on line 2588. (Note that the text '<<id>>' will be replaced by the generation software with appropriate references to other xmi objects when the actual file is created.)
<Model:Attribute xmi.id='<<id>>' name='fixLevel' annotation='Describes the fix level of the
DeployedSoftwareSystem instance.' scope='instance_level' visibility='public_vis' isChangeable='true'
isDerived='false' type='<<id>>'>
<Model:StructuralFeature.multiplicity>
<XMI.field>1</XMI.field> <!-- lower -->
<XMI.field>1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:StructuralFeature.multiplicity>
</Model:Attribute>
In the CWM IDL zip file (document ad/01-02-06), make the following changes in the SoftwareDeployment.idl file.
Insert between lines 272 and 273 in the definition of the DeployedSoftwareComponet interface:
string fix_level ()
raises (Reflective::MofError);
void fix_level (in string new_value)
raises (Reflective::MofError);
Replace line 268 (text = "in Core::VisibilityKind visibility)") with:
in Core::VisibilityKind visibility,
in string fix_level)
In the formal specification (document formal/2001-10-01), change multiplicity of the supplier attribute of SoftwareSystem on page 5-61 from "exactly one" to "zero or one".
In the CWM XML file (document ad/01-02-03), change the lower bound of the SoftwareSystem::supplier attribute at line 2532 from
<XMI.field>1</XMI.field> <!-- lower -->
to
<XMI.field>10</XMI.field> <!-- lower -->
In the CWM IDL file (document ad/01-02-06), insert the following text between lines 213 and 214 in the SoftwareDeployment.idl file:
void unset_supplier ()
raises (Reflective::MofError);
In the formal specification (document formal/2001-10-01), change multiplicity: of vendor attribute of SoftwareSystem on page 5-61 from "exactly one" to "zero or one".
In the CWM XML file (document ad/01-02-03), change the lower bound of the SoftwareSystem::vendor attribute at line 2540 from
<XMI.field>1</XMI.field> <!-- lower -->
to
<XMI.field>10</XMI.field> <!-- lower -->
In the CWM IDL zip file (document ad/01-02-06), insert the following text between lines 217 and 218 in the SoftwareDeployment.idl file:
void unset_vendor ()
raises (Reflective::MofError);
In the formal specification (document formal/2001-10-01), update Figure 5-11 on page 5-51 to include fixLevel, from:
to (note that this new figure also includes a change in response to Issue 4518 -- the reflexive association on DeployedComponent -- that is not relevant to Issue 4514):
In the formal specification (document formal/2001-10-01), update Figure 5-13 on page 5-53 to include the fixLevel attribute, from:
to
Actions taken:
August 19, 2001: received issue
May 13, 2002: closed issue
Discussion: Add string attribute ‘fixLevel’ to DeployedSoftwareSystem and make supplier and version attributes optional on SoftwareSystem
Issue 4515: Make ChangeRequest useful (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: This should be part of BusinessInformation: it is not at all specific to WarehouseOperations since one could request changes to database schemas, transformations or pretty much anything.
'isActive' would be better than 'completed' for ChangeRequest, and would observe the convention of using 'is' for booleans. Moreover it should be a derived nonchangeable attribute to avoid inconsistency with 'status'.
The reference from ChangeRequest to ModelElement should be 0..* since the request might be to create something new that cannot yet be referred to!
The following are considered essential for most ChangeRequests: 1) two multivalued optional references to ResponsibleParty to indicate: a) raiser b) actionee 2) optional single-valued integer attribute 'priority' (larger value = more important), constrained to be non-negative. 3) optional single-valued string attributes 'raisersIdentifier' and 'identifier' (representing an id allocated by the raiser and that used internally by the warehouse management system). 4) optional multivalued string attribute 'history' to describe events in managing the request. 5) optional string attribute 'resolution' to decribe what actually happened (e.g. how the modelElements were changed, why the request was rejected etc).
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4516: Rationalize 'Measurement' (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Enhancement
Severity: Minor
Summary: This should be part of Foundation (probably Expressions or BusinessInformation): it is not at all specific to WarehouseOperations since one could apply measures to tables (for expected volumes), transformations etc.
Measurement should have an optional reference to an Expression to define how the value has/should be calculated.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4517: Diagram 8-7-3 missing lines (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Clarification
Severity: Minor
Summary: Diagram 8-7-3 could be made a clearer by using associations (lines) in addition to the references.
Resolution: No change is required. This diagram intends to represent inheritances only
Revised Text:
Actions taken:
August 19, 2001: received issue
May 13, 2002: closed issue
Issue 4518: Logical-physical deployment modeling (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: DataManager contains a reference to the specific data (at the schema level) that is being managed but is constrained to be a DeployedComponent on a specific Machine. Though a DataManager refers to the Component that it 'instantiates' there is nothing associated with Component that allows one to record what data it can manage.
For example, I would like to be able to create an element called "Peopleware Payroll Application" which references the relational schema for the application. This should be possible without having to say anything about its deployment onto specific machines.
A separate but related point is the lack of support for physical databases. For example, When deploying an application I then want to be able to say what physical database it's using. The value of tracking this is for backup purposes etc, and the fact that actual WarehouseOperations will need to be applied to specific databases.
Proposed resolution
Add new class 'PhysicalDatabase' to SoftwareDeployment Model; this will inherit from Package and will have a many-to-many association 'LogicalPhysical' with Package, and be contained by Machine (as for DeployedComponent). [May want a subslcass of Dependency between PhysicalDatabases to represent replication/federation/partitioning. Or alternatively use containment by one 'abstract' PhysicalDatabase of others to represent this, though this does not allow the exact relationship to be expressed.]
Move the 'dataPackage' reference from DataManager to SoftwareSystem. Add new many-to-many reference 'databases' to DataManager with target type PhysicalDatabase.
Resolution: see below
Revised Text: Renumber subsections of section 5.7.2 (document formal/2001-10-01, pages 5-62 though 5-66) as follows:
From To
5.7.2.1 5.7.2.1
5.7.2.2 5.7.2.3
5.7.2.3 5.7.2.4
5.7.2.4 5.7.2.5
5.7.2.5 5.7.2.6
5.7.2.6 5.7.2.8
5.7.2.7 5.7.2.9
5.7.2.8 5.7.2.10
5.7.2.9 5.7.2.11
5.7.2.10 5.7.2.12
In the CWM specification (document formal/2001-10-01), insert new section 5.7.2.2 on page 5-62 following existing section 5.7.2.1, with the text:
5.7.2.2 ComponentDesign
This associates Components with the Packages containing its design. Typically this will reference the logical schema.
Ends
component
Identifies the Component instances whose design is described by this Package.
class: Component
multiplicity: zero or more
designPackage
Identifies the Package instance containing the Component's design.
class: Package
multiplicity: zero or more
In the CWM Rose model (document ad/01-02-07), define the CWM::Foundation::SoftwareDeployment::ComponentDesign association consistent with its immediately preceding definition in the specification.
In the CWM XML file (document ad/01-02-03), add the following definition for the ComponentDesign association immediately following the definition of DeployedSoftwareSystemComponents that ends on line 2818 and immediately preceding the definition of ComponentDeployments that begins on line 2819 (note that XML attributes whose values are represented as '<<id>>' will be replaced by appropriate values when the XML file is created by the generation software):
<Model:Association xmi.id='<<id>>' name='ComponentDesign' annotation='This associates Components with the
Packages containing its design. Typically this will reference the logical schema.' isRoot='true' isLeaf='true'
isAbstract='false' visibility='public_vis' isDerived='false'>
<Model:Namespace.contents>
<Model:AssociationEnd xmi.id='<<id>>' name='component' annotation='Identifies the Component instances whose
design is described by this Package.' isNavigable='true' aggregation='none' isChangeable='true'
type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>true</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
<Model:AssociationEnd xmi.id='<<id>>' name='designPackage' annotation='Identifies the Package instance
containing the Component's design.' isNavigable='true' aggregation='none' isChangeable='true'
type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
</Model:Namespace.contents>
</Model:Association>
In the CWM IDL zip file (document ad/01-02-06), add the following interface definitions for the ComponentDesign association in the SoftwareDeployment.idl file between lines 718 and 719:
struct ComponentDesignLink
{
Component component;
Core::Package package;
};
typedef sequence<ComponentDesignLink> ComponentDesignSet;
interface ComponentDesign : Reflective::RefAssociation
{
ComponentDesignLinkSet all_component_design_links()
raises (Reflective::MofError);
boolean exists (
in Component component,
in Core::Package design_package)
raises (Reflective::MofError);
ComponentDesignSet component (in Core::Package design_package)
raises (Reflective::MofError);
Core::Package design_package (in Component component)
raises (Reflective::MofError);
void add (
in Component component,
in Core::Package design_package)
raises (Reflective::MofError);
void modify_component (
in Component component,
in Core::Package design_package,
in Component new_component)
raises (Reflective::NotFound, Reflective::MofError);
void modify_design_package (
in Component component,
in Core::Package design_package,
in Core::Package new_design_package)
raises (Reflective::NotFound, Reflective::MofError);
void remove (
in Component compnent,
in Core::Package design_package)
raises (Reflective::NotFound, Reflective::MofError);
}; // end of interface ComponentDesign
In the CWM specification (document formal/2001-10-01), insert new section 5.7.2.7 on page 5-64 following the newly renumbered section 5.7.2.6, with the text:
8.7.2.7 DeployedComponentUsage
This links a DeployedComponent to the other DeployedComponents that it uses. Typically this might link a deployed application to the physical databases (instances of DataManager) that it accesses.
Ends
usedComponents
Identifies the DeployedComponent instances that use this DeployedComponent.
class: DeployedComponent
multiplicity: zero or more
usingComponents
Identifies the DeployedComponent instances that this DeployedComponent instance uses.
class: DeployedComponent
multiplicity: zero or more
In the CWM Rose model (document ad/01-02-07), define the CWM::Foundation::SoftwareDeployment::DeployedComponentUsage association consistent with its immediately preceding definition in the specification.
In the CWM XML file (document ad/01-02-03), add the following definition for the DeployedComponentUsage association immediately following the definition of SiteMachines that ends on line 2718 and immediately preceding the definition of DataProviderConnections that begins on line 2719 (note that XML attributes whose values are represented as '<<id>>' will be replaced by appropriate values when the XML file is created by the generation software):
<Model:Association xmi.id='<<id>>' name='DeployedComponentUsage' annotation='This links a DeployedComponent
to the other DeployedComponents that it uses. Typically this might link a deployed application to the physical
databases (instances of DataManager) that it accesses.' isRoot='true' isLeaf='true'
isAbstract='false' visibility='public_vis' isDerived='false'>
<Model:Namespace.contents>
<Model:AssociationEnd xmi.id='<<id>>' name='usedComponents' annotation='Identifies the DeployedComponent
instances that use this DeployedComponent.' isNavigable='true' aggregation='none' isChangeable='true'
type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>true</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
<Model:AssociationEnd xmi.id='<<id>>' name='usingComponents' annotation='Identifies the
DeployedComponent instances that this DeployedComponent instance uses.' isNavigable='true'
aggregation='none' isChangeable='true' type='<<id>>'>
<Model:AssociationEnd.multiplicity>
<XMI.field>0</XMI.field> <!-- lower -->
<XMI.field>-1</XMI.field> <!-- upper -->
<XMI.field>false</XMI.field> <!-- is_ordered -->
<XMI.field>false</XMI.field> <!-- is_unique -->
</Model:AssociationEnd.multiplicity>
</Model:AssociationEnd>
</Model:Namespace.contents>
</Model:Association>
In the CWM IDL zip file (document ad/01-02-06), add the following interface definitions for the ComponentDesign association in the SoftwareDeployment.idl file following the definition of the ComponentDesign association already inserted between lines 718 and 719:
struct DeployedComponentUsageLink
{
DeployedComponent used_component;
DeployedComponent using_component;
};
typedef sequence<DeployedComponentUsageLink> DeployedCompnentUsageSet;
interface DeployedComponentUsage : Reflective::RefAssociation
{
DeployedComponentUsageLinkSet all_deployed_component_usage_links()
raises (Reflective::MofError);
boolean exists (
in DeployedComponent used_component,
in DeployedComponent using_component)
raises (Reflective::MofError);
DeployeComponentSet used_component (in DeployedComponent using_component)
raises (Reflective::MofError);
DeployeComponentSet using_component (in DeployedComponent used_component)
raises (Reflective::MofError);
void add (
in DeployedComponent used_component,
in DeployedComponent using_component)
raises (Reflective::MofError);
void modify_used_component (
in DeployedComponent used_component,
in DeployedComponent using_component,
in DeployedComponent new_used_component)
raises (Reflective::NotFound, Reflective::MofError);
void modify_using_component (
in DeployedComponent used_component,
in DeployedComponent using_component,
in DeployedComponent using_component)
raises (Reflective::NotFound, Reflective::MofError);
void remove (
in DeployedComponent used_component,
in DeployedComponent using_component)
raises (Reflective::NotFound, Reflective::MofError);
}; // end of interface DeployedComponentUsage
In the CWM specification (document formal/2001-10-01), change Figure 5-12 to add new ComponentDesign and DeployedComponentUsage associations, from
to
Actions taken:
August 19, 2001:
May 13, 2002: closed issue
Discussion: Resolution:
a) Add new many-to-many Association ComponentDesign between Component and Package (with one reference
Component.designPackage). And description "This associates Components with the Packages
containing its design. Typically this will reference the logical schema."
b) Add new many-to-many recursive Association DeployedComponentUsage on DeployedComponent (with references usedComponents and usingComponents). And description "This links a DeployedComponent to the other DeployedComponents that it uses. Typically this might link a deployed application to the physical databases (instances of DataManager) that it accesses."
Issue 4519: Warehouse processes missing physical information (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Revision
Severity: Significant
Summary: It's not at all clear how one links from a WarehouseProcess or TransformationExecution to the physical information that it is applied to (e.g. if the same information is replicated across a number of physical locations which is actually used as the source of a datawarehouse load?).
At the Process level there is the opportunity for some sophistication (e.g. to list a number of physical sources/destinations in priority order); at the execution level one should record the actual instance used.
Similarly one may want to specify and record which DeployedComponent(s) should be used to carry out the transformation.
Resolution:
Revised Text:
Actions taken:
August 19, 2001: received issue
Issue 4583: Modeling and packaging guidelines (cwm-rtf)
Click here for this issue's archive.
Source: Unisys (Dr. Doug Tolbert, dtolbert408(at)gmail.com)
Nature: Uncategorized Issue
Severity: Significant
Summary: Metamodels described in the CWM specification employ certain
modeling techniques and packaging styles in preference to others. However,
the current text of the specification does not clearly delineate, or provide
a rationale for, which modeling techniques and packaging styles are
preferred and which are not. Because stylistic consistency is an important
part of promoting both understandability and implementability, text should
be added to the specification (possibly in Chapter 6) delineating preferred
modeling techniques and packaging. Such documentation will provide guidance
to submitters of enhancements to existing CWM metamodels and of new or
replacement metamodel packges.
Resolution:
Revised Text:
Actions taken:
September 26, 2001: received issue
Issue 4744: We only need one COBOL Data Division metamodel. (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Revision
Severity: Significant
Summary: CWM vol. 2 3.1 says "The concepts and ideas implicit in the definition of the COBOL language's DATA DIVISION were one of the earliest (if not the first) formalizations of the ubiquitous record model. A COBOL program contains much more than just record descriptions. However, because neither CWM nor UML attempt to describe programming languages directly, only the DATA DIVISION is described here. The model presented here is compliant to the COBOL 85 language standard [COBOL]."
UML Profile for EAI 14.1 says "The goal of this COBOL model is to capture the information that would be found in the Data Division." .
Both define COBOL Data Division metamodels with different levels of detail. We only need one COBOL Data Division metamodel.
Resolution:
Revised Text:
Actions taken:
December 11, 2001: received issue
Discussion:
Issue 4834: We only need one COBOL Data Division model (cwm-rtf)
Click here for this issue's archive.
Source: Deere & Company (Mr. Dave Smith, )
Nature: Uncategorized Issue
Severity:
Summary: CWM vol. 2 3.1 says
"The concepts and ideas implicit in the definition of the COBOL language's
DATA DIVISION were one of the earliest (if not the first) formalizations of
the ubiquitous record model. A COBOL program contains much more than just
record descriptions. However, because neither CWM nor UML attempt to
describe programming languages directly, only the DATA DIVISION is described
here. The model presented here is compliant to the COBOL 85 language
standard [COBOL].
The primary purpose of the COBOL DATA DIVISION metamodel extension package
in CWM is to allow the structure of DATA DIVISIONs to be captured so that
their usage of other model elements (such as RecordDefs and Fields) can be
modeled. This allows definition of files and databases created by COBOL
programs as well as direct support for tools that attempt to track the
lineage and determine the impact of proposed changes to COBOL application
programs. The metamodel does not, however, provide sufficient structure to
support tools that want to capture the structure of a DATA DIVISION source
into a CWM repository and then be able to faithfully reproduce the source on
demand.
The COBOL DATA DIVISION metamodel extension also serves as an example of
the use of the CWM Record metamodel. The CWM Record package is intended as a
foundation upon which many record-oriented programming languages can be
described. The COBOL Data Division extension package is provided as example
demonstrating appropriate usage of CWM and UML classes in modeling the data
structure representation parts of this and similar programming language
environments."
UML Profile for EAI 14.1 says
"The goal of this COBOL model is to capture the information that would be
found in the Data Division." .
Both define partial COBOL language meta models with different levels of
detail. We only need one COBOL Data Division model.
Resolution: see above
Revised Text: Insert "Note that this profile is based on the extension mechanisms defined in version 1.4 of the UML specification [37]." into section 3.4.1
Actions taken:
February 18, 2002: received issue
April 26, 2010: closed issue
April 26, 2010: closed issue
Discussion: Resolution:
An explicit statement to this effect has been inserted as part of a new section in chapter 3 (section 3.4.1)
Issue 5106: SQLParameter (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Jean-Jacques Daudenarde, nobody)
Nature: Enhancement
Severity: Minor
Summary: An SQLParameter has no attribute. It should have some of the Column attribute: length, precision, scale and isNullable at minimum. This is valid for all the RDBMS.
Resolution:
Revised Text:
Actions taken:
April 3, 2002: received issue
Issue 5299: page 9-276/Section: 9.3.22 of ptc/2002-01-02 -- CWM issue (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Jean-Jacques Daudenarde, nobody)
Nature: Enhancement
Severity: Minor
Summary: Table: this currently reference a Table. However, most RDBMS support "instead of" triggers which can be applied to views. Table should be replaced by a reference to a NamedColumnSet
Resolution:
Revised Text:
Actions taken:
May 16, 2002: received issue
Issue 5695: Invalid explicit references for some 'association generalizations' in the (cwm-rtf)
Click here for this issue's archive.
Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com)
Nature: Uncategorized Issue
Severity:
Summary: This applies to CWM 1.1 (and also CWM 1.0).
Sun MDR user Vincent Lombart spotted that he was getting the same
association exported twice, which I tracked down to the following problem in
the metamodel.
There should be no explicit association between ClassifierMap and
TransformationMap: the diagram in the CWM spec just documents the fact that
the inherited ownedElement association is used to link these classes.
The CWM XMI file is produced by the Unisys Rose integration which explicitly
ignores such associations (signalled by '/' on the association ends - normal
derived associations have '/' on the association name). This is used in
several places e.g. in Relational model to show that Column and ColumnSet
are linked using the owner-feature association.
However in the ClassifierMap case there are also corresponding references
explicitly defined as pseudo-attributes on Classifier and TransformationMap
which has caused the references erroneously to be generated into the XMI
file.
On further investigation, the following inherited associations have
superfluous references:
XML:ElementType <-> XML:Schema
XML:ElementType <-> XML:Attribute
Transformation:TransformationMap <-> Transformation:ClasifierMap
Transformation:TransformationActivity <-> TransformationStep (in this case
the references are called 'step' and 'activity')
BusinessNomenclature:Taxonomy <-> Concept
BusinessNomenclature:Glossary <-> Term
BusinessNomenclature:BusinessDomain <-> Taxonomy (in this case one
reference is called just 'domain')
Proposed resolution:
Delete the above references/pseudo-attributes (with stereotype of
<<reference>> though this is hidden on the diagram).
Resolution:
Revised Text:
Actions taken:
October 23, 2002: received issue
Issue 5697: TaggedValue (cwm-rtf)
Click here for this issue's archive.
Source: International Business Machines (Dr. Daniel T. Chang, dtchang(at)us.ibm.com)
Nature: Uncategorized Issue
Severity:
Summary: CWM_1.0.dtd is missing the following element:
<!ELEMENT CWM:ModelElement.taggedValue (CWM:TaggedValue)*>
This element should be a child element of CWM:ModelElement and all elements
that correspond to subclasses of ModelElement.
Without this element, CWM_1.0.dtd does not conform to the CWM 1.0
Metamodel. According to the metamodel, any ModelElement (or its subclass)
can own TaggedValue through the TaggedElement aggregation.
Resolution:
Revised Text:
Actions taken:
October 24, 2002: received issue
Discussion:
Issue 5921: Parameter (cwm-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Critical
Summary: I think a parameter must have a multiplicity, because otherwise there can be never ever overgiven/returned an array to/from an behavioralfeature. I think this is not correct, i think maybe this is right for input parameters, but i think for output or return parameters there must be an multiplicity to model an behavioralfeauture correct.
Resolution:
Revised Text:
Actions taken:
April 29, 2003: received issue
Issue 5925: figure 6, page 212 (cwm-rtf)
Click here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary: Anyway, I think that there is a little error on the figure 6-6 chapter 6.2.4 of the v1.1 (wich is the figure 6, page 212 in the PDF, chapter 9.2.4 on the "old" document) : the Person has a "salary Column" instead of a "name column".
Resolution:
Revised Text:
Actions taken:
April 29, 2003: received issue
Issue 8707: formal/03-03-02 (cwm-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Significant
Summary: The specification does not identify the exact versions of MOF, UML and XMI that it refers to. Even if more than one version is applicable this needs to be made clear.
Resolution:
Revised Text:
Actions taken:
April 28, 2005: received issue
Issue 12298: Foreword (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
"Apart from this Foreword, the text of this International Standard is identical with that for the OMG specification for CWM 1.1 (formal/03-03-02)."
While true of the current document this cannot hold if changes are made to respond to NB comments.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12299: Introduction - references (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The references to MOF and XMI should be the ISO documents, as in the Foreword
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12300: Location: 3 Normative References (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The references to MOF and XMI should be the ISO documents, as in the Foreword
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12301: Location: 3 Normative References -- OCL (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
A normative reference for OCL is required, because it is used in Clause 8 (and elsewhere)
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12302: Location: 3 Normative References - ISO/IEC 9075:2003 Database language SQL (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
A normative reference for ISO/IEC 9075:2003 Database language SQL is required, because it is the basis of Clause 10 (any previous edition has been superseded)
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12303: Location: 4 Abbreviations and Conventions (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
DTD is Document Type Definition
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12304: Location: 4 Abbreviations and Conventions - ODBC (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
ODBC is Open Database Connectivity
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12306: Location: 4 Abbreviations and Conventions - SQL (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
SQL should not be considered as an abbreviation for Structured Query Language
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12307: 4 Abbreviations and Conventions - SQL-92 and SQL-99 (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: SQL-92 and SQL-99 should not be used since they are no longer valid, and should NOT be described as ANSI documents
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12308: Location: 10.1 Overview (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
The referenced [SQL], the basis of this clause, is given as SQL:1999, which is no longer valid because it has been superseded by SQL:2003
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12309: Location: 10.1 Overview (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
The inclusion of 'indexing' as part of Relational implies that it is part of SQL, but this is not true.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12310: Location: 10.2.4 Structured Types and Object Extensions (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
"A structured type is defined in terms of columns" - the SQL standard defines a structured type in terms of attributes and it is totally confusing to define it in terms of columns. A column can exist only within tables and can have constraints, which are not allowed for attributes of a structured type.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12311: Location: 10.2.4 Structured Types and Object Extension , Figure 10.5 (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
The figure does not enclose emp_t in parenthesis (..) as shown correctly in the associated text.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12312: Location: 10.2.6 Index (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
This should make it clear that indexing is not part of SQL, and the use of SQLIndex in Figure 10.10 is entirely inappropriate.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12313: Location: 10.2.8 Procedures (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
It is inappropriate to use the name Procedure for referring to both procedures and functions (see 10.3.9). SQL uses the term routine for this purpose.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12314: Location: 10.3.14 SQLDataType (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The attribute typeNumber is not an SQL concept, and since it is described as being assigned by the owning DBMS this makes it totally useless for any exchange between different DBMSs.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12315: Location: 10.3.15 SQLDistinctType (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The attributes length, precision and scale should not be present, because they are exactly the same as those for the related sqlSimpleType. What should be included are the methods that can be defined for distinct types.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12316: Location: 10.3.16 SQLIndex (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
see comment on 10.2.6
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12317: 10.3.17 SQLIndexColumn (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
see comment on 10.2.6
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12318: 10.3.18 SQLParameter (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: There should be a constraint that an SQL parameter can only be of type SQLDataType
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12319: 10.3.20 SQLStructuredType (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: An essential feature of SQL structured types is that they have methods, whose properties should be recorded
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12320: 10.3.20 SQLStructuredType - referencingColumn (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The description of referencingColumn implies that only a 'column' (i.e. an attribute) of a structured type can be of a type REF, whereas any column of a table can be so.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12321: 10.4.2 ColumnRefStructuredType (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: Nature of Problem:
see comment on 10.3.20
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12322: Location: 12.1 Overview (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: "...and several examples are provided in Volume 2, Extensions, of the CWM Specification." This document is not referenced in either Clause 3 or the References Annex, and its role in this specification is not defined.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12323: 13.1 Overview (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: "XML Schema is an ongoing activity in the W3C. As future standards are adopted by the W3C on XML Schema, this package will be revised and extended accordingly." This document is not referenced in either Clause 3 or the References Annex, and the claimed revision has clearly not occurred.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12324: 13.3.9 Schema (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The attribute XMLNamespace (also shown in Figure 13.1) is defined as a string, but it is an XML concept described by a specification separate from the referenced [XML], and quite distinct from the CWM concept of Namespace, and so should be referenced and described appropriately.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12325: 21.5 SQL-99 Data Types (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: SQL-99 is superseded by SQL:2003 (see comment on 3), which is mainly the same except that BIT and BIT VARYING data types are no longer included.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12326: 21.6 Type Mapping Examples (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: These tables gives data types from X/Open CLI SQL, which is not referenced in either Clause 3 or the References Annex but should not be used because they should be data types defined by SQL and the mappings defined by the current version (4) of JDBC.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12327: Annex A: References (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: This annex should not be described as Normative, since all normative references should be in Clause 3. Some of the non-normative reference should be normative and be moved to Clause 3. All references should be to current specifications.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12328: Annex B: Compatibility with other Standards (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: This annex is inappropriate in this standard, but if it remains it must be non-normative because it does not provide any requirement on the application of this standard.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12329: Annex C: Glossary (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: This annex should not be described as Normative, since it does not provide any requirement on the application of this standard as well as being incomplete and missing or being in conflict with the terminology of other normative references, such as SQL. The reference to RM-ODP is inappropriate, not being one of the listed sources.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12330: Annex D: Legal Information (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: This normative annex appears to conflict with the intellectual property rights of ISO standards, and does not take account of the ISO requirement that all potential patents should be declared.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12331: Annex F: Acknowledgements (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: This annex is not appropriate for an ISO standard, and cannot be normative.
Proposed Solution: None proposed by source
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12332: Introduction, Page XVII (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The URLs do not work for the "three key industry standards"
Proposed Solution:
Change the final / to a period in each URL.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12333: value "name" attribute of ModelElement (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: There is no requirement that the value "name" attribute of ModelElement correspond to the identifier (i.e., the string) of the model element.
Proposed Solution:
Add requirement that the "name" actually corresponds to the identifier of the model element.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12334: Location: 5.4 (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The list of datatypes are incomplete.
Proposed Solution:
Include all the datatypes of ISO/IEC 11404.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12335: 5.4 datatype attributes don't incorporate the features of 11404 datatype (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The datatype attributes don't incorporate the features of 11404 datatype (properties, characterizing operations, value spaces). There is no way to record this kind of standard datatyping information in CWM in a standard way.
Proposed Solution:
Add these features to the metamodel. Describe, in a standard way, how datatype characterizing operations would be recorded.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12336: Add syntax type to the metamodel. (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The expressions metamodel should have the kind of syntax associated the expression (e.g., is the expression C, APL, ksh, or something else, which all have significantly different parsing and syntax.
Proposed Solution:
Add the syntax type to the metamodel.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12337: Add datatype generators (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The 11404 datatype generator features should be included via the expressions metamodel capability.
Proposed Solution:
Add datatype generators
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12338: Add features for 11404 aggregates (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The record and multidimensional arrays are aggregate datatypes and the common features of 11404 aggregates should be supported.
Proposed Solution:
Add features for 11404 aggregates.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12339: Add support for flat and nested N-dimensional arrays (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The multidimensional arrays should support the notion of APL arrays, including rank and shape attributes.
Proposed Solution:
Add support for flat and nested N-dimensional arrays (not just arrays nested as arrays).
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12340: Support the full set of 11404 aggregates. (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The full set of 11404 aggregates (record, array, set, bag, sequence, etc.) should be supported.
Proposed Solution:
Support the full set of 11404 aggregates.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue
Issue 12341: The XML features should support current XML data structures (cwm-rtf)
Click here for this issue's archive.
Source: Fujitsu (Mr. Tom Rutt, tom(at)coastin.com)
Nature: Uncategorized Issue
Severity:
Summary: The XML features should support current XML data structures.
Proposed Solution:
Add current technology.
Resolution:
Revised Text:
Actions taken:
March 19, 2008: received issue