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 4407: Inconsistencies caused by changing Expression etc from Data Types to Classe
Issue 4430: Add a representation for sequence to CWM relational package
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 4470: Make it easier to interchange UML Models
Issue 4472: Practical changes to Contact metamodel
Issue 4473: Inadequate support for Organizational Structures
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 4515: Make ChangeRequest useful
Issue 4516: Rationalize 'Measurement'
Issue 4519: Warehouse processes missing physical information
Issue 4583: Modeling and packaging guidelines
Issue 4744: We only need one COBOL Data Division metamodel.
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.
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.)
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.
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.
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.
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).
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.
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.
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.
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.
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
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.
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.
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.
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).
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.
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.
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.
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.
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.
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.
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.
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).
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).
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.
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.
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.
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.
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.
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
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).
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.
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.
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".
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.
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
The references to MOF and XMI should be the ISO documents, as in the Foreword Proposed Solution: None proposed by source
The references to MOF and XMI should be the ISO documents, as in the Foreword Proposed Solution: None proposed by source
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
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
Nature of Problem: DTD is Document Type Definition Proposed Solution: None proposed by source
Nature of Problem: ODBC is Open Database Connectivity Proposed Solution: None proposed by source
Nature of Problem: SQL should not be considered as an abbreviation for Structured Query Language Proposed Solution: None proposed by source
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
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
Nature of Problem: The inclusion of 'indexing' as part of Relational implies that it is part of SQL, but this is not true.
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
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
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
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
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
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
Nature of Problem: see comment on 10.2.6 Proposed Solution: None proposed by source
Nature of Problem: see comment on 10.2.6 Proposed Solution: None proposed by source
There should be a constraint that an SQL parameter can only be of type SQLDataType Proposed Solution: None proposed by source
An essential feature of SQL structured types is that they have methods, whose properties should be recorded Proposed Solution: None proposed by source
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
Nature of Problem: see comment on 10.3.20 Proposed Solution: None proposed by source
"...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.
"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
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
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
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
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
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
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
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
This annex is not appropriate for an ISO standard, and cannot be normative. Proposed Solution: None proposed by source
The URLs do not work for the "three key industry standards" Proposed Solution: Change the final / to a period in each URL.
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.
The list of datatypes are incomplete. Proposed Solution: Include all the datatypes of ISO/IEC 11404.
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.
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.
The 11404 datatype generator features should be included via the expressions metamodel capability. Proposed Solution: Add datatype generators
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.
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).
The full set of 11404 aggregates (record, array, set, bag, sequence, etc.) should be supported. Proposed Solution: Support the full set of 11404 aggregates.
The XML features should support current XML data structures. Proposed Solution: Add current technology.