Closed mandy-chessell closed 5 years ago
We also discussed why SchemaType had an attribute called displayName and SchemaAttribute had an attribute called name. We agreed to go with displayName and move the definition of it (and description) to their joint superclass of SchemaElement.
The name property in SchemaAttribute has been left and marked deprecated in the description as above.
It looks like this:
The SchemaTypeImplementation relationship used to connect a SchemaType to a Referenceable. This is inconsistent with other uses and so it has been changed to link SchemaType to Process.
Hi Mandy just wondering would we keep the Deprecated
in the description after the proper versioning of OM types?
The verisoning has always been there - just no support for deprecation. There is a separate issue to add the deprecation support. The deprecation will add a field to various parts of the type definition. However, I think updating the description is also helpful.
In the meeting last week we discussed some changes to the schema definitions. This issue tracks the implementation of the decisions:
Remove duplicate attribute definitions
The DerivedSchemaAttribute entity replicated some of the attributes already defined in its superclass SchemaAttribute. These duplicate attributes have been removed because they are unnecessary. However it was pleasing to note that the duplicate definitions caused no problems as it means we can redefine an attribute at a higher level in the inheritance hierarchy without breaking backward compatibility.
Use existing properties
There was also duplication in the properties of these entities with other elements of the model and we agreed that id, comment and aggregatingFunction should be deprecated to use qualifiedName, Comment and formula respectively. Since we do not have the deprecating function in the OMRS type system yet, I have left the properties defined and changed their descriptions to include "deprecated" like this
Simplify TypeEmbeddedAttribute classification
We agreed that the TypeEmbeddedAttribute classification is only a stub for special nesting cases and it does not need the attributes for a fully fledged SchemaType so it is reduced to two attributes: encodingStandard and dataType.
Resulting UML
The UML models look like this now - note it does not show the deprecated fields: