-
Key: HUTN-4
-
Legacy Issue Number: 9365
-
Status: open
-
Source: University College London ( James Skene)
-
Summary:
The following serious issues exist in the BNF for the HUTN specification 1. Package Instances cannot be nested. Package instances disambiguate the type names used within them. However they cannot be nested (rule 4) and only use atomic names, so this disambiguation is limited to a single level of package nesting in this metamodel. This should be resolved by making rule 1 a choice option in rule 4. This would render rule 2 ambiguous in the case of nested packages with the same name and the use of the ';' syntax. The ';' syntax should hence be removed. 2. Class names in nested instances are atomic Nested class instances may be of a type from outside the package instance enclosing the enclosing class instance. Class names for the nested instances can therefore not be disambiguated. It should be possible to refer to the Class of nested instances using an absolute or relative type path. 3. Nested objects adjectives and contained attributes may be confused. The grammar becomes ambiguous when a contained object (rule 12), or a nested object for default containment reference (rule 22, in which ReferenceName is optional) has adjectives with the same name as attributes of the enclosing class (rule 20). ReferenceName should be made mandatory in rule 22, and the contained object rule (rule 12) should be removed (see also next issue). 4. Contained object rule inappropriate. The contained object rule (rule 12) allows an associated object to be nested in an instance that does not have a reference to it. Is nesting really appropriate in this case? Rule 12 should be removed. 5. Inconsistent restrictions on nested class instances. Non-contained references must be referenced by a ClassInstanceRef (rules 23 and 13). However the same restriction does not apply to object-typed attribute where nesting or a reference may be used, via rule 26. Given that attributes do not connote a composition relationship, this seems inconsistent. This could be resolved by either insisting that attribute values must be ClassInstanceRefs, or by removing the distinction between rules 22 and 23 with respect to contained and noncontained references.
-
Reported: HUTN 1.0 — Thu, 16 Feb 2006 05:00 GMT
-
Updated: Fri, 6 Mar 2015 20:58 GMT