Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue 583: Overhaul Software, Configuration, and Tool #589

Draft
wants to merge 4 commits into
base: develop-2.0.0
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions ontology/uco/action/action.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -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 ;
Expand Down
64 changes: 64 additions & 0 deletions ontology/uco/configuration/configuration.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,14 @@ configuration:ConfigurationEntry
) ;
.

configuration:CyberInfrastructureConfiguration
a
owl:Class ,
sh:NodeShape
;
rdfs:subClassOf configuration:InfrastructureConfiguration ;
.

configuration:Dependency
a
owl:Class ,
Expand All @@ -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 ;
Expand Down
7 changes: 7 additions & 0 deletions ontology/uco/core/core.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -598,6 +598,13 @@ core:externalReference
rdfs:range core:ExternalReference ;
.

core:hasCharacterization
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This property had no accompanying namespace suggestion. Should this go into core:? I'm guessing so for now, because of the appearances in the Environment and Tool namespaces.

  • What is its domain?
  • What is its range - anything aside from UcoObject, at the most-general property level? Why did the definition string you provided say "references the Software or Device that make up the actual tool," when the suggested constraints in property shapes were much more general?

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 ,
Expand Down
18 changes: 18 additions & 0 deletions ontology/uco/deployment/catalog-v001.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="public">
<uri id="User Entered Import Resolution" uri="../../../dependencies/collections-ontology/collections.owl" name="http://purl.org/co"/>
<uri id="User Entered Import Resolution" uri="../../../dependencies/error/docs/current/error.ttl" name="http://purl.org/spar/error"/>
<uri id="User Entered Import Resolution" uri="../../co/co.ttl" name="https://ontology.unifiedcyberontology.org/co/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../action/action.ttl" name="https://ontology.unifiedcyberontology.org/uco/action/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../configuration/configuration.ttl" name="https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../core/core.ttl" name="https://ontology.unifiedcyberontology.org/uco/core/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../environment/environment.ttl" name="https://ontology.unifiedcyberontology.org/uco/environment/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../identity/identity.ttl" name="https://ontology.unifiedcyberontology.org/uco/identity/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../infrastructure/infrastructure.ttl" name="https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../location/location.ttl" name="https://ontology.unifiedcyberontology.org/uco/location/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../observable/observable.ttl" name="https://ontology.unifiedcyberontology.org/uco/observable/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../pattern/pattern.ttl" name="https://ontology.unifiedcyberontology.org/uco/pattern/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../types/types.ttl" name="https://ontology.unifiedcyberontology.org/uco/types/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../vocabulary/vocabulary.ttl" name="https://ontology.unifiedcyberontology.org/uco/vocabulary/1.3.0"/>
<uri id="User Entered Import Resolution" uri="deployment.ttl" name="https://ontology.unifiedcyberontology.org/uco/deployment"/>
</catalog>
61 changes: 61 additions & 0 deletions ontology/uco/deployment/deployment.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# imports: https://ontology.unifiedcyberontology.org/uco/observable/1.3.0

@prefix core: <https://ontology.unifiedcyberontology.org/uco/core/> .
@prefix deployment: <https://ontology.unifiedcyberontology.org/uco/deployment/> .
@prefix observable: <https://ontology.unifiedcyberontology.org/uco/observable/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://ontology.unifiedcyberontology.org/uco/deployment>
a owl:Ontology ;
rdfs:label "uco-deployment"@en ;
rdfs:comment "TODO"@en ;
owl:imports observable:1.3.0 ;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I set the Deployment ontology to import the Observable ontology because of the dependence in deploymentAction.

Why is deployment getting an entire namespace, instead of being in the Observable namespace? Why is Deployment not an ObservableObject subclass?

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
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: I set the three properties deploymentAction, deploymentObject, and deploymentContext to be in the deployment: namespace. The properties were not given definition strings or implementation specifics beyond what was suggested in the initial proposal.

[
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 ;
ajnelson-nist marked this conversation as resolved.
Show resolved Hide resolved
]
;
.

deployment:SoftwareDeployment
a
owl:Class ,
sh:NodeShape
;
rdfs:subClassOf deployment:Deployment ;
.

5 changes: 5 additions & 0 deletions ontology/uco/environment/catalog-v001.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="public">
<uri id="User Entered Import Resolution" uri="../core/core.ttl" name="https://ontology.unifiedcyberontology.org/uco/core/1.3.0"/>
<uri id="User Entered Import Resolution" uri="environment.ttl" name="https://ontology.unifiedcyberontology.org/uco/environment"/>
</catalog>
38 changes: 38 additions & 0 deletions ontology/uco/environment/environment.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0

@prefix core: <https://ontology.unifiedcyberontology.org/uco/core/> .
@prefix environment: <https://ontology.unifiedcyberontology.org/uco/environment/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://ontology.unifiedcyberontology.org/uco/environment>
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 ;
.

5 changes: 5 additions & 0 deletions ontology/uco/infrastructure/catalog-v001.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="public">
<uri id="User Entered Import Resolution" uri="../core/core.ttl" name="https://ontology.unifiedcyberontology.org/uco/core/1.3.0"/>
<uri id="User Entered Import Resolution" uri="infrastructure.ttl" name="https://ontology.unifiedcyberontology.org/uco/infrastructure"/>
</catalog>
42 changes: 42 additions & 0 deletions ontology/uco/infrastructure/infrastructure.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# imports: https://ontology.unifiedcyberontology.org/uco/core/1.3.0

@prefix core: <https://ontology.unifiedcyberontology.org/uco/core/> .
@prefix infrastructure: <https://ontology.unifiedcyberontology.org/uco/infrastructure/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://ontology.unifiedcyberontology.org/uco/infrastructure>
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 ;
.

3 changes: 3 additions & 0 deletions ontology/uco/master/catalog-v001.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,10 @@
<uri id="User Entered Import Resolution" uri="../analysis/analysis.ttl" name="https://ontology.unifiedcyberontology.org/uco/analysis/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../configuration/configuration.ttl" name="https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../core/core.ttl" name="https://ontology.unifiedcyberontology.org/uco/core/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../deployment/deployment.ttl" name="https://ontology.unifiedcyberontology.org/uco/deployment/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../environment/environment.ttl" name="https://ontology.unifiedcyberontology.org/uco/environment/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../identity/identity.ttl" name="https://ontology.unifiedcyberontology.org/uco/identity/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../infrastructure/infrastructure.ttl" name="https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../location/location.ttl" name="https://ontology.unifiedcyberontology.org/uco/location/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../marking/marking.ttl" name="https://ontology.unifiedcyberontology.org/uco/marking/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../observable/observable.ttl" name="https://ontology.unifiedcyberontology.org/uco/observable/1.3.0"/>
Expand Down
6 changes: 6 additions & 0 deletions ontology/uco/master/uco.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -33,7 +36,10 @@
<https://ontology.unifiedcyberontology.org/uco/analysis/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/core/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/deployment/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/environment/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/identity/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/location/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/marking/1.3.0> ,
<https://ontology.unifiedcyberontology.org/uco/observable/1.3.0> ,
Expand Down
2 changes: 2 additions & 0 deletions ontology/uco/observable/catalog-v001.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@
<uri id="User Entered Import Resolution" uri="../action/action.ttl" name="https://ontology.unifiedcyberontology.org/uco/action/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../configuration/configuration.ttl" name="https://ontology.unifiedcyberontology.org/uco/configuration/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../core/core.ttl" name="https://ontology.unifiedcyberontology.org/uco/core/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../environment/environment.ttl" name="https://ontology.unifiedcyberontology.org/uco/environment/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../identity/identity.ttl" name="https://ontology.unifiedcyberontology.org/uco/identity/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../infrastructure/infrastructure.ttl" name="https://ontology.unifiedcyberontology.org/uco/infrastructure/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../location/location.ttl" name="https://ontology.unifiedcyberontology.org/uco/location/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../pattern/pattern.ttl" name="https://ontology.unifiedcyberontology.org/uco/pattern/1.3.0"/>
<uri id="User Entered Import Resolution" uri="../types/types.ttl" name="https://ontology.unifiedcyberontology.org/uco/types/1.3.0"/>
Expand Down
Loading
Loading