ucoProject / UCO

This repository is for development of the Unified Cyber Ontology.
Apache License 2.0
78 stars 34 forks source link

Two "Thread" classes in observable namespace should disambiguate #391

Closed ajnelson-nist closed 2 years ago

ajnelson-nist commented 2 years ago

Background

The Observable namespace defines two classes with the word "Thread" in their name:

These classes are unrelated to one another. MessageThread pertains to reply chains of messages. Thread pertains to processes.

Another proposal is considering creating a class in the UCO Types namespace, Thread, to define a class similar to, but disjoint from, the Collections Ontology's co:List. The co:List is an ordered list, but totally ordered - it is strictly linear, and cannot fork. The types:Thread class under consideration presents linked-list qualities of co:List, but permits forking.

While defining types:Thread, the class observable:Thread came up while reviewing concept basenames (i.e. the names after namesapce prefixes) for uniqueness across UCO.

For the sake of the types:Thread class (which is under proposal), and for the sake of focusing observable:Thread to processes, it would benefit UCO to rename observable:Thread to reflect its scope.

Requirements

Requirement 1

observable:Thread should be renamed to prevent confusion with other concepts that include Thread in their basename.

Risk / Benefit analysis

Benefits

Risks

Competencies demonstrated

Competency 1

There are some classes in UCO that include the word "Thread".

Competency Question 1.1

How do they relate?

Result 1.1

In the current state of UCO (plus the other proposal), here is how classes fitting the pattern *Thread* relate to one another:

observable:MessageThread rdfs:subClassOf observable:ObservableObject .

observable:MessageThread rdfs:subClassOf types:Thread .  # (under proposal)

observable:MessageThreadFacet rdfs:subClassOf core:Facet .

observable:Thread rdfs:subClassOf observable:ObservableObject .

observable:WindowsThread rdfs:subClassOf rdfs:subClassOf observable:Thread .

observable:WindowsThreadFacet rdfs:subClassOf core:Facet .

Solution suggestion

Coordination

ajnelson-nist commented 2 years ago

A committee member noticed that we have a typo, MessageTread.

ajnelson-nist commented 2 years ago

PR 392 has passed its review checklist.