Skip to content

Class: ModelElement

Abstract base for concrete architectural elements.

  • NOTE: this is an abstract class and should not be instantiated directly

URI: mellea:ModelElement

 classDiagram
    class ModelElement
    click ModelElement href "../ModelElement/"
      NamedElement <|-- ModelElement
        click NamedElement href "../NamedElement/"


      ModelElement <|-- BackendSpec
        click BackendSpec href "../BackendSpec/"
      ModelElement <|-- FormatterSpec
        click FormatterSpec href "../FormatterSpec/"
      ModelElement <|-- ContextSpec
        click ContextSpec href "../ContextSpec/"
      ModelElement <|-- SessionSpec
        click SessionSpec href "../SessionSpec/"
      ModelElement <|-- ComponentSpec
        click ComponentSpec href "../ComponentSpec/"
      ModelElement <|-- RequirementSpec
        click RequirementSpec href "../RequirementSpec/"
      ModelElement <|-- SamplingStrategySpec
        click SamplingStrategySpec href "../SamplingStrategySpec/"
      ModelElement <|-- PluginSpec
        click PluginSpec href "../PluginSpec/"
      ModelElement <|-- HookPayloadSpec
        click HookPayloadSpec href "../HookPayloadSpec/"
      ModelElement <|-- TelemetryMetricSpec
        click TelemetryMetricSpec href "../TelemetryMetricSpec/"
      ModelElement <|-- CliCommandSpec
        click CliCommandSpec href "../CliCommandSpec/"
      ModelElement <|-- ApiModelSpec
        click ApiModelSpec href "../ApiModelSpec/"


      ModelElement : coverage_scope





        ModelElement --> "*" CoverageScopeEnum : coverage_scope
        click CoverageScopeEnum href "../CoverageScopeEnum/"



      ModelElement : description

      ModelElement : element_kind





        ModelElement --> "0..1" ElementKindEnum : element_kind
        click ElementKindEnum href "../ElementKindEnum/"



      ModelElement : id

      ModelElement : module_path

      ModelElement : name

      ModelElement : package_kind





        ModelElement --> "0..1" PackageKindEnum : package_kind
        click PackageKindEnum href "../PackageKindEnum/"



      ModelElement : source_file

      ModelElement : tags

Inheritance

Slots

Name Cardinality and Range Description Inheritance
id 1
Uriorcurie
Stable identifier for a schema element NamedElement
name 1
String
Human-readable name NamedElement
description 0..1
String
Narrative description of the element NamedElement
module_path 0..1
PythonDottedPath
Python module path where this element is defined NamedElement
source_file 0..1
RepositoryRelativePath
Source file relative to repository root NamedElement
package_kind 0..1
PackageKindEnum
Package bucket NamedElement
element_kind 0..1
ElementKindEnum
Kind of Python declaration NamedElement
coverage_scope *
CoverageScopeEnum
Where this element surfaces (source/API/CLI/example/test) NamedElement
tags *
String
Free-form classification tags NamedElement

Usages

used by used in type used
RepositoryCatalog declares_element range ModelElement
PythonPackage declares_element range ModelElement

Identifier and Mapping Information

Schema Source

Mappings

Mapping Type Mapped Value
self mellea:ModelElement
native mellea:ModelElement
broad gist_linkml:Specification
related common_domain_model:ContractBase, spdx:Element

LinkML Source

Direct

name: ModelElement
description: Abstract base for concrete architectural elements.
from_schema: https://w3id.org/lmodel/mellea
related_mappings:
- common_domain_model:ContractBase
- spdx:Element
broad_mappings:
- gist_linkml:Specification
is_a: NamedElement
abstract: true

Induced

name: ModelElement
description: Abstract base for concrete architectural elements.
from_schema: https://w3id.org/lmodel/mellea
related_mappings:
- common_domain_model:ContractBase
- spdx:Element
broad_mappings:
- gist_linkml:Specification
is_a: NamedElement
abstract: true
attributes:
  id:
    name: id
    description: Stable identifier for a schema element.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    slot_uri: schema:identifier
    identifier: true
    owner: ModelElement
    domain_of:
    - NamedElement
    range: uriorcurie
    required: true
  name:
    name: name
    description: Human-readable name.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    slot_uri: schema:name
    owner: ModelElement
    domain_of:
    - NamedElement
    range: string
    required: true
  description:
    name: description
    description: Narrative description of the element.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    slot_uri: schema:description
    owner: ModelElement
    domain_of:
    - NamedElement
    range: string
  module_path:
    name: module_path
    description: Python module path where this element is defined.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: PythonDottedPath
  source_file:
    name: source_file
    description: Source file relative to repository root.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: RepositoryRelativePath
  package_kind:
    name: package_kind
    description: Package bucket.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: PackageKindEnum
  element_kind:
    name: element_kind
    description: Kind of Python declaration.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: ElementKindEnum
  coverage_scope:
    name: coverage_scope
    description: Where this element surfaces (source/API/CLI/example/test).
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: CoverageScopeEnum
    multivalued: true
  tags:
    name: tags
    description: Free-form classification tags.
    from_schema: https://w3id.org/lmodel/mellea
    rank: 1000
    owner: ModelElement
    domain_of:
    - NamedElement
    range: string
    multivalued: true