CASCaRA Metamodel and Semantic Infrastructure

CASCaRA Metamodel and Semantic Infrastructure

CASCaRA Metamodel

Properties

Element Type Package

Statements

CASCaRA Metamodel contains ☆  aLink
☆  anElement
☆  anEntity
☆  aProperty
☆  aRelationship
☆  aSourceLink
☆  aTargetLink
☆  Element
☆  Entity
☆  Identifiable
☆  Item
☆  Link
☆  Property
☆  Relationship
▣  CASCaRA Metamodel Diagram

▣  CASCaRA Metamodel Diagram

The following major design goals are pursued:

  • Separate syntax and semantics: The metamodel governs the graph pattern independently of the ontology. Any software depends on the metamodel and doesn’t need updating, when the ontology evolves over time.
  • Simplify transformation: A graph pattern is designed which may be represented in RDF, JSON-LD, GQL and OOP alike. Bidirectional transformations between any of those formats shall be possible without data-loss. Admittedly this ‘sweet-spot’ has reduced expressivity when compared with any of the listed data formats, but the choice of implementation technologies is maximized. Verification and validation will show that the resulting expressivity of the graph is sufficient for the purpose.

The metamodel is a 'platform independent model' in OMG terms and defines both the classes (above the dashed line) and their instances (below the dashed line) for the CASCaRA Product Information Graph. Both the classes and the instances are data:

  • Entity and anEntity are used for model elements, such as a requirement, a function or a system component.
  • Relationship and aRelationship are used for relations between elements, such as a 'system component satisfies a requirement'. A relationship class may define the classes of entities or relationships, whose instances are eligible as source or target in a directed relationship.
  • Every Entity and Relationship can define an individual set of Property, each of which specifies a data type and range. For example, a requirement might have three properties, such as a „Title“ with data type „String of max. length 96“, a „Description“ with data type „String“ without restriction and a „Priority“ with data type „String with a single choice of ['high', 'medium', 'low']“.
  • A datatype may be any of those known from XML. As described above, some parameters may restrict the value range, such as minimum and/or maximum value of a number, a string length or a set of enumerated values.
  • anEntity or aRelationship is an instance of Entity or Relationship respectively. Each instance usually has a set of aProperty corresponding with the Property of its class.

Note:

  • "Technical" super-class and sub-class refer to the UML elements used in this metamodel by means of UML:Generalization.
  • "Semantic" super-class and sub-class refer to associations between the real world instances of the metamodel items as specified by the UML associations named 'specializes'.
  • As usual, the classes with white background and italic name are abstract.

CASCaRA Metamodel Diagram.png

Properties

Element Type Diagram
Notation UML Class Diagram

Statements

CASCaRA Metamodel
contains ▣  CASCaRA Metamodel Diagram
▣  CASCaRA Metamodel Diagram shows ○  creator
○  datatype
○  defaultValue
○  description
○  enumeratedValue
○  icon
○  id
○  itemType
○  maxCount
○  maxInclusive
○  maxLength
○  minCount
○  minInclusive
○  modified
○  pattern
○  priorRevision
○  revision
○  title
○  unit
○  value
☆  aLink
☆  anElement
☆  anEntity
☆  aProperty
☆  aRelationship
☆  aSourceLink
☆  aTargetLink
☆  Element
☆  Entity
☆  Identifiable
☆  Item
☆  Link
☆  Property
☆  Relationship

☆  Item

The technical super-class of all CASCaRA metamodel items specifying the type of item to allow for simple schema checking and transformation.

Details:

  • The class is abstract.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Item
☆  Item has part ○  itemType
▣  CASCaRA Metamodel Diagram
shows ☆  Item
☆  aLink
☆  aProperty
☆  Identifiable
specializes ☆  Item

○  itemType

Here it is modeled as a string, but in fact it is an enumeration containing all concrete metamodel items (represented as UML classes), thus [Link, Property, Entity, Relationship, aPackage, aSourceLink, aTargetLink, aProperty, anEntity, aRelationship].

Properties

Element Type uml:Property

Statements

☆  Item
has part ○  itemType
▣  CASCaRA Metamodel Diagram
shows ○  itemType

☆  Identifiable

All technical sub-classes of this class are identifiable, means they have an identifier, a title (name) and optionally a description.

Details:

  • The class is abstract.
  • All attributes are inherited by its subclasses.
  • All class level items in the upper part of the diagram are commonly released and made available with an URL path including the revision. Hence, multiple revisions of the class set may exist in parallel.
  • All instance level items in the lower part of the diagram may have individual revisions with their respective revision, modification date and creator. The prior revision identifier is memorized to support change history and branching. In case of a merge, there are two prior revisions.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Identifiable
☆  Identifiable has part ○  description
○  id
○  title
▣  CASCaRA Metamodel Diagram
shows ☆  Identifiable
☆  anElement
☆  Element
☆  Link
☆  Property
specializes ☆  Identifiable
☆  Identifiable specializes ☆  Item

○  id

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  id
▣  CASCaRA Metamodel Diagram
shows ○  id

○  title

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  title
▣  CASCaRA Metamodel Diagram
shows ○  title

○  description

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  description
▣  CASCaRA Metamodel Diagram
shows ○  description

☆  Element

A technical super-class of Entity (class of entities) and Relationship (class of relationships).

Details:

  • The class is abstract.
  • All attributes and associations are inherited by its technical sub-classes Entity and Relationship.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Element
☆  Link
enumeratedEndpoint ☆  Element
☆  Element enumeratedProperty ☆  Property
☆  Element has part ○  icon
▣  CASCaRA Metamodel Diagram
shows ☆  Element
☆  Entity
☆  Relationship
specializes ☆  Element
☆  Element specializes ☆  Identifiable

○  icon

An icon defined with a class can be used to decorate the instances.

Example:

  • Folders as sub-class of Organizer and thus Entity may specify a UTF-8 character 🗀 for use by folders grouping certain model-elements.
  • A data-URL of an icon is also permitted.

Properties

Element Type uml:Property

Statements

☆  Element
has part ○  icon
▣  CASCaRA Metamodel Diagram
shows ○  icon

☆  Property

Every class Entity and Relationship can have an individual set of configurable properties, each of which is uniquely defined by datatype and range. A Property is an owl:ObjectProperty when enumeratedValues are defined and is an owl:DatatypeProperty otherwise.

Example: A requirement might have a list with three properties, such as

  • Title with data type „String of max. length 96“,
  • Description with data type „String“ wíthout length restriction and
  • Priority with data type „String with a single choice of ['high', 'medium', 'low']“.

Details:

  • Property class must have a title and may have a description named.
  • Property class may define a minimum and maximum count of values.
  • Property class must define a datatype and may restrict its range by minInclusive, maxInclusive or or a pattern defined by Regular Expression.
  • Property class may define a set of enumerated values which must of course satisfy its own data type and range
  • A property class may define a default value which must of course satisfy its own data type and range.
  • Property class may be composed of multiple property classes to form a structured data type (xs:complexType). The structure must be a tree, thus without cyclic dependency.

Properties

Element Type Class

Statements

☆  Property composes ☆  Property
CASCaRA Metamodel
contains ☆  Property
☆  Element
enumeratedProperty ☆  Property
☆  Property has part ○  datatype
○  defaultValue
○  enumeratedValue
○  maxCount
○  maxInclusive
○  maxLength
○  minCount
○  minInclusive
○  pattern
○  unit
☆  aProperty
hasClass ☆  Property
▣  CASCaRA Metamodel Diagram
shows ☆  Property
☆  Property specializes ☆  Identifiable
☆  Property

○  datatype

One of the xs: data types. Shall be anyURI.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  datatype
▣  CASCaRA Metamodel Diagram
shows ○  datatype

○  minCount

The minimal count an instance may have properties of this class. Is '0' by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  minCount
▣  CASCaRA Metamodel Diagram
shows ○  minCount

○  maxCount

The maximal count an instance may have properties of this class. Is unbounded (infinite) by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxCount
▣  CASCaRA Metamodel Diagram
shows ○  maxCount

○  maxLength

Maximum length of a property value with datatype 'xs:string'. Is not allowed with any other datatype.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxLength
▣  CASCaRA Metamodel Diagram
shows ○  maxLength

○  pattern

A Regular Expression that must evaluate successfully with the property value. Can also be used to limit the number of decimals of a number, as there is no restriction like xs:fractionDigits in SHACL.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  pattern
▣  CASCaRA Metamodel Diagram
shows ○  pattern

○  minInclusive

The minimum value a property of this type may have. May be applied only for numeric datatypes. It the intrinsic minimum value of the datatype by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  minInclusive
▣  CASCaRA Metamodel Diagram
shows ○  minInclusive

○  maxInclusive

The maximum value a property of this type may have. May be applied only for numeric datatypes. It the intrinsic maximum value of the datatype by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxInclusive
▣  CASCaRA Metamodel Diagram
shows ○  maxInclusive

○  enumeratedValue

A property may be assigned zero to many values enumerated by its class. Enumerated values can be defined for all datatypes. By default all values in the range of the datatype can be assigned.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  enumeratedValue
▣  CASCaRA Metamodel Diagram
shows ○  enumeratedValue

○  defaultValue

Optional default value(s) in case a modelElement's property does not have an individual value. It must follow the definitions of the PropertyClass, of course.

Here, the attribute is named 'sh:defaultValue' for clarity and may just be called 'values' in an implementation, as all restrictions and operations of a property's values apply.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  defaultValue
▣  CASCaRA Metamodel Diagram
shows ○  defaultValue

○  unit

A unit as defined by the International System of Units (SI). A unit can only be defined for a numeric datatype. By default the property has no unit.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  unit
▣  CASCaRA Metamodel Diagram
shows ○  unit

☆  Link

A Link is an identifiable link class. A Link is an owl:ObjectProperty.

Example:

  • An Organizer (semantic sub-class of Entity) may list Model-Elements (another semantic sub-class of Entity) to provide a document outline.
  • As such the Link class lists is specified as enumeratedTargetLink by Organizer.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Link
☆  Link enumeratedEndpoint ☆  Element
☆  Relationship
enumeratedSourceLink ☆  Link
☆  Entity
☆  Relationship
enumeratedTargetLink ☆  Link
☆  aLink
hasClass ☆  Link
▣  CASCaRA Metamodel Diagram
shows ☆  Link
☆  Link specializes ☆  Identifiable

☆  Entity

Entity is a class of model elements, such as a system component or a requirement. An Entity is an owl:Class.

Details:

  • Entity should have a title (name) and may have a description (definition).
  • Entity may specify (configure) zero to many classes of properties its instances may have.
  • The definitions of the entity together with those of the properties may be used to build user dialogs with input verification as well as to check its instances whether all property values have a correct type and value range as well as whether all required ones are present.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Entity
☆  Entity enumeratedTargetLink ☆  Link
☆  anEntity
hasClass ☆  Entity
▣  CASCaRA Metamodel Diagram
shows ☆  Entity
☆  Entity specializes ☆  Element
☆  Entity

☆  Relationship

Relationship is a class of relationships between two entities to allow assertions such as 'a system component satisfies a requirement'. All relationships are bilateral and directed. This allows for statements according to propositional logic. They can be easily mapped to many technologies such as RDF or even ReqIF. Being reified, a Relationship is an owl:Class.

Details:

  • Relationship must have a title (name) and may have a description (definition).
  • Relationship lists zero to many property classes its instances may have.
  • Relationship may define (configure) entitiy classes or relationship classes, whose instances are eligible as source resp. target in a relationship. If none are defined, all entities and relationships are eligible.
  • Relationship is reified (as a rdfs:Resource in RDF), so that it can be a source or target of another Relationship - to make a statement on a statement.
  • The definitions of a relationship together with those of their properties may be used to build user dialogs with input verfication and to check its instances whether all properties have a correct type and value range as well as whether all required ones are present.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Relationship
☆  Relationship enumeratedSourceLink ☆  Link
☆  Relationship enumeratedTargetLink ☆  Link
☆  aRelationship
hasClass ☆  Relationship
▣  CASCaRA Metamodel Diagram
shows ☆  Relationship
☆  Relationship specializes ☆  Element
☆  Relationship

☆  anElement

A technical superclass of anEntity and aRelationship.

Details:

  • The class is abstract.
  • All attributes and associations are inherited by its sub-classes.
  • Sub-classes may have individual revisions with revision id, modification date and creator. The prior revision id is memorized to support change history and branching. In case of a merge, there are two prior revisions.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  anElement
☆  anElement has part ○  creator
○  modified
○  priorRevision
○  revision
☆  aLink
hasEndpoint ☆  anElement
☆  anElement hasProperty ☆  aProperty
▣  CASCaRA Metamodel Diagram
shows ☆  anElement
☆  anEntity
☆  aRelationship
specializes ☆  anElement
☆  anElement specializes ☆  Identifiable

○  modified

A ISO-8601 DateTime value recording the point in time of the last change.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  modified
▣  CASCaRA Metamodel Diagram
shows ○  modified

○  revision

A unique string identifying the revision of the entity or relationship instance.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  revision
▣  CASCaRA Metamodel Diagram
shows ○  revision

○  priorRevision

Links to the previous revisions of an entity or relationship instance. It is a list with

  • zero elements, if it is the first revision,
  • one element for a subsequent revision or
  • two elements when two branches are merged.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  priorRevision
▣  CASCaRA Metamodel Diagram
shows ○  priorRevision

○  creator

The person committing the last change. Is often an e-mail address.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  creator
▣  CASCaRA Metamodel Diagram
shows ○  creator

☆  aProperty

Each property belongs to a single Entity or Relationship. A property has no identifier, thus a property update results in a new revision of the element to which it belongs. Is 'payload' having a clear meaning through the respective Property class.

Details:

  • A property may be required or not depending on the attributes sh:minCount and sh:maxCount of its class, but an existing property must have a value.
  • A property may be composed of multiple properties to form a structured data set according to its Property class.

Properties

Element Type Class

Statements

☆  aProperty composes ☆  aProperty
CASCaRA Metamodel
contains ☆  aProperty
☆  aProperty has part ○  value
☆  aProperty hasClass ☆  Property
☆  anElement
hasProperty ☆  aProperty
▣  CASCaRA Metamodel Diagram
shows ☆  aProperty
☆  aProperty specializes ☆  Item

○  value

The value of a property.

Details:

  • If the datatype of the property's class is string, the value is a language string consisting of value and IETF language tag.
  • Otherwise the value is a simple value.

Properties

Element Type uml:Property

Statements

☆  aProperty
has part ○  value
▣  CASCaRA Metamodel Diagram
shows ○  value

☆  aLink

Is a technical super-class for link instances.

Details:

  • The class is abstract.
  • A list of enumerated endpoints (references) per link instance is possible.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aLink
☆  aLink hasClass ☆  Link
☆  aLink hasEndpoint ☆  anElement
▣  CASCaRA Metamodel Diagram
shows ☆  aLink
☆  aSourceLink
☆  aTargetLink
specializes ☆  aLink
☆  aLink specializes ☆  Item

☆  aSourceLink

A link instance serving as source for a reified relationship.

From a semantic point of view, there is no need to make a distinction between aSourceLink and aTargetLink at the metamodel level. The distinction can be done and is made at ontology level in the CASCaRA Semantic Infrastructure. However it is much easier to check the pattern/schema/shape, if the metamodel item type is explicit.

Example:

  • A single 'satisfies' relationship can relate one or many function instances to a requirement instance.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aSourceLink
☆  aRelationship
hasSourceLink ☆  aSourceLink
▣  CASCaRA Metamodel Diagram
shows ☆  aSourceLink
☆  aSourceLink specializes ☆  aLink

☆  aTargetLink

A link instance serving as target for a reified relationship.

From a semantic point of view, there is no need to make a distinction between aSourceLink and aTargetLink at the metamodel level. The distinction can be done and is made at ontology level in the CASCaRA Semantic Infrastructure. However it is much easier to check the pattern/schema/shape, if the metamodel item type is explicit.

Example:

  • A single 'satisfies' relationship can relate a function instance to one or multiple requirement instances (targets).

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aTargetLink
☆  anEntity
☆  aRelationship
hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  aTargetLink
☆  aTargetLink specializes ☆  aLink

☆  anEntity

Is used for instances of model-elements such as a system component or a requirement. Is 'payload' having a clear meaning through the respective Entity class.

Details:

  • An entity must have either a title or a description - or both. This allows to compose documents including text paragraphs without title.
  • The entity's class enumerates the classes of properties it may have.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  anEntity
☆  anEntity hasClass ☆  Entity
☆  anEntity hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  anEntity
☆  anEntity specializes ☆  anElement

☆  aRelationship

Is used for relations between entities, such as a 'system component satisfies a requirement'. All relationships are bilateral and directed. Is 'payload' having a clear meaning through the respective Relationship class.

Details:

  • This is a reified graph edge and must have exactly one source and target entity each. The source must be an entity or relationship with a class defined by an eligible source class of its Relationship. The same applies for the target.
  • Even though a relationship instance may have an individual title, it is advised to omit it and assume its class' title when needed to assure that relationships of the same class are named equally.
  • The relationship's class enumerates the classes of properties it may have.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aRelationship
☆  aRelationship hasClass ☆  Relationship
☆  aRelationship hasSourceLink ☆  aSourceLink
☆  aRelationship hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  aRelationship
☆  aRelationship specializes ☆  anElement

CASCaRA Semantic Infrastructure

Properties

Element Type Package

Statements

CASCaRA Semantic Infrastructure contains ☆  Actor
☆  depicts
☆  Entity
☆  Enumeration
☆  Event
☆  Link
☆  lists
☆  Model-Element
☆  Organizer
☆  Outline
☆  Property
☆  Relationship
☆  Root
☆  shows
☆  sourceLink
☆  State
☆  Table
☆  targetLink
☆  Tree
☆  View
▣  CASCaRA Semantic Infrastructure Diagram

▣  CASCaRA Semantic Infrastructure Diagram

The CASCaRA Semantic Infrastructure complements the CASCaRA Metamodel by further sub-classing its items. The idea is to keep the metamodel as simple as possible without sacrificing semantic precision.

Let's consider the paradigma of separating syntax and semantics with the objective to shield the software from an ontology under evolution over time. In all likelihood, the CASCaRA Semantic Infrastructure will be used by software for reasons of simplicity. Therefore it is advised to treat the semantic infrastructure similarly to the metamodel: Change it seldomly and keep it downward compatible. That is, software built assuming an older version shall not break when a new version is adopted). So the semantic infrastructure can be seen as an intermediary layer between metamodel and ontology which is managed like the metamodel.

In any case an ontology for use with the CASCaRA Metamodel SHALL sub-class the items of the CASCaRA Semantic Infrastructure.

CASCaRA Semantic Infrastructure Diagram.png

Properties

Element Type Diagram
Notation UML Class Diagram

Statements

CASCaRA Semantic Infrastructure
contains ▣  CASCaRA Semantic Infrastructure Diagram
▣  CASCaRA Semantic Infrastructure Diagram shows ☆  Actor
☆  depicts
☆  Entity
☆  Enumeration
☆  Event
☆  Link
☆  lists
☆  Model-Element
☆  Organizer
☆  Outline
☆  Property
☆  Relationship
☆  Root
☆  shows
☆  sourceLink
☆  State
☆  Table
☆  targetLink
☆  Tree
☆  View

☆  Property

The semantic foundation for all Property (class) definitions. Is an owl:DatatypeProperty when the value is a literal or an owl:ObjectProperty when the value is a reference to an enumerated value.

Properties

Element Type cas_meta:Property

Statements

CASCaRA Semantic Infrastructure
contains ☆  Property
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Property

☆  Link

The semantic foundation for all Link (class) definitions. Is an owl:ObjectProperty.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  Link
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Link
☆  depicts
☆  lists
☆  shows
☆  sourceLink
☆  targetLink
specializes ☆  Link

☆  lists

A Link class for use by Outline to enumerate eligible Entity and/or Relationship classes.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  lists
☆  lists enumeratedEndpoint ☆  Entity
☆  Relationship
☆  Outline
enumeratedTargetLink ☆  lists
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  lists
☆  lists specializes ☆  Link

☆  shows

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that are visible on a view (e.g. model-diagram).

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  shows
☆  shows enumeratedEndpoint ☆  Model-Element
☆  View
enumeratedTargetLink ☆  shows
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  shows
☆  shows specializes ☆  Link

☆  depicts

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can own a view (e.g. model-diagram).

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  depicts
☆  depicts enumeratedEndpoint ☆  Model-Element
☆  View
enumeratedTargetLink ☆  depicts
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  depicts
☆  depicts specializes ☆  Link

☆  sourceLink

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can serve as a source of a Relationship.

By further specializing this class, a speaking title can be given to a sourceLink, such as 'employee' in a 'worksFor' relationship being a specialization of Relationship.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  sourceLink
☆  Relationship
enumeratedSourceLink ☆  sourceLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  sourceLink
☆  sourceLink specializes ☆  Link

☆  targetLink

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can serve as a target of a Relationship.

By further specializing this class, a speaking title can be given to a targetLink, such as 'employer' in a 'worksFor' relationship being a specialization of Relationship.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  targetLink
☆  Relationship
enumeratedTargetLink ☆  targetLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  targetLink
☆  targetLink specializes ☆  Link

☆  Entity

The semantic foundation for all Entity (class) definitions. Is an owl:Class.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Entity
☆  lists
enumeratedEndpoint ☆  Entity
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Entity
☆  Enumeration
☆  Model-Element
☆  Organizer
specializes ☆  Entity

☆  Organizer

An Organizer is about presenting genuine Model-Elements with a target group of users in mind, for example a document outline, a table or a diagram.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Organizer
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Organizer
☆  Root
☆  Table
☆  Tree
☆  View
specializes ☆  Organizer
☆  Organizer specializes ☆  Entity

☆  Table

A specialized Organizer with elements (cells) arranged two-dimensionally in columns and rows. Any element SHALL contain a reference to any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Table
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Table
☆  Table specializes ☆  Organizer

☆  Tree

A specialized Organizer with elements (nodes) arranged in a strictly hierarchical manner. Any element SHALL contain a reference to any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Tree
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Tree
☆  Outline
specializes ☆  Tree
☆  Tree specializes ☆  Organizer

☆  Outline

A tree (hierarchical arrangement) of references to graph nodes (vertices) to create a reading sequence. Graph nodes include Entity and Relationship. Outline is used at any level of the tree like a directory folder or universally for section, chapter and paragraph of a document.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Outline
☆  Outline enumeratedTargetLink ☆  lists
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Outline
☆  Outline specializes ☆  Tree

☆  View

A specialized Organizer with elements displayed in two or three dimensions such as a model-diagram, 3D visualization or pie-chart. Any element SHOULD reference any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  View
☆  View enumeratedTargetLink ☆  depicts
☆  shows
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  View
☆  View specializes ☆  Organizer

☆  Root

A root class serves to anchor organizer structures in a data package. While a graph has no start and no end, a root instance with a subordinated organizer structure offers a way to explore the graph for a given purpose.

Example:

  • A document outline anchored at a root element would define a document to read by auditors and perhaps another one for potential customers.
  • When querying all instances of class Root, a list of available documents is returned.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Root
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Root
☆  Root specializes ☆  Organizer

☆  Model-Element

A Model-Element is an artifact representing a genuine part of a system specification in contrast to an Organizer which is about presenting model-elements.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Model-Element
☆  depicts
☆  shows
enumeratedEndpoint ☆  Model-Element
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Model-Element
☆  Actor
☆  Event
☆  State
specializes ☆  Model-Element
☆  Model-Element specializes ☆  Entity

☆  Actor

A fundamental model-element class for actors (e.g. users, functions, systems, components, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Actor
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Actor
☆  Actor specializes ☆  Model-Element

☆  State

A fundamental model-element class for states (e.g. system or process states, information, form, color, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  State
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  State
☆  State specializes ☆  Model-Element

☆  Event

A fundamental model-element class for events (e.g. environmental or process events, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Event
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Event
☆  Event specializes ☆  Model-Element

☆  Enumeration

A finite list of values for Properties.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Enumeration
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Enumeration
☆  Enumeration specializes ☆  Entity

☆  Relationship

The semantic foundation for all Relationship (class) definitions. Is an owl:Class.

Properties

Element Type cas_meta:Relationship

Statements

CASCaRA Semantic Infrastructure
contains ☆  Relationship
☆  lists
enumeratedEndpoint ☆  Relationship
☆  Relationship enumeratedSourceLink ☆  sourceLink
☆  Relationship enumeratedTargetLink ☆  targetLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Relationship

Model Elements (Glossary)

Properties

Element Type Model Elements (Glossary)

☆  Actor

A fundamental model-element class for actors (e.g. users, functions, systems, components, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Actor
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Actor
☆  Actor specializes ☆  Model-Element

☆  aLink

Is a technical super-class for link instances.

Details:

  • The class is abstract.
  • A list of enumerated endpoints (references) per link instance is possible.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aLink
☆  aLink hasClass ☆  Link
☆  aLink hasEndpoint ☆  anElement
▣  CASCaRA Metamodel Diagram
shows ☆  aLink
☆  aSourceLink
☆  aTargetLink
specializes ☆  aLink
☆  aLink specializes ☆  Item

☆  anElement

A technical superclass of anEntity and aRelationship.

Details:

  • The class is abstract.
  • All attributes and associations are inherited by its sub-classes.
  • Sub-classes may have individual revisions with revision id, modification date and creator. The prior revision id is memorized to support change history and branching. In case of a merge, there are two prior revisions.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  anElement
☆  anElement has part ○  creator
○  modified
○  priorRevision
○  revision
☆  aLink
hasEndpoint ☆  anElement
☆  anElement hasProperty ☆  aProperty
▣  CASCaRA Metamodel Diagram
shows ☆  anElement
☆  anEntity
☆  aRelationship
specializes ☆  anElement
☆  anElement specializes ☆  Identifiable

☆  anEntity

Is used for instances of model-elements such as a system component or a requirement. Is 'payload' having a clear meaning through the respective Entity class.

Details:

  • An entity must have either a title or a description - or both. This allows to compose documents including text paragraphs without title.
  • The entity's class enumerates the classes of properties it may have.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  anEntity
☆  anEntity hasClass ☆  Entity
☆  anEntity hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  anEntity
☆  anEntity specializes ☆  anElement

☆  aProperty

Each property belongs to a single Entity or Relationship. A property has no identifier, thus a property update results in a new revision of the element to which it belongs. Is 'payload' having a clear meaning through the respective Property class.

Details:

  • A property may be required or not depending on the attributes sh:minCount and sh:maxCount of its class, but an existing property must have a value.
  • A property may be composed of multiple properties to form a structured data set according to its Property class.

Properties

Element Type Class

Statements

☆  aProperty composes ☆  aProperty
CASCaRA Metamodel
contains ☆  aProperty
☆  aProperty has part ○  value
☆  aProperty hasClass ☆  Property
☆  anElement
hasProperty ☆  aProperty
▣  CASCaRA Metamodel Diagram
shows ☆  aProperty
☆  aProperty specializes ☆  Item

☆  aRelationship

Is used for relations between entities, such as a 'system component satisfies a requirement'. All relationships are bilateral and directed. Is 'payload' having a clear meaning through the respective Relationship class.

Details:

  • This is a reified graph edge and must have exactly one source and target entity each. The source must be an entity or relationship with a class defined by an eligible source class of its Relationship. The same applies for the target.
  • Even though a relationship instance may have an individual title, it is advised to omit it and assume its class' title when needed to assure that relationships of the same class are named equally.
  • The relationship's class enumerates the classes of properties it may have.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aRelationship
☆  aRelationship hasClass ☆  Relationship
☆  aRelationship hasSourceLink ☆  aSourceLink
☆  aRelationship hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  aRelationship
☆  aRelationship specializes ☆  anElement

☆  aSourceLink

A link instance serving as source for a reified relationship.

From a semantic point of view, there is no need to make a distinction between aSourceLink and aTargetLink at the metamodel level. The distinction can be done and is made at ontology level in the CASCaRA Semantic Infrastructure. However it is much easier to check the pattern/schema/shape, if the metamodel item type is explicit.

Example:

  • A single 'satisfies' relationship can relate one or many function instances to a requirement instance.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aSourceLink
☆  aRelationship
hasSourceLink ☆  aSourceLink
▣  CASCaRA Metamodel Diagram
shows ☆  aSourceLink
☆  aSourceLink specializes ☆  aLink

☆  aTargetLink

A link instance serving as target for a reified relationship.

From a semantic point of view, there is no need to make a distinction between aSourceLink and aTargetLink at the metamodel level. The distinction can be done and is made at ontology level in the CASCaRA Semantic Infrastructure. However it is much easier to check the pattern/schema/shape, if the metamodel item type is explicit.

Example:

  • A single 'satisfies' relationship can relate a function instance to one or multiple requirement instances (targets).

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  aTargetLink
☆  anEntity
☆  aRelationship
hasTargetLink ☆  aTargetLink
▣  CASCaRA Metamodel Diagram
shows ☆  aTargetLink
☆  aTargetLink specializes ☆  aLink

○  creator

The person committing the last change. Is often an e-mail address.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  creator
▣  CASCaRA Metamodel Diagram
shows ○  creator

○  datatype

One of the xs: data types. Shall be anyURI.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  datatype
▣  CASCaRA Metamodel Diagram
shows ○  datatype

○  defaultValue

Optional default value(s) in case a modelElement's property does not have an individual value. It must follow the definitions of the PropertyClass, of course.

Here, the attribute is named 'sh:defaultValue' for clarity and may just be called 'values' in an implementation, as all restrictions and operations of a property's values apply.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  defaultValue
▣  CASCaRA Metamodel Diagram
shows ○  defaultValue

☆  depicts

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can own a view (e.g. model-diagram).

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  depicts
☆  depicts enumeratedEndpoint ☆  Model-Element
☆  View
enumeratedTargetLink ☆  depicts
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  depicts
☆  depicts specializes ☆  Link

○  description

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  description
▣  CASCaRA Metamodel Diagram
shows ○  description

☆  Element

A technical super-class of Entity (class of entities) and Relationship (class of relationships).

Details:

  • The class is abstract.
  • All attributes and associations are inherited by its technical sub-classes Entity and Relationship.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Element
☆  Link
enumeratedEndpoint ☆  Element
☆  Element enumeratedProperty ☆  Property
☆  Element has part ○  icon
▣  CASCaRA Metamodel Diagram
shows ☆  Element
☆  Entity
☆  Relationship
specializes ☆  Element
☆  Element specializes ☆  Identifiable

☆  Entity

Entity is a class of model elements, such as a system component or a requirement. An Entity is an owl:Class.

Details:

  • Entity should have a title (name) and may have a description (definition).
  • Entity may specify (configure) zero to many classes of properties its instances may have.
  • The definitions of the entity together with those of the properties may be used to build user dialogs with input verification as well as to check its instances whether all property values have a correct type and value range as well as whether all required ones are present.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Entity
☆  Entity enumeratedTargetLink ☆  Link
☆  anEntity
hasClass ☆  Entity
▣  CASCaRA Metamodel Diagram
shows ☆  Entity
☆  Entity specializes ☆  Element
☆  Entity

☆  Entity

The semantic foundation for all Entity (class) definitions. Is an owl:Class.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Entity
☆  lists
enumeratedEndpoint ☆  Entity
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Entity
☆  Enumeration
☆  Model-Element
☆  Organizer
specializes ☆  Entity

○  enumeratedValue

A property may be assigned zero to many values enumerated by its class. Enumerated values can be defined for all datatypes. By default all values in the range of the datatype can be assigned.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  enumeratedValue
▣  CASCaRA Metamodel Diagram
shows ○  enumeratedValue

☆  Enumeration

A finite list of values for Properties.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Enumeration
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Enumeration
☆  Enumeration specializes ☆  Entity

☆  Event

A fundamental model-element class for events (e.g. environmental or process events, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Event
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Event
☆  Event specializes ☆  Model-Element

○  icon

An icon defined with a class can be used to decorate the instances.

Example:

  • Folders as sub-class of Organizer and thus Entity may specify a UTF-8 character 🗀 for use by folders grouping certain model-elements.
  • A data-URL of an icon is also permitted.

Properties

Element Type uml:Property

Statements

☆  Element
has part ○  icon
▣  CASCaRA Metamodel Diagram
shows ○  icon

○  id

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  id
▣  CASCaRA Metamodel Diagram
shows ○  id

☆  Identifiable

All technical sub-classes of this class are identifiable, means they have an identifier, a title (name) and optionally a description.

Details:

  • The class is abstract.
  • All attributes are inherited by its subclasses.
  • All class level items in the upper part of the diagram are commonly released and made available with an URL path including the revision. Hence, multiple revisions of the class set may exist in parallel.
  • All instance level items in the lower part of the diagram may have individual revisions with their respective revision, modification date and creator. The prior revision identifier is memorized to support change history and branching. In case of a merge, there are two prior revisions.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Identifiable
☆  Identifiable has part ○  description
○  id
○  title
▣  CASCaRA Metamodel Diagram
shows ☆  Identifiable
☆  anElement
☆  Element
☆  Link
☆  Property
specializes ☆  Identifiable
☆  Identifiable specializes ☆  Item

☆  Item

The technical super-class of all CASCaRA metamodel items specifying the type of item to allow for simple schema checking and transformation.

Details:

  • The class is abstract.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Item
☆  Item has part ○  itemType
▣  CASCaRA Metamodel Diagram
shows ☆  Item
☆  aLink
☆  aProperty
☆  Identifiable
specializes ☆  Item

○  itemType

Here it is modeled as a string, but in fact it is an enumeration containing all concrete metamodel items (represented as UML classes), thus [Link, Property, Entity, Relationship, aPackage, aSourceLink, aTargetLink, aProperty, anEntity, aRelationship].

Properties

Element Type uml:Property

Statements

☆  Item
has part ○  itemType
▣  CASCaRA Metamodel Diagram
shows ○  itemType

☆  Link

A Link is an identifiable link class. A Link is an owl:ObjectProperty.

Example:

  • An Organizer (semantic sub-class of Entity) may list Model-Elements (another semantic sub-class of Entity) to provide a document outline.
  • As such the Link class lists is specified as enumeratedTargetLink by Organizer.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Link
☆  Link enumeratedEndpoint ☆  Element
☆  Relationship
enumeratedSourceLink ☆  Link
☆  Entity
☆  Relationship
enumeratedTargetLink ☆  Link
☆  aLink
hasClass ☆  Link
▣  CASCaRA Metamodel Diagram
shows ☆  Link
☆  Link specializes ☆  Identifiable

☆  Link

The semantic foundation for all Link (class) definitions. Is an owl:ObjectProperty.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  Link
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Link
☆  depicts
☆  lists
☆  shows
☆  sourceLink
☆  targetLink
specializes ☆  Link

☆  lists

A Link class for use by Outline to enumerate eligible Entity and/or Relationship classes.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  lists
☆  lists enumeratedEndpoint ☆  Entity
☆  Relationship
☆  Outline
enumeratedTargetLink ☆  lists
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  lists
☆  lists specializes ☆  Link

○  maxCount

The maximal count an instance may have properties of this class. Is unbounded (infinite) by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxCount
▣  CASCaRA Metamodel Diagram
shows ○  maxCount

○  maxInclusive

The maximum value a property of this type may have. May be applied only for numeric datatypes. It the intrinsic maximum value of the datatype by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxInclusive
▣  CASCaRA Metamodel Diagram
shows ○  maxInclusive

○  maxLength

Maximum length of a property value with datatype 'xs:string'. Is not allowed with any other datatype.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  maxLength
▣  CASCaRA Metamodel Diagram
shows ○  maxLength

○  minCount

The minimal count an instance may have properties of this class. Is '0' by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  minCount
▣  CASCaRA Metamodel Diagram
shows ○  minCount

○  minInclusive

The minimum value a property of this type may have. May be applied only for numeric datatypes. It the intrinsic minimum value of the datatype by default.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  minInclusive
▣  CASCaRA Metamodel Diagram
shows ○  minInclusive

☆  Model-Element

A Model-Element is an artifact representing a genuine part of a system specification in contrast to an Organizer which is about presenting model-elements.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Model-Element
☆  depicts
☆  shows
enumeratedEndpoint ☆  Model-Element
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Model-Element
☆  Actor
☆  Event
☆  State
specializes ☆  Model-Element
☆  Model-Element specializes ☆  Entity

○  modified

A ISO-8601 DateTime value recording the point in time of the last change.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  modified
▣  CASCaRA Metamodel Diagram
shows ○  modified

☆  Organizer

An Organizer is about presenting genuine Model-Elements with a target group of users in mind, for example a document outline, a table or a diagram.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Organizer
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Organizer
☆  Root
☆  Table
☆  Tree
☆  View
specializes ☆  Organizer
☆  Organizer specializes ☆  Entity

☆  Outline

A tree (hierarchical arrangement) of references to graph nodes (vertices) to create a reading sequence. Graph nodes include Entity and Relationship. Outline is used at any level of the tree like a directory folder or universally for section, chapter and paragraph of a document.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Outline
☆  Outline enumeratedTargetLink ☆  lists
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Outline
☆  Outline specializes ☆  Tree

○  pattern

A Regular Expression that must evaluate successfully with the property value. Can also be used to limit the number of decimals of a number, as there is no restriction like xs:fractionDigits in SHACL.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  pattern
▣  CASCaRA Metamodel Diagram
shows ○  pattern

○  priorRevision

Links to the previous revisions of an entity or relationship instance. It is a list with

  • zero elements, if it is the first revision,
  • one element for a subsequent revision or
  • two elements when two branches are merged.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  priorRevision
▣  CASCaRA Metamodel Diagram
shows ○  priorRevision

☆  Property

Every class Entity and Relationship can have an individual set of configurable properties, each of which is uniquely defined by datatype and range. A Property is an owl:ObjectProperty when enumeratedValues are defined and is an owl:DatatypeProperty otherwise.

Example: A requirement might have a list with three properties, such as

  • Title with data type „String of max. length 96“,
  • Description with data type „String“ wíthout length restriction and
  • Priority with data type „String with a single choice of ['high', 'medium', 'low']“.

Details:

  • Property class must have a title and may have a description named.
  • Property class may define a minimum and maximum count of values.
  • Property class must define a datatype and may restrict its range by minInclusive, maxInclusive or or a pattern defined by Regular Expression.
  • Property class may define a set of enumerated values which must of course satisfy its own data type and range
  • A property class may define a default value which must of course satisfy its own data type and range.
  • Property class may be composed of multiple property classes to form a structured data type (xs:complexType). The structure must be a tree, thus without cyclic dependency.

Properties

Element Type Class

Statements

☆  Property composes ☆  Property
CASCaRA Metamodel
contains ☆  Property
☆  Element
enumeratedProperty ☆  Property
☆  Property has part ○  datatype
○  defaultValue
○  enumeratedValue
○  maxCount
○  maxInclusive
○  maxLength
○  minCount
○  minInclusive
○  pattern
○  unit
☆  aProperty
hasClass ☆  Property
▣  CASCaRA Metamodel Diagram
shows ☆  Property
☆  Property specializes ☆  Identifiable
☆  Property

☆  Property

The semantic foundation for all Property (class) definitions. Is an owl:DatatypeProperty when the value is a literal or an owl:ObjectProperty when the value is a reference to an enumerated value.

Properties

Element Type cas_meta:Property

Statements

CASCaRA Semantic Infrastructure
contains ☆  Property
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Property

☆  Relationship

Relationship is a class of relationships between two entities to allow assertions such as 'a system component satisfies a requirement'. All relationships are bilateral and directed. This allows for statements according to propositional logic. They can be easily mapped to many technologies such as RDF or even ReqIF. Being reified, a Relationship is an owl:Class.

Details:

  • Relationship must have a title (name) and may have a description (definition).
  • Relationship lists zero to many property classes its instances may have.
  • Relationship may define (configure) entitiy classes or relationship classes, whose instances are eligible as source resp. target in a relationship. If none are defined, all entities and relationships are eligible.
  • Relationship is reified (as a rdfs:Resource in RDF), so that it can be a source or target of another Relationship - to make a statement on a statement.
  • The definitions of a relationship together with those of their properties may be used to build user dialogs with input verfication and to check its instances whether all properties have a correct type and value range as well as whether all required ones are present.

Properties

Element Type Class

Statements

CASCaRA Metamodel
contains ☆  Relationship
☆  Relationship enumeratedSourceLink ☆  Link
☆  Relationship enumeratedTargetLink ☆  Link
☆  aRelationship
hasClass ☆  Relationship
▣  CASCaRA Metamodel Diagram
shows ☆  Relationship
☆  Relationship specializes ☆  Element
☆  Relationship

☆  Relationship

The semantic foundation for all Relationship (class) definitions. Is an owl:Class.

Properties

Element Type cas_meta:Relationship

Statements

CASCaRA Semantic Infrastructure
contains ☆  Relationship
☆  lists
enumeratedEndpoint ☆  Relationship
☆  Relationship enumeratedSourceLink ☆  sourceLink
☆  Relationship enumeratedTargetLink ☆  targetLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Relationship

○  revision

A unique string identifying the revision of the entity or relationship instance.

Properties

Element Type uml:Property

Statements

☆  anElement
has part ○  revision
▣  CASCaRA Metamodel Diagram
shows ○  revision

☆  Root

A root class serves to anchor organizer structures in a data package. While a graph has no start and no end, a root instance with a subordinated organizer structure offers a way to explore the graph for a given purpose.

Example:

  • A document outline anchored at a root element would define a document to read by auditors and perhaps another one for potential customers.
  • When querying all instances of class Root, a list of available documents is returned.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Root
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Root
☆  Root specializes ☆  Organizer

☆  shows

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that are visible on a view (e.g. model-diagram).

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  shows
☆  shows enumeratedEndpoint ☆  Model-Element
☆  View
enumeratedTargetLink ☆  shows
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  shows
☆  shows specializes ☆  Link

☆  sourceLink

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can serve as a source of a Relationship.

By further specializing this class, a speaking title can be given to a sourceLink, such as 'employee' in a 'worksFor' relationship being a specialization of Relationship.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  sourceLink
☆  Relationship
enumeratedSourceLink ☆  sourceLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  sourceLink
☆  sourceLink specializes ☆  Link

☆  State

A fundamental model-element class for states (e.g. system or process states, information, form, color, ...).

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  State
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  State
☆  State specializes ☆  Model-Element

☆  Table

A specialized Organizer with elements (cells) arranged two-dimensionally in columns and rows. Any element SHALL contain a reference to any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Table
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Table
☆  Table specializes ☆  Organizer

☆  targetLink

A Link class for use by View to enumerate eligible Entity and/or Relationship classes that can serve as a target of a Relationship.

By further specializing this class, a speaking title can be given to a targetLink, such as 'employer' in a 'worksFor' relationship being a specialization of Relationship.

Properties

Element Type cas_meta:Link

Statements

CASCaRA Semantic Infrastructure
contains ☆  targetLink
☆  Relationship
enumeratedTargetLink ☆  targetLink
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  targetLink
☆  targetLink specializes ☆  Link

○  title

Properties

Element Type uml:Property

Statements

☆  Identifiable
has part ○  title
▣  CASCaRA Metamodel Diagram
shows ○  title

☆  Tree

A specialized Organizer with elements (nodes) arranged in a strictly hierarchical manner. Any element SHALL contain a reference to any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  Tree
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  Tree
☆  Outline
specializes ☆  Tree
☆  Tree specializes ☆  Organizer

○  unit

A unit as defined by the International System of Units (SI). A unit can only be defined for a numeric datatype. By default the property has no unit.

Properties

Element Type uml:Property

Statements

☆  Property
has part ○  unit
▣  CASCaRA Metamodel Diagram
shows ○  unit

○  value

The value of a property.

Details:

  • If the datatype of the property's class is string, the value is a language string consisting of value and IETF language tag.
  • Otherwise the value is a simple value.

Properties

Element Type uml:Property

Statements

☆  aProperty
has part ○  value
▣  CASCaRA Metamodel Diagram
shows ○  value

☆  View

A specialized Organizer with elements displayed in two or three dimensions such as a model-diagram, 3D visualization or pie-chart. Any element SHOULD reference any Entity or Relationship.

Properties

Element Type cas_meta:Entity

Statements

CASCaRA Semantic Infrastructure
contains ☆  View
☆  View enumeratedTargetLink ☆  depicts
☆  shows
▣  CASCaRA Semantic Infrastructure Diagram
shows ☆  View
☆  View specializes ☆  Organizer