diff --git a/ontology/uco/action/action.ttl b/ontology/uco/action/action.ttl index c2da040a..c0f97fdf 100644 --- a/ontology/uco/action/action.ttl +++ b/ontology/uco/action/action.ttl @@ -374,6 +374,26 @@ action:ArrayOfAction sh:targetClass action:ArrayOfAction ; . +action:Implement + a owl:Class ; + rdfs:subClassOf action:Action ; + . + +action:Obfuscate + a owl:Class ; + rdfs:subClassOf action:Action ; + . + +action:Plan + a owl:Class ; + rdfs:subClassOf action:Action ; + . + +action:Respond + a owl:Class ; + rdfs:subClassOf action:Action ; + . + action:action a owl:ObjectProperty ; rdfs:label "action"@en ; diff --git a/ontology/uco/configuration/configuration.ttl b/ontology/uco/configuration/configuration.ttl index 91d24a74..d88c884e 100644 --- a/ontology/uco/configuration/configuration.ttl +++ b/ontology/uco/configuration/configuration.ttl @@ -115,6 +115,14 @@ configuration:ConfigurationEntry ) ; . +configuration:CyberInfrastructureConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:InfrastructureConfiguration ; + . + configuration:Dependency a owl:Class , @@ -140,6 +148,62 @@ configuration:Dependency sh:targetClass configuration:Dependency ; . +configuration:DeploymentConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:Configuration ; + . + +configuration:EnvironmentConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:Configuration ; + . + +configuration:InfrastructureConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:Configuration ; + . + +configuration:ObservableObjectConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:Configuration ; + . + +configuration:ServiceConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:ObservableObjectConfiguration ; + . + +configuration:SoftwareConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:ObservableObjectConfiguration ; + . + +configuration:SoftwareEnvironmentConfiguration + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf configuration:EnvironmentConfiguration ; + . + configuration:configurationEntry a owl:ObjectProperty ; rdfs:comment "A single configuration setting entry item for a tool or other software."@en ; diff --git a/ontology/uco/core/core.ttl b/ontology/uco/core/core.ttl index e061bd54..4f4ab185 100644 --- a/ontology/uco/core/core.ttl +++ b/ontology/uco/core/core.ttl @@ -598,6 +598,13 @@ core:externalReference rdfs:range core:ExternalReference ; . +core:hasCharacterization + a owl:ObjectProperty ; + rdfs:comment "TODO - references the Software or Device that make up the actual tool"@en ; + rdfs:domain core:UcoObject ; + rdfs:range core:UcoObject ; + . + core:hasFacet a owl:ObjectProperty , diff --git a/ontology/uco/deployment/catalog-v001.xml b/ontology/uco/deployment/catalog-v001.xml new file mode 100644 index 00000000..bce4dc2d --- /dev/null +++ b/ontology/uco/deployment/catalog-v001.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/ontology/uco/deployment/deployment.ttl b/ontology/uco/deployment/deployment.ttl new file mode 100644 index 00000000..8efc5bb5 --- /dev/null +++ b/ontology/uco/deployment/deployment.ttl @@ -0,0 +1,61 @@ +# imports: https://ontology.unifiedcyberontology.org/uco/observable/1.3.0 + +@prefix core: . +@prefix deployment: . +@prefix observable: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix sh: . +@prefix xsd: . + + + a owl:Ontology ; + rdfs:label "uco-deployment"@en ; + rdfs:comment "TODO"@en ; + owl:imports observable:1.3.0 ; + owl:versionIRI deployment:1.3.0 ; + . + +deployment:ArtifactDeployment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf deployment:Deployment ; + . + +deployment:Deployment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf core:UcoObject ; + sh:property + [ + sh:class core:UcoObject ; + sh:nodeKind sh:IRI ; + sh:path deployment:deploymentContext ; + ] , + [ + sh:class observable:Deploy ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:IRI ; + sh:path deployment:deploymentAction ; + ] , + [ + sh:class observable:ObservableObject ; + sh:nodeKind sh:IRI ; + sh:path deployment:deploymentObject ; + ] + ; + . + +deployment:SoftwareDeployment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf deployment:Deployment ; + . + diff --git a/ontology/uco/environment/catalog-v001.xml b/ontology/uco/environment/catalog-v001.xml new file mode 100644 index 00000000..61b92034 --- /dev/null +++ b/ontology/uco/environment/catalog-v001.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ontology/uco/environment/environment.ttl b/ontology/uco/environment/environment.ttl new file mode 100644 index 00000000..1b1da601 --- /dev/null +++ b/ontology/uco/environment/environment.ttl @@ -0,0 +1,38 @@ +# imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0 + +@prefix core: . +@prefix environment: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix sh: . +@prefix xsd: . + + + a owl:Ontology ; + rdfs:label "uco-environment"@en ; + rdfs:comment "TODO"@en ; + owl:imports core:1.3.0 ; + owl:versionIRI environment:1.3.0 ; + . + +environment:Environment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf core:UcoObject ; + sh:property [ + sh:class core:UcoObject ; + sh:path core:hasCharacterization ; + ] ; + . + +environment:SoftwareEnvironment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf environment:Environment ; + . + diff --git a/ontology/uco/infrastructure/catalog-v001.xml b/ontology/uco/infrastructure/catalog-v001.xml new file mode 100644 index 00000000..37b02710 --- /dev/null +++ b/ontology/uco/infrastructure/catalog-v001.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ontology/uco/infrastructure/infrastructure.ttl b/ontology/uco/infrastructure/infrastructure.ttl new file mode 100644 index 00000000..1c97a8b5 --- /dev/null +++ b/ontology/uco/infrastructure/infrastructure.ttl @@ -0,0 +1,42 @@ +# imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0 + +@prefix core: . +@prefix infrastructure: . +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix sh: . +@prefix xsd: . + + + a owl:Ontology ; + rdfs:label "uco-infrastructure"@en ; + rdfs:comment "TODO"@en ; + owl:imports core:1.3.0 ; + owl:versionIRI infrastructure:1.3.0 ; + . + +infrastructure:CyberInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf infrastructure:Infrastructure ; + . + +infrastructure:Infrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf core:UcoObject ; + . + +infrastructure:PhysicalInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf infrastructure:Infrastructure ; + . + diff --git a/ontology/uco/master/catalog-v001.xml b/ontology/uco/master/catalog-v001.xml index 839b6401..8075e6f5 100644 --- a/ontology/uco/master/catalog-v001.xml +++ b/ontology/uco/master/catalog-v001.xml @@ -8,7 +8,10 @@ + + + diff --git a/ontology/uco/master/uco.ttl b/ontology/uco/master/uco.ttl index 61346b1b..6eb4dc5b 100644 --- a/ontology/uco/master/uco.ttl +++ b/ontology/uco/master/uco.ttl @@ -4,7 +4,10 @@ # imports: https://ontology.unifiedcyberontology.org/uco/analysis/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0 +# imports: https://ontology.unifiedcyberontology.org/uco/deployment/1.3.0 +# imports: https://ontology.unifiedcyberontology.org/uco/environment/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/identity/1.3.0 +# imports: https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/location/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/marking/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/observable/1.3.0 @@ -33,7 +36,10 @@ , , , + , + , , + , , , , diff --git a/ontology/uco/observable/catalog-v001.xml b/ontology/uco/observable/catalog-v001.xml index fb5f3d2b..e9221120 100644 --- a/ontology/uco/observable/catalog-v001.xml +++ b/ontology/uco/observable/catalog-v001.xml @@ -6,7 +6,9 @@ + + diff --git a/ontology/uco/observable/observable.ttl b/ontology/uco/observable/observable.ttl index fe9d3419..60b9dcbf 100644 --- a/ontology/uco/observable/observable.ttl +++ b/ontology/uco/observable/observable.ttl @@ -1,7 +1,9 @@ # imports: https://ontology.unifiedcyberontology.org/uco/action/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0 +# imports: https://ontology.unifiedcyberontology.org/uco/environment/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/identity/1.3.0 +# imports: https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/location/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/types/1.3.0 # imports: https://ontology.unifiedcyberontology.org/uco/vocabulary/1.3.0 @@ -10,7 +12,9 @@ @prefix co: . @prefix configuration: . @prefix core: . +@prefix environment: . @prefix identity: . +@prefix infrastructure: . @prefix location: . @prefix observable: . @prefix owl: . @@ -30,7 +34,9 @@ action:1.3.0 , configuration:1.3.0 , core:1.3.0 , + environment:1.3.0 , identity:1.3.0 , + infrastructure:1.3.0 , location:1.3.0 , types:1.3.0 , vocabulary:1.3.0 @@ -232,6 +238,14 @@ observable:Address sh:targetClass observable:Address ; . +observable:Alert + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + observable:AlternateDataStream a owl:Class , @@ -418,7 +432,7 @@ observable:Application owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Software ; rdfs:label "Application"@en ; rdfs:comment "An application is a particular software program designed for end users."@en ; sh:targetClass observable:Application ; @@ -666,6 +680,14 @@ observable:AutonomousSystemFacet sh:targetClass observable:AutonomousSystemFacet ; . +observable:Beacon + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + observable:BlackberryPhone a owl:Class , @@ -858,6 +880,22 @@ observable:BrowserCookieFacet sh:targetClass observable:BrowserCookieFacet ; . +observable:Build + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + +observable:BuildUtility + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + observable:Calendar a owl:Class , @@ -1194,12 +1232,20 @@ observable:Code owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Software ; rdfs:label "Code"@en ; rdfs:comment "Code is a direct representation (source, byte or binary) of a collection of computer instructions that form software which tell a computer how to work. [based on https://en.wikipedia.org/wiki/Software]"@en ; sh:targetClass observable:Code ; . +observable:Compiler + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + observable:CompressedStreamFacet a owl:Class , @@ -1379,6 +1425,51 @@ observable:ComputerSpecificationFacet sh:targetClass observable:ComputerSpecificationFacet ; . +observable:Configure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + sh:property [ + sh:class configuration:Configuration ; + sh:nodeKind sh:IRI ; + sh:path observable:toConfiguration ; + ] ; + . + +observable:ConfigureCyberInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ConfigureInfrastructure ; + . + +observable:ConfigureEnvironment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Configure ; + . + +observable:ConfigureInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Configure ; + . + +observable:ConfigureSoftware + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Configure ; + . + observable:ConfiguredSoftware a owl:Class , @@ -2209,6 +2300,66 @@ observable:DefinedEffectFacet sh:targetClass observable:DefinedEffectFacet ; . +observable:Deploy + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + sh:property + [ + sh:class environment:Environment ; + sh:nodeKind sh:IRI ; + sh:path observable:targetEnvironment ; + ] , + [ + sh:class infrastructure:Infrastructure ; + sh:nodeKind sh:IRI ; + sh:path observable:targetInfrastructure ; + ] + ; + . + +observable:DeployArtifact + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Deploy ; + . + +observable:DeployCyberInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:DeployInfrastructure ; + . + +observable:DeployInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Deploy ; + . + +observable:DeploySoftware + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Deploy ; + . + +observable:DeploymentScript + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Script ; + . + observable:Device a owl:Class , @@ -2252,6 +2403,12 @@ observable:DeviceFacet sh:maxCount "1"^^xsd:integer ; sh:nodeKind sh:Literal ; sh:path observable:serialNumber ; + ] , + [ + sh:datatype xsd:string ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:Literal ; + sh:path observable:version ; ] ; sh:targetClass observable:DeviceFacet ; @@ -2945,6 +3102,14 @@ observable:EnvironmentVariable sh:targetClass observable:EnvironmentVariable ; . +observable:Evaluate + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + observable:EventLog a owl:Class , @@ -3058,6 +3223,38 @@ observable:EventRecordFacet sh:targetClass observable:EventRecordFacet ; . +observable:Execute + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + +observable:ExecuteScript + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ExecuteSoftware ; + . + +observable:ExecuteSoftware + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Execute ; + . + +observable:ExecuteSoftwareDeploymentScript + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ExecuteScript ; + . + observable:ExtInodeFacet a owl:Class , @@ -3966,7 +4163,7 @@ observable:Library owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Software ; rdfs:label "Library"@en ; rdfs:comment "A library is a suite of data and programming code that is used to develop software programs and applications. [based on https://www.techopedia.com/definition/3828/software-library]"@en ; sh:targetClass observable:Library ; @@ -3989,6 +4186,14 @@ observable:LibraryFacet sh:targetClass observable:LibraryFacet ; . +observable:LinuxTask + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Task ; + . + observable:MACAddress a owl:Class , @@ -4025,6 +4230,38 @@ observable:MSISDNType rdfs:range xsd:string ; . +observable:Manage + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + +observable:ManageEnvironment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Manage ; + . + +observable:ManageInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Manage ; + . + +observable:ManageSoftware + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Manage ; + . + observable:Memory a owl:Class , @@ -5128,7 +5365,7 @@ observable:OperatingSystem owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Software ; rdfs:label "OperatingSystem"@en ; rdfs:comment "An operating system is the software that manages computer hardware, software resources, and provides common services for computer programs. [based on https://en.wikipedia.org/wiki/Operating_system]"@en ; sh:targetClass observable:OperatingSystem ; @@ -5267,6 +5504,14 @@ observable:PUK rdfs:range xsd:string ; . +observable:Package + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + observable:PathRelationFacet a owl:Class , @@ -5349,7 +5594,7 @@ observable:Process owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Software ; rdfs:label "Process"@en ; rdfs:comment "A process is an instance of a computer program executed on an operating system."@en ; sh:targetClass observable:Process ; @@ -5444,7 +5689,7 @@ observable:ProcessThread owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Process ; rdfs:label "ProcessThread"@en ; rdfs:comment "A process thread is the smallest sequence of programmed instructions that can be managed independently by a scheduler on a computer, which is typically a part of the operating system. It is a component of a process. Multiple threads can exist within one process, executing concurrently and sharing resources such as memory, while different processes do not share these resources. In particular, the threads of a process share its executable code and the values of its dynamically allocated variables and non-thread-local global variables at any given time. [based on https://en.wikipedia.org/wiki/Thread_(computing)]"@en ; sh:targetClass observable:ProcessThread ; @@ -5836,6 +6081,14 @@ observable:ReparsePoint sh:targetClass observable:ReparsePoint ; . +observable:RollbackSoftwareDeployment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Deploy ; + . + observable:SIMCard a owl:Class , @@ -6019,6 +6272,14 @@ observable:SQLiteBlobFacet sh:targetClass observable:SQLiteBlobFacet ; . +observable:Script + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + observable:SecurityAppliance a owl:Class , @@ -6069,6 +6330,46 @@ observable:Server sh:targetClass observable:Server ; . +observable:Service + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Process ; + . + +observable:ServicePack + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + +observable:SetConfigurationEntry + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ObservableAction ; + . + +observable:SetCyberEnvironmentConfigurationEntry + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:SetConfigurationEntry ; + . + +observable:SetEnvironmentConfigurationEntry + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:SetConfigurationEntry ; + . + observable:ShopListing a owl:Class , @@ -6150,6 +6451,74 @@ observable:Software sh:targetClass observable:Software ; . +observable:SoftwareBuild + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Software ; + . + +observable:SoftwareBuildFacet + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf core:Facet ; + sh:property + [ + sh:class observable:BuildUtility ; + sh:nodeKind sh:IRI ; + sh:path observable:buildUtility ; + ] , + [ + sh:class observable:Compiler ; + sh:nodeKind sh:IRI ; + sh:path observable:compiler ; + ] , + [ + sh:class observable:Library ; + sh:nodeKind sh:IRI ; + sh:path observable:library ; + ] , + [ + sh:class observable:Package ; + sh:nodeKind sh:IRI ; + sh:path observable:package ; + ] , + [ + sh:class observable:Script ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:IRI ; + sh:path observable:buildScript ; + ] , + [ + sh:datatype xsd:dateTime ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:Literal ; + sh:path observable:compilationDate ; + ] , + [ + sh:datatype xsd:string ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:Literal ; + sh:path observable:buildOutputLog ; + ] , + [ + sh:datatype xsd:string ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:Literal ; + sh:path observable:buildProject ; + ] , + [ + sh:datatype xsd:string ; + sh:maxCount "1"^^xsd:integer ; + sh:nodeKind sh:Literal ; + sh:path observable:version ; + ] + ; + . + observable:SoftwareFacet a owl:Class , @@ -6193,6 +6562,14 @@ observable:SoftwareFacet sh:targetClass observable:SoftwareFacet ; . +observable:StartCyberInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ManageInfrastructure ; + . + observable:StateChangeEffectFacet a owl:Class , @@ -6218,6 +6595,14 @@ observable:StateChangeEffectFacet sh:targetClass observable:StateChangeEffectFacet ; . +observable:StopCyberInfrastructure + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:ManageInfrastructure ; + . + observable:StorageMedium a owl:Class , @@ -6432,6 +6817,14 @@ observable:Tablet sh:targetClass observable:Tablet ; . +observable:Task + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Process ; + . + observable:TaskActionType a owl:Class , @@ -7288,6 +7681,14 @@ observable:ValuesEnumeratedEffectFacet sh:targetClass observable:ValuesEnumeratedEffectFacet ; . +observable:VerifySoftwareDeployment + a + owl:Class , + sh:NodeShape + ; + rdfs:subClassOf observable:Evaluate ; + . + observable:Volume a owl:Class , @@ -8479,7 +8880,7 @@ observable:WindowsService owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Service ; rdfs:label "WindowsService"@en ; rdfs:comment "A Windows service is a specific Windows service (a computer program that operates in the background of a Windows operating system, similar to the way a UNIX daemon runs on UNIX). [based on https://en.wikipedia.org/wiki/Windows_service]"@en ; sh:targetClass observable:WindowsService ; @@ -8604,7 +9005,7 @@ observable:WindowsTask owl:Class , sh:NodeShape ; - rdfs:subClassOf observable:ObservableObject ; + rdfs:subClassOf observable:Task ; rdfs:label "WindowsTask"@en ; rdfs:comment "A Windows task is a process that is scheduled to execute on a Windows operating system by the Windows Task Scheduler. [based on http://msdn.microsoft.com/en-us/library/windows/desktop/aa381311(v=vs.85).aspx]"@en ; sh:targetClass observable:WindowsTask ; @@ -9764,6 +10165,13 @@ observable:browserUserProfile rdfs:range xsd:string ; . +observable:buildOutputLog + a owl:DatatypeProperty ; + rdfs:label "buildOutputLog"@en ; + rdfs:comment "The output log of the build process for a software."@en ; + rdfs:range xsd:string ; + . + observable:byteOrder a owl:DatatypeProperty ; rdfs:label "byteOrder"@en ; diff --git a/ontology/uco/tool/tool.ttl b/ontology/uco/tool/tool.ttl index c690fdc8..fb804209 100644 --- a/ontology/uco/tool/tool.ttl +++ b/ontology/uco/tool/tool.ttl @@ -4,6 +4,7 @@ @prefix configuration: . @prefix core: . @prefix identity: . +@prefix observable: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @@ -23,6 +24,11 @@ owl:versionIRI tool:1.3.0 ; . +observable:ObservableObject + a owl:Class ; + rdfs:isDefinedBy ; + . + tool:AnalyticTool a owl:Class , @@ -54,139 +60,54 @@ tool:BuildFacet tool:BuildInformationType a owl:Class , + owl:DeprecatedClass , sh:NodeShape ; rdfs:subClassOf core:UcoInherentCharacterizationThing ; rdfs:label "BuildInformationType"@en ; rdfs:comment "A build information type is a grouping of characteristics that describe how a particular version of software was converted from source code to executable code."@en ; - sh:property - [ - sh:class configuration:Configuration ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:IRI ; - sh:path tool:buildConfiguration ; - ] , - [ - sh:class tool:BuildUtilityType ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:IRI ; - sh:path tool:buildUtility ; - ] , - [ - sh:class tool:CompilerType ; - sh:nodeKind sh:IRI ; - sh:path tool:compilers ; - ] , - [ - sh:class tool:LibraryType ; - sh:nodeKind sh:IRI ; - sh:path tool:libraries ; - ] , - [ - sh:datatype xsd:dateTime ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:compilationDate ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildID ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildLabel ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildOutputLog ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildProject ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildScript ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildVersion ; - ] - ; + rdfs:seeAlso observable:SoftwareBuildFacet ; + sh:message "uco-tool:BuildInformationType is deprecated. Please migrate usage of this class to uco-observable:SoftwareBuildFacet."@en ; + sh:not [ + a sh:NodeShape ; + sh:class tool:BuildInformationType ; + ] ; sh:targetClass tool:BuildInformationType ; . tool:BuildUtilityType a owl:Class , + owl:DeprecatedClass , sh:NodeShape ; rdfs:subClassOf core:UcoInherentCharacterizationThing ; rdfs:label "BuildUtilityType"@en ; rdfs:comment "A build utility type characterizes the tool used to convert from source code to executable code for a particular version of software."@en ; - sh:property - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:buildUtilityName ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:cpeid ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:swid ; - ] - ; + rdfs:seeAlso observable:BuildUtilityFacet ; + sh:message "uco-tool:BuildUtilityType is deprecated. Please migrate usage of this class to uco-observable:BuildUtilityFacet."@en ; + sh:not [ + a sh:NodeShape ; + sh:class tool:BuildUtilityType ; + ] ; sh:targetClass tool:BuildUtilityType ; . tool:CompilerType a owl:Class , + owl:DeprecatedClass , sh:NodeShape ; rdfs:subClassOf core:UcoInherentCharacterizationThing ; rdfs:label "CompilerType"@en ; rdfs:comment "A compiler type is a grouping of characteristics unique to a specific program that translates computer code written in one programming language (the source language) into another language (the target language). Typically a program that translates source code from a high-level programming language to a lower-level language (e.g., assembly language, object code, or machine code) to create an executable program. [based on https://en.wikipedia.org/wiki/Compiler]"@en ; - sh:property - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:compilerInformalDescription ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:cpeid ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:swid ; - ] - ; + rdfs:seeAlso observable:CompilerFacet ; + sh:message "uco-tool:CompilerType is deprecated. Please migrate usage of this class to uco-observable:CompilerFacet."@en ; + sh:not [ + a sh:NodeShape ; + sh:class tool:CompilerType ; + ] ; sh:targetClass tool:CompilerType ; . @@ -229,25 +150,18 @@ tool:DefensiveTool tool:LibraryType a owl:Class , + owl:DeprecatedClass , sh:NodeShape ; rdfs:subClassOf core:UcoInherentCharacterizationThing ; rdfs:label "LibraryType"@en ; rdfs:comment "A library type is a grouping of characteristics unique to a collection of resources incorporated into the build of a software."@en ; - sh:property - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:libraryName ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:libraryVersion ; - ] - ; + rdfs:seeAlso observable:LibraryFacet ; + sh:message "uco-tool:LibraryType is deprecated. Please migrate usage of this class to uco-observable:LibraryFacet."@en ; + sh:not [ + a sh:NodeShape ; + sh:class tool:LibraryType ; + ] ; sh:targetClass tool:LibraryType ; . @@ -272,50 +186,81 @@ tool:Tool rdfs:comment "A tool is an element of hardware and/or software utilized to carry out a particular function."@en ; sh:property [ - sh:class identity:Identity ; - sh:maxCount "1"^^xsd:integer ; + sh:class observable:ObservableObject ; sh:nodeKind sh:IRI ; - sh:path tool:creator ; + sh:path core:hasCharacterization ; ] , [ sh:datatype xsd:anyURI ; sh:nodeKind sh:Literal ; sh:path tool:references ; ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:servicePack ; - ] , [ sh:datatype xsd:string ; sh:maxCount "1"^^xsd:integer ; sh:nodeKind sh:Literal ; sh:path tool:toolType ; - ] , - [ - sh:datatype xsd:string ; - sh:maxCount "1"^^xsd:integer ; - sh:nodeKind sh:Literal ; - sh:path tool:version ; ] ; sh:targetClass tool:Tool ; . tool:buildConfiguration - a owl:ObjectProperty ; + a + owl:ObjectProperty , + owl:DeprecatedProperty + ; rdfs:label "buildConfiguration"@en ; rdfs:comment "How the build utility was configured for a particular build of a particular software."@en ; rdfs:range configuration:Configuration ; + rdfs:seeAlso + configuration:usesConfiguration , + observable:BuildUtility + ; + . + +tool:buildConfiguration-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + configuration:usesConfiguration , + observable:BuildUtility + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:buildConfiguration is deprecated. Please instead use the property (starting from uco-observable:BuildUtility) / configuration:usesConfiguration."@en ; + sh:path tool:buildConfiguration ; + ] ; + sh:targetSubjectsOf tool:buildConfiguration ; . tool:buildID - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "buildID"@en ; rdfs:comment "An externally defined unique identifier for a particular build of a software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + core:ExternalReference , + core:externalIdentifier , + core:externalReference + ; + . + +tool:buildID-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + core:ExternalReference , + core:externalIdentifier , + core:externalReference + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:buildID is deprecated. Please instead use the path uco-core:externalReference (linking a uco-core:ExternalReference) / uco-core:externalIdentifier."@en ; + sh:path tool:buildID ; + ] ; + sh:targetSubjectsOf tool:buildID ; . tool:buildInformation @@ -326,17 +271,59 @@ tool:buildInformation . tool:buildLabel - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "buildLabel"@en ; rdfs:comment "Relevant label for a particular build of a particular software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + core:tag , + observable:SoftwareBuildFacet + ; + . + +tool:buildLabel-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + core:tag , + observable:SoftwareBuildFacet + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:buildLabel is depreacted. Please instead use the path uco-core:hasFacet (linking a uco-observable:SoftwareBuildFacet) / uco-core:tag."@en ; + sh:path tool:buildLabel ; + ] ; + sh:targetSubjectsOf tool:buildLabel ; . tool:buildOutputLog - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "buildOutputLog"@en ; rdfs:comment "The output log of the build process for a software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:SoftwareBuildFacet , + observable:buildOutputLog + ; + . + +tool:buildOutputLog-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:SoftwareBuildFacet , + observable:buildOutputLog + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:buildOutputLog is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:SoftwareBuildFacet ) / uco-observable:buildOutputLog."@en ; + sh:path tool:buildOutputLog ; + ] ; + sh:targetSubjectsOf tool:buildOutputLog ; . tool:buildProject @@ -361,10 +348,31 @@ tool:buildUtility . tool:buildUtilityName - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "buildUtilityName"@en ; rdfs:comment "The informally defined name of the utility used to build a particular software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + core:name , + observable:BuildUtilityFacet + ; + . + +tool:buildUtilityName-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + core:name , + observable:BuildUtilityFacet + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:buildUtilityName is deprecated. Please instead Use the path uco-core:hasFacet (linking a uco-observable:BuildUtilityFacet) / uco-core:name."@en ; + sh:path tool:buildUtilityName ; + ] ; + sh:targetSubjectsOf tool:buildUtilityName ; . tool:buildVersion @@ -382,10 +390,31 @@ tool:compilationDate . tool:compilerInformalDescription - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "compilerInformalDescription"@en ; rdfs:comment "An informal description of a compiler."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + core:description , + observable:CompilerFacet + ; + . + +tool:compilerInformalDescription-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + core:description , + observable:CompilerFacet + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:compilerInformalDescription is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:CompilerFacet) / uco-core:description."@en ; + sh:path tool:compilerInformalDescription ; + ] ; + sh:targetSubjectsOf tool:compilerInformalDescription ; . tool:compilers @@ -396,59 +425,229 @@ tool:compilers . tool:cpeid - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "cpeid"@en ; rdfs:comment "Specifies the Common Platform Enumeration identifier for the software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:cpeid + ; + . + +tool:cpeid-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:cpeid + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:cpeid is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:DeviceFacet or uco-observable:SoftwareFacet) / uco-observable:cpeid."@en ; + sh:path tool:cpeid ; + ] ; + sh:targetSubjectsOf tool:cpeid ; . tool:creator - a owl:ObjectProperty ; + a + owl:ObjectProperty , + owl:DeprecatedProperty + ; rdfs:label "creator"@en ; rdfs:comment "The creator organization for a particular tool."@en ; rdfs:range identity:Identity ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:manufacturer + ; + . + +tool:creator-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:manufacturer + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:creator is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:DeviceFacet or uco-observable:SoftwareFacet) / uco-observable:manufacturer."@en ; + sh:path tool:creator ; + ] ; + sh:targetSubjectsOf tool:creator ; . tool:libraries - a owl:ObjectProperty ; + a + owl:ObjectProperty , + owl:DeprecatedProperty + ; rdfs:label "libraries"@en ; rdfs:comment "The libraries incorporated into a particular build of a software."@en ; rdfs:range tool:LibraryType ; + rdfs:seeAlso + observable:SoftwareBuildFacet , + observable:library + ; + . + +tool:libraries-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:SoftwareBuildFacet , + observable:library + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:libraries is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:SoftwareBuildFacet) / uco-observable:library."@en ; + sh:path tool:libraries ; + ] ; + sh:targetSubjectsOf tool:libraries ; . tool:libraryName - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "libraryName"@en ; rdfs:comment "The name of the library."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + core:name , + observable:LibraryFacet + ; + . + +tool:libraryName-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + core:name , + observable:LibraryFacet + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:libraryName is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:LibraryFacet) / uco-core:name."@en ; + sh:path tool:libraryName ; + ] ; + sh:targetSubjectsOf tool:libraryName ; . tool:libraryVersion - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "libraryVersion"@en ; rdfs:comment "The version of the library."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:LibraryFacet , + observable:version + ; + . + +tool:libraryVersion-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:LibraryFacet , + observable:version + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:libraryVersion is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:LibraryFacet) / uco-observable:version."@en ; + sh:path tool:libraryVersion ; + ] ; + sh:targetSubjectsOf tool:libraryVersion ; . tool:references - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "references"@en ; rdfs:comment "References to information describing a particular tool."@en ; rdfs:range xsd:anyURI ; + rdfs:seeAlso core:externalReference ; + . + +tool:references-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso core:externalReference ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:references is deprecated. Please instead use the path uco-core:externalReference."@en ; + sh:path tool:creator ; + ] ; + sh:targetSubjectsOf tool:references ; . tool:servicePack - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "servicePack"@en ; rdfs:comment "An appropriate service pack descriptor for a particular tool."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:ServicePack , + observable:SoftwareFacet , + observable:Version + ; + . + +tool:servicePack-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:ServicePack , + observable:SoftwareFacet , + observable:Version + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:servicePack is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:SoftwareFacet) / uco-observable:version."@en ; + sh:path tool:servicePack ; + ] ; + sh:targetSubjectsOf tool:servicePack ; . tool:swid - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "swid"@en ; rdfs:comment "Specifies the SWID tag for the software."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:swid + ; + . + +tool:swid-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:swid + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:swid is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:DeviceFacet or uco-observable:SoftwareFacet) / uco-observable:swid."@en ; + sh:path tool:swid ; + ] ; + sh:targetSubjectsOf tool:swid ; . tool:toolType @@ -459,9 +658,32 @@ tool:toolType . tool:version - a owl:DatatypeProperty ; + a + owl:DatatypeProperty , + owl:DeprecatedProperty + ; rdfs:label "version"@en ; rdfs:comment "An appropriate version descriptor of a particular tool."@en ; rdfs:range xsd:string ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:swid + ; + . + +tool:version-subjects-shape + a sh:NodeShape ; + rdfs:seeAlso + observable:DeviceFacet , + observable:SoftwareFacet , + observable:swid + ; + sh:property [ + sh:maxCount "0"^^xsd:integer ; + sh:message "uco-tool:version is deprecated. Please instead use the path uco-core:hasFacet (linking a uco-observable:DeviceFacet or uco-observable:SoftwareFacet) / uco-observable:version."@en ; + sh:path tool:version ; + ] ; + sh:targetSubjectsOf tool:version ; .