Skip to content

Class: RunningSoftware

Software asset representing running software.

Please, notice the difference with SoftwareArtifacts used to instance running software out of them. Multiple RunningSoftware items can be instantiated from a single SoftwareArtifact. For example, multiple containers can be instantiated from a single container image.

URI: base:RunningSoftware

 classDiagram
    class RunningSoftware
      SoftwareAsset <|-- RunningSoftware

      RunningSoftware : artifact
      RunningSoftware : asset_identifiers
      RunningSoftware : asset_operations
      RunningSoftware : connection_points
      RunningSoftware : custom_running_software_type
      RunningSoftware : custom_ui_properties
      RunningSoftware : functional_object_type
      RunningSoftware : functional_parts
      RunningSoftware : id
      RunningSoftware : instance_annotations
      RunningSoftware : last_modified_timestamp
      RunningSoftware : management_state
      RunningSoftware : name
      RunningSoftware : other_states
      RunningSoftware : product_instance_identifier
      RunningSoftware : reachability_state
      RunningSoftware : responsible
      RunningSoftware : running_software_type
      RunningSoftware : running_sw_id
      RunningSoftware : software_components
      RunningSoftware : zone


      RunningSoftware <|-- AssetLink
      RunningSoftware <|-- Dcd
      RunningSoftware <|-- Gateway

      RunningSoftware : artifact
      RunningSoftware : asset_identifiers
      RunningSoftware : asset_operations
      RunningSoftware : connection_points
      RunningSoftware : custom_running_software_type
      RunningSoftware : custom_ui_properties
      RunningSoftware : functional_object_type
      RunningSoftware : functional_parts
      RunningSoftware : id
      RunningSoftware : instance_annotations
      RunningSoftware : last_modified_timestamp
      RunningSoftware : management_state
      RunningSoftware : name
      RunningSoftware : other_states
      RunningSoftware : product_instance_identifier
      RunningSoftware : reachability_state
      RunningSoftware : responsible
      RunningSoftware : running_software_type
      RunningSoftware : running_sw_id
      RunningSoftware : software_components
      RunningSoftware : zone

Inheritance

Attributes (AKA Slots)

Name Cardinality and Range Description Inheritance
running_software_type 0..1
RunningSoftwareValues
Type of running software direct
running_sw_id 0..1
String
Identifier for a running software instance direct
artifact 0..1
SoftwareArtifact
Reference to the software artifact which the running software has been instan... direct
custom_running_software_type 0..1
String
Custom running software type direct
product_instance_identifier 0..1
ProductSerialIdentifier
Identifier of a device based on its serial number Asset
connection_points *
ConnectionPoint
An asset might have a connection point that can be used to connect with the a... Asset
software_components *
SoftwareAsset
An asset can host software artifacts that might want to be tracked Asset
reachability_state 0..1
ReachabilityState
A slot to track the last observed reachability state and when it was observed Asset
functional_parts *
Asset
The functional objects that an asset is composed of, in case such a level of ... Asset
asset_operations *
AssetOperation
List of device management operations supported by an asset Asset
custom_ui_properties *
CustomProperty
Metadata associated with Asset in User Interface Asset
last_modified_timestamp 0..1
Datetime
Timestamp of last asset modification Asset
asset_identifiers * recommended
AssetIdentifier
An asset identifier is an asset attribute that provides enough information to... Asset
zone 0..1
String
Provides references to the different zones that an asset belongs to Asset
responsible 0..1
String
Provides the id of the user or client that onboarded the asset Asset
management_state 1
ManagementState
A manage state is an attribute of an asset that specifies how an asset is bei... Asset
other_states *
State
Specify the state of other aspects apart from management state Asset
id 1
String
The identifier property represents any kind of identifier for any kind of Thi... FunctionalObject
name 0..1
String
The name of the item FunctionalObject
instance_annotations *
InstanceAnnotation
Metadata associated to an object FunctionalObject
functional_object_type 0..1
String
Type designator that provides support for polymorphism using functional parts FunctionalObject
Deprecated attributes
Name Cardinality and Range Description Inheritance

Examples

Value
Asset gateway
firmware
OS
program
service
container
virtual machine

Identifier and Mapping Information

Mappings

Mapping Type Mapped Value
self base:RunningSoftware
native base:RunningSoftware

LinkML Source

Direct

name: RunningSoftware
description: 'Software asset representing running software.

  Please, notice the difference with SoftwareArtifacts used to instance running software
  out of them. Multiple RunningSoftware items can be instantiated from a single SoftwareArtifact.
  For example, multiple containers can be instantiated from a single container image.'
title: Running Software
examples:
- value: Asset gateway
  description: Software hosting the Field Agent.
- value: firmware
- value: OS
- value: program
- value: service
- value: container
- value: virtual machine
from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
rank: 10
is_a: SoftwareAsset
slots:
- running_software_type
attributes:
  running_sw_id:
    name: running_sw_id
    description: Identifier for a running software instance.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    domain_of:
    - RunningSoftware
    range: string
  artifact:
    name: artifact
    description: 'Reference to the software artifact which the running software has
      been instantiated from.

      As of now the combination of multiple software artifacts into a running software
      (for example with plug-ins) is not supported and can not be natively modeled.
      Instance annotations need to be used for that purpose.'
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    domain_of:
    - RunningSoftware
    range: SoftwareArtifact
    inlined: true
  custom_running_software_type:
    name: custom_running_software_type
    description: Custom running software type.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    domain_of:
    - RunningSoftware
    range: string
unique_keys:
  identifier:
    unique_key_name: identifier
    unique_key_slots:
    - running_sw_id

Induced

name: RunningSoftware
description: 'Software asset representing running software.

  Please, notice the difference with SoftwareArtifacts used to instance running software
  out of them. Multiple RunningSoftware items can be instantiated from a single SoftwareArtifact.
  For example, multiple containers can be instantiated from a single container image.'
title: Running Software
examples:
- value: Asset gateway
  description: Software hosting the Field Agent.
- value: firmware
- value: OS
- value: program
- value: service
- value: container
- value: virtual machine
from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
rank: 10
is_a: SoftwareAsset
attributes:
  running_sw_id:
    name: running_sw_id
    description: Identifier for a running software instance.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: running_sw_id
    owner: RunningSoftware
    domain_of:
    - RunningSoftware
    range: string
  artifact:
    name: artifact
    description: 'Reference to the software artifact which the running software has
      been instantiated from.

      As of now the combination of multiple software artifacts into a running software
      (for example with plug-ins) is not supported and can not be natively modeled.
      Instance annotations need to be used for that purpose.'
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: artifact
    owner: RunningSoftware
    domain_of:
    - RunningSoftware
    range: SoftwareArtifact
    inlined: true
  custom_running_software_type:
    name: custom_running_software_type
    description: Custom running software type.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: custom_running_software_type
    owner: RunningSoftware
    domain_of:
    - RunningSoftware
    range: string
  running_software_type:
    name: running_software_type
    description: Type of running software.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: running_software_type
    owner: RunningSoftware
    domain_of:
    - RunningSoftware
    range: RunningSoftwareValues
  product_instance_identifier:
    name: product_instance_identifier
    description: Identifier of a device based on its serial number.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: product_instance_identifier
    owner: RunningSoftware
    domain_of:
    - Asset
    range: ProductSerialIdentifier
  connection_points:
    name: connection_points
    description: An asset might have a connection point that can be used to connect
      with the asset. In the case of devices, at least one connection point is required.
      It might be a connection point needed for AssetManagement for interaction with
      the asset or for other connections of the asset related to the asset function
      but not to device management.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: connection_points
    owner: RunningSoftware
    domain_of:
    - Asset
    range: ConnectionPoint
    multivalued: true
    inlined: true
    inlined_as_list: true
  software_components:
    name: software_components
    description: 'An asset can host software artifacts that might want to be tracked.
      This can be used simply to keep track of the firmware version or to keep a full-blown
      Software Bill of Material (SBOM).

      Please notice that this attribute is not meant to model relationships between
      the different software assets available in a device. Static relationships implicit
      to the SoftwareAssets themselves (like "firmware image A contains package X"
      or "package X depends on package Y") might be modeled on the Software Assets,
      if desired. Although it probably goes beyond the purpose of asset modeling.
      Deployment dependent relationships (like "firmware image needs to be installed
      before installing app") might be modeled as external AssetLinks, if desired.
      Once again it probably goes beyond the purpose of asset modeling.'
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: software_components
    owner: RunningSoftware
    domain_of:
    - Asset
    range: SoftwareAsset
    multivalued: true
    inlined: true
    inlined_as_list: true
  reachability_state:
    name: reachability_state
    description: A slot to track the last observed reachability state and when it
      was observed.
    title: reachability state
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: reachability_state
    owner: RunningSoftware
    domain_of:
    - Asset
    range: ReachabilityState
  functional_parts:
    name: functional_parts
    description: 'The functional objects that an asset is composed of, in case such
      a level of decomposition is desired. This is enables having assets composed
      of other assets and even devices composed of other devices and assets.

      An Asset must be addressable independently from other Assets (therefore they
      need to have an "id") and are therefore individually modeled. But not all parts
      of an Asset that are modeled need to be individually addressable, these are
      FunctionalObjects, but not Assets.

      Probably those functional_parts of an Asset providing some function for the
      Asset will be modeled here. Therefore an Asset can delegate the Interactions
      that it''s offering to its functional_parts.'
    title: functional parts
    examples:
    - value: 'A server rack Asset can have following functional_parts that can be
        modeled like this: a frame (an Asset), servers (Devices), network switches/routers
        (Devices), power supply (a FunctionalObject),...'
    - value: A library installed on a device
    - value: The firmware of a device
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: functional_parts
    owner: RunningSoftware
    domain_of:
    - Asset
    range: Asset
    multivalued: true
    inlined: true
    inlined_as_list: true
  asset_operations:
    name: asset_operations
    description: List of device management operations supported by an asset. Each
      operation type might appear only once.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: asset_operations
    owner: RunningSoftware
    domain_of:
    - Asset
    range: AssetOperation
    multivalued: true
  custom_ui_properties:
    name: custom_ui_properties
    description: Metadata associated with Asset in User Interface
    title: custom properties for User Interface
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: custom_ui_properties
    owner: RunningSoftware
    domain_of:
    - Asset
    range: CustomProperty
    multivalued: true
  last_modified_timestamp:
    name: last_modified_timestamp
    description: Timestamp of last asset modification
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: last_modified_timestamp
    owner: RunningSoftware
    domain_of:
    - Asset
    range: datetime
  asset_identifiers:
    name: asset_identifiers
    description: 'An asset identifier is an asset attribute that provides enough information
      to unequivocally identify the represented object.

      In some cases the ID attribute acts simultaneously as a reference for the asset
      instance and as identifier for the represented object, otherwise at least one
      asset identifier is needed.

      There can be multiple asset_identifiers with different goals. For example, the
      information of a metal nameplate can be used by a human-being to identify a
      device represented by an asset instance, but a software certificate provided
      by a device might help a software component identify the device in the network,...

      An asset identifier might have an identifier_type, that defines its format and
      possibly even semantics.'
    title: asset identifiers
    examples:
    - value: '''Nameplate'': { ''vendor id'': ''siemens'', ''product id'': ''1FN3050-1ND00-0EA3'',
        ''serial number'': ''0011223344'' }'
      description: Object that provides a set of values that unequivocally identify
        a Siemens device.
    - value: '''Product ID'': { ''Vendor'': ''Rexroth'', ''Type Code'': ''VDP16.3DBN-D1-NN-NN'',
        ''Type Name'': ''IndraControl VPB 40.4, Control Cabinet PC''}, ''Instance
        ID'': { ''Serial Number'': ''SN:008595411'' }'
      description: Object that provides a set of values that unequivocally identify
        a Rexroth device.
    - value: 123e4567-e89b-12d3-a456-426655440000
      description: Universal Unique ID (UUID AKA GUID) that identifies an asset instance.
    - value: 123e4567-e89b-12d3-a456-426655440000
      description: Universal Unique ID (UUID AKA GUID) that identifies an asset instance.
    - value: 'MAC-Address: 00:11:22:33:44'
      description: Identify a device by its MAC-Address, assuming that it cannot be
        changed.
    - value: '''Device Certificate'': { ''Certificate ID'': ''1wlkq3'', ''Certificate
        PubKey'': ''xxxxxxxxxxxx'' }'
      description: Information needed to challenge the certificate of a device with
        its public key.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: asset_identifiers
    owner: RunningSoftware
    domain_of:
    - Asset
    range: AssetIdentifier
    recommended: true
    multivalued: true
    inlined: true
    inlined_as_list: true
  zone:
    name: zone
    description: 'Provides references to the different zones that an asset belongs
      to.

      Zones are typically used to group assets logically mostly for the purpose of
      access control. That way it is possible to give certain roles or persons specific
      permissions to all assets associated to a zone.'
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: zone
    owner: RunningSoftware
    domain_of:
    - Asset
    range: string
  responsible:
    name: responsible
    description: Provides the id of the user or client that onboarded the asset
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: responsible
    owner: RunningSoftware
    domain_of:
    - Asset
    range: string
  management_state:
    name: management_state
    description: 'A manage state is an attribute of an asset that specifies how an
      asset is being regarded by an asset management system (is it being regarded
      or ignored). Some assets might be known to the Industrial Asset Hub (for example,
      discovered through a network scan), but want to be ignored for different reasons.

      The goals of this attribute are: to avoid rediscovering assets being ignored
      and to focus management activities on those assets being regarded.

      Assets that can be discovered, but not supported, might evolve from an "ignored"
      to a "regarded" state, once supported.'
    title: management state
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: management_state
    owner: RunningSoftware
    domain_of:
    - Asset
    range: ManagementState
    required: true
  other_states:
    name: other_states
    description: Specify the state of other aspects apart from management state.
    title: other states
    examples:
    - value: reachability_state
      description: Could an asset be reached lately over a port?
    - value: Runtime state
      description: Is a device running normally? Is it in maintenance mode?
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: other_states
    owner: RunningSoftware
    domain_of:
    - Asset
    range: State
    multivalued: true
  id:
    name: id
    description: The identifier property represents any kind of identifier for any
      kind of Thing, such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated
      properties for representing many of these, either as textual strings or as URL
      (URI) links.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    slot_uri: schema:identifier
    identifier: true
    alias: id
    owner: RunningSoftware
    domain_of:
    - FunctionalObject
    - ConnectionPoint
    - IdentifierType
    - Thing
    range: string
    required: true
  name:
    name: name
    description: The name of the item.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    slot_uri: schema:name
    alias: name
    owner: RunningSoftware
    domain_of:
    - FunctionalObject
    - SoftwareIdentifier
    - Thing
    range: string
  instance_annotations:
    name: instance_annotations
    description: Metadata associated to an object.
    title: instance annotations
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    alias: instance_annotations
    owner: RunningSoftware
    domain_of:
    - FunctionalObject
    - ConnectionPoint
    range: InstanceAnnotation
    multivalued: true
  functional_object_type:
    name: functional_object_type
    description: Type designator that provides support for polymorphism using functional
      parts.
    from_schema: https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/iah-base.jsonld
    rank: 1000
    designates_type: true
    alias: functional_object_type
    owner: RunningSoftware
    domain_of:
    - FunctionalObject
    range: string
unique_keys:
  identifier:
    unique_key_name: identifier
    unique_key_slots:
    - running_sw_id

Any questions left?

Ask the community