Skip to content

Industrial Asset Hub Base Schema

Introduction

These pages document the base vocabulary and schemata to model assets in Industrial Asset Hub (IAH).

Getting Started

If you are a beginner working with the asset modeling schemas you probably want to have a look at the asset modeling concept page. It will help you understand the concepts behind the asset modeling approach chosen by IAH.

Schema Metadata

This schema defines the base classes needed for Industrial Asset Hub (IAH). The hereby defined classes provide a schema to model assets and devices (as a special asset subtype) and a vocabulary valid for the whole project and all stakeholders. They are very generic and abstract on purpose so that multiple different specializations can be derived from it without constraining them needlessly.

Name: IAH-Base

Namespaces

Namespaces

Schema/Ontology namespaces and their corresponding prefixes:

Prefix Namespace
linkml https://w3id.org/linkml/
lis http://rds.posccaesar.org/ontology/lis14/rdl/
schema http://schema.org/
base https://common-device-management.code.siemens.io/documentation/asset-modeling/base-schema/v0.10.0/
sietechas http://ontology.siemens.com/base/enterprise/technical-asset#
sieiot http://ontology.siemens.com/base/enterprise/iot#
xsd http://www.w3.org/2001/XMLSchema#
shex http://www.w3.org/ns/shex#
Warning on Namespaces

Namespaces look like URLs, but they are not always complete (although they might bring you somewhere) and they are not meant to be used as hyperlinks. Therefore they are not hyperlinked in the previous table. They provide the prefix for a URI that will be completed appending the name of an element in that namespace. Those URIs are typically valid URLs and will therefore be hyperlinked throughout this documentation.

For example: adding to the namespace http://ontology.siemens.com/base/enterprise/technical-asset# the name SoftwareAsset results in the valid hyperlink http://ontology.siemens.com/base/enterprise/technical-asset#SoftwareAsset.

Classes

Main classes

Class Description
Asset An asset is the representation of a functional object with a technical functi...
Device A device is a special type of asset that can be managed with some asset manag...
SoftwareArtifact Software asset representing software on rest
RunningSoftware Software asset representing running software
ProductSerialIdentifier Identifier for an Asset instance using the product (asset class) identifier a...
MacIdentifier Identifier for an Asset instance using the mac address
Ipv4Identifier Identifier for an Asset instance using one IPv4 address assigned to it
Ipv6Identifier Identifier for an Asset instance using one IPv6 address assigned to it
Ipv4Connectivity Configuration of an IP port
Ipv6Connectivity Configuration of an IP port
EthernetPort A hardware ConnectionPoint that supports one of the Ethernet networking proto...
Product Any offered product or service that might have different versions for the sam...
AssetLink Asset Link (AL) running and registered
Gateway Gateway as a software asset can be mapped using the class
AssetRelationship Relationship between two different assets
Auxiliar classes
Class Description
FunctionalObject A part of a system, and has a function whose realization contributes to the p...
State State in which a certain item be
ManagementState Documents if the asset is being regarded (managed) by any AssetManagement or ...
ReachabilityState The reachability_state based on when an asset that can be contacted (typicall...
ConnectionPoint A connection point is a hardware or software interface that enables an asset ...
IdentifierType Provides the context needed to interpret an identifier based on standards, co...
Identifier An element that provides an unambiguous identification of an item
AssetIdentifier An Identifier that provides an unambiguous identification of an asset instanc...
IdLink Asset identifier based on the ID-Link standard (IEC 61406)
SiemensIdLink Asset identifier based on the ID-Link standard (IEC 61406)
InstanceAnnotation Key/value pair that can be used to add metadata to an object
SoftwareAsset Any kind of software element that needs to be considered
SoftwareIdentifier Well established
ArtifactChecksum Artifact identifier based on the artifact checksum
AssetOperation Operations that can be performed on the asset
RelatedConnectionPoint Relationship of a ConnectionPoint with another one
GatewayIdentifier GatewayId and Base64 encoded version of certificate subject key identifer wil...
TrustEstablishedState The trust establishment state is based on if the asset is a trusted asset or ...
CustomProperty Instance annotation hosting a custom property with a label
Classes corresponding Schema.org
Class Description
Thing The identifier property represents any kind of identifier for any kind of Thi...
Intangible A utility class that serves as the umbrella for a number of 'intangible' thin...
Person A person (alive, dead, undead, or fictional)
SchemaOrgProduct Any offered product or service
Organization An organization such as a school, NGO, corporation, club, etc
StructuredValue Structured values are used when the value of a property has a more complex st...
ContactPoint A contact point—for example, a Customer Complaints department
PostalAddress The mailing address
Deprecated classes
Class Description
Dcd Device Class Driver (DCD) running and registered
Thingid : stringname : stringSchemaOrgProductproduct_id : stringid(i) : stringname(i) : stringPersonfamily_name : stringgiven_name : stringid(i) : stringname(i) : stringOrganizationalternate_names : string [0..*]id(i) : stringname(i) : stringIntangibleid(i) : stringname(i) : stringAssetlast_modified_timestamp : datetimezone : stringresponsible : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringStatestate_value : stringstate_timestamp : datetimeTrustEstablishedStatestate_value : TrustEstablishedStateValuesstate_timestamp(i) : datetimeReachabilityStatestate_value : ReachabilityStateValuesstate_timestamp(i) : datetimeManagementStatestate_value : ManagementStateValuesstate_timestamp(i) : datetimeGatewayrunning_software_type : RunningSoftwareValuesrunning_sw_id(i) : stringcustom_running_software_type(i) : stringlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringProductproduct_version : stringproduct_link : uriproduct_id(i) : stringid(i) : stringname(i) : stringRelatedConnectionPointcustom_relationship : stringConnectionPointid : stringconnection_point_type : stringDevicelast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringProductSerialIdentifierserial_number : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerAssetIdentifierasset_identifier_type : stringidentifier_uncertainty(i) : integerContactPointemail : stringtelephone : stringid(i) : stringname(i) : stringPostalAddressaddress_country : CountryCodeaddress_locality : stringaddress_region : stringpostal_code : stringstreet_address : stringemail(i) : stringtelephone(i) : stringid(i) : stringname(i) : stringStructuredValueid(i) : stringname(i) : stringFunctionalObjectid : stringname : stringfunctional_object_type : stringInstanceAnnotationkey : stringvalue : stringCustomPropertylabel : stringkey(i) : stringvalue(i) : stringIdentifieridentifier_uncertainty : integerIdentifierTypeid : stringDcdrunning_software_type(i) : RunningSoftwareValuesrunning_sw_id(i) : stringcustom_running_software_type(i) : stringlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringAssetLinkrunning_software_type(i) : RunningSoftwareValuesrunning_sw_id(i) : stringcustom_running_software_type(i) : stringlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringGatewayIdentifiercertificate_id : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerRunningSoftwarerunning_software_type : RunningSoftwareValuesrunning_sw_id : stringcustom_running_software_type : stringlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringSoftwareArtifactis_firmware : booleanlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringSoftwareAssetlast_modified_timestamp(i) : datetimezone(i) : stringresponsible(i) : stringid(i) : stringname(i) : stringfunctional_object_type(i) : stringArtifactChecksumchecksum : uriorcurieasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerSoftwareIdentifiername : stringversion : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerIpv6Connectivityipv6_address : stringrouter_ipv6_address : stringipv6_network_prefix : stringconnection_point_type : stringid(i) : stringIpv4Connectivityipv4_address : stringrouter_ipv4_address : stringnetwork_mask : stringconnection_point_type : stringid(i) : stringEthernetPortmac_address : stringconnection_point_type : stringid(i) : stringAssetRelationshippredicate : PredicateValuesAssetOperationoperation_name : stringactivation_flag : booleanMacIdentifiermac_address : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerIpv6Identifieripv6_address : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerIpv4Identifieripv4_address : stringasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerIdLinkid_link : uriasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerSiemensIdLinkid_link : uriasset_identifier_type(i) : stringidentifier_uncertainty(i) : integerother_states0..*trust_established_state0..1manufacturer0..1connection_point0..1related_connection_points0..*reachability_state1reachability_state0..1manufacturer_product0..1product_instance_identifier0..1contact_point0..1contact_point0..1address0..1management_state1instance_annotations0..*instance_annotations0..*identifier_type0..1running_dcds0..*running_asset_links0..*gateway_identifier0..1artifact0..1software_components1..*software_components0..*checksum_identifier0..1software_identifier0..1connection_points0..*custom_ui_properties0..*connection_points0..*object0..1subject0..1asset_operations0..*asset_identifiers0..*functional_parts0..*

Attributes (AKA Slots), Enumerations and Types

Attributes
Attribute Description
id The identifier property represents any kind of identifier for any kind of Thi...
name The name of the item
connection_points An asset might have a connection point that can be used to connect with the a...
related_connection_points A connection point might rely on another connection point to work
asset_identifiers An asset identifier is an asset attribute that provides enough information to...
product_instance_identifier Identifier of a device based on its serial number
functional_parts The functional objects that an asset is composed of, in case such a level of ...
state_value The state of an object
state_timestamp Time when the current state has been observed
software_components An asset can host software artifacts that might want to be tracked
reachability_state A slot to track the last observed reachability state and when it was observed
trust_established_state A slot to track the trust establishment of the asset
version Version of a software artifact
semantic_version Version of a software artifact according the Semantic Versioning 2
certificate_id Base64 encoded version of certificate subject key identifer
gateway_identifier Provides an AssetIdentifier for Gateways that uses the ID of the certificate ...
identifier_type Type of an items identifier
identifier_uncertainty Number that tells how uncertain an identifier is compared with other identifi...
asset_operations List of device management operations supported by an asset
operation_name Name of a device management operation
activation_flag Attribute for specifying if the operation is available in terms of true or fa...
inline_manufacturer Identifier of an asset manufacturer
manufacturer_product A way to identify a product based on the manufacturer and the product identif...
product_name A name or ID that help identify a product among those of a specific manufactu...
ipv4_address The IP v4 address of a device port
router_ipv4_address The IPv4 address of the router (AKA gateway) corresponding to a IPv4 address
ipv6_address The IP v6 address of a device port
router_ipv6_address The IP v6 address of the default IP v6 router (AKA gateway)
mac_identifiers Identifier of a device based on its MAC address(es)
ipv4_identifiers Identifier of a device based on its IPv4 address(es)
ipv6_identifiers Identifier of a device based on its IPv6 address(es)
mac_address The MAC address of the port
connection_point_type Type designator that provides support for polymorphism using connection point...
functional_object_type Type designator that provides support for polymorphism using functional parts
asset_identifier_type Type designator that provides support for polymorphism using asset identifier...
instance_annotations Metadata associated to an object
custom_ui_properties Metadata associated with Asset in User Interface
family_name Family name
given_name Given name
contact_point A contact point for a person or organization
product_id The product identifiers, such as ISBN
product_version Some products might have different versions under the same product ID, the pr...
manufacturer The manufacturer of the product
address Physical address of the item
alternate_names An alias for the item
email Email address
telephone The telephone number
serial_number The serial number or any alphanumeric identifier of a particular product
checksum The checksum string as a URN
last_modified_timestamp Timestamp of last asset modification
running_software_type Type of running software
software_identifier Identifier for a software artifact based on the well-established pattern name...
checksum_identifier Provides an AssetIdentifier based on a SoftwareArtifact checksum
zone Provides references to the different zones that an asset belongs to
responsible Provides the id of the user or client that onboarded the asset
management_state A manage state is an attribute of an asset that specifies how an asset is bei...
other_states Specify the state of other aspects apart from management state
id_link Link to identify the asset
key The identifier of a key/value pair
value The real metadata of a key/value pair
is_firmware Flag that marks that the software artifact is being provided by a hardware ma...
running_sw_id Identifier for a running software instance
artifact Reference to the software artifact which the running software has been instan...
custom_running_software_type Custom running software type
connection_point Reference to the related ConnectionPoint
custom_relationship Type of relationship in an unstructured format
network_mask The mask that segregates IPs v4 belonging to the same sub-network from the re...
ipv6_network_prefix Prefix of the subnetwork in which the IP address is located
product_link Link to identify a product
address_country 2-letter code of the country
address_locality Locality name in the local language
address_region Region name in the local language
postal_code Postal code (AKA ZIP-code) of the address
street_address Street and number of the address
running_asset_links List of Link Assets running on an Asset Gateway and registered
running_dcds List of Link Assets running on an Asset Gateway and registered
subject The origin of a relationship between two assets
object The target of a relationship between two assets
predicate A relationship type
label Human readable label to show the property in the UI
Enumerations
Enumeration Description
ManagementStateValues Possible management states
ReachabilityStateValues Possible reachability states
TrustEstablishedStateValues Possible trust establishment states
PredicateValues Possible relationship predicates
CountryCode Two-letter ISO 3166-1 alpha-2 country code
RunningSoftwareValues Possible running software types
Types
Type Description
String A character string
Integer An integer
Boolean A binary (true or false) value
Float A real number that conforms to the xsd:float specification
Double A real number that conforms to the xsd:double specification
Decimal A real number with arbitrary precision that conforms to the xsd:decimal speci...
Time A time object represents a (local) time of day, independent of any particular...
Date a date (year, month and day) in an idealized calendar
Datetime The combination of a date and time
DateOrDatetime Either a date or a datetime
Uriorcurie a URI or a CURIE
Curie a compact URI
Uri a complete URI
Ncname Prefix part of CURIE
Objectidentifier A URI or CURIE that represents an object in the model
Nodeidentifier A URI, CURIE or BNODE that represents a node in a model
Jsonpointer A string encoding a JSON Pointer
Jsonpath A string encoding a JSON Path
Sparqlpath A string encoding a SPARQL Property Path

Any questions left?

Ask the community