├── .github └── workflows │ └── docker-publish.yml ├── .gitignore ├── Deployment ├── Bootstrap.ps1 ├── EDC-Dashboard.yaml ├── Munich │ ├── ProductionLine.yaml │ └── UA-CloudPublisher.yaml ├── Seattle │ ├── ProductionLine.yaml │ └── UA-CloudPublisher.yaml ├── Softing-EdgeConnector-Modbus.yaml ├── UA-CloudPublisher.yaml ├── UA-EdgeTranslator.yaml ├── Umati-Gateway.yaml └── arm.json ├── Docs ├── Picture1.png ├── Picture2.png ├── Picture3.png ├── Picture4.png ├── Picture5.png └── generator.png ├── LICENSE ├── Ontologies ├── ISA95-WoT │ ├── CommonObjectModels │ │ ├── BaseModel.tm.json │ │ ├── HierarchyScope.tm.json │ │ ├── Part2 │ │ │ ├── Material │ │ │ │ ├── MaterialClass.tm.json │ │ │ │ ├── MaterialClassProperty.tm.json │ │ │ │ ├── MaterialDefinition.tm.json │ │ │ │ ├── MaterialDefinitionProperty.tm.json │ │ │ │ ├── MaterialLot.tm.json │ │ │ │ ├── MaterialLotProperty.tm.json │ │ │ │ └── MaterialSublot.tm.json │ │ │ ├── OperationalLocation │ │ │ │ ├── OperationalLocation.tm.json │ │ │ │ ├── OperationalLocationClass.tm.json │ │ │ │ ├── OperationalLocationClassProperty.tm.json │ │ │ │ └── OperationalLocationProperty.tm.json │ │ │ ├── OperationsCapability │ │ │ │ ├── EquipmentCapability.tm.json │ │ │ │ ├── EquipmentCapabilityProperty.tm.json │ │ │ │ ├── MaterialCapability.tm.json │ │ │ │ ├── MaterialCapabilityProperty.tm.json │ │ │ │ ├── OperationsCapability.tm.json │ │ │ │ ├── OperationsSegmentCapability.tm.json │ │ │ │ ├── PersonnelCapability.tm.json │ │ │ │ ├── PersonnelCapabilityProperty.tm.json │ │ │ │ ├── PhysicalAssetCapability.tm.json │ │ │ │ ├── PhysicalAssetCapabilityProperty.tm.json │ │ │ │ └── ProcessSegmentCapability.tm.json │ │ │ ├── OperationsDefinition │ │ │ │ ├── EquipmentSpecification.tm.json │ │ │ │ ├── EquipmentSpecificationProperty.tm.json │ │ │ │ ├── MaterialSpecification.tm.json │ │ │ │ ├── MaterialSpecificationProperty.tm.json │ │ │ │ ├── OperationsDefinition.tm.json │ │ │ │ ├── OperationsMaterialBill.tm.json │ │ │ │ ├── OperationsMaterialBillItem.tm.json │ │ │ │ ├── OperationsSegment.tm.json │ │ │ │ ├── OperationsSegmentDependency.tm.json │ │ │ │ ├── ParameterSpecification.tm.json │ │ │ │ ├── PersonnelSpecification.tm.json │ │ │ │ ├── PersonnelSpecificationProperty.tm.json │ │ │ │ ├── PhysicalAssetSpecification.tm.json │ │ │ │ └── PhysicalAssetSpecificationProperty.tm.json │ │ │ ├── OperationsEvent │ │ │ │ ├── OperationsEvent.tm.json │ │ │ │ ├── OperationsEventClass.tm.json │ │ │ │ ├── OperationsEventClassProperty.tm.json │ │ │ │ ├── OperationsEventClassRecordSpecification.tm.json │ │ │ │ ├── OperationsEventDefinition.tm.json │ │ │ │ ├── OperationsEventDefinitionProperty.tm.json │ │ │ │ ├── OperationsEventDefinitionRecordSpecification.tm.json │ │ │ │ ├── OperationsEventProperty.tm.json │ │ │ │ ├── OperationsEventRecord.tm.json │ │ │ │ └── OperationsEventRecordEntry.tm.json │ │ │ ├── OperationsPerformance │ │ │ │ ├── EquipmentActual.tm.json │ │ │ │ ├── EquipmentActualProperty.tm.json │ │ │ │ ├── MaterialActual.tm.json │ │ │ │ ├── MaterialActualProperty.tm.json │ │ │ │ ├── OperationsPerformance.tm.json │ │ │ │ ├── OperationsResponse.tm.json │ │ │ │ ├── PersonnelActual.tm.json │ │ │ │ ├── PersonnelActualProperty.tm.json │ │ │ │ ├── PhysicalAssetActual.tm.json │ │ │ │ ├── PhysicalAssetActualProperty.tm.json │ │ │ │ ├── SegmentData.tm.json │ │ │ │ └── SegmentResponse.tm.json │ │ │ ├── OperationsRecord │ │ │ │ ├── OperationsRecordEntryTemplate.tm.json │ │ │ │ ├── OperationsRecordSpecificationTemplate.tm.json │ │ │ │ └── OperationsRecordTemplate.tm.json │ │ │ ├── OperationsSchedule │ │ │ │ ├── EquipmentRequirement.tm.json │ │ │ │ ├── EquipmentRequirementProperty.tm.json │ │ │ │ ├── MaterialRequirement.tm.json │ │ │ │ ├── MaterialRequirementProperty.tm.json │ │ │ │ ├── OperationsRequest.tm.json │ │ │ │ ├── OperationsSchedule.tm.json │ │ │ │ ├── PersonnelRequirement.tm.json │ │ │ │ ├── PersonnelRequirementProperty.tm.json │ │ │ │ ├── PhysicalAssetRequirement.tm.json │ │ │ │ ├── PhysicalAssetRequirementProperty.tm.json │ │ │ │ ├── RequestedSegmentResponse.tm.json │ │ │ │ ├── SegmentParameter.tm.json │ │ │ │ └── SegmentRequirement.tm.json │ │ │ ├── OperationsTest │ │ │ │ ├── EvaluatedProperty.tm.json │ │ │ │ ├── OperationsTestRequirement.tm.json │ │ │ │ ├── PropertyMeasurement.tm.json │ │ │ │ ├── ResourceActual.tm.json │ │ │ │ ├── TestResult.tm.json │ │ │ │ ├── TestSpecification.tm.json │ │ │ │ ├── TestSpecificationCriteria.tm.json │ │ │ │ ├── TestSpecificationProperty.tm.json │ │ │ │ ├── TestableObject.tm.json │ │ │ │ └── TestableObjectProperty.tm.json │ │ │ ├── Personnel │ │ │ │ ├── Person.tm.json │ │ │ │ ├── PersonProperty.tm.json │ │ │ │ ├── PersonnelClass.tm.json │ │ │ │ └── PersonnelClassProperty.tm.json │ │ │ ├── PhysicalAssetAndEquipment │ │ │ │ ├── Equipment.tm.json │ │ │ │ ├── EquipmentAssetMapping.tm.json │ │ │ │ ├── EquipmentClass.tm.json │ │ │ │ ├── EquipmentClassProperty.tm.json │ │ │ │ ├── EquipmentProperty.tm.json │ │ │ │ ├── PhysicalAsset.tm.json │ │ │ │ ├── PhysicalAssetClass.tm.json │ │ │ │ ├── PhysicalAssetClassProperty.tm.json │ │ │ │ └── PhysicalAssetProperty.tm.json │ │ │ └── ProcessSegment │ │ │ │ ├── EquipmentSegmentSpecification.tm.json │ │ │ │ ├── EquipmentSegmentSpecificationProperty.tm.json │ │ │ │ ├── MaterialSegmentSpecification.tm.json │ │ │ │ ├── MaterialSegmentSpecificationProperty.tm.json │ │ │ │ ├── PersonnelSegmentSpecification.tm.json │ │ │ │ ├── PersonnelSegmentSpecificationProperty.tm.json │ │ │ │ ├── PhysicalAssetSegmentSpecification.tm.json │ │ │ │ ├── PhysicalAssetSegmentSpecificationProperty.tm.json │ │ │ │ ├── ProcessSegment.tm.json │ │ │ │ ├── ProcessSegmentDependency.tm.json │ │ │ │ └── ProcessSegmentParameter.tm.json │ │ ├── Part4 │ │ │ ├── ResourceRelationship │ │ │ │ ├── FromResourceReference.tm.json │ │ │ │ ├── FromResourceReferenceProperty.tm.json │ │ │ │ ├── ResourceNetworkConnection.tm.json │ │ │ │ ├── ResourceNetworkConnectionProperty.tm.json │ │ │ │ ├── ResourceNetworkConnectionType.tm.json │ │ │ │ ├── ResourceNetworkConnectionTypeProperty.tm.json │ │ │ │ ├── ResourceRelationshipNetwork.tm.json │ │ │ │ ├── ResourceRelationshipNetworkProperty.tm.json │ │ │ │ ├── ToResourceReference.tm.json │ │ │ │ └── ToResourceReferenceProperty.tm.json │ │ │ ├── WorkAlert │ │ │ │ ├── WorkAlert.tm.json │ │ │ │ ├── WorkAlertDefinition.tm.json │ │ │ │ ├── WorkAlertDefinitionProperty.tm.json │ │ │ │ └── WorkAlertProperty.tm.json │ │ │ ├── WorkCalendar │ │ │ │ ├── WorkCalendar.tm.json │ │ │ │ ├── WorkCalendarDefinition.tm.json │ │ │ │ ├── WorkCalendarDefinitionEntry.tm.json │ │ │ │ ├── WorkCalendarDefinitionEntryProperty.tm.json │ │ │ │ ├── WorkCalendarDefinitionProperty.tm.json │ │ │ │ ├── WorkCalendarEntry.tm.json │ │ │ │ ├── WorkCalendarEntryProperty.tm.json │ │ │ │ └── WorkCalendarProperty.tm.json │ │ │ ├── WorkCapability │ │ │ │ ├── WorkCapability.tm.json │ │ │ │ └── WorkMasterCapability.tm.json │ │ │ ├── WorkDefinition │ │ │ │ ├── WorkDefinition.tm.json │ │ │ │ ├── WorkDirective.tm.json │ │ │ │ └── WorkMaster.tm.json │ │ │ ├── WorkPerformance │ │ │ │ ├── JobResponse.tm.json │ │ │ │ ├── JobResponseData.tm.json │ │ │ │ ├── JobResponseList.tm.json │ │ │ │ ├── WorkPerformance.tm.json │ │ │ │ └── WorkResponse.tm.json │ │ │ ├── WorkRecord │ │ │ │ ├── WorkRecord.tm.json │ │ │ │ ├── WorkRecordEntry.tm.json │ │ │ │ └── WorkRecordSpecification.tm.json │ │ │ ├── WorkSchedule │ │ │ │ ├── JobList.tm.json │ │ │ │ ├── JobOrder.tm.json │ │ │ │ ├── JobOrderParameter.tm.json │ │ │ │ ├── WorkRequest.tm.json │ │ │ │ └── WorkSchedule.tm.json │ │ │ └── WorkfowSpecification │ │ │ │ ├── WorkflowSpecification.tm.json │ │ │ │ ├── WorkflowSpecificationConnection.tm.json │ │ │ │ ├── WorkflowSpecificationConnectionProperty.tm.json │ │ │ │ ├── WorkflowSpecificationConnectionType.tm.json │ │ │ │ ├── WorkflowSpecificationConnectionTypeProperty.tm.json │ │ │ │ ├── WorkflowSpecificationNode.tm.json │ │ │ │ ├── WorkflowSpecificationNodeProperty.tm.json │ │ │ │ ├── WorkflowSpecificationNodeType.tm.json │ │ │ │ ├── WorkflowSpecificationNodeTypeProperty.tm.json │ │ │ │ └── WorkflowSpecificationProperty.tm.json │ │ ├── Resource.tm.json │ │ ├── ResourceClass.tm.json │ │ ├── ResourceClassProperty.tm.json │ │ ├── ResourceProperty.tm.json │ │ └── SpatialDefinition.tm.json │ ├── EquipmentHierarchy │ │ ├── Area.tm.json │ │ ├── Enterprise.tm.json │ │ ├── ProcessCell.tm.json │ │ ├── ProductionLine.tm.json │ │ ├── ProductionUnit.tm.json │ │ ├── Site.tm.json │ │ ├── SiteAsset.tm.json │ │ ├── StorageUnit.tm.json │ │ ├── StorageZone.tm.json │ │ ├── Unit.tm.json │ │ ├── WorkCell.tm.json │ │ ├── WorkCenter.tm.json │ │ └── WorkUnit.tm.json │ └── Extensions │ │ ├── LangStringSet.tm.json │ │ └── Tags.tm.json └── ISA95 │ ├── CommonObjectModels │ ├── BaseModel.json │ ├── HierarchyScope.json │ ├── Part2 │ │ ├── Material │ │ │ ├── MaterialClass.json │ │ │ ├── MaterialClassProperty.json │ │ │ ├── MaterialDefinition.json │ │ │ ├── MaterialDefinitionProperty.json │ │ │ ├── MaterialLot.json │ │ │ ├── MaterialLotProperty.json │ │ │ └── MaterialSublot.json │ │ ├── OperationalLocation │ │ │ ├── OperationalLocation.json │ │ │ ├── OperationalLocationClass.json │ │ │ ├── OperationalLocationClassProperty.json │ │ │ └── OperationalLocationProperty.json │ │ ├── OperationsCapability │ │ │ ├── EquipmentCapability.json │ │ │ ├── EquipmentCapabilityProperty.json │ │ │ ├── MaterialCapability.json │ │ │ ├── MaterialCapabilityProperty.json │ │ │ ├── OperationsCapability.json │ │ │ ├── OperationsSegmentCapability.json │ │ │ ├── PersonnelCapability.json │ │ │ ├── PersonnelCapabilityProperty.json │ │ │ ├── PhysicalAssetCapability.json │ │ │ ├── PhysicalAssetCapabilityProperty.json │ │ │ └── ProcessSegmentCapability.json │ │ ├── OperationsDefinition │ │ │ ├── EquipmentSpecification.json │ │ │ ├── EquipmentSpecificationProperty.json │ │ │ ├── MaterialSpecification.json │ │ │ ├── MaterialSpecificationProperty.json │ │ │ ├── OperationsDefinition.json │ │ │ ├── OperationsMaterialBill.json │ │ │ ├── OperationsMaterialBillItem.json │ │ │ ├── OperationsSegment.json │ │ │ ├── OperationsSegmentDependency.json │ │ │ ├── ParameterSpecification.json │ │ │ ├── PersonnelSpecification.json │ │ │ ├── PersonnelSpecificationProperty.json │ │ │ ├── PhysicalAssetSpecification.json │ │ │ └── PhysicalAssetSpecificationProperty.json │ │ ├── OperationsEvent │ │ │ ├── OperationsEvent.json │ │ │ ├── OperationsEventClass.json │ │ │ ├── OperationsEventClassProperty.json │ │ │ ├── OperationsEventClassRecordSpecification.json │ │ │ ├── OperationsEventDefinition.json │ │ │ ├── OperationsEventDefinitionProperty.json │ │ │ ├── OperationsEventDefinitionRecordSpecification.json │ │ │ ├── OperationsEventProperty.json │ │ │ ├── OperationsEventRecord.json │ │ │ └── OperationsEventRecordEntry.json │ │ ├── OperationsPerformance │ │ │ ├── EquipmentActual.json │ │ │ ├── EquipmentActualProperty.json │ │ │ ├── MaterialActual.json │ │ │ ├── MaterialActualProperty.json │ │ │ ├── OperationsPerformance.json │ │ │ ├── OperationsResponse.json │ │ │ ├── PersonnelActual.json │ │ │ ├── PersonnelActualProperty.json │ │ │ ├── PhysicalAssetActual.json │ │ │ ├── PhysicalAssetActualProperty.json │ │ │ ├── SegmentData.json │ │ │ └── SegmentResponse.json │ │ ├── OperationsRecord │ │ │ ├── OperationsRecordEntryTemplate.json │ │ │ ├── OperationsRecordSpecificationTemplate.json │ │ │ └── OperationsRecordTemplate.json │ │ ├── OperationsSchedule │ │ │ ├── EquipmentRequirement.json │ │ │ ├── EquipmentRequirementProperty.json │ │ │ ├── MaterialRequirement.json │ │ │ ├── MaterialRequirementProperty.json │ │ │ ├── OperationsRequest.json │ │ │ ├── OperationsSchedule.json │ │ │ ├── PersonnelRequirement.json │ │ │ ├── PersonnelRequirementProperty.json │ │ │ ├── PhysicalAssetRequirement.json │ │ │ ├── PhysicalAssetRequirementProperty.json │ │ │ ├── RequestedSegmentResponse.json │ │ │ ├── SegmentParameter.json │ │ │ └── SegmentRequirement.json │ │ ├── OperationsTest │ │ │ ├── EvaluatedProperty.json │ │ │ ├── OperationsTestRequirement.json │ │ │ ├── PropertyMeasurement.json │ │ │ ├── ResourceActual.json │ │ │ ├── TestResult.json │ │ │ ├── TestSpecification.json │ │ │ ├── TestSpecificationCriteria.json │ │ │ ├── TestSpecificationProperty.json │ │ │ ├── TestableObject.json │ │ │ └── TestableObjectProperty.json │ │ ├── Personnel │ │ │ ├── Person.json │ │ │ ├── PersonProperty.json │ │ │ ├── PersonnelClass.json │ │ │ └── PersonnelClassProperty.json │ │ ├── PhysicalAssetAndEquipment │ │ │ ├── Equipment.json │ │ │ ├── EquipmentAssetMapping.json │ │ │ ├── EquipmentClass.json │ │ │ ├── EquipmentClassProperty.json │ │ │ ├── EquipmentProperty.json │ │ │ ├── PhysicalAsset.json │ │ │ ├── PhysicalAssetClass.json │ │ │ ├── PhysicalAssetClassProperty.json │ │ │ └── PhysicalAssetProperty.json │ │ └── ProcessSegment │ │ │ ├── EquipmentSegmentSpecification.json │ │ │ ├── EquipmentSegmentSpecificationProperty.json │ │ │ ├── MaterialSegmentSpecification.json │ │ │ ├── MaterialSegmentSpecificationProperty.json │ │ │ ├── PersonnelSegmentSpecification.json │ │ │ ├── PersonnelSegmentSpecificationProperty.json │ │ │ ├── PhysicalAssetSegmentSpecification.json │ │ │ ├── PhysicalAssetSegmentSpecificationProperty.json │ │ │ ├── ProcessSegment.json │ │ │ ├── ProcessSegmentDependency.json │ │ │ └── ProcessSegmentParameter.json │ ├── Part4 │ │ ├── ResourceRelationship │ │ │ ├── FromResourceReference.json │ │ │ ├── FromResourceReferenceProperty.json │ │ │ ├── ResourceNetworkConnection.json │ │ │ ├── ResourceNetworkConnectionProperty.json │ │ │ ├── ResourceNetworkConnectionType.json │ │ │ ├── ResourceNetworkConnectionTypeProperty.json │ │ │ ├── ResourceRelationshipNetwork.json │ │ │ ├── ResourceRelationshipNetworkProperty.json │ │ │ ├── ToResourceReference.json │ │ │ └── ToResourceReferenceProperty.json │ │ ├── WorkAlert │ │ │ ├── WorkAlert.json │ │ │ ├── WorkAlertDefinition.json │ │ │ ├── WorkAlertDefinitionProperty.json │ │ │ └── WorkAlertProperty.json │ │ ├── WorkCalendar │ │ │ ├── WorkCalendar.json │ │ │ ├── WorkCalendarDefinition.json │ │ │ ├── WorkCalendarDefinitionEntry.json │ │ │ ├── WorkCalendarDefinitionEntryProperty.json │ │ │ ├── WorkCalendarDefinitionProperty.json │ │ │ ├── WorkCalendarEntry.json │ │ │ ├── WorkCalendarEntryProperty.json │ │ │ └── WorkCalendarProperty.json │ │ ├── WorkCapability │ │ │ ├── WorkCapability.json │ │ │ └── WorkMasterCapability.json │ │ ├── WorkDefinition │ │ │ ├── WorkDefinition.json │ │ │ ├── WorkDirective.json │ │ │ └── WorkMaster.json │ │ ├── WorkPerformance │ │ │ ├── JobResponse.json │ │ │ ├── JobResponseData.json │ │ │ ├── JobResponseList.json │ │ │ ├── WorkPerformance.json │ │ │ └── WorkResponse.json │ │ ├── WorkRecord │ │ │ ├── WorkRecord.json │ │ │ ├── WorkRecordEntry.json │ │ │ └── WorkRecordSpecification.json │ │ ├── WorkSchedule │ │ │ ├── JobList.json │ │ │ ├── JobOrder.json │ │ │ ├── JobOrderParameter.json │ │ │ ├── WorkRequest.json │ │ │ └── WorkSchedule.json │ │ └── WorkfowSpecification │ │ │ ├── WorkflowSpecification.json │ │ │ ├── WorkflowSpecificationConnection.json │ │ │ ├── WorkflowSpecificationConnectionProperty.json │ │ │ ├── WorkflowSpecificationConnectionType.json │ │ │ ├── WorkflowSpecificationConnectionTypeProperty.json │ │ │ ├── WorkflowSpecificationNode.json │ │ │ ├── WorkflowSpecificationNodeProperty.json │ │ │ ├── WorkflowSpecificationNodeType.json │ │ │ ├── WorkflowSpecificationNodeTypeProperty.json │ │ │ └── WorkflowSpecificationProperty.json │ ├── Resource.json │ ├── ResourceClass.json │ ├── ResourceClassProperty.json │ ├── ResourceProperty.json │ └── SpatialDefinition.json │ ├── EquipmentHierarchy │ ├── Area.json │ ├── Enterprise.json │ ├── ProcessCell.json │ ├── ProductionLine.json │ ├── ProductionUnit.json │ ├── Site.json │ ├── SiteAsset.json │ ├── StorageUnit.json │ ├── StorageZone.json │ ├── Unit.json │ ├── WorkCell.json │ ├── WorkCenter.json │ └── WorkUnit.json │ └── Extensions │ ├── LangStringSet.json │ └── Tags.json ├── README.md ├── Tools ├── ADTGenerator │ ├── ADTGenerator.csproj │ ├── ADTGenerator.sln │ ├── AdtHelper.cs │ ├── JsonHelper.cs │ ├── MainForm.Designer.cs │ ├── MainForm.cs │ ├── MainForm.resx │ ├── Program.cs │ ├── binaries │ │ ├── ADTGenerator.deps.json │ │ ├── ADTGenerator.dll │ │ ├── ADTGenerator.exe │ │ ├── ADTGenerator.pdb │ │ ├── ADTGenerator.runtimeconfig.json │ │ ├── Azure.Core.dll │ │ ├── Azure.DigitalTwins.Core.dll │ │ ├── Azure.Identity.dll │ │ ├── DTDLParser.dll │ │ ├── Microsoft.Bcl.AsyncInterfaces.dll │ │ ├── Microsoft.Identity.Client.Extensions.Msal.dll │ │ ├── Microsoft.Identity.Client.dll │ │ ├── Microsoft.IdentityModel.Abstractions.dll │ │ ├── Newtonsoft.Json.dll │ │ ├── System.Memory.Data.dll │ │ └── config.json │ └── isa95-test.xlsx ├── ADXQueries │ └── dashboard-ontologies.json ├── FactorySimulation │ ├── PublisherConfig │ │ ├── Munich │ │ │ ├── persistency.json │ │ │ └── settings.json │ │ └── Seattle │ │ │ ├── persistency.json │ │ │ └── settings.json │ ├── StartSimulation.sh │ ├── Station │ │ ├── .dockerignore │ │ ├── ApplicationMessageDlg.cs │ │ ├── Dockerfile │ │ ├── MESNodeManager.cs │ │ ├── Opc.Ua.MES.Config.xml │ │ ├── Opc.Ua.MES.Endpoints.xml │ │ ├── Opc.Ua.Station.Config.xml │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── launchSettings.json │ │ ├── SessionHandler.cs │ │ ├── ShiftTimes.csv │ │ ├── Station.NodeSet2.xml │ │ ├── Station.cs │ │ ├── Station.csproj │ │ ├── Station.sln │ │ ├── StationNodeManager.cs │ │ ├── StationServer.cs │ │ └── StationTags.csv │ └── StopSimulation.sh └── GrafanaDashboard │ └── samplegrafanadashboard.json ├── comparison.md └── fabric.md /.github/workflows/docker-publish.yml: -------------------------------------------------------------------------------- 1 | name: Docker 2 | 3 | # This workflow uses actions that are not certified by GitHub. 4 | # They are provided by a third-party and are governed by 5 | # separate terms of service, privacy policy, and support 6 | # documentation. 7 | 8 | on: 9 | schedule: 10 | - cron: '23 9 * * *' 11 | push: 12 | branches: [ main ] 13 | # Publish semver tags as releases. 14 | tags: [ 'v*.*.*' ] 15 | pull_request: 16 | branches: [ main ] 17 | 18 | env: 19 | # Use docker.io for Docker Hub if empty 20 | REGISTRY: ghcr.io 21 | # github.repository as / 22 | IMAGE_NAME: ${{ github.repository }} 23 | 24 | 25 | jobs: 26 | build: 27 | 28 | runs-on: ubuntu-latest 29 | permissions: 30 | contents: read 31 | packages: write 32 | 33 | steps: 34 | - name: Checkout repository 35 | uses: actions/checkout@v2 36 | 37 | # Login against a Docker registry except on PR 38 | # https://github.com/docker/login-action 39 | - name: Log into registry ${{ env.REGISTRY }} 40 | if: github.event_name != 'pull_request' 41 | uses: docker/login-action@28218f9b04b4f3f62068d7b6ce6ca5b26e35336c 42 | with: 43 | registry: ${{ env.REGISTRY }} 44 | username: ${{ github.actor }} 45 | password: ${{ secrets.GITHUB_TOKEN }} 46 | 47 | # Extract metadata (tags, labels) for Docker 48 | # https://github.com/docker/metadata-action 49 | - name: Extract Docker metadata 50 | id: meta 51 | uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 52 | with: 53 | images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} 54 | 55 | # Build and push Docker image with Buildx (don't push on PR) 56 | # https://github.com/docker/build-push-action 57 | - name: Build and push Docker image 58 | id: build-and-push 59 | uses: docker/build-push-action@ac9327eae2b366085ac7f6a2d02df8aa8ead720a 60 | with: 61 | context: ./Tools/FactorySimulation/Station/ 62 | push: ${{ github.event_name != 'pull_request' }} 63 | tags: ${{ steps.meta.outputs.tags }} 64 | labels: ${{ steps.meta.outputs.labels }} -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # This .gitignore file was automatically created by Microsoft(R) Visual Studio. 3 | ################################################################################ 4 | 5 | /.vs 6 | /Tools/FactorySimulation/OnPremAssets/.vs 7 | /Tools/FactorySimulation/OnPremAssets/Station/.vs 8 | /Tools/FactorySimulation/OnPremAssets/Station/bin/Debug/net6.0 9 | /Tools/FactorySimulation/OnPremAssets/Station/obj/Container 10 | /Tools/FactorySimulation/OnPremAssets/Station/obj/Debug/net6.0 11 | /Tools/FactorySimulation/OnPremAssets/Station/obj/Release/net6.0 12 | /Tools/FactorySimulation/OnPremAssets/Station/obj 13 | /Tools/FactorySimulation/PressureReliefFunction/.vs 14 | /Tools/FactorySimulation/PressureReliefFunction/bin 15 | /Tools/FactorySimulation/PressureReliefFunction/obj/Debug 16 | /Tools/FactorySimulation/PressureReliefFunction/obj/Release 17 | /Tools/FactorySimulation/PressureReliefFunction/obj 18 | /Tools/AssetAdminShell/blazorsampleapp/.vscode 19 | /Tools/AssetAdminShell/aasontologyanalyzer/.vscode 20 | /Tools/FactorySimulation/OnPremAssets/Station/bin/Release/net6.0 21 | /Tools/FactorySimulation/OnPremAssets/Station/pki 22 | /Tools/FactorySimulation/OnPremAssets/Station/app/pki/own 23 | /Tools/FactorySimulation/OnPremAssets/Station/app/pki/trusted/certs 24 | /Tools/ADTGenerator/.vs/ADTGenerator 25 | /Tools/ADTGenerator/bin/Debug/net7.0-windows 26 | /Tools/ADTGenerator/obj 27 | /Tools/ADTGenerator/~$isa95-test.xlsx 28 | /Tools/ADTGenerator/isa95-test.xlsx 29 | /Tools/ADTGenerator/ADTGenerator.csproj.user 30 | /Tools/ADTGenerator/.vs/ProjectEvaluation 31 | /Tools/FactorySimulation/Station/.vs 32 | /Tools/FactorySimulation/Station/bin 33 | /Tools/FactorySimulation/Station/obj 34 | /Tools/FactorySimulation/Station/pki 35 | /Tools/FactorySimulation/Station/Station.csproj.user 36 | -------------------------------------------------------------------------------- /Deployment/Bootstrap.ps1: -------------------------------------------------------------------------------- 1 | 2 | # Create log dir and start logging 3 | New-Item -Path "C:\Temp" -ItemType directory -Force 4 | Start-Transcript "C:\Temp\Bootstrap.log" 5 | 6 | $ErrorActionPreference = "SilentlyContinue" 7 | 8 | # Install AZ CLI and AKS-EE 9 | msiexec /i https://aka.ms/installazurecliwindows /passive 10 | 11 | # Download and expand Manufacturing Ontologies repo 12 | invoke-webrequest -Uri https://github.com/digitaltwinconsortium/ManufacturingOntologies/archive/refs/heads/main.zip -OutFile C:\Manufacturing.zip 13 | expand-archive -Path C:\Manufacturing.zip -DestinationPath C:\ 14 | del C:\Manufacturing.zip 15 | 16 | # Disable Microsoft Edge sidebar 17 | $RegistryPath = 'HKLM:\SOFTWARE\Policies\Microsoft\Edge' 18 | $Name = 'HubsSidebarEnabled' 19 | $Value = '00000000' 20 | # Create the key if it does not exist 21 | If (-NOT (Test-Path $RegistryPath)) { 22 | New-Item -Path $RegistryPath -Force | Out-Null 23 | } 24 | New-ItemProperty -Path $RegistryPath -Name $Name -Value $Value -PropertyType DWORD -Force 25 | 26 | # Disable Microsoft Edge first-run Welcome screen 27 | $RegistryPath = 'HKLM:\SOFTWARE\Policies\Microsoft\Edge' 28 | $Name = 'HideFirstRunExperience' 29 | $Value = '00000001' 30 | # Create the key if it does not exist 31 | If (-NOT (Test-Path $RegistryPath)) { 32 | New-Item -Path $RegistryPath -Force | Out-Null 33 | } 34 | New-ItemProperty -Path $RegistryPath -Name $Name -Value $Value -PropertyType DWORD -Force 35 | 36 | Stop-Transcript 37 | -------------------------------------------------------------------------------- /Deployment/EDC-Dashboard.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: edc-dashboard-namespace 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: edc-dashboard 13 | namespace: edc-dashboard-namespace 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: edc-dashboard 19 | template: 20 | metadata: 21 | labels: 22 | app: edc-dashboard 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: edc-dashboard 28 | image: fraunhoferiosb/edc-extension4aas-dashboard:latest 29 | imagePullPolicy: Always 30 | ports: 31 | - containerPort: 80 32 | --- 33 | apiVersion: v1 34 | kind: Service 35 | metadata: 36 | name: edc-dashboard 37 | namespace: edc-dashboard-namespace 38 | spec: 39 | type: LoadBalancer 40 | ports: 41 | - targetPort: 80 42 | port: 80 43 | selector: 44 | app: edc-dashboard 45 | -------------------------------------------------------------------------------- /Deployment/Munich/UA-CloudPublisher.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: munich 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: ua-cloudpublisher 13 | namespace: munich 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: ua-cloudpublisher 19 | template: 20 | metadata: 21 | labels: 22 | app: ua-cloudpublisher 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: ua-cloudpublisher 28 | image: ghcr.io/barnstee/ua-cloudpublisher:main 29 | imagePullPolicy: Always 30 | env: 31 | - name: OPCUA_USERNAME 32 | value: "myUsername" 33 | - name: OPCUA_PASSWORD 34 | value: "myPassword" 35 | ports: 36 | - containerPort: 8080 37 | volumeMounts: 38 | - name: "settings" 39 | mountPath: "/app/settings" 40 | volumes: 41 | - name: "settings" 42 | hostPath: 43 | path: "/mnt/c/K3s/PublisherConfig/Munich" 44 | --- 45 | apiVersion: v1 46 | kind: Service 47 | metadata: 48 | name: ua-cloudpublisher 49 | namespace: munich 50 | spec: 51 | type: LoadBalancer 52 | ports: 53 | - targetPort: 8080 54 | port: 8080 55 | selector: 56 | app: ua-cloudpublisher 57 | -------------------------------------------------------------------------------- /Deployment/Seattle/UA-CloudPublisher.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: seattle 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: ua-cloudpublisher 13 | namespace: seattle 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: ua-cloudpublisher 19 | template: 20 | metadata: 21 | labels: 22 | app: ua-cloudpublisher 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: ua-cloudpublisher 28 | image: ghcr.io/barnstee/ua-cloudpublisher:main 29 | imagePullPolicy: Always 30 | env: 31 | - name: OPCUA_USERNAME 32 | value: "myUsername" 33 | - name: OPCUA_PASSWORD 34 | value: "myPassword" 35 | ports: 36 | - containerPort: 8080 37 | volumeMounts: 38 | - name: "settings" 39 | mountPath: "/app/settings" 40 | volumes: 41 | - name: "settings" 42 | hostPath: 43 | path: "/mnt/c/K3s/PublisherConfig/Seattle" 44 | --- 45 | apiVersion: v1 46 | kind: Service 47 | metadata: 48 | name: ua-cloudpublisher 49 | namespace: seattle 50 | spec: 51 | type: LoadBalancer 52 | ports: 53 | - targetPort: 8080 54 | port: 8080 55 | selector: 56 | app: ua-cloudpublisher 57 | -------------------------------------------------------------------------------- /Deployment/Softing-EdgeConnector-Modbus.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: softing-edgeconnector-modbus-namespace 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: softing-edgeconnector-modbus 13 | namespace: softing-edgeconnector-modbus-namespace 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: softing-edgeconnector-modbus 19 | template: 20 | metadata: 21 | labels: 22 | app: softing-edgeconnector-modbus 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: softing-edgeconnector-modbus 28 | image: softingindustrial/edgeconnector-modbus 29 | imagePullPolicy: Always 30 | ports: 31 | - containerPort: 4897 32 | - containerPort: 8099 33 | --- 34 | apiVersion: v1 35 | kind: Service 36 | metadata: 37 | name: softing-edgeconnector-modbus 38 | namespace: softing-edgeconnector-modbus-namespace 39 | spec: 40 | type: LoadBalancer 41 | ports: 42 | - targetPort: 4897 43 | port: 4897 44 | name: softing-edgeconnector-modbus-opcua 45 | - targetPort: 8099 46 | port: 8099 47 | name: softing-edgeconnector-modbus-dashboard 48 | selector: 49 | app: softing-edgeconnector-modbus 50 | -------------------------------------------------------------------------------- /Deployment/UA-CloudPublisher.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: ua-cloudpublisher-namespace 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: ua-cloudpublisher 13 | namespace: ua-cloudpublisher-namespace 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: ua-cloudpublisher 19 | template: 20 | metadata: 21 | labels: 22 | app: ua-cloudpublisher 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: ua-cloudpublisher 28 | image: ghcr.io/barnstee/ua-cloudpublisher:main 29 | imagePullPolicy: Always 30 | env: 31 | - name: OPCUA_USERNAME 32 | value: "myUsername" 33 | - name: OPCUA_PASSWORD 34 | value: "myPassword" 35 | ports: 36 | - containerPort: 8080 37 | volumeMounts: 38 | - name: "settings" 39 | mountPath: "/app/settings" 40 | - name: "pki" 41 | mountPath: "/app/pki" 42 | volumes: 43 | - name: "settings" 44 | hostPath: 45 | path: "/mnt/c/K3s/PublisherConfig/Settings" 46 | - name: "pki" 47 | hostPath: 48 | path: "/mnt/c/K3s/PublisherConfig/PKI" 49 | --- 50 | apiVersion: v1 51 | kind: Service 52 | metadata: 53 | name: ua-cloudpublisher 54 | namespace: ua-cloudpublisher-namespace 55 | spec: 56 | type: LoadBalancer 57 | ports: 58 | - targetPort: 8080 59 | port: 8080 60 | selector: 61 | app: ua-cloudpublisher 62 | -------------------------------------------------------------------------------- /Deployment/UA-EdgeTranslator.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: ua-edgetranslator-namespace 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: ua-edgetranslator 13 | namespace: ua-edgetranslator-namespace 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: ua-edgetranslator 19 | template: 20 | metadata: 21 | labels: 22 | app: ua-edgetranslator 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: ua-edgetranslator 28 | image: ghcr.io/opcfoundation/ua-edgetranslator:main 29 | imagePullPolicy: Always 30 | env: 31 | - name: OPCUA_USERNAME 32 | value: "myUsername" 33 | - name: OPCUA_PASSWORD 34 | value: "myPassword" 35 | ports: 36 | - containerPort: 4840 37 | volumeMounts: 38 | - name: "settings" 39 | mountPath: "/app/settings" 40 | - name: "pki" 41 | mountPath: "/app/pki" 42 | - name: "logs" 43 | mountPath: "/app/logs" 44 | volumes: 45 | - name: "settings" 46 | hostPath: 47 | path: "/mnt/c/K3s/UAEdgeTranslator/Settings" 48 | - name: "pki" 49 | hostPath: 50 | path: "/mnt/c/K3s/UAEdgeTranslator/PKI" 51 | - name: "logs" 52 | hostPath: 53 | path: "/mnt/c/K3s/UAEdgeTranslator/Logs" 54 | --- 55 | apiVersion: v1 56 | kind: Service 57 | metadata: 58 | name: ua-edgetranslator 59 | namespace: ua-edgetranslator-namespace 60 | spec: 61 | type: LoadBalancer 62 | ports: 63 | - targetPort: 4840 64 | port: 4840 65 | selector: 66 | app: ua-edgetranslator 67 | -------------------------------------------------------------------------------- /Deployment/Umati-Gateway.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Namespace 3 | metadata: 4 | name: umati-gateway-namespace 5 | spec: 6 | finalizers: 7 | - kubernetes 8 | --- 9 | apiVersion: apps/v1 10 | kind: Deployment 11 | metadata: 12 | name: umati-gateway 13 | namespace: umati-gateway-namespace 14 | spec: 15 | replicas: 1 16 | selector: 17 | matchLabels: 18 | app: umati-gateway 19 | template: 20 | metadata: 21 | labels: 22 | app: umati-gateway 23 | spec: 24 | nodeSelector: 25 | "kubernetes.io/os": linux 26 | containers: 27 | - name: umati-gateway 28 | image: ghcr.io/barnstee/umatigateway:develop 29 | imagePullPolicy: Always 30 | ports: 31 | - containerPort: 8080 32 | volumeMounts: 33 | - name: "configuration" 34 | mountPath: "/app/Configuration" 35 | volumes: 36 | - name: "configuration" 37 | hostPath: 38 | path: "/mnt/c/K3s/UmatiGatewayConfig/Configuration" 39 | --- 40 | apiVersion: v1 41 | kind: Service 42 | metadata: 43 | name: umati-gateway 44 | namespace: umati-gateway-namespace 45 | spec: 46 | type: LoadBalancer 47 | ports: 48 | - targetPort: 8080 49 | port: 8080 50 | selector: 51 | app: umati-gateway 52 | -------------------------------------------------------------------------------- /Docs/Picture1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/Picture1.png -------------------------------------------------------------------------------- /Docs/Picture2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/Picture2.png -------------------------------------------------------------------------------- /Docs/Picture3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/Picture3.png -------------------------------------------------------------------------------- /Docs/Picture4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/Picture4.png -------------------------------------------------------------------------------- /Docs/Picture5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/Picture5.png -------------------------------------------------------------------------------- /Docs/generator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Docs/generator.png -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/BaseModel.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:BaseModel;1", 5 | "description": "Abstract base model for all ISA-95 models", 6 | "title": "Base ISA-95 model", 7 | "$comment": "Not part of the ISA-95 standard", 8 | "created": "2024-01-17T15:53:51.2523993+01:00", 9 | "modified": "2024-01-17T15:53:51.2524005+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ext:Tags;1", 13 | "rel": "tm:submodel", 14 | "dtdl:name": "tags", 15 | "x-jsonschema:$comment": "Not part of the ISA-95 standard. Makes querying easier. See https://docs.microsoft.com/en-us/azure/digital-twins/how-to-use-tags" 16 | } 17 | ], 18 | "properties": { 19 | "ID": { 20 | "description": "Objects in the information model which require unique identifications contain an ID attribute, which are unique within the scope of the exchanged information", 21 | "comment": "According to 4.5.5.1 Object identification in ANSI/ISA-95.00.02-2018", 22 | "type": "string" 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/Material/MaterialClassProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:MaterialClassProperty;1", 5 | "description": "Properties of a material class shall be presented as material class properties. A material class may define zero or more material class properties. A material class property may be tested to the evaluated property in a test specification where the measured results may be recorded in a property measurement attribute in a test result.", 6 | "title": "Material class property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4815359+01:00", 9 | "modified": "2024-01-17T15:53:51.4815382+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:MaterialClassProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested material class property(s) makes up part of this material class property as the whole" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "tm:extends" 21 | }, 22 | { 23 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 24 | "rel": "tm:extends" 25 | } 26 | ] 27 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/Material/MaterialLotProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:MaterialLotProperty;1", 5 | "description": "Properties of a material lot shall be presented as material lot properties. Each material can have unique values for zero or more material lot properties, such as a specific pH value for the specific material lot, or a specific density for the material lot", 6 | "title": "Material lot property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4818113+01:00", 9 | "modified": "2024-01-17T15:53:51.4818124+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:MaterialLotProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested material lot property(s) makes up part of this material lot property as the whole" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:MaterialDefinitionProperty;1", 20 | "rel": "dtdl:mapsTo", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Maps to", 23 | "dtdl:description": "If the parent material lot supports a material definition, the material definition property(s) is applied in the material lot property(s)", 24 | "x-jsonschema:$comment": "Relationship type: Dependency", 25 | "dtdl:maxMultiplicity": 1 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 29 | "rel": "tm:extends" 30 | }, 31 | { 32 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 33 | "rel": "tm:extends" 34 | } 35 | ] 36 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationalLocation/OperationalLocationProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:OperationalLocationProperty;1", 5 | "description": "Properties of operational locations shall be presented as operational location properties. Anoperational location shall have zero or more operational location properties. These specify the current property values of the operational location for the associated operational location class property. Operational location properties may include a unit of measure.", 6 | "title": "Operational location property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5005738+01:00", 9 | "modified": "2024-01-17T15:53:51.5005777+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:OperationalLocationProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child operational location property(s) of this operational location property.", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:OperationalLocationClassProperty;1", 21 | "rel": "dtdl:mapsTo", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Maps to", 24 | "dtdl:description": "The operational location class property to which this operational location class property maps.", 25 | "x-jsonschema:$comment": "Relationship type: Dependency" 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 29 | "rel": "tm:extends" 30 | } 31 | ] 32 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsDefinition/ParameterSpecification.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ParameterSpecification;1", 5 | "description": "Specific parameters required for an operations segment shall be presented as parameter specifications. An operations segment may have an associated set of zero or more parameter specifications.", 6 | "title": "Parameter specification", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4167823+01:00", 9 | "modified": "2024-01-17T15:53:51.416784+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ParameterSpecification;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child parameter specification(s) that are part of the parameter segment parameter as the whole", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:HierarchyScope;1", 21 | "rel": "dtdl:hierarchyScopeRel", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "fits hierarchy scope", 24 | "dtdl:description": "Optional relationship to hierarchy.", 25 | "x-jsonschema:$comment": "Not part of the Standard Specs.", 26 | "dtdl:maxMultiplicity": 1 27 | }, 28 | { 29 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 30 | "rel": "tm:extends" 31 | } 32 | ], 33 | "properties": { 34 | "hierarchyScope": { 35 | "title": "Hierarchy scope", 36 | "description": "Identifies where the exchanged information fits within the role based equipment hierarchy. Optionally, hierarchy scopedefines the scope of the physical asset class, such as the site or area where it is defined", 37 | "type": "string" 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsEvent/OperationsEventClassRecordSpecification.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:OperationsEventClassRecordSpecification;1", 5 | "description": "Operations event classes define common structures of operations event definitions using operations event class record specifications. Operations event definitions as members of an operations event class that contain operations event class record specifications must support the record specification entries indicated in the operations event class. The structure and semantics of the operations event class record specification is the same as the operations event definition record specification", 6 | "title": "Operations event class record specification", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5064637+01:00", 9 | "modified": "2024-01-17T15:53:51.5064808+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "This parent operations event definition record specification is whole of the child operations event definition record specification(s) as the part" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 20 | "rel": "tm:extends" 21 | } 22 | ] 23 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsEvent/OperationsEventDefinitionRecordSpecification.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1", 5 | "description": "Specification of the allowed content of operations event record shall be defined as the operations event definition record specification. Information object contents in an operations event vary depending on the process context of the operations event. The operations event definition record specification describes and specifies the information objects and associated actions that are allowed in the operations event occurrence. The publisher/sender shall follow this specification to construct the message", 6 | "title": "Operations event definition record specification", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5097035+01:00", 9 | "modified": "2024-01-17T15:53:51.5097153+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:OperationsEventClassRecordSpecification;1", 13 | "rel": "dtdl:mapsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Maps to", 16 | "dtdl:description": "If the operations event supports an operations event class, the operations event class record specification(s) is applied in this operations event definition record specification. This operations event definition record specification maps to the corresponding operations event class record specification", 17 | "dtdl:maxMultiplicity": 1 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1", 21 | "rel": "dtdl:contains", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Contains", 24 | "dtdl:description": "This parent operations event definition record specification is whole of the child operations event definition record specification (s) as the part" 25 | }, 26 | { 27 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 28 | "rel": "tm:extends" 29 | } 30 | ] 31 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/EvaluatedProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:EvaluatedProperty;1", 5 | "description": "The evaluated property object identifies the set of testable object / testable object property pairs to be measured and the applicable test method to obtain a property measurement", 6 | "title": "Evaluated property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3880277+01:00", 9 | "modified": "2024-01-17T15:53:51.3880304+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 13 | "rel": "dtdl:correspondsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Corresponds to", 16 | "dtdl:description": "The testable object property ID which is to be measured by this test specification" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:WorkDefinition;1", 20 | "rel": "dtdl:measuredWithMethodOf", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Measured with method of", 23 | "dtdl:description": "The work master ID or work directive ID which is applied test method to obtain the measurement of this evaluated property for test specification of the testable object property ID", 24 | "dtdl:maxMultiplicity": 1 25 | }, 26 | { 27 | "href": "dtmi:digitaltwins:isa95:TestSpecificationCriteria;1", 28 | "rel": "dtdl:references", 29 | "@type": "dtdl:Relationship", 30 | "dtdl:displayName": "References", 31 | "dtdl:description": "This test specification criteria used to evaluate the evaluated property of a testable object property" 32 | }, 33 | { 34 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 35 | "rel": "tm:submodel", 36 | "dtdl:name": "description", 37 | "dtdl:displayName": "Description", 38 | "dtdl:description": "Description of the evaluated property" 39 | }, 40 | { 41 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 42 | "rel": "tm:extends" 43 | } 44 | ] 45 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/OperationsTestRequirement.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:OperationsTestRequirement;1", 5 | "description": "The operations test requirements are represented as abstract interface objects to simplify the operations test model diagram", 6 | "title": "Operations test requirement", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3897676+01:00", 9 | "modified": "2024-01-17T15:53:51.3897717+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:TestSpecification;1", 13 | "rel": "dtdl:specifies", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Specifies", 16 | "dtdl:description": "The test specification(s) used to evaluate this operations test requirement" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:TestableObject;1", 20 | "rel": "dtdl:correspondsToAnElementIn", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Corresponds to an element in", 23 | "dtdl:description": "A cross-model association to an element in the resource model for the testable object as explained in Clause 3.3.8. Identifies the associated testable object of this operations test requirement for a specific segment requirement" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 27 | "rel": "dtdl:mapsToAPropertyElementIn", 28 | "@type": "dtdl:Relationship", 29 | "dtdl:displayName": "Maps to a property element in", 30 | "dtdl:description": "A cross-model dependency to a property element in the resource model for the testable object property as explained in Clause 3.3.8" 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ] 37 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/ResourceActual.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceActual;1", 5 | "description": "/Abstract/ The resource actual represents an abstract interface object to simplify the operations test model diagram. The interface object represents the objects that can report test result(s)", 6 | "title": "Resource actual", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3864791+01:00", 9 | "modified": "2024-01-17T15:53:51.3864926+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:TestResult;1", 13 | "rel": "dtdl:reports", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Reports", 16 | "dtdl:description": "This resource actual reports the test result in a segment response or job response (Defined in Part 4)." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 20 | "rel": "tm:extends" 21 | } 22 | ] 23 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/TestSpecificationProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:TestSpecificationProperty;1", 5 | "description": "The test specification property object defines properties of the test specification. These properties are not the characteristics to be tested", 6 | "title": "Test specification property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3844033+01:00", 9 | "modified": "2024-01-17T15:53:51.384407+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:TestSpecificationProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child test specification property(s) of this test specification property" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 20 | "rel": "tm:extends" 21 | } 22 | ] 23 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/TestableObject.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:TestableObject;1", 5 | "description": "The testable object and testable object property are represented as abstract interface objects to simplify the operations test model diagram. The interface objects represent the objects that are able to be tested by a test specification(s)", 6 | "title": "Testable object", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3902254+01:00", 9 | "modified": "2024-01-17T15:53:51.3902295+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:TestSpecification;1", 13 | "rel": "dtdl:specifies", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Specifies", 16 | "dtdl:description": "The test specification(s) used to evaluate this testable object." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 20 | "rel": "dtdl:hasTestableObjectPropertyValuesOf", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Has values of", 23 | "dtdl:description": "The testable object property values of this testable object" 24 | } 25 | ] 26 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/OperationsTest/TestableObjectProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 5 | "description": "The testable object and testable object property are represented as abstract interface objects to simplify the operations test model diagram. The interface objects represent the objects that are able to be tested by a test specification(s)", 6 | "title": "Testable object property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.3881348+01:00", 9 | "modified": "2024-01-17T15:53:51.3881358+01:00" 10 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/Personnel/PersonProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:PersonProperty;1", 5 | "description": "Properties of a person shall be presented as person properties. Each person shall have zero or more person properties. These specify the current property values of the person for the associated personnel class property. ", 6 | "title": "Person property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4222629+01:00", 9 | "modified": "2024-01-17T15:53:51.4222671+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:PersonProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "This nested person property(s)is part of the person property as the whole.", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1", 21 | "rel": "dtdl:mapsTo", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Maps to", 24 | "dtdl:description": "If the person supports the parent personnel class,the personnel class property(s)is applied in this person property(s). ", 25 | "x-jsonschema:$comment": "Relationship type: Dependency" 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 29 | "rel": "tm:extends" 30 | }, 31 | { 32 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 33 | "rel": "tm:extends" 34 | } 35 | ] 36 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/Personnel/PersonnelClassProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1", 5 | "description": "Properties of a personnel class shall be presented as personnel class properties. Each personnel class shall have zero or more recognized properties", 6 | "title": "Personnel class property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4253176+01:00", 9 | "modified": "2024-01-17T15:53:51.4253246+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested personnel class property(s) makes up part of this personnel class property as the whole." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "tm:extends" 21 | }, 22 | { 23 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 24 | "rel": "tm:extends" 25 | } 26 | ] 27 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/PhysicalAssetAndEquipment/EquipmentClassProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1", 5 | "description": "An equipment class property may be tested to the evaluated property in a test specification where the measured results may be recorded in a property measurement attribute in a test result. The measured results may also be evaluated to the test specification criteria in the test specification that references the evaluated property where they may be recorded in an evaluated criterion result attribute in the test result. Equipment class properties may contain nested equipment class properties.", 6 | "title": "Equipment class property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5279883+01:00", 9 | "modified": "2024-01-17T15:53:51.5279896+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested equipment class property(s) makes up part of thisequipment class property as the whole" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "tm:extends" 21 | }, 22 | { 23 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 24 | "rel": "tm:extends" 25 | } 26 | ] 27 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/PhysicalAssetAndEquipment/EquipmentProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:EquipmentProperty;1", 5 | "description": "Properties of equipment shall be presented as equipment properties. An equipment shall have zero or more equipment properties. These specify the current property values of the equipment for the associated equipment class property.", 6 | "title": "Equipment property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5304705+01:00", 9 | "modified": "2024-01-17T15:53:51.5304758+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:EquipmentProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested equipment property(s) makes up part of this equipment property as the whole.", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1", 21 | "rel": "dtdl:mapsTo", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Maps to", 24 | "dtdl:description": "If the parent equipment supports an equipment class, the equipment class property(s) is applied in this equipment property(s).", 25 | "x-jsonschema:$comment": "Relationship type: Dependency" 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 29 | "rel": "tm:extends" 30 | }, 31 | { 32 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 33 | "rel": "tm:extends" 34 | } 35 | ] 36 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/PhysicalAssetAndEquipment/PhysicalAssetClassProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1", 5 | "description": "Properties of a physical asset class shall be presented as physical asset class properties. Each may have zero or more recognized properties.", 6 | "title": "Physical Asset class property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5275126+01:00", 9 | "modified": "2024-01-17T15:53:51.5275199+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested physical asset class property(s) makes up part of this physical asset class property as the whole" 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "tm:extends" 21 | }, 22 | { 23 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 24 | "rel": "tm:extends" 25 | } 26 | ] 27 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/PhysicalAssetAndEquipment/PhysicalAssetProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:PhysicalAssetProperty;1", 5 | "description": "Properties of physical assets shall be presented as physical asset properties. A physical asset shall have zero or more physical asset properties. These specify the current property values of the physical asset for the associated physical asset class property. Physical asset properties may include a unit of measure. ", 6 | "title": "Physical Asset property", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5278243+01:00", 9 | "modified": "2024-01-17T15:53:51.5278263+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:PhysicalAssetProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested physical asset property(s) makes up part of this physical asset property as the whole.", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1", 21 | "rel": "dtdl:mapsTo", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Maps to", 24 | "dtdl:description": "If the parent physical asset supports a physical asset class, the physical asset class property(s) is applied in this physical asset property(s).This physical asset property maps to the corresponding physical asset class property.", 25 | "x-jsonschema:$comment": "Relationship type: Dependency" 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 29 | "rel": "tm:extends" 30 | }, 31 | { 32 | "href": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 33 | "rel": "tm:extends" 34 | } 35 | ] 36 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part2/ProcessSegment/ProcessSegmentParameter.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ProcessSegmentParameter;1", 5 | "description": "Specific parameters required for a process segment shall be presented as process segment parameters. Process segment parameters may contain nested process segment parameters", 6 | "title": "Process segment parameter", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.4875925+01:00", 9 | "modified": "2024-01-17T15:53:51.4875995+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ProcessSegmentParameter;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "This parameter segment parameter is part of the parameter segment parameter as the whole", 17 | "x-jsonschema:$comment": "Relationship type: Composition hierarchy" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:HierarchyScope;1", 21 | "rel": "dtdl:hierarchyScopeRel", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "fits hierarchy scope", 24 | "dtdl:description": "Optional relationship to hierarchy.", 25 | "x-jsonschema:$comment": "Not part of the Standard Specs.", 26 | "dtdl:maxMultiplicity": 1 27 | }, 28 | { 29 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 30 | "rel": "tm:extends" 31 | } 32 | ], 33 | "properties": { 34 | "hierarchyScope": { 35 | "title": "Hierarchy scope", 36 | "description": "Identifies where the exchanged information fits within the role based equipment hierarchy. Optionally, hierarchy scopedefines the scope of the physical asset class, such as the site or area where it is defined", 37 | "type": "string" 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/FromResourceReferenceProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:FromResourceReferenceProperty;1", 5 | "description": "A 'from' reference to a resource shall be defined as a from resource reference.", 6 | "title": "From resource reference property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5589894+01:00", 9 | "modified": "2024-01-17T15:53:51.5589924+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:FromResourceReferenceProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested 'from' resource reference properties of this 'from' resource reference property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "dtdl:mapsToClassProperty", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Maps To", 23 | "dtdl:description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8." 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 27 | "rel": "dtdl:mapsToProperty", 28 | "@type": "dtdl:Relationship", 29 | "dtdl:displayName": "Maps To", 30 | "dtdl:description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8." 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ], 37 | "properties": { 38 | "value": { 39 | "title": "Value", 40 | "description": "The value, set of values, or range of the property.", 41 | "type": "string" 42 | }, 43 | "valueUnitOfMeasure": { 44 | "title": "Value unit of measure", 45 | "description": "The unit of measure of the associated property value", 46 | "type": "string" 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/ResourceNetworkConnectionProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionProperty;1", 5 | "description": "A property of a resource network connection shall be defined as a resource network connection property. ", 6 | "title": "Resource network connection property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5617117+01:00", 9 | "modified": "2024-01-17T15:53:51.5617137+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1", 13 | "rel": "dtdl:mapsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Maps To", 16 | "dtdl:description": "The resource network connection type property(s) of the resource network connection type defines this resource network connection property(s) when derived from a specific resource network connection type.", 17 | "dtdl:maxMultiplicity": 1 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionProperty;1", 21 | "rel": "dtdl:contains", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Contains", 24 | "dtdl:description": "The nested resource network connection properties of this resource network connection property" 25 | }, 26 | { 27 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 28 | "rel": "tm:submodel", 29 | "dtdl:name": "description", 30 | "dtdl:displayName": "Description", 31 | "dtdl:description": "Contains additional information and descriptions" 32 | }, 33 | { 34 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 35 | "rel": "tm:extends" 36 | } 37 | ], 38 | "properties": { 39 | "value": { 40 | "title": "Value", 41 | "description": "The value, set of values, or range of the property.", 42 | "type": "string" 43 | }, 44 | "valueUnitOfMeasure": { 45 | "title": "Value unit of measure", 46 | "description": "The unit of measure of the associated property value", 47 | "type": "string" 48 | } 49 | } 50 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/ResourceNetworkConnectionType.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionType;1", 5 | "description": "A definition of a type of a resource network connection shall be defined as a resource network connection type.", 6 | "title": "Resource network connection type", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5619691+01:00", 9 | "modified": "2024-01-17T15:53:51.5619706+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1", 13 | "rel": "dtdl:hasPropertiesOf", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Has properties of", 16 | "dtdl:description": "The resource network connection type property(s) related to this resource network connection type." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information and descriptions" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 27 | "rel": "tm:submodel", 28 | "dtdl:name": "type", 29 | "dtdl:displayName": "Type", 30 | "dtdl:description": "The connection type" 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ] 37 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/ResourceNetworkConnectionTypeProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1", 5 | "description": "A 'from' reference to a resource shall be defined as a from resource reference.", 6 | "title": "Resource network connection type property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5609662+01:00", 9 | "modified": "2024-01-17T15:53:51.5609961+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionProperty;1", 13 | "rel": "dtdl:mapsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Maps To", 16 | "dtdl:description": "The resource network connection property(s) derived from this resource network connection type property supporting its parent object. Only applied, if navigation is required." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1", 20 | "rel": "dtdl:contains", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Contains", 23 | "dtdl:description": "The nested resource network connection type properties of this network connection type property." 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 27 | "rel": "tm:submodel", 28 | "dtdl:name": "description", 29 | "dtdl:displayName": "Description", 30 | "dtdl:description": "Contains additional information and descriptions" 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ], 37 | "properties": { 38 | "value": { 39 | "title": "Value", 40 | "description": "The value, set of values, or range of the property.", 41 | "type": "string" 42 | }, 43 | "valueUnitOfMeasure": { 44 | "title": "Value unit of measure", 45 | "description": "The unit of measure of the associated property value", 46 | "type": "string" 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/ResourceRelationshipNetworkProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceRelationshipNetworkProperty;1", 5 | "description": "A resource relationship network property may contain nested resource relationship network property(s).", 6 | "title": "Resource relationship network property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5585338+01:00", 9 | "modified": "2024-01-17T15:53:51.5585366+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ResourceRelationshipNetworkProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested resource relationship network properties of this resource relationship network property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information and descriptions" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/ResourceRelationship/ToResourceReferenceProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ToResourceReferenceProperty;1", 5 | "description": "A 'to' reference to a resource shall be defined as a to resource reference.", 6 | "title": "To resource reference property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5613653+01:00", 9 | "modified": "2024-01-17T15:53:51.5613674+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:ToResourceReferenceProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The nested 'to' resource reference properties of this 'to' resource reference property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 20 | "rel": "dtdl:mapsToClassProperty", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Maps To", 23 | "dtdl:description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8." 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:ResourceProperty;1", 27 | "rel": "dtdl:mapsToProperty", 28 | "@type": "dtdl:Relationship", 29 | "dtdl:displayName": "Maps To", 30 | "dtdl:description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8." 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ], 37 | "properties": { 38 | "value": { 39 | "title": "Value", 40 | "description": "The value, set of values, or range of the property.", 41 | "type": "string" 42 | }, 43 | "valueUnitOfMeasure": { 44 | "title": "Value unit of measure", 45 | "description": "The unit of measure of the associated property value", 46 | "type": "string" 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkAlert/WorkAlertDefinitionProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1", 5 | "description": "The work alert definition property shall be defined as property on a work alert definition property.", 6 | "title": "Work alert definition property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5811826+01:00", 9 | "modified": "2024-01-17T15:53:51.5811843+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child work alert definition properties of this work alert definition property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Additional information and description about the operations event class property" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkAlert/WorkAlertProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkAlertProperty;1", 5 | "description": "The work alert property shall be defined as property on a work alert property.", 6 | "title": "Work alert property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5814956+01:00", 9 | "modified": "2024-01-17T15:53:51.5814979+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1", 13 | "rel": "dtdl:mapsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Maps to", 16 | "dtdl:description": "If the parent work alert supports a work alert definition, the work alert definition property(s) is applied in this work alert property(s).", 17 | "dtdl:maxMultiplicity": 1 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:WorkAlertProperty;1", 21 | "rel": "dtdl:contains", 22 | "@type": "dtdl:Relationship", 23 | "dtdl:displayName": "Contains", 24 | "dtdl:description": "The child work alert properties of this work alert property." 25 | }, 26 | { 27 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 28 | "rel": "tm:submodel", 29 | "dtdl:name": "description", 30 | "dtdl:displayName": "Description", 31 | "dtdl:description": "Additional information about the operations event property" 32 | }, 33 | { 34 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 35 | "rel": "tm:extends" 36 | } 37 | ], 38 | "properties": { 39 | "value": { 40 | "title": "Value", 41 | "description": "The value, set of values, or range of the property.", 42 | "type": "string" 43 | }, 44 | "valueUnitOfMeasure": { 45 | "title": "Value unit of measure", 46 | "description": "The unit of measure of the associated property value", 47 | "type": "string" 48 | } 49 | } 50 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkCalendar/WorkCalendarDefinitionEntryProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1", 5 | "description": "The work calendar definition entry property shall be defined as property on a work calendar definition entry.", 6 | "title": "Work calendar definition entry property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5718266+01:00", 9 | "modified": "2024-01-17T15:53:51.5718303+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The work calendar definition entry properties of this work calendar definition entry property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Additional information and description about the work calendar definition entry property" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkCalendar/WorkCalendarDefinitionProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionProperty;1", 5 | "description": "The work calendar definition property shall be defined as property on a work calendar definition property.", 6 | "title": "Work calendar definition property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5725866+01:00", 9 | "modified": "2024-01-17T15:53:51.5725895+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The work calendar definition properties of this work calendar definition property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Additional information and description about the work calendar definition property" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkCalendar/WorkCalendarEntryProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarEntryProperty;1", 5 | "description": "The work calendar entry property shall be defined as a property on a work calendar entry.", 6 | "title": "Work calendar entry property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5729204+01:00", 9 | "modified": "2024-01-17T15:53:51.5729384+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1", 13 | "rel": "dtdl:mapsTo", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Maps to", 16 | "dtdl:description": "The work calendar definition entry property that defines this work calendar entry property.", 17 | "x-jsonschema:$comment": "Mandatory - Cardinality 1", 18 | "dtdl:maxMultiplicity": 1 19 | }, 20 | { 21 | "href": "dtmi:digitaltwins:isa95:WorkCalendarEntryProperty;1", 22 | "rel": "dtdl:contains", 23 | "@type": "dtdl:Relationship", 24 | "dtdl:displayName": "Contains", 25 | "dtdl:description": "The work calendar entry properties of this work calendar entry property." 26 | }, 27 | { 28 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 29 | "rel": "tm:submodel", 30 | "dtdl:name": "description", 31 | "dtdl:displayName": "Description", 32 | "dtdl:description": "Additional information about the work calendar entry property" 33 | }, 34 | { 35 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 36 | "rel": "tm:extends" 37 | } 38 | ], 39 | "properties": { 40 | "value": { 41 | "title": "Value", 42 | "description": "The value, set of values, or range of the property.", 43 | "type": "string" 44 | }, 45 | "valueUnitOfMeasure": { 46 | "title": "Value unit of measure", 47 | "description": "The unit of measure of the associated property value", 48 | "type": "string" 49 | } 50 | } 51 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkCalendar/WorkCalendarProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarProperty;1", 5 | "description": "The work calendar property shall be defined as property on a work definition property.", 6 | "title": "Work calendar property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5740294+01:00", 9 | "modified": "2024-01-17T15:53:51.5740346+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCalendarProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child work calendar properties of this work calendar property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Additional information about the work calendar property" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkDefinition/WorkDirective.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkDirective;1", 5 | "description": "The resources and instructions required to perform a unit of work for a specific job order shall be defined as a work directive.", 6 | "title": "Work directive", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5925915+01:00", 9 | "modified": "2024-01-17T15:53:51.5926027+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkMaster;1", 13 | "rel": "dtdl:isCretaedFrom", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Is Created From", 16 | "dtdl:description": "The work master used to create this work directive." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:WorkDirective;1", 20 | "rel": "dtdl:contains", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Contains", 23 | "dtdl:description": "The related object(s), work directive, makes up part of this work directive as the whole." 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecification;1", 27 | "rel": "dtdl:hasA", 28 | "@type": "dtdl:Relationship", 29 | "dtdl:displayName": "Has A", 30 | "dtdl:description": "This work directive defined in part by the workflow specification(s)" 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:WorkDefinition;1", 34 | "rel": "tm:extends" 35 | } 36 | ] 37 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationConnectionType.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionType;1", 5 | "description": "A workflow specification connection type defines the properties that can be associated with a specific workflow specification connection.", 6 | "title": "Workflow specification connection type", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5851687+01:00", 9 | "modified": "2024-01-17T15:53:51.5851756+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionTypeProperty;1", 13 | "rel": "dtdl:hasPropertiesOf", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Has properties of", 16 | "dtdl:description": "The workflow specification connection type property(s) defines in part this workflow specification connection type.." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "fromMultiplicity": { 32 | "title": "From multiplicity", 33 | "description": "Defines the multiplicity of the “from” connection:", 34 | "type": "string" 35 | }, 36 | "toMultiplicity": { 37 | "title": "To multiplicity", 38 | "description": "Defines the multiplicity of the “to” connection:", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationConnectionTypeProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionTypeProperty;1", 5 | "description": "A property of a workflow specification connection type shall be defined as a workflow specification connection type property. ", 6 | "title": "Workflow specification connection type property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5865202+01:00", 9 | "modified": "2024-01-17T15:53:51.5865283+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child workflow specification connection type properties of this workflow specification connection type property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionProperty;1", 20 | "rel": "dtdl:mapsTo", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Maps to", 23 | "dtdl:description": "If the workflow specification connection supports a workflow specification connection type, this workflow specification connection type property(s) is applied in the workflow specification connection property(s)." 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 27 | "rel": "tm:submodel", 28 | "dtdl:name": "description", 29 | "dtdl:displayName": "Description", 30 | "dtdl:description": "Contains additional information" 31 | }, 32 | { 33 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 34 | "rel": "tm:extends" 35 | } 36 | ], 37 | "properties": { 38 | "value": { 39 | "title": "Value", 40 | "description": "The value, set of values, or range of the property.", 41 | "type": "string" 42 | }, 43 | "valueUnitOfMeasure": { 44 | "title": "Value unit of measure", 45 | "description": "The unit of measure of the associated property value", 46 | "type": "string" 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeProperty;1", 5 | "description": "A property of a workflow specification node shall be defined as a workflow specification node property.", 6 | "title": "Workflow specification node property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5872007+01:00", 9 | "modified": "2024-01-17T15:53:51.5872056+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child workflow specification node properties of this workflow specification node property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 20 | "rel": "dtdl:mapsTo", 21 | "@type": "dtdl:Relationship", 22 | "dtdl:displayName": "Maps to", 23 | "dtdl:description": "If the workflow specification node supports a workflow specification node type, the workflow specification node type property is applied in this workflow specification node property(s).", 24 | "dtdl:maxMultiplicity": 1 25 | }, 26 | { 27 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 28 | "rel": "tm:submodel", 29 | "dtdl:name": "description", 30 | "dtdl:displayName": "Description", 31 | "dtdl:description": "Contains additional information" 32 | }, 33 | { 34 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 35 | "rel": "tm:extends" 36 | } 37 | ], 38 | "properties": { 39 | "value": { 40 | "title": "Value", 41 | "description": "The value, set of values, or range of the property.", 42 | "type": "string" 43 | }, 44 | "valueUnitOfMeasure": { 45 | "title": "Value unit of measure", 46 | "description": "The unit of measure of the associated property value", 47 | "type": "string" 48 | } 49 | } 50 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeType.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeType;1", 5 | "description": "A workflow specification node type defines the properties that can be associated with a specific workflow specification node.", 6 | "title": "Workflow specification node type", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5875744+01:00", 9 | "modified": "2024-01-17T15:53:51.5875772+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 13 | "rel": "dtdl:hasPropertiesOf", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Has properties of", 16 | "dtdl:description": "The workflow specification node type property(s) defines in part this workflow specification node type.." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeTypeProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 5 | "description": "A property of a workflow specification node type shall be defined as a workflow specification node type property.", 6 | "title": "Workflow specification node type property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5826439+01:00", 9 | "modified": "2024-01-17T15:53:51.5826454+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The child workflow specification node type properties of this workflow specification node type property." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationProperty;1", 5 | "description": "A property of a workflow specification shall be defined as a workflow specification property. A workflow specification property may contain nested workflow specification property(s).", 6 | "title": "Workflow specification property", 7 | "$comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.5843978+01:00", 9 | "modified": "2024-01-17T15:53:51.5844057+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkflowSpecificationProperty;1", 13 | "rel": "dtdl:contains", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "Contains", 16 | "dtdl:description": "The work directive defined in part by this workflow specification." 17 | }, 18 | { 19 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 20 | "rel": "tm:submodel", 21 | "dtdl:name": "description", 22 | "dtdl:displayName": "Description", 23 | "dtdl:description": "Contains additional information" 24 | }, 25 | { 26 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 27 | "rel": "tm:extends" 28 | } 29 | ], 30 | "properties": { 31 | "value": { 32 | "title": "Value", 33 | "description": "The value, set of values, or range of the property.", 34 | "type": "string" 35 | }, 36 | "valueUnitOfMeasure": { 37 | "title": "Value unit of measure", 38 | "description": "The unit of measure of the associated property value", 39 | "type": "string" 40 | } 41 | } 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/Resource.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:Resource;1", 5 | "description": "Abstract model for all resource models (person, equipment, physical asset, material definition, material lot, material sublot, work master, process segment, operation definition, operational location, operations segment, test specification, test result)", 6 | "title": "Resource", 7 | "created": "2024-01-17T15:53:51.2524981+01:00", 8 | "modified": "2024-01-17T15:53:51.252499+01:00", 9 | "links": [ 10 | { 11 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 12 | "rel": "tm:extends" 13 | } 14 | ] 15 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/ResourceClass.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceClass;1", 5 | "description": "Abstract model for all resource class models (person class, equipment class, physical asset class, material class)", 6 | "title": "Resource class", 7 | "created": "2024-01-17T15:53:51.2350698+01:00", 8 | "modified": "2024-01-17T15:53:51.2350705+01:00", 9 | "links": [ 10 | { 11 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 12 | "rel": "tm:extends" 13 | } 14 | ] 15 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/ResourceClassProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 5 | "description": "Abstract model for all resource class property models (person class, equipment class, physical asset class, material class)", 6 | "title": "Resource class property", 7 | "created": "2024-01-17T15:53:51.2502048+01:00", 8 | "modified": "2024-01-17T15:53:51.2502092+01:00", 9 | "links": [ 10 | { 11 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 12 | "rel": "tm:submodel", 13 | "dtdl:name": "description", 14 | "dtdl:displayName": "Description", 15 | "dtdl:description": "Additional information about the resource class property" 16 | }, 17 | { 18 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 19 | "rel": "tm:extends" 20 | } 21 | ], 22 | "properties": { 23 | "propertyType": { 24 | "title": "Property type", 25 | "description": "Defines the type of the property.", 26 | "oneOf": [ 27 | { 28 | "const": "classType", 29 | "title": "Class Type", 30 | "description": "The property value is defined for the class and there is no value associated with an instance" 31 | }, 32 | { 33 | "const": "instanceType", 34 | "title": "Instance Type", 35 | "description": "the property value of the class is undefined" 36 | }, 37 | { 38 | "const": "defaultType", 39 | "title": "Default Type", 40 | "description": "The property value is defined for the class as the default instance value, but individual instances of the class may redefine specific values." 41 | } 42 | ], 43 | "type": "string" 44 | }, 45 | "value": { 46 | "title": "Value", 47 | "description": "The value, set of values, or range of the property.", 48 | "type": "string" 49 | }, 50 | "valueUnitOfMeasure": { 51 | "title": "Value unit of measure", 52 | "description": "The unit of measure of the associated property value", 53 | "type": "string" 54 | } 55 | } 56 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/ResourceProperty.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ResourceProperty;1", 5 | "description": "Abstract model for all resource property models (person, equipment, physical asset, material definition, material lot, material sublot, work master, process segment, operation definition, operational location, operations segment, test specification, test result)", 6 | "title": "Resource property", 7 | "created": "2024-01-17T15:53:51.253042+01:00", 8 | "modified": "2024-01-17T15:53:51.2530429+01:00", 9 | "links": [ 10 | { 11 | "href": "dtmi:digitaltwins:isa95:LangStringSet;1", 12 | "rel": "tm:submodel", 13 | "dtdl:name": "description", 14 | "dtdl:displayName": "Description", 15 | "dtdl:description": "Additional information about the resource property." 16 | }, 17 | { 18 | "href": "dtmi:digitaltwins:isa95:BaseModel;1", 19 | "rel": "tm:extends" 20 | } 21 | ], 22 | "properties": { 23 | "value": { 24 | "title": "Value", 25 | "description": "The value, set of values, or range of the property.", 26 | "type": "string" 27 | }, 28 | "valueUnitOfMeasure": { 29 | "title": "Value unit of measure", 30 | "description": "The unit of measure of the associated property value", 31 | "type": "string" 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/CommonObjectModels/SpatialDefinition.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:SpatialDefinition;1", 5 | "description": "The spatial definition provides a means of communicating zero-dimensional point, one-dimensional line, or two-dimensional shape or three-dimensional solid geospatial location data for planning/scheduling, actuals, resources, and analytics.", 6 | "title": "Spatial definition", 7 | "$comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "created": "2024-01-17T15:53:51.2528134+01:00", 9 | "modified": "2024-01-17T15:53:51.2528146+01:00", 10 | "properties": { 11 | "value": { 12 | "title": "Value", 13 | "description": "A string to uniquely identify a spatial definition. EXAMPLE 1 UN/CEFACT CCTS: TextType) of the geospatial information in the format indicated in the format attribute.", 14 | "type": "string" 15 | }, 16 | "format": { 17 | "title": "Format", 18 | "description": "An enumerator that determines the format of the value attribute. E.g. GPX, WKT, ...", 19 | "type": "string" 20 | }, 21 | "SRID": { 22 | "description": "SRID is the Spatial Reference Identifier which identifies the coordinate reference system to identify a predefined coordinate", 23 | "type": "string" 24 | }, 25 | "SRIDauthority": { 26 | "title": "SRID authority", 27 | "description": "The SRID authority identifies the authority that defines the coordinate reference system identified by the SRID. ", 28 | "type": "string" 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/Area.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:Area;1", 5 | "description": "An area is a physical, geographical, or logical grouping determined by the site. It may contain work centers such as process cells, production units, production lines, and storage zones. Most Level 3 functions occur within the area. The main production capability and geographical location within a site usually identify areas. ", 6 | "title": "Area", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2342755+01:00", 9 | "modified": "2024-01-17T15:53:51.2342766+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCenter;1", 13 | "rel": "dtdl:workCenter", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "contains Work center", 16 | "dtdl:description": "Reference to a contained work center of the area", 17 | "x-jsonschema:$comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:SiteAsset;1", 21 | "rel": "tm:extends" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/Enterprise.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:Enterprise;1", 5 | "description": "An enterprise is a collection of sites and areas and represents the top level of a role based equipment hierarchy. The enterprise is responsible for determining what products will be manufactured, at which sites they will be manufactured, and in general how they will be manufactured. ", 6 | "title": "Enterprise", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2347476+01:00", 9 | "modified": "2024-01-17T15:53:51.2347483+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:Site;1", 13 | "rel": "dtdl:site", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "contains Site", 16 | "dtdl:description": "Reference to a contained site of the enterprise", 17 | "x-jsonschema:$comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:SiteAsset;1", 21 | "rel": "tm:extends" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/ProcessCell.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ProcessCell;1", 5 | "description": "Process cells and units are the lowest level of equipment typically scheduled by the Level 4 and Level 3 functions for batch manufacturing processes. ", 6 | "title": "Process cell", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2344872+01:00", 9 | "modified": "2024-01-17T15:53:51.2344878+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCenter;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/ProductionLine.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ProductionLine;1", 5 | "description": "Production lines and work cells are the lowest levels of equipment typically scheduled by the Level 4 or Level 3 functions for discrete manufacturing processes. ", 6 | "title": "Production line", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2343492+01:00", 9 | "modified": "2024-01-17T15:53:51.23435+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCenter;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/ProductionUnit.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ProductionUnit;1", 5 | "description": "A production unit generally encompasses all of the equipment required for a segment of continuous production that operates in a relatively autonomous manner. ", 6 | "title": "Production unit", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2346208+01:00", 9 | "modified": "2024-01-17T15:53:51.2346214+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCenter;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/Site.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:Site;1", 5 | "description": "A site is a physical, geographical, or logical grouping determined by the enterprise. It may contain areas, production lines, process cells, and production units. The Level 4 functions at a site are involved in local site management and optimization. Site planning and scheduling may involve work centers or work units within the areas. ", 6 | "title": "Site", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2349906+01:00", 9 | "modified": "2024-01-17T15:53:51.2349913+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:Area;1", 13 | "rel": "dtdl:area", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "contains Area", 16 | "dtdl:description": "Reference to a contained area of the site", 17 | "x-jsonschema:$comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:SiteAsset;1", 21 | "rel": "tm:extends" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/SiteAsset.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:SiteAsset;1", 5 | "description": "An Abstract site asset in the physical asset equipment hierarchy", 6 | "title": "Site asset", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.234422+01:00", 9 | "modified": "2024-01-17T15:53:51.2344228+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:HierarchyScope;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/StorageUnit.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:StorageUnit;1", 5 | "description": "Storage zones and storage units are the lowest level of material movement equipment typically scheduled by the Level 4 and Level 3 functions for discrete, batch and continuous manufacturing processes. A storage zone is a type of work center and a storage unit is a type of work unit that is organized as elements within an area. These are the lower-level elements of an equipment hierarchy used in material storage and movement activities. ", 6 | "title": "Storage unit", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2348202+01:00", 9 | "modified": "2024-01-17T15:53:51.2348209+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkUnit;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/StorageZone.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:StorageZone;1", 5 | "description": "Storage zones and storage units are the lowest level of material movement equipment typically scheduled by the Level 4 and Level 3 functions for discrete, batch and continuous manufacturing processes. A storage zone is a type of work center and a storage unit is a type of work unit that is organized as elements within an area. These are the lower-level elements of an equipment hierarchy used in material storage and movement activities. ", 6 | "title": "Storage zone", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.231259+01:00", 9 | "modified": "2024-01-17T15:53:51.23126+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkCenter;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/Unit.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:Unit;1", 5 | "description": "Units have well-defined processing capabilities and throughput capacities and these are used for Level 3 functions. T", 6 | "title": "Unit", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2307235+01:00", 9 | "modified": "2024-01-17T15:53:51.2307251+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkUnit;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/WorkCell.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCell;1", 5 | "description": "Work cells are usually only identified when there is flexibility in the routing of work within a production line.", 6 | "title": "Work cell", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.234552+01:00", 9 | "modified": "2024-01-17T15:53:51.2345526+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkUnit;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/WorkCenter.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkCenter;1", 5 | "description": "Work centers are elements of the equipment hierarchy under an area. The term work center may be used when the specific type of the equipment element is not significant for the purpose of the discussion.", 6 | "title": "Work center", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.2337376+01:00", 9 | "modified": "2024-01-17T15:53:51.2337391+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:WorkUnit;1", 13 | "rel": "dtdl:workUnit", 14 | "@type": "dtdl:Relationship", 15 | "dtdl:displayName": "contains Work unit", 16 | "dtdl:description": "Reference to a contained work unit of the work center", 17 | "x-jsonschema:$comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle" 18 | }, 19 | { 20 | "href": "dtmi:digitaltwins:isa95:SiteAsset;1", 21 | "rel": "tm:extends" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/EquipmentHierarchy/WorkUnit.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:WorkUnit;1", 5 | "description": "A work unit is any element of the equipment hierarchy under a work center. Work units are the lowest form of elements in an equipment hierarchy that are typically scheduled by Level 3 functions.", 6 | "title": "Work unit", 7 | "$comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "created": "2024-01-17T15:53:51.234884+01:00", 9 | "modified": "2024-01-17T15:53:51.2348846+01:00", 10 | "links": [ 11 | { 12 | "href": "dtmi:digitaltwins:isa95:SiteAsset;1", 13 | "rel": "tm:extends" 14 | } 15 | ] 16 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/Extensions/LangStringSet.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:LangStringSet;1", 5 | "description": "A set of strings, each annotated by the language of the string. The meaning of the string in each language shall be the same.", 6 | "title": "Language String Set", 7 | "$comment": "Not part of the ISA95 standard. But enables multi language strings", 8 | "created": "2024-01-17T15:53:51.2297047+01:00", 9 | "modified": "2024-01-17T15:53:51.2297084+01:00", 10 | "properties": { 11 | "langString": { 12 | "description": "A set of strings, each annotated by the language of the string. The meaning of the stringin each language shall be the same.", 13 | "additionalProperties": { 14 | "type": "string" 15 | }, 16 | "type": "object", 17 | "@type": "dtdl:Map" 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Ontologies/ISA95-WoT/Extensions/Tags.tm.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "https://www.w3.org/2019/wot/td/v1", 3 | "@type": "tm:ThingModel", 4 | "@id": "dtmi:digitaltwins:isa95:ext:Tags;1", 5 | "description": "You can use the concept of tags to further identify and categorize your digital twins", 6 | "title": "Tags", 7 | "$comment": "Not part of the AAS meta model. Makes querying easier. See https://docs.microsoft.com/en-us/azure/digital-twins/how-to-use-tags", 8 | "created": "2024-01-17T15:53:51.2130292+01:00", 9 | "modified": "2024-01-17T15:53:51.2204341+01:00", 10 | "properties": { 11 | "markers": { 12 | "description": "A marker tag is a simple string that is used to mark or categorize a digital twin, such as 'blue' or 'red'. This string is the tag's name, and marker tags have no meaningful value—the tag is significant just by its presence (or absence).", 13 | "additionalProperties": { 14 | "type": "boolean" 15 | }, 16 | "type": "object", 17 | "@type": "dtdl:Map" 18 | }, 19 | "values": { 20 | "description": "A value tag is a key-value pair that is used to give each tag a value, such as 'color': 'blue' or 'color': 'red'. Once a value tag is created, it can also be used as a marker tag by ignoring the tag's value.", 21 | "additionalProperties": { 22 | "type": "string" 23 | }, 24 | "type": "object", 25 | "@type": "dtdl:Map" 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/BaseModel.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:BaseModel;1", 4 | "@type": "Interface", 5 | "displayName": "Base ISA-95 model", 6 | "description": "Abstract base model for all ISA-95 models", 7 | "comment": "Not part of the ISA-95 standard", 8 | "contents": [ 9 | { 10 | "@type": "Property", 11 | "name": "ID", 12 | "schema": "string", 13 | "description": "Objects in the information model which require unique identifications contain an ID attribute, which are unique within the scope of the exchanged information", 14 | "comment": "According to 4.5.5.1 Object identification in ANSI/ISA-95.00.02-2018" 15 | }, 16 | { 17 | "@type": "Component", 18 | "name": "tags", 19 | "schema": "dtmi:digitaltwins:isa95:ext:Tags;1", 20 | "comment": "Not part of the ISA-95 standard. Makes querying easier. See https://docs.microsoft.com/en-us/azure/digital-twins/how-to-use-tags" 21 | } 22 | ] 23 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/Material/MaterialClassProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:MaterialClassProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Material class property", 6 | "description": "Properties of a material class shall be presented as material class properties. A material class may define zero or more material class properties. A material class property may be tested to the evaluated property in a test specification where the measured results may be recorded in a property measurement attribute in a test result.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested material class property(s) makes up part of this material class property as the whole", 18 | "target": "dtmi:digitaltwins:isa95:MaterialClassProperty;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/Material/MaterialLotProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:MaterialLotProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Material lot property", 6 | "description": "Properties of a material lot shall be presented as material lot properties. Each material can have unique values for zero or more material lot properties, such as a specific pH value for the specific material lot, or a specific density for the material lot", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested material lot property(s) makes up part of this material lot property as the whole", 18 | "target": "dtmi:digitaltwins:isa95:MaterialLotProperty;1" 19 | }, 20 | { 21 | "@type": "Relationship", 22 | "name": "mapsTo", 23 | "displayName": "Maps to", 24 | "description": "If the parent material lot supports a material definition, the material definition property(s) is applied in the material lot property(s)", 25 | "target": "dtmi:digitaltwins:isa95:MaterialDefinitionProperty;1", 26 | "comment": "Relationship type: Dependency", 27 | "maxMultiplicity": 1 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationalLocation/OperationalLocationProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:OperationalLocationProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Operational location property", 6 | "description": "Properties of operational locations shall be presented as operational location properties. Anoperational location shall have zero or more operational location properties. These specify the current property values of the operational location for the associated operational location class property. Operational location properties may include a unit of measure.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The child operational location property(s) of this operational location property.", 17 | "target": "dtmi:digitaltwins:isa95:OperationalLocationProperty;1", 18 | "comment": "Relationship type: Composition hierarchy" 19 | }, 20 | { 21 | "@type": "Relationship", 22 | "name": "mapsTo", 23 | "displayName": "Maps to", 24 | "description": "The operational location class property to which this operational location class property maps.", 25 | "target": "dtmi:digitaltwins:isa95:OperationalLocationClassProperty;1", 26 | "comment": "Relationship type: Dependency" 27 | } 28 | ] 29 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsDefinition/ParameterSpecification.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ParameterSpecification;1", 4 | "@type": "Interface", 5 | "displayName": "Parameter specification", 6 | "description": "Specific parameters required for an operations segment shall be presented as parameter specifications. An operations segment may have an associated set of zero or more parameter specifications.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:ResourceProperty;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "contains", 13 | "displayName": "Contains", 14 | "description": "The child parameter specification(s) that are part of the parameter segment parameter as the whole", 15 | "target": "dtmi:digitaltwins:isa95:ParameterSpecification;1", 16 | "comment": "Relationship type: Composition hierarchy" 17 | }, 18 | { 19 | "@type": "Property", 20 | "name": "hierarchyScope", 21 | "displayName": "Hierarchy scope", 22 | "description": "Identifies where the exchanged information fits within the role based equipment hierarchy. Optionally, hierarchy scopedefines the scope of the physical asset class, such as the site or area where it is defined", 23 | "schema": "string" 24 | }, 25 | { 26 | "@type": "Relationship", 27 | "name": "hierarchyScopeRel", 28 | "displayName": "fits hierarchy scope", 29 | "description": "Optional relationship to hierarchy.", 30 | "comment": "Not part of the Standard Specs.", 31 | "target": "dtmi:digitaltwins:isa95:HierarchyScope;1", 32 | "maxMultiplicity": 1 33 | } 34 | ] 35 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsEvent/OperationsEventClassRecordSpecification.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:OperationsEventClassRecordSpecification;1", 4 | "@type": "Interface", 5 | "displayName": "Operations event class record specification", 6 | "description": "Operations event classes define common structures of operations event definitions using operations event class record specifications. Operations event definitions as members of an operations event class that contain operations event class record specifications must support the record specification entries indicated in the operations event class. The structure and semantics of the operations event class record specification is the same as the operations event definition record specification", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "This parent operations event definition record specification is whole of the child operations event definition record specification(s) as the part", 17 | "target": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1" 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsEvent/OperationsEventDefinitionRecordSpecification.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1", 4 | "@type": "Interface", 5 | "displayName": "Operations event definition record specification", 6 | "description": "Specification of the allowed content of operations event record shall be defined as the operations event definition record specification. Information object contents in an operations event vary depending on the process context of the operations event. The operations event definition record specification describes and specifies the information objects and associated actions that are allowed in the operations event occurrence. The publisher/sender shall follow this specification to construct the message", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "mapsTo", 15 | "displayName": "Maps to", 16 | "description": "If the operations event supports an operations event class, the operations event class record specification(s) is applied in this operations event definition record specification. This operations event definition record specification maps to the corresponding operations event class record specification", 17 | "target": "dtmi:digitaltwins:isa95:OperationsEventClassRecordSpecification;1", 18 | "maxMultiplicity": 1 19 | }, 20 | { 21 | "@type": "Relationship", 22 | "name": "contains", 23 | "displayName": "Contains", 24 | "description": "This parent operations event definition record specification is whole of the child operations event definition record specification (s) as the part", 25 | "target": "dtmi:digitaltwins:isa95:OperationsEventDefinitionRecordSpecification;1" 26 | } 27 | ] 28 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/EvaluatedProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:EvaluatedProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Evaluated property", 6 | "description": "The evaluated property object identifies the set of testable object / testable object property pairs to be measured and the applicable test method to obtain a property measurement", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "correspondsTo", 15 | "displayName": "Corresponds to", 16 | "description": "The testable object property ID which is to be measured by this test specification", 17 | "target": "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "measuredWithMethodOf", 22 | "displayName": "Measured with method of", 23 | "description": "The work master ID or work directive ID which is applied test method to obtain the measurement of this evaluated property for test specification of the testable object property ID", 24 | "target": "dtmi:digitaltwins:isa95:WorkDefinition;1", 25 | "maxMultiplicity": 1 26 | }, 27 | { 28 | "@type": "Relationship", 29 | "name": "references", 30 | "displayName": "References", 31 | "description": "This test specification criteria used to evaluate the evaluated property of a testable object property", 32 | "target": "dtmi:digitaltwins:isa95:TestSpecificationCriteria;1" 33 | }, 34 | { 35 | "@type": "Component", 36 | "name": "description", 37 | "displayName": "Description", 38 | "description": "Description of the evaluated property", 39 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 40 | } 41 | ] 42 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/OperationsTestRequirement.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:OperationsTestRequirement;1", 4 | "@type": "Interface", 5 | "displayName": "Operations test requirement", 6 | "description": "The operations test requirements are represented as abstract interface objects to simplify the operations test model diagram", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "specifies", 15 | "displayName": "Specifies", 16 | "description": "The test specification(s) used to evaluate this operations test requirement", 17 | "target": "dtmi:digitaltwins:isa95:TestSpecification;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "correspondsToAnElementIn", 22 | "displayName": "Corresponds to an element in", 23 | "description": "A cross-model association to an element in the resource model for the testable object as explained in Clause 3.3.8. Identifies the associated testable object of this operations test requirement for a specific segment requirement", 24 | "target": "dtmi:digitaltwins:isa95:TestableObject;1" 25 | }, 26 | { 27 | "@type": "Relationship", 28 | "name": "mapsToAPropertyElementIn", 29 | "displayName": "Maps to a property element in", 30 | "description": "A cross-model dependency to a property element in the resource model for the testable object property as explained in Clause 3.3.8", 31 | "target": "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 32 | } 33 | ] 34 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/ResourceActual.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceActual;1", 4 | "@type": "Interface", 5 | "displayName": "Resource actual", 6 | "description": "/Abstract/ The resource actual represents an abstract interface object to simplify the operations test model diagram. The interface object represents the objects that can report test result(s)", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "reports", 15 | "displayName": "Reports", 16 | "description": "This resource actual reports the test result in a segment response or job response (Defined in Part 4).", 17 | "target": "dtmi:digitaltwins:isa95:TestResult;1" 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/TestSpecificationProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:TestSpecificationProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Test specification property", 6 | "description": "The test specification property object defines properties of the test specification. These properties are not the characteristics to be tested", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The child test specification property(s) of this test specification property", 17 | "target": "dtmi:digitaltwins:isa95:TestSpecificationProperty;1" 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/TestableObject.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:TestableObject;1", 4 | "@type": "Interface", 5 | "displayName": "Testable object", 6 | "description": "The testable object and testable object property are represented as abstract interface objects to simplify the operations test model diagram. The interface objects represent the objects that are able to be tested by a test specification(s)", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "contents": [ 9 | { 10 | "@type": "Relationship", 11 | "name": "specifies", 12 | "displayName": "Specifies", 13 | "description": "The test specification(s) used to evaluate this testable object.", 14 | "target": "dtmi:digitaltwins:isa95:TestSpecification;1" 15 | }, 16 | { 17 | "@type": "Relationship", 18 | "name": "hasTestableObjectPropertyValuesOf", 19 | "displayName": "Has values of", 20 | "description": "The testable object property values of this testable object", 21 | "target": "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/OperationsTest/TestableObjectProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:TestableObjectProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Testable object property", 6 | "description": "The testable object and testable object property are represented as abstract interface objects to simplify the operations test model diagram. The interface objects represent the objects that are able to be tested by a test specification(s)", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018" 8 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/Personnel/PersonProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:PersonProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Person property", 6 | "description": "Properties of a person shall be presented as person properties. Each person shall have zero or more person properties. These specify the current property values of the person for the associated personnel class property. ", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "This nested person property(s)is part of the person property as the whole.", 18 | "target": "dtmi:digitaltwins:isa95:PersonProperty;1", 19 | "comment": "Relationship type: Composition hierarchy" 20 | }, 21 | { 22 | "@type": "Relationship", 23 | "name": "mapsTo", 24 | "displayName": "Maps to", 25 | "description": "If the person supports the parent personnel class,the personnel class property(s)is applied in this person property(s). ", 26 | "target": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1", 27 | "comment": "Relationship type: Dependency" 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/Personnel/PersonnelClassProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Personnel class property", 6 | "description": "Properties of a personnel class shall be presented as personnel class properties. Each personnel class shall have zero or more recognized properties", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested personnel class property(s) makes up part of this personnel class property as the whole.", 18 | "target": "dtmi:digitaltwins:isa95:PersonnelClassProperty;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/PhysicalAssetAndEquipment/EquipmentClassProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Equipment class property", 6 | "description": "An equipment class property may be tested to the evaluated property in a test specification where the measured results may be recorded in a property measurement attribute in a test result. The measured results may also be evaluated to the test specification criteria in the test specification that references the evaluated property where they may be recorded in an evaluated criterion result attribute in the test result. Equipment class properties may contain nested equipment class properties.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested equipment class property(s) makes up part of thisequipment class property as the whole", 18 | "target": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/PhysicalAssetAndEquipment/EquipmentProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:EquipmentProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Equipment property", 6 | "description": "Properties of equipment shall be presented as equipment properties. An equipment shall have zero or more equipment properties. These specify the current property values of the equipment for the associated equipment class property.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested equipment property(s) makes up part of this equipment property as the whole.", 18 | "target": "dtmi:digitaltwins:isa95:EquipmentProperty;1", 19 | "comment": "Relationship type: Composition hierarchy" 20 | }, 21 | { 22 | "@type": "Relationship", 23 | "name": "mapsTo", 24 | "displayName": "Maps to", 25 | "description": "If the parent equipment supports an equipment class, the equipment class property(s) is applied in this equipment property(s).", 26 | "target": "dtmi:digitaltwins:isa95:EquipmentClassProperty;1", 27 | "comment": "Relationship type: Dependency" 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/PhysicalAssetAndEquipment/PhysicalAssetClassProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Physical Asset class property", 6 | "description": "Properties of a physical asset class shall be presented as physical asset class properties. Each may have zero or more recognized properties.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceClassProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested physical asset class property(s) makes up part of this physical asset class property as the whole", 18 | "target": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/PhysicalAssetAndEquipment/PhysicalAssetProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:PhysicalAssetProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Physical Asset property", 6 | "description": "Properties of physical assets shall be presented as physical asset properties. A physical asset shall have zero or more physical asset properties. These specify the current property values of the physical asset for the associated physical asset class property. Physical asset properties may include a unit of measure. ", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:ResourceProperty;1", 10 | "dtmi:digitaltwins:isa95:TestableObjectProperty;1" 11 | ], 12 | "contents": [ 13 | { 14 | "@type": "Relationship", 15 | "name": "contains", 16 | "displayName": "Contains", 17 | "description": "The nested physical asset property(s) makes up part of this physical asset property as the whole.", 18 | "target": "dtmi:digitaltwins:isa95:PhysicalAssetProperty;1", 19 | "comment": "Relationship type: Composition hierarchy" 20 | }, 21 | { 22 | "@type": "Relationship", 23 | "name": "mapsTo", 24 | "displayName": "Maps to", 25 | "description": "If the parent physical asset supports a physical asset class, the physical asset class property(s) is applied in this physical asset property(s).This physical asset property maps to the corresponding physical asset class property.", 26 | "target": "dtmi:digitaltwins:isa95:PhysicalAssetClassProperty;1", 27 | "comment": "Relationship type: Dependency" 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part2/ProcessSegment/ProcessSegmentParameter.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ProcessSegmentParameter;1", 4 | "@type": "Interface", 5 | "displayName": "Process segment parameter", 6 | "description": "Specific parameters required for a process segment shall be presented as process segment parameters. Process segment parameters may contain nested process segment parameters", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:ResourceProperty;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "contains", 13 | "displayName": "Contains", 14 | "description": "This parameter segment parameter is part of the parameter segment parameter as the whole", 15 | "target": "dtmi:digitaltwins:isa95:ProcessSegmentParameter;1", 16 | "comment": "Relationship type: Composition hierarchy" 17 | }, 18 | { 19 | "@type": "Property", 20 | "name": "hierarchyScope", 21 | "displayName": "Hierarchy scope", 22 | "description": "Identifies where the exchanged information fits within the role based equipment hierarchy. Optionally, hierarchy scopedefines the scope of the physical asset class, such as the site or area where it is defined", 23 | "schema": "string" 24 | }, 25 | { 26 | "@type": "Relationship", 27 | "name": "hierarchyScopeRel", 28 | "displayName": "fits hierarchy scope", 29 | "description": "Optional relationship to hierarchy.", 30 | "comment": "Not part of the Standard Specs.", 31 | "target": "dtmi:digitaltwins:isa95:HierarchyScope;1", 32 | "maxMultiplicity": 1 33 | } 34 | ] 35 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/ResourceRelationship/FromResourceReferenceProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:FromResourceReferenceProperty;1", 4 | "@type": "Interface", 5 | "displayName": "From resource reference property", 6 | "description": "A 'from' reference to a resource shall be defined as a from resource reference.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The nested 'from' resource reference properties of this 'from' resource reference property.", 17 | "target": "dtmi:digitaltwins:isa95:FromResourceReferenceProperty;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "mapsToClassProperty", 22 | "displayName": "Maps To", 23 | "description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8.", 24 | "target": "dtmi:digitaltwins:isa95:ResourceClassProperty;1" 25 | }, 26 | { 27 | "@type": "Relationship", 28 | "name": "mapsToProperty", 29 | "displayName": "Maps To", 30 | "description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8.", 31 | "target": "dtmi:digitaltwins:isa95:ResourceProperty;1" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "value", 36 | "displayName": "Value", 37 | "description": "The value, set of values, or range of the property.", 38 | "schema": "string" 39 | }, 40 | { 41 | "@type": "Property", 42 | "name": "valueUnitOfMeasure", 43 | "displayName": "Value unit of measure", 44 | "description": "The unit of measure of the associated property value", 45 | "schema": "string" 46 | } 47 | ] 48 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/ResourceRelationship/ResourceNetworkConnectionType.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionType;1", 4 | "@type": "Interface", 5 | "displayName": "Resource network connection type", 6 | "description": "A definition of a type of a resource network connection shall be defined as a resource network connection type.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "hasPropertiesOf", 15 | "displayName": "Has properties of", 16 | "description": "The resource network connection type property(s) related to this resource network connection type.", 17 | "target": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Contains additional information and descriptions", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Component", 28 | "name": "type", 29 | "displayName": "Type", 30 | "description": "The connection type", 31 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 32 | } 33 | ] 34 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/ResourceRelationship/ResourceNetworkConnectionTypeProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Resource network connection type property", 6 | "description": "A 'from' reference to a resource shall be defined as a from resource reference.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "mapsTo", 15 | "displayName": "Maps To", 16 | "description": "The resource network connection property(s) derived from this resource network connection type property supporting its parent object. Only applied, if navigation is required.", 17 | "target": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionProperty;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "contains", 22 | "displayName": "Contains", 23 | "description": "The nested resource network connection type properties of this network connection type property.", 24 | "target": "dtmi:digitaltwins:isa95:ResourceNetworkConnectionTypeProperty;1" 25 | }, 26 | { 27 | "@type": "Component", 28 | "name": "description", 29 | "displayName": "Description", 30 | "description": "Contains additional information and descriptions", 31 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "value", 36 | "displayName": "Value", 37 | "description": "The value, set of values, or range of the property.", 38 | "schema": "string" 39 | }, 40 | { 41 | "@type": "Property", 42 | "name": "valueUnitOfMeasure", 43 | "displayName": "Value unit of measure", 44 | "description": "The unit of measure of the associated property value", 45 | "schema": "string" 46 | } 47 | ] 48 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/ResourceRelationship/ResourceRelationshipNetworkProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceRelationshipNetworkProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Resource relationship network property", 6 | "description": "A resource relationship network property may contain nested resource relationship network property(s).", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The nested resource relationship network properties of this resource relationship network property.", 17 | "target": "dtmi:digitaltwins:isa95:ResourceRelationshipNetworkProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Contains additional information and descriptions", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "value", 29 | "displayName": "Value", 30 | "description": "The value, set of values, or range of the property.", 31 | "schema": "string" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "valueUnitOfMeasure", 36 | "displayName": "Value unit of measure", 37 | "description": "The unit of measure of the associated property value", 38 | "schema": "string" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/ResourceRelationship/ToResourceReferenceProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ToResourceReferenceProperty;1", 4 | "@type": "Interface", 5 | "displayName": "To resource reference property", 6 | "description": "A 'to' reference to a resource shall be defined as a to resource reference.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The nested 'to' resource reference properties of this 'to' resource reference property.", 17 | "target": "dtmi:digitaltwins:isa95:ToResourceReferenceProperty;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "mapsToClassProperty", 22 | "displayName": "Maps To", 23 | "description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8.", 24 | "target": "dtmi:digitaltwins:isa95:ResourceClassProperty;1" 25 | }, 26 | { 27 | "@type": "Relationship", 28 | "name": "mapsToProperty", 29 | "displayName": "Maps To", 30 | "description": "A cross-model association to element in the [resource] model as explained in Clause 3.3.8.", 31 | "target": "dtmi:digitaltwins:isa95:ResourceProperty;1" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "value", 36 | "displayName": "Value", 37 | "description": "The value, set of values, or range of the property.", 38 | "schema": "string" 39 | }, 40 | { 41 | "@type": "Property", 42 | "name": "valueUnitOfMeasure", 43 | "displayName": "Value unit of measure", 44 | "description": "The unit of measure of the associated property value", 45 | "schema": "string" 46 | } 47 | ] 48 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkAlert/WorkAlertDefinitionProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work alert definition property", 6 | "description": "The work alert definition property shall be defined as property on a work alert definition property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The child work alert definition properties of this work alert definition property.", 17 | "target": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Additional information and description about the operations event class property", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "value", 29 | "displayName": "Value", 30 | "description": "The value, set of values, or range of the property.", 31 | "schema": "string" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "valueUnitOfMeasure", 36 | "displayName": "Value unit of measure", 37 | "description": "The unit of measure of the associated property value", 38 | "schema": "string" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkAlert/WorkAlertProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkAlertProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work alert property", 6 | "description": "The work alert property shall be defined as property on a work alert property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "mapsTo", 15 | "displayName": "Maps to", 16 | "description": "If the parent work alert supports a work alert definition, the work alert definition property(s) is applied in this work alert property(s).", 17 | "target": "dtmi:digitaltwins:isa95:WorkAlertDefinitionProperty;1", 18 | "maxMultiplicity": 1 19 | }, 20 | { 21 | "@type": "Relationship", 22 | "name": "contains", 23 | "displayName": "Contains", 24 | "description": "The child work alert properties of this work alert property.", 25 | "target": "dtmi:digitaltwins:isa95:WorkAlertProperty;1" 26 | }, 27 | { 28 | "@type": "Component", 29 | "name": "description", 30 | "displayName": "Description", 31 | "description": "Additional information about the operations event property", 32 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 33 | }, 34 | { 35 | "@type": "Property", 36 | "name": "value", 37 | "displayName": "Value", 38 | "description": "The value, set of values, or range of the property.", 39 | "schema": "string" 40 | }, 41 | { 42 | "@type": "Property", 43 | "name": "valueUnitOfMeasure", 44 | "displayName": "Value unit of measure", 45 | "description": "The unit of measure of the associated property value", 46 | "schema": "string" 47 | } 48 | ] 49 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkCalendar/WorkCalendarDefinitionEntryProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work calendar definition entry property", 6 | "description": "The work calendar definition entry property shall be defined as property on a work calendar definition entry.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The work calendar definition entry properties of this work calendar definition entry property.", 17 | "target": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Additional information and description about the work calendar definition entry property", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "value", 29 | "displayName": "Value", 30 | "description": "The value, set of values, or range of the property.", 31 | "schema": "string" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "valueUnitOfMeasure", 36 | "displayName": "Value unit of measure", 37 | "description": "The unit of measure of the associated property value", 38 | "schema": "string" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkCalendar/WorkCalendarDefinitionProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work calendar definition property", 6 | "description": "The work calendar definition property shall be defined as property on a work calendar definition property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The work calendar definition properties of this work calendar definition property.", 17 | "target": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Additional information and description about the work calendar definition property", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "value", 29 | "displayName": "Value", 30 | "description": "The value, set of values, or range of the property.", 31 | "schema": "string" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "valueUnitOfMeasure", 36 | "displayName": "Value unit of measure", 37 | "description": "The unit of measure of the associated property value", 38 | "schema": "string" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkCalendar/WorkCalendarEntryProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarEntryProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work calendar entry property", 6 | "description": "The work calendar entry property shall be defined as a property on a work calendar entry.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "mapsTo", 15 | "displayName": "Maps to", 16 | "description": "The work calendar definition entry property that defines this work calendar entry property.", 17 | "target": "dtmi:digitaltwins:isa95:WorkCalendarDefinitionEntryProperty;1", 18 | "comment": "Mandatory - Cardinality 1", 19 | "maxMultiplicity": 1 20 | }, 21 | { 22 | "@type": "Relationship", 23 | "name": "contains", 24 | "displayName": "Contains", 25 | "description": "The work calendar entry properties of this work calendar entry property.", 26 | "target": "dtmi:digitaltwins:isa95:WorkCalendarEntryProperty;1" 27 | }, 28 | { 29 | "@type": "Component", 30 | "name": "description", 31 | "displayName": "Description", 32 | "description": "Additional information about the work calendar entry property", 33 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 34 | }, 35 | { 36 | "@type": "Property", 37 | "name": "value", 38 | "displayName": "Value", 39 | "description": "The value, set of values, or range of the property.", 40 | "schema": "string" 41 | }, 42 | { 43 | "@type": "Property", 44 | "name": "valueUnitOfMeasure", 45 | "displayName": "Value unit of measure", 46 | "description": "The unit of measure of the associated property value", 47 | "schema": "string" 48 | } 49 | ] 50 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkCalendar/WorkCalendarProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCalendarProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Work calendar property", 6 | "description": "The work calendar property shall be defined as property on a work definition property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:BaseModel;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "contains", 15 | "displayName": "Contains", 16 | "description": "The child work calendar properties of this work calendar property.", 17 | "target": "dtmi:digitaltwins:isa95:WorkCalendarProperty;1" 18 | }, 19 | { 20 | "@type": "Component", 21 | "name": "description", 22 | "displayName": "Description", 23 | "description": "Additional information about the work calendar property", 24 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "value", 29 | "displayName": "Value", 30 | "description": "The value, set of values, or range of the property.", 31 | "schema": "string" 32 | }, 33 | { 34 | "@type": "Property", 35 | "name": "valueUnitOfMeasure", 36 | "displayName": "Value unit of measure", 37 | "description": "The unit of measure of the associated property value", 38 | "schema": "string" 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkDefinition/WorkDirective.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkDirective;1", 4 | "@type": "Interface", 5 | "displayName": "Work directive", 6 | "description": "The resources and instructions required to perform a unit of work for a specific job order shall be defined as a work directive.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkDefinition;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "isCretaedFrom", 15 | "displayName": "Is Created From", 16 | "description": "The work master used to create this work directive.", 17 | "target": "dtmi:digitaltwins:isa95:WorkMaster;1" 18 | }, 19 | { 20 | "@type": "Relationship", 21 | "name": "contains", 22 | "displayName": "Contains", 23 | "target": "dtmi:digitaltwins:isa95:WorkDirective;1", 24 | "description": "The related object(s), work directive, makes up part of this work directive as the whole." 25 | }, 26 | { 27 | "@type": "Relationship", 28 | "name": "hasA", 29 | "displayName": "Has A", 30 | "description": "This work directive defined in part by the workflow specification(s)", 31 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecification;1" 32 | } 33 | ] 34 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationConnectionType.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionType;1", 4 | "@type": "Interface", 5 | "displayName": "Workflow specification connection type", 6 | "description": "A workflow specification connection type defines the properties that can be associated with a specific workflow specification connection.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:BaseModel;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "hasPropertiesOf", 13 | "displayName": "Has properties of", 14 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationConnectionTypeProperty;1", 15 | "description": "The workflow specification connection type property(s) defines in part this workflow specification connection type.." 16 | }, 17 | { 18 | "@type": "Component", 19 | "name": "description", 20 | "displayName": "Description", 21 | "description": "Contains additional information", 22 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 23 | }, 24 | { 25 | "@type": "Property", 26 | "name": "fromMultiplicity", 27 | "displayName": "From multiplicity", 28 | "description": "Defines the multiplicity of the “from” connection:", 29 | "schema": "string" 30 | }, 31 | { 32 | "@type": "Property", 33 | "name": "toMultiplicity", 34 | "displayName": "To multiplicity", 35 | "description": "Defines the multiplicity of the “to” connection:", 36 | "schema": "string" 37 | } 38 | ] 39 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Workflow specification node property", 6 | "description": "A property of a workflow specification node shall be defined as a workflow specification node property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:BaseModel;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "contains", 13 | "displayName": "Contains", 14 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeProperty;1", 15 | "description": "The child workflow specification node properties of this workflow specification node property." 16 | }, 17 | { 18 | "@type": "Relationship", 19 | "name": "mapsTo", 20 | "displayName": "Maps to", 21 | "maxMultiplicity": 1, 22 | "description": "If the workflow specification node supports a workflow specification node type, the workflow specification node type property is applied in this workflow specification node property(s).", 23 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1" 24 | }, 25 | { 26 | "@type": "Component", 27 | "name": "description", 28 | "displayName": "Description", 29 | "description": "Contains additional information", 30 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 31 | }, 32 | { 33 | "@type": "Property", 34 | "name": "value", 35 | "displayName": "Value", 36 | "description": "The value, set of values, or range of the property.", 37 | "schema": "string" 38 | }, 39 | { 40 | "@type": "Property", 41 | "name": "valueUnitOfMeasure", 42 | "displayName": "Value unit of measure", 43 | "description": "The unit of measure of the associated property value", 44 | "schema": "string" 45 | } 46 | ] 47 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeType.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeType;1", 4 | "@type": "Interface", 5 | "displayName": "Workflow specification node type", 6 | "description": "A workflow specification node type defines the properties that can be associated with a specific workflow specification node.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:BaseModel;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "hasPropertiesOf", 13 | "displayName": "Has properties of", 14 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 15 | "description": "The workflow specification node type property(s) defines in part this workflow specification node type.." 16 | }, 17 | { 18 | "@type": "Component", 19 | "name": "description", 20 | "displayName": "Description", 21 | "description": "Contains additional information", 22 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationNodeTypeProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Workflow specification node type property", 6 | "description": "A property of a workflow specification node type shall be defined as a workflow specification node type property.", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:BaseModel;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "contains", 13 | "displayName": "Contains", 14 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationNodeTypeProperty;1", 15 | "description": "The child workflow specification node type properties of this workflow specification node type property." 16 | }, 17 | { 18 | "@type": "Component", 19 | "name": "description", 20 | "displayName": "Description", 21 | "description": "Contains additional information", 22 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 23 | }, 24 | { 25 | "@type": "Property", 26 | "name": "value", 27 | "displayName": "Value", 28 | "description": "The value, set of values, or range of the property.", 29 | "schema": "string" 30 | }, 31 | { 32 | "@type": "Property", 33 | "name": "valueUnitOfMeasure", 34 | "displayName": "Value unit of measure", 35 | "description": "The unit of measure of the associated property value", 36 | "schema": "string" 37 | } 38 | ] 39 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Part4/WorkfowSpecification/WorkflowSpecificationProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkflowSpecificationProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Workflow specification property", 6 | "description": "A property of a workflow specification shall be defined as a workflow specification property. A workflow specification property may contain nested workflow specification property(s).", 7 | "comment": "According to ANSI/ISA-95.00.04-2018 Enterprise-Control System Integration − Part 4: Objects and Attributes for - Approved 24 May 2018", 8 | "extends": ["dtmi:digitaltwins:isa95:BaseModel;1"], 9 | "contents": [ 10 | { 11 | "@type": "Relationship", 12 | "name": "contains", 13 | "displayName": "Contains", 14 | "target": "dtmi:digitaltwins:isa95:WorkflowSpecificationProperty;1", 15 | "description": "The work directive defined in part by this workflow specification." 16 | }, 17 | { 18 | "@type": "Component", 19 | "name": "description", 20 | "displayName": "Description", 21 | "description": "Contains additional information", 22 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 23 | }, 24 | { 25 | "@type": "Property", 26 | "name": "value", 27 | "displayName": "Value", 28 | "description": "The value, set of values, or range of the property.", 29 | "schema": "string" 30 | }, 31 | { 32 | "@type": "Property", 33 | "name": "valueUnitOfMeasure", 34 | "displayName": "Value unit of measure", 35 | "description": "The unit of measure of the associated property value", 36 | "schema": "string" 37 | } 38 | ] 39 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/Resource.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:Resource;1", 4 | "@type": "Interface", 5 | "displayName": "Resource", 6 | "description": "Abstract model for all resource models (person, equipment, physical asset, material definition, material lot, material sublot, work master, process segment, operation definition, operational location, operations segment, test specification, test result)", 7 | "extends": [ 8 | "dtmi:digitaltwins:isa95:BaseModel;1" 9 | ] 10 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/ResourceClass.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceClass;1", 4 | "@type": "Interface", 5 | "displayName": "Resource class", 6 | "description": "Abstract model for all resource class models (person class, equipment class, physical asset class, material class)", 7 | "extends": [ 8 | "dtmi:digitaltwins:isa95:BaseModel;1" 9 | ] 10 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/ResourceProperty.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ResourceProperty;1", 4 | "@type": "Interface", 5 | "displayName": "Resource property", 6 | "description": "Abstract model for all resource property models (person, equipment, physical asset, material definition, material lot, material sublot, work master, process segment, operation definition, operational location, operations segment, test specification, test result)", 7 | "extends": [ 8 | "dtmi:digitaltwins:isa95:BaseModel;1" 9 | ], 10 | "contents": [ 11 | { 12 | "@type": "Component", 13 | "name": "description", 14 | "displayName": "Description", 15 | "description": "Additional information about the resource property.", 16 | "schema": "dtmi:digitaltwins:isa95:LangStringSet;1" 17 | }, 18 | { 19 | "@type": "Property", 20 | "name": "value", 21 | "displayName": "Value", 22 | "description": "The value, set of values, or range of the property.", 23 | "schema": "string" 24 | }, 25 | { 26 | "@type": "Property", 27 | "name": "valueUnitOfMeasure", 28 | "displayName": "Value unit of measure", 29 | "description": "The unit of measure of the associated property value", 30 | "schema": "string" 31 | } 32 | ] 33 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/CommonObjectModels/SpatialDefinition.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:SpatialDefinition;1", 4 | "@type": "Interface", 5 | "displayName": "Spatial definition", 6 | "description": "The spatial definition provides a means of communicating zero-dimensional point, one-dimensional line, or two-dimensional shape or three-dimensional solid geospatial location data for planning/scheduling, actuals, resources, and analytics.", 7 | "comment": "According to ANSI/ISA-95.00.02-2018 Enterprise-Control System Integration − Part 2: Objects and Attributes for - Approved 24 May 2018", 8 | "contents": [ 9 | { 10 | "@type": "Property", 11 | "name": "value", 12 | "displayName": "Value", 13 | "description": "A string to uniquely identify a spatial definition. EXAMPLE 1 UN/CEFACT CCTS: TextType) of the geospatial information in the format indicated in the format attribute.", 14 | "schema": "string", 15 | "writable": true 16 | }, 17 | { 18 | "@type": "Property", 19 | "name": "format", 20 | "displayName": "Format", 21 | "description": "An enumerator that determines the format of the value attribute. E.g. GPX, WKT, ...", 22 | "schema": "string", 23 | "writable": true 24 | }, 25 | { 26 | "@type": "Property", 27 | "name": "SRID", 28 | "description": "SRID is the Spatial Reference Identifier which identifies the coordinate reference system to identify a predefined coordinate", 29 | "schema": "string", 30 | "writable": true 31 | }, 32 | { 33 | "@type": "Property", 34 | "name": "SRIDauthority", 35 | "displayName": "SRID authority", 36 | "description": "The SRID authority identifies the authority that defines the coordinate reference system identified by the SRID. ", 37 | "schema": "string", 38 | "writable": true 39 | } 40 | ] 41 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/Area.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:Area;1", 4 | "@type": "Interface", 5 | "displayName": "Area", 6 | "description": "An area is a physical, geographical, or logical grouping determined by the site. It may contain work centers such as process cells, production units, production lines, and storage zones. Most Level 3 functions occur within the area. The main production capability and geographical location within a site usually identify areas. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:SiteAsset;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "workCenter", 15 | "description": "Reference to a contained work center of the area", 16 | "displayName": "contains Work center", 17 | "comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle", 18 | "target": "dtmi:digitaltwins:isa95:WorkCenter;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/Enterprise.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:Enterprise;1", 4 | "@type": "Interface", 5 | "displayName": "Enterprise", 6 | "description": "An enterprise is a collection of sites and areas and represents the top level of a role based equipment hierarchy. The enterprise is responsible for determining what products will be manufactured, at which sites they will be manufactured, and in general how they will be manufactured. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:SiteAsset;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "site", 15 | "description": "Reference to a contained site of the enterprise", 16 | "comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle", 17 | "displayName": "contains Site", 18 | "target": "dtmi:digitaltwins:isa95:Site;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/ProcessCell.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ProcessCell;1", 4 | "@type": "Interface", 5 | "displayName": "Process cell", 6 | "description": "Process cells and units are the lowest level of equipment typically scheduled by the Level 4 and Level 3 functions for batch manufacturing processes. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkCenter;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/ProductionLine.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ProductionLine;1", 4 | "@type": "Interface", 5 | "displayName": "Production line", 6 | "description": "Production lines and work cells are the lowest levels of equipment typically scheduled by the Level 4 or Level 3 functions for discrete manufacturing processes. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkCenter;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/ProductionUnit.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ProductionUnit;1", 4 | "@type": "Interface", 5 | "displayName": "Production unit", 6 | "description": "A production unit generally encompasses all of the equipment required for a segment of continuous production that operates in a relatively autonomous manner. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkCenter;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/Site.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:Site;1", 4 | "@type": "Interface", 5 | "displayName": "Site", 6 | "description": "A site is a physical, geographical, or logical grouping determined by the enterprise. It may contain areas, production lines, process cells, and production units. The Level 4 functions at a site are involved in local site management and optimization. Site planning and scheduling may involve work centers or work units within the areas. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:SiteAsset;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "area", 15 | "description": "Reference to a contained area of the site", 16 | "displayName": "contains Area", 17 | "comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle", 18 | "target": "dtmi:digitaltwins:isa95:Area;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/SiteAsset.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:SiteAsset;1", 4 | "@type": "Interface", 5 | "displayName": "Site asset", 6 | "description": "An Abstract site asset in the physical asset equipment hierarchy", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:HierarchyScope;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/StorageUnit.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:StorageUnit;1", 4 | "@type": "Interface", 5 | "displayName": "Storage unit", 6 | "description": "Storage zones and storage units are the lowest level of material movement equipment typically scheduled by the Level 4 and Level 3 functions for discrete, batch and continuous manufacturing processes. A storage zone is a type of work center and a storage unit is a type of work unit that is organized as elements within an area. These are the lower-level elements of an equipment hierarchy used in material storage and movement activities. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkUnit;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/StorageZone.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:StorageZone;1", 4 | "@type": "Interface", 5 | "displayName": "Storage zone", 6 | "description": "Storage zones and storage units are the lowest level of material movement equipment typically scheduled by the Level 4 and Level 3 functions for discrete, batch and continuous manufacturing processes. A storage zone is a type of work center and a storage unit is a type of work unit that is organized as elements within an area. These are the lower-level elements of an equipment hierarchy used in material storage and movement activities. ", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkCenter;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/Unit.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:Unit;1", 4 | "@type": "Interface", 5 | "displayName": "Unit", 6 | "description": "Units have well-defined processing capabilities and throughput capacities and these are used for Level 3 functions. T", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkUnit;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/WorkCell.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCell;1", 4 | "@type": "Interface", 5 | "displayName": "Work cell", 6 | "description": "Work cells are usually only identified when there is flexibility in the routing of work within a production line.", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:WorkUnit;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/WorkCenter.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkCenter;1", 4 | "@type": "Interface", 5 | "displayName": "Work center", 6 | "description": "Work centers are elements of the equipment hierarchy under an area. The term work center may be used when the specific type of the equipment element is not significant for the purpose of the discussion.", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:SiteAsset;1" 10 | ], 11 | "contents": [ 12 | { 13 | "@type": "Relationship", 14 | "name": "workUnit", 15 | "description": "Reference to a contained work unit of the work center", 16 | "displayName": "contains Work unit", 17 | "comment": "Not part of the ISA-95 Standard. Just to make the graph easier to handle", 18 | "target": "dtmi:digitaltwins:isa95:WorkUnit;1" 19 | } 20 | ] 21 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/EquipmentHierarchy/WorkUnit.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:WorkUnit;1", 4 | "@type": "Interface", 5 | "displayName": "Work unit", 6 | "description": "A work unit is any element of the equipment hierarchy under a work center. Work units are the lowest form of elements in an equipment hierarchy that are typically scheduled by Level 3 functions.", 7 | "comment": "According to ANSI/ISA-95.00.01-2010 (IEC 62264-1 Mod) Enterprise-Control System Integration − Part 1: Models and Terminology - Approved 13 May 2010", 8 | "extends": [ 9 | "dtmi:digitaltwins:isa95:SiteAsset;1" 10 | ] 11 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/Extensions/LangStringSet.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:LangStringSet;1", 4 | "@type": "Interface", 5 | "displayName": "Language String Set", 6 | "description": "A set of strings, each annotated by the language of the string. The meaning of the string in each language shall be the same.", 7 | "comment": "Not part of the ISA95 standard. But enables multi language strings", 8 | "contents": [ 9 | { 10 | "@type": "Property", 11 | "name": "langString", 12 | "description": "A set of strings, each annotated by the language of the string. The meaning of the stringin each language shall be the same.", 13 | "schema": { 14 | "@type": "Map", 15 | "mapKey": { 16 | "name": "iso2Code", 17 | "description": "ISO 3166-1 alpha-2 codes are two-letter country codes defined in ISO 3166-1, part of the ISO 3166 standard", 18 | "schema": "string" 19 | }, 20 | "mapValue": { 21 | "name": "langSpecString", 22 | "description": "A string in a specified language", 23 | "schema": "string" 24 | } 25 | }, 26 | "writable": true 27 | } 28 | ] 29 | } -------------------------------------------------------------------------------- /Ontologies/ISA95/Extensions/Tags.json: -------------------------------------------------------------------------------- 1 | { 2 | "@context": "dtmi:dtdl:context;2", 3 | "@id": "dtmi:digitaltwins:isa95:ext:Tags;1", 4 | "@type": "Interface", 5 | "displayName": "Tags", 6 | "description": "You can use the concept of tags to further identify and categorize your digital twins", 7 | "comment": "Not part of the AAS meta model. Makes querying easier. See https://docs.microsoft.com/en-us/azure/digital-twins/how-to-use-tags", 8 | "contents": [ 9 | { 10 | "@type": "Property", 11 | "name": "markers", 12 | "description": "A marker tag is a simple string that is used to mark or categorize a digital twin, such as 'blue' or 'red'. This string is the tag's name, and marker tags have no meaningful value—the tag is significant just by its presence (or absence).", 13 | "schema": { 14 | "@type": "Map", 15 | "mapKey": { 16 | "name": "tagName", 17 | "schema": "string" 18 | }, 19 | "mapValue": { 20 | "name": "tagValue", 21 | "schema": "boolean" 22 | } 23 | }, 24 | "writable": true 25 | }, 26 | { 27 | "@type": "Property", 28 | "name": "values", 29 | "description": "A value tag is a key-value pair that is used to give each tag a value, such as 'color': 'blue' or 'color': 'red'. Once a value tag is created, it can also be used as a marker tag by ignoring the tag's value.", 30 | "schema": { 31 | "@type": "Map", 32 | "mapKey": { 33 | "name": "tagName", 34 | "schema": "string" 35 | }, 36 | "mapValue": { 37 | "name": "tagValue", 38 | "schema": "string" 39 | } 40 | }, 41 | "writable": true 42 | } 43 | ] 44 | } -------------------------------------------------------------------------------- /Tools/ADTGenerator/ADTGenerator.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | enable 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | tlbimp 24 | 9 25 | 1 26 | 00020813-0000-0000-c000-000000000046 27 | 0 28 | false 29 | true 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /Tools/ADTGenerator/ADTGenerator.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.6.33723.286 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ADTGenerator", "ADTGenerator.csproj", "{805BDA33-7325-4366-989F-D971720CC1CD}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {805BDA33-7325-4366-989F-D971720CC1CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {805BDA33-7325-4366-989F-D971720CC1CD}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {805BDA33-7325-4366-989F-D971720CC1CD}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {805BDA33-7325-4366-989F-D971720CC1CD}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {DBBFE0B0-F25E-4C97-AFB7-C98B5E3B8735} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /Tools/ADTGenerator/MainForm.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/MainForm.cs -------------------------------------------------------------------------------- /Tools/ADTGenerator/Program.cs: -------------------------------------------------------------------------------- 1 | namespace ADTGenerator 2 | { 3 | internal static class Program 4 | { 5 | /// 6 | /// The main entry point for the application. 7 | /// 8 | [STAThread] 9 | static void Main() 10 | { 11 | // To customize application configuration such as set high DPI settings or default font, 12 | // see https://aka.ms/applicationconfiguration. 13 | ApplicationConfiguration.Initialize(); 14 | Application.Run(new MainForm()); 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/ADTGenerator.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/ADTGenerator.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/ADTGenerator.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/ADTGenerator.exe -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/ADTGenerator.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/ADTGenerator.pdb -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/ADTGenerator.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "net7.0", 4 | "frameworks": [ 5 | { 6 | "name": "Microsoft.NETCore.App", 7 | "version": "7.0.0" 8 | }, 9 | { 10 | "name": "Microsoft.WindowsDesktop.App", 11 | "version": "7.0.0" 12 | } 13 | ] 14 | } 15 | } -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Azure.Core.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Azure.Core.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Azure.DigitalTwins.Core.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Azure.DigitalTwins.Core.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Azure.Identity.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Azure.Identity.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/DTDLParser.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/DTDLParser.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Microsoft.Bcl.AsyncInterfaces.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Microsoft.Bcl.AsyncInterfaces.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Microsoft.Identity.Client.Extensions.Msal.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Microsoft.Identity.Client.Extensions.Msal.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Microsoft.Identity.Client.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Microsoft.Identity.Client.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Microsoft.IdentityModel.Abstractions.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Microsoft.IdentityModel.Abstractions.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/Newtonsoft.Json.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/Newtonsoft.Json.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/System.Memory.Data.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/binaries/System.Memory.Data.dll -------------------------------------------------------------------------------- /Tools/ADTGenerator/binaries/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "AdtInstanceUrl": "https://erichbtest5-adt.api.neu.digitaltwins.azure.net/", 3 | "ExcelFile": "", 4 | "ExcelSheetForTwins": "", 5 | "ExcelSheetForRelationships": "", 6 | "FirstMetadataColumn": 7, 7 | "FirstPropertyColumn": 9 8 | } -------------------------------------------------------------------------------- /Tools/ADTGenerator/isa95-test.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitaltwinconsortium/ManufacturingOntologies/6e8fa36a4d11dfa7f4e40d0dcd817847d2739120/Tools/ADTGenerator/isa95-test.xlsx -------------------------------------------------------------------------------- /Tools/FactorySimulation/PublisherConfig/Munich/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "UAClientCertThumbprint": "", 3 | "UAClientCertExpiry": "0001-01-01T00:00:00", 4 | "UAIssuerCertThumbprint": "", 5 | "UAIssuerCertExpiry": "0001-01-01T00:00:00", 6 | "MQTTClientCertThumbprint": "N/A", 7 | "MQTTClientCertExpiry": "0001-01-01T00:00:00", 8 | "PublisherName": "publisher.line1.building1.munich.contoso", 9 | "BrokerUrl": "myeventhubsnamespace.servicebus.windows.net", 10 | "BrokerPort": 9093, 11 | "BrokerUsername": "$ConnectionString", 12 | "BrokerPassword": "myeventhubsnamespaceprimarykeyconnectionstring", 13 | "UseAltBrokerForMetadata": false, 14 | "UseAltBrokerForReceivingUAOverMQTT": false, 15 | "AltBrokerUrl": null, 16 | "AltBrokerPort": 8883, 17 | "AltBrokerUsername": null, 18 | "AltBrokerPassword": null, 19 | "BrokerMessageTopic": "data", 20 | "BrokerMetadataTopic": "metadata", 21 | "SendUAMetadata": true, 22 | "SendUAStatus": false, 23 | "MetadataSendInterval": 43200, 24 | "BrokerCommandTopic": null, 25 | "BrokerDataReceivedTopic": null, 26 | "BrokerResponseTopic": null, 27 | "BrokerMessageSize": 262144, 28 | "UseKafka": true, 29 | "CreateBrokerSASToken": false, 30 | "UseTLS": true, 31 | "UseUACertAuth": false, 32 | "UseCustomCertAuth": false, 33 | "UseReverseConnect": false, 34 | "PushCertsBeforePublishing": true, 35 | "InternalQueueCapacity": 1000, 36 | "DefaultSendIntervalSeconds": 1, 37 | "DiagnosticsLoggingInterval": 30, 38 | "DefaultOpcSamplingInterval": 500, 39 | "DefaultOpcPublishingInterval": 1000, 40 | "UAStackTraceMask": 645, 41 | "ReversiblePubSubEncoding": false, 42 | "AutoLoadPersistedNodes": true, 43 | "AzureOpenAIAPIEndpoint": null, 44 | "AzureOpenAIAPIKey": null, 45 | "AzureOpenAIDeploymentName": null 46 | } 47 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/PublisherConfig/Seattle/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "UAClientCertThumbprint": "", 3 | "UAClientCertExpiry": "0001-01-01T00:00:00", 4 | "UAIssuerCertThumbprint": "", 5 | "UAIssuerCertExpiry": "0001-01-01T00:00:00", 6 | "MQTTClientCertThumbprint": "N/A", 7 | "MQTTClientCertExpiry": "0001-01-01T00:00:00", 8 | "PublisherName": "publisher.line1.building1.seattle.contoso", 9 | "BrokerUrl": "myeventhubsnamespace.servicebus.windows.net", 10 | "BrokerPort": 9093, 11 | "BrokerUsername": "$ConnectionString", 12 | "BrokerPassword": "myeventhubsnamespaceprimarykeyconnectionstring", 13 | "UseAltBrokerForMetadata": false, 14 | "UseAltBrokerForReceivingUAOverMQTT": false, 15 | "AltBrokerUrl": null, 16 | "AltBrokerPort": 8883, 17 | "AltBrokerUsername": null, 18 | "AltBrokerPassword": null, 19 | "BrokerMessageTopic": "data", 20 | "BrokerMetadataTopic": "metadata", 21 | "SendUAMetadata": true, 22 | "SendUAStatus": false, 23 | "MetadataSendInterval": 43200, 24 | "BrokerCommandTopic": null, 25 | "BrokerDataReceivedTopic": null, 26 | "BrokerResponseTopic": null, 27 | "BrokerMessageSize": 262144, 28 | "UseKafka": true, 29 | "CreateBrokerSASToken": false, 30 | "UseTLS": true, 31 | "UseUACertAuth": false, 32 | "UseCustomCertAuth": false, 33 | "UseReverseConnect": false, 34 | "PushCertsBeforePublishing": true, 35 | "InternalQueueCapacity": 1000, 36 | "DefaultSendIntervalSeconds": 1, 37 | "DiagnosticsLoggingInterval": 30, 38 | "DefaultOpcSamplingInterval": 500, 39 | "DefaultOpcPublishingInterval": 1000, 40 | "UAStackTraceMask": 645, 41 | "ReversiblePubSubEncoding": false, 42 | "AutoLoadPersistedNodes": true, 43 | "AzureOpenAIAPIEndpoint": null, 44 | "AzureOpenAIAPIKey": null, 45 | "AzureOpenAIDeploymentName": null 46 | } -------------------------------------------------------------------------------- /Tools/FactorySimulation/StartSimulation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo . 4 | if [[ ! -n $1 ]]; 5 | then 6 | echo "No argument passed!" 7 | echo "Argument must be of the form: Endpoint=sb://[eventhubnamespace].servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=[key]" 8 | exit 1 9 | else 10 | echo "Argument passed = $1" 11 | fi 12 | 13 | connectionstring=$1 14 | tmp=${1#*//} # remove prefix ending in "//" 15 | name=${tmp%.servicebus*} # remove suffix starting with ".servicebus" 16 | 17 | echo . 18 | echo Events Hub connection string: $connectionstring 19 | echo Event Hubs name: $name 20 | 21 | echo . 22 | echo Copying config files... 23 | mkdir -p /mnt/c/K3s 24 | cp -r ./PublisherConfig /mnt/c/K3s 25 | cp -r ../../Deployment /mnt/c/K3s 26 | 27 | echo . 28 | echo Configuring files... 29 | cd /mnt/c/K3s/PublisherConfig/Munich 30 | sed -i "s|myeventhubsnamespaceprimarykeyconnectionstring|$connectionstring|g" settings.json 31 | sed -i "s|myeventhubsnamespace|$name|g" settings.json 32 | 33 | cd /mnt/c/K3s/PublisherConfig/Seattle 34 | sed -i "s|myeventhubsnamespaceprimarykeyconnectionstring|$connectionstring|g" settings.json 35 | sed -i "s|myeventhubsnamespace|$name|g" settings.json 36 | 37 | cd /mnt/c/K3s/Deployment/Munich 38 | sed -i "s|myeventhubsnamespaceprimarykeyconnectionstring|$connectionstring|g" ProductionLine.yaml 39 | sed -i "s|myeventhubsnamespace|$name|g" ProductionLine.yaml 40 | 41 | cd /mnt/c/K3s/Deployment/Seattle 42 | sed -i "s|myeventhubsnamespaceprimarykeyconnectionstring|$connectionstring|g" ProductionLine.yaml 43 | sed -i "s|myeventhubsnamespace|$name|g" ProductionLine.yaml 44 | 45 | echo . 46 | echo Starting Munich production line... 47 | cd /mnt/c/K3s/Deployment/Munich 48 | kubectl apply -f ProductionLine.yaml 49 | 50 | echo Waiting for production lines to be started, please be patient... 51 | sleep 30 52 | 53 | echo Starting UA-CloudPublisher... 54 | kubectl apply -f UA-CloudPublisher.yaml 55 | 56 | echo . 57 | echo Starting Seattle production line... 58 | cd /mnt/c/K3s/Deployment/Seattle 59 | kubectl apply -f ProductionLine.yaml 60 | 61 | echo Waiting for production lines to be started, please be patient... 62 | sleep 30 63 | 64 | echo Starting UA-CloudPublisher... 65 | kubectl apply -f UA-CloudPublisher.yaml 66 | 67 | echo . 68 | echo Production lines started. 69 | exit 0 70 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/.dockerignore: -------------------------------------------------------------------------------- 1 | **/.classpath 2 | **/.dockerignore 3 | **/.env 4 | **/.git 5 | **/.gitignore 6 | **/.project 7 | **/.settings 8 | **/.toolstarget 9 | **/.vs 10 | **/.vscode 11 | **/*.*proj.user 12 | **/*.dbmdl 13 | **/*.jfm 14 | **/azds.yaml 15 | **/bin 16 | **/charts 17 | **/docker-compose* 18 | **/Dockerfile* 19 | **/node_modules 20 | **/npm-debug.log 21 | **/obj 22 | **/secrets.dev.yaml 23 | **/values.dev.yaml 24 | LICENSE 25 | README.md -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/ApplicationMessageDlg.cs: -------------------------------------------------------------------------------- 1 |  2 | namespace Station.Simulation 3 | { 4 | using Opc.Ua.Configuration; 5 | using System; 6 | using System.Threading.Tasks; 7 | 8 | public class ApplicationMessageDlg : IApplicationMessageDlg 9 | { 10 | private string _message = string.Empty; 11 | 12 | public override void Message(string text, bool ask) 13 | { 14 | _message = text; 15 | } 16 | 17 | public override async Task ShowAsync() 18 | { 19 | Console.WriteLine(_message); 20 | 21 | // always return yes 22 | return await Task.FromResult(true); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/Dockerfile: -------------------------------------------------------------------------------- 1 | #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. 2 | 3 | FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base 4 | WORKDIR /app 5 | EXPOSE 4840 6 | 7 | FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build 8 | WORKDIR /src 9 | COPY ["Station.csproj", "."] 10 | RUN dotnet restore "./Station.csproj" 11 | COPY . . 12 | WORKDIR "/src/." 13 | RUN dotnet build "Station.csproj" -c Release -o /app/build 14 | 15 | FROM build AS publish 16 | RUN dotnet publish "Station.csproj" -c Release -o /app/publish /p:UseAppHost=false 17 | 18 | FROM base AS final 19 | WORKDIR /app 20 | COPY --from=publish /app/publish . 21 | ENTRYPOINT ["dotnet", "Station.dll"] -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Station": { 4 | "commandName": "Project" 5 | }, 6 | "Docker": { 7 | "commandName": "Docker", 8 | "environmentVariables": { 9 | "StationType": "assembly", 10 | "StationURI": "opc.tcp://assembly.munich/", 11 | "PowerConsumption": "200", 12 | "CycleTime": "6", 13 | "OPCUA_USERNAME": "myUsername", 14 | "OPCUA_PASSWORD": "myPassword" 15 | } 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/ShiftTimes.csv: -------------------------------------------------------------------------------- 1 | Morning,07:00,14:00 2 | Afternoon,15:00,22:00 3 | Night,23:00,06:00 4 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/Station.cs: -------------------------------------------------------------------------------- 1 |  2 | namespace Mes.Simulation 3 | { 4 | using Opc.Ua; 5 | using System.Runtime.Serialization; 6 | 7 | [DataContract(Name = "StationConfig", Namespace = Namespaces.OpcUaConfig)] 8 | public class Station 9 | { 10 | [DataMember(Order = 1, IsRequired = true)] 11 | public NodeId StatusNode { get; set; } 12 | 13 | [DataMember(Order = 2, IsRequired = true)] 14 | public NodeId RootMethodNode { get; set; } 15 | 16 | [DataMember(Order = 3, IsRequired = true)] 17 | public NodeId ResetMethodNode { get; set; } 18 | 19 | [DataMember(Order = 4, IsRequired = true)] 20 | public NodeId ExecuteMethodNode { get; set; } 21 | 22 | public Station() { } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/Station.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | net6.0 5 | portable 6 | Station 7 | Exe 8 | Station 9 | Station.Simulation.Program 10 | Station.Simulation 11 | bin\ 12 | Linux 13 | . 14 | -p 4840:4840 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | PreserveNewest 37 | 38 | 39 | PreserveNewest 40 | 41 | 42 | PreserveNewest 43 | PreserveNewest 44 | 45 | 46 | PreserveNewest 47 | 48 | 49 | PreserveNewest 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /Tools/FactorySimulation/Station/StationTags.csv: -------------------------------------------------------------------------------- 1 | NodeID,TagName,QueueSize,ObservabilityMode,Sampling Interval Milliseconds 2 | nsu=http://opcfoundation.org/UA/Station/;i=379,manufactured product serial number,1,none,500 3 | nsu=http://opcfoundation.org/UA/Station/;i=385,number of manufactured products,1,none,500 4 | nsu=http://opcfoundation.org/UA/Station/;i=391,number of discarded products,1,none,500 5 | nsu=http://opcfoundation.org/UA/Station/;i=398,running time,1,none,500 6 | nsu=http://opcfoundation.org/UA/Station/;i=399,faulty time,1,none,500 7 | nsu=http://opcfoundation.org/UA/Station/;i=400,status,1,none,500 8 | nsu=http://opcfoundation.org/UA/Station/;i=406,energy consumption,1,none,500 9 | nsu=http://opcfoundation.org/UA/Station/;i=412,ideal cycle time,1,none,500 10 | nsu=http://opcfoundation.org/UA/Station/;i=418,actual cycle time,1,none,500 11 | nsu=http://opcfoundation.org/UA/Station/;i=434,pressure,1,none,500 -------------------------------------------------------------------------------- /Tools/FactorySimulation/StopSimulation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd /mnt/c/K3s/Deployment/Munich 4 | kubectl delete -f UA-CloudPublisher.yaml 5 | kubectl delete -f ProductionLine.yaml 6 | 7 | cd /mnt/c/K3s/Deployment/Seattle 8 | kubectl delete -f UA-CloudPublisher.yaml 9 | kubectl delete -f ProductionLine.yaml 10 | --------------------------------------------------------------------------------