Skip to content

Definitions

Knut Jetlund edited this page Jun 8, 2016 · 12 revisions

Home Modelling


Good definitions of model elements are important for human understanding of the models. In UML, definitions are written in the Notes field, and possibly also in tagged values. ISO19103 - Conceptual Schema Language and ISO19109 - Rules for Application Schemas have several rules and recomendations for definitions of packages, classes, attributes and roles. Basically, they all tell you that you should

write definitions for all model elements

Writing definitions

The INSPIRE Repository tutorial have a good convention for how definitions can be structured (see page 8 in the document):

Rules and recomendations

ISO 19103

General

Requirement 3: All normative class models shall contain definitions sufficient for understanding of all classes, attributes, associations, operations and appropriate data type definitions.

Enumerations and codelists

Requirement 7: As the values of enumerated types are concepts, each value shall have a definition for the value.

Naming and namespaces

Recommendation 12: UML elements should use documentation fields to further explain the meanings (semantics) of named elements.

Documentation of models

Requirement 19: Each classifier shall have a definition describing its intended meaning or semantics. Requirement 20: Each package, classifier, operation, attribute, association role, association and constraint shall have a textual description in the text near its context diagram.

ISO 19109

Documentation of an application schema

/req/uml/documentation: An application schema shall be documented. The textual definition of each CLASS, ATTRIBUTE, ASSOCIATION ROLE, OPERATION and CONSTRAINT should be recorded using the primary documentation facility provided by the tool if this information can be exported.

Secondary descriptions and informative notes for each PACKAGE, CLASS, ATTRIBUTE, ASSOCIATION ROLE, OPERATION and CONSTRAINT may be recorded using a TAGGED VALUE with the name “description”.

If a CLASS or other UML component is an implementation of a model element defined in a feature catalogue, the reference to the catalogue shall be documented in a TAGGED VALUE with the name “catalogue-entry”.