Semantics 2020 vendor videos
2020-09-08
In our work with Industry data, we have researched a number of industrial data standards. This presentation is an intro to the Industry 4.0 Knowledge Graph by Fraunhofer IAIS and how we used the Ontotext Platform for simplified access and exploration of this KG.
Key resources (more links further in the slides):
Standard classification frameworks:
Standards have always been very important in the industrial society.
(formerly Standards Ontology), Fraunhofer IAIS

The main view of I40KG shows the integrative role of RAMI 4.0 and Admin Shell, their various areas, and how they build upon existing areas in those areas.
Standards Classification visualization: “progressive zoom”

A great feature of I40KG is its elaborative (progressive) classification. (Follow the direction of the red arrows).
AI AccessPolicy Access_Rights_for_IoT-Cloud Accountability Actuation Adaptability Agility Anonymity AssetManagement Authentication Authorization Auto_Scaling AutonomousCommunication AutonomousConfiguration Availability Awareness Bandwidth BigDataApplications BusinessContext BusinessProcessManagement BusinessTransactions BusinessValue CardinalityOfDataSources CardinalityOfParticipants Certification CloudComputing Communication ComplexEventProcessing Compliance Confidentiality Connectivity ConstrainedDevices ContextAwareness CostEfficiency CrossDomainIdentityManagement Customization DataAccess DataAccessControl DataAggregation DataAnalytics
…
ServiceChoreography ServiceComposition ServiceDeployment ServiceDescription ServiceDiscovery ServiceIsolation ServiceLevelAgreements ServiceLifecycleManagement ServiceOrchestration ServiceSelection Service_Recovery Software_Updates SpatialModeling StreamProcessing SyntacticInteroperability SystemEvolution SystemRecovery ThingDescription ThingMobility ThingRepresentation TimeSynchronization Trustworthiness Unicast UnreliableNetwork UserInteraction UserPreferences VendorLockin VirtualEntity

In reality, the data is a lot more complex.
domain-property-range
The Ontotext Platform gives us an easier way to explore: GraphQL.
dbr:_Arizona shouldn’t have leading underscore)
Made a number of additions and fixes, eg

Eg “give me standards that have both International Classification of Standards (hasICS) and some classifications that have both isDescribedin and associatedWith relations”
To understand this query, you need to look at the diagram of the data, and know two things:
where mean exists,{value} is needed to get to the string value of a langString. (STO has tagged all strings as @en, I guess in hopes to one day expand to the whole world!).If you play with GraphiQL, you may agree that queries nearly “write themselves”. You need a fairly precise schema though:
(Brackets compressed and empty arrays skipped for brevity)
"standard": [{
"label": {"value": "IEC 60839-5-2:2016"},
"hasPublisher": [{"orgName": {"value": "International Electrotechnical Commission"}}],
"hasICS": [{"title": {"value": "Alarm and warning systems"}}],
"hasClassification": [
{"id": "https://w3id.org/i40/sto#RamiControlDevice",},
{"id": "https://w3id.org/i40/sto#RamiFieldDevice",},
{"id": "https://w3id.org/i40/sto#RamiCommunicationlayer",},
{"id": "https://w3id.org/i40/sto#AsSecurity",
"isDescribedin": [{"id": "https://w3id.org/i40/sto#AdministrationShell"}],
"associatedWith": [
{"id": "https://w3id.org/i40/sto#BdvaCyberSecurityTrust"},
{"id": "https://w3id.org/i40/sto#DtpSecurityPrivacy"},
{"id": "https://w3id.org/i40/sto#FiwareSecurity"}]}]}“IEC 60839-5-2 by the IEC is about Alarm and warning systems and is classified in the areas RamiControlDevice, RamiFieldDevice, RamiCommunicationlayer; and AsSecurity (described in AdministrationShell, associated with BdvaCyberSecurityTrust, DtpSecurityPrivacy, FiwareSecurity)
Let’s find entities (eg standards) and their licenses:
We get results, plus an error:
Turns out that IEC_62541 is dual-licensed under GPLv2 and OpenLicenseDocument. So our assumption that entities have a single license (removing max:inf) is not 100% true.
Here we’re looking for entities and their licenses.
max: inf (more expensive to query), but it turns out the assumption is not 100% right (only 95% or so).ISO 15926, in development for nearly 30 years, has been touted as the “lingua franca” for global interoperability.
Let’s find the classifications and standards that it is related to:
"standard": [{
"comment": {"value": "Industrial automation systems and integration -- Integration of life-cycle data for process plants including oil and gas production facilities."},
"hasClassification": [
{"id": "https://w3id.org/i40/sto#RamiProduct"},
{"id": "https://w3id.org/i40/sto#RamiIntegrationLayer"},
{"id": "https://w3id.org/i40/sto#AsConfiguration"},
{"id": "https://w3id.org/i40/sto#AsEngineering"},
{"id": "https://w3id.org/i40/sto#ProductLifeCycleManagement"}
],
"relatedTo": [
{"id": "https://w3id.org/i40/sto#DIN_SPEC_16592",
"label": {"value": "DIN SPEC 16592"},
"comment": {"value": "Combining OPC Unified Architecture and Automation Markup Language."}},
{"id": "https://w3id.org/i40/sto#IEC_62541",
"label": {"value": "IEC 62541"},
"comment": {"value": "OPC Unified Architecture (OPC UA) is an industrial M2M communication protocol..."}}
...The complexity of ISO 15926 is difficult for most people to master.
Its approach to ontology modeling comes from the BORO method that uses:
Relationship (diamond nodes in the diagram below)Eg here’s how to represent the allowed range of a parameter of some entity (tag or equipment):

This is template CL-INDPTY-200 ClassOfIndividualHasIndirectPropertyWithBoundingValues with definition “Any member of EssentialType class hasPossessorType has a hasIndirectPropertyType with a range of valLowerBound to valUpperBound hasScale”.
I40KG includes about 160 “concerns” i.e. topics relevant to Industry (eg AI, DataAnalytics, etc).
Results:
{
"data": {
"concern": [
{"id": "https://w3id.org/i40/sto#IdentityManagement",
"label": {"value": "Identity Management"}},
{"id": "https://w3id.org/i40/sto#AsProcessPlanning",
"label": {"value": "Process planning"}},
{"id": "https://w3id.org/i40/sto#AI",
"label": {"value": "Artificial Intelligence"}}, ...Let’s find which classifications are related to which concerns. We use prop frames defined as “A relation specifying that a vewpoint regards a Concern”:
Results:
Similarly, property hasTargetConcern connects Standards to Concerns:
Result:
{"data": {
"standard": [
{"id": "https://w3id.org/i40/sto#DIN_77005_P1",
"hasTargetConcern": [{"id": "https://w3id.org/i40/sto#DataLifecycleManagment"}]},
{"id": "https://w3id.org/i40/sto#DIN_EN_50128",
"hasTargetConcern": [{"id": "https://w3id.org/i40/sto#Safety"}]},
{"id": "https://w3id.org/i40/sto#DIN_EN_50129",
"hasTargetConcern": [{"id": "https://w3id.org/i40/sto#Safety"}]}, ...