From ecd8fc931eb2e33219598dec18356e225a3cdcbb Mon Sep 17 00:00:00 2001 From: Alan Ruttenberg Date: Sat, 27 Jan 2024 22:32:27 -0500 Subject: [PATCH] Add profiles directory. Move temporal extensions into that. Add atemporal directory in profiles. Restore notime version there --- documentation/sparql/README.md | 2 +- src/owl/README.md | 12 +++++----- src/owl/profiles/README.md | 10 ++++++++ .../profiles/temporal extensions/README.md | 23 +++++++++---------- .../temporalized relations/owl/README.md | 6 ++--- 5 files changed, 31 insertions(+), 22 deletions(-) create mode 100644 src/owl/profiles/README.md diff --git a/documentation/sparql/README.md b/documentation/sparql/README.md index 40a8885..4e1216f 100644 --- a/documentation/sparql/README.md +++ b/documentation/sparql/README.md @@ -1,6 +1,6 @@ # SPARQL Quality Control -This directory contains SPARQL files used to automate quality control checks against updates to bfo-core-owl. +This directory contains [SPARQL](https://www.w3.org/TR/sparql11-query/) files used to automate quality control checks against updates to bfo-core-owl. ## Quality Control Format diff --git a/src/owl/README.md b/src/owl/README.md index 8afb1ab..5049c5a 100644 --- a/src/owl/README.md +++ b/src/owl/README.md @@ -3,9 +3,9 @@ This directory contains the Web Ontology Language (OWL) implementation of BFO, specifically, [OWL2](https://www.w3.org/TR/owl2-overview/). As the file name suggests, this is the foundational implementation for any extensions of BFO implemented in OWL 2, such as those found in the temporal extensions directory. ## Directory Structure -* bfo-core.owl corresponds to [ISO/IEC 21838‑2](https://www.iso.org/obp/ui/#iso:std:iso-iec:21838:-2:ed-1:v1:en) A.1.2-3, formatted as RDF/XML. -* bfo-core.ofn correspond to [ISO/IEC 21838‑2](https://www.iso.org/obp/ui/#iso:std:iso-iec:21838:-2:ed-1:v1:en) A.1.2-3, formatted as Functional-Style Syntax. -* bfo-core.ttl, formatted in the Terse RDF Triple Language flavor of RDF. -* temporal extensions - - temporalized relations - Contains R&D project extending bfo-core.owl to a stronger representation of time, namely, one that employs temporal qualification of continuant object properties, resulting in "all times" and "some times" versions. - - contributions - Files that are not part of the bfo-core.owl distribution but are intended as potentially useful additions. \ No newline at end of file +* bfo-core.owl corresponds to [ISO/IEC 21838‑2](https://www.iso.org/obp/ui/#iso:std:iso-iec:21838:-2:ed-1:v1:en) A.1.2-3, formatted as [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/). +* bfo-core.ofn correspond to [ISO/IEC 21838‑2](https://www.iso.org/obp/ui/#iso:std:iso-iec:21838:-2:ed-1:v1:en) A.1.2-3, formatted as [Functional-style Syntax](https://www.w3.org/TR/owl2-syntax/#Functional-Style_Syntax). +* bfo-core.ttl, formatted in the [Terse RDF Triple Language](https://www.w3.org/TR/turtle/) flavor of RDF. +* profiles - Contains BFO research & development projects that use bfo-core.owl as a foundation. + - temporal extensions - Contains research & development projects extending bfo-core.owl with a stronger representation of time. + - atemporal - Contains research & development projects removing relations referencing time from bfo-core.owl. \ No newline at end of file diff --git a/src/owl/profiles/README.md b/src/owl/profiles/README.md new file mode 100644 index 0000000..7a8e3b6 --- /dev/null +++ b/src/owl/profiles/README.md @@ -0,0 +1,10 @@ +# Profiles + +This directory contains BFO research & development projects - or "profiles" - that use bfo-core.owl as a foundation. + +## Directory Structure +* temporal extensions - Contains research & development projects extending bfo-core.owl with a stronger representation of time. + - temporalized relations - Contains R&D project extending bfo-core.owl to a stronger representation of time, namely, one that employs temporal qualification of continuant object properties, resulting in "all times" and "some times" versions. + - contributions - Files that are not part of the bfo-core.owl distribution but are intended as potentially useful additions. +* atemporal - Contains research & development projects removing relations referencing time from bfo-core.owl. + - bfo-2020-without-some-all-times.owl, formatted as [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/). \ No newline at end of file diff --git a/src/owl/profiles/temporal extensions/README.md b/src/owl/profiles/temporal extensions/README.md index a2ed206..d592404 100644 --- a/src/owl/profiles/temporal extensions/README.md +++ b/src/owl/profiles/temporal extensions/README.md @@ -1,24 +1,23 @@ # Taking Time Seriously -A long-standing issue among BFO users and developers has concerned how best to represent time. Importantly, issues concerning time in BFO stem from implementations of BFO in restricted formal languages such as the Web Ontology Language (OWL). OWL does not allow for direct representation of relations with arity higher than two. To illustrate the issue, consider modeling a vehicle having an engine part at some time, but losing that engine part at another. An expressive language such as First-Order Logic (FOL) would permit the following representation: +A long-standing issue among BFO users and developers has concerned how best to represent time. Importantly, issues concerning time in BFO stem from implementations of BFO in restricted formal languages such as the [Web Ontology Language (OWL)](https://www.w3.org/TR/owl2-overview/). OWL does not allow for direct representation of relations with arity higher than two. To illustrate the issue, consider modeling a vehicle having an engine part at some time, but losing that engine part at another. An expressive language such as [First-Order Logic (FOL)](https://en.wikipedia.org/wiki/First-order_logic) would permit the following representation: (1) has_part(vehicle, engine, time_1) & ~has_part(vehicle, engine, time_2) -Since FOL allows using ternary relations. OWL's restriction to at most binary relations precludes expressions like (1); indeed, there is no simple, straightforward way -to represent the content of (1) in OWL. Given the need to represent time and change in many domains and the wide use of OWL in ontology circles, proposals have been offered by users of BFO for representing such phenomena within the binary constraints of OWL. Examples include: +Since FOL allows using ternary relations. OWL's restriction to at most binary relations precludes expressions like (1); indeed, there is no simple, straightforward way to represent the content of (1) in OWL. Given the need to represent time and change in many domains and the wide use of OWL in ontology circles, proposals have been offered by users of BFO for representing such phenomena within the binary constraints of OWL. Examples include: - A. Temporalized Relations - B. Temporal Stases + A. [Temporalized Relations](src/owl/profiles/temporal extensions/temporalized relations/owl/README.md) + B. [Temporal Interpretation Annotation](https://oborel.github.io/obo-relations/temporal-semantics/) -Each is a plausible avenue of research in the interest of more rigorous representations of time in restricted formal languages. Details for each research project can be viewed in respective 'Temporal Extension' repositories linked above. +Each is a plausible avenue of research in the interest of more rigorous representations of time in restricted formal languages. Details for each can be viewed at the above links. ## Temporal Extensions -BFO is a top-level, domain-neutral ontology, designed to consist of terminological content that spans most scientific disciplines. Classes such as Temporal Region, Temporal Instant, Temporal Interval, etc., seem well within scope. There are, however, reasons to refrain from providing significant constraints on time in BFO: +While time is certainly within the scope of BFO, there are nevertheless reasons to refrain from providing significant constraints on time in BFO: > 1. Scientific domains do not treat time uniformly. Economists, for example, measure economic constructs using time series, i.e. presuming a model of discrete time, whereas physicists typically treat time as continuous. This observation speaks in favor of BFO remaining neutral on questions over the discreteness of continuity of time. > 2. Not all scientific domains require a robust characterization of time, e.g. the domain of mathematics has no obvious need for time. > 3. Given community goals, even if users need some characterization of time, they do not always need a robust characterization of time, e.g. [Open Biological and Biomedical Ontology Foundry](https://obofoundry.org/) users have, for many years, employed a formally weak representation of time with great success. -This last point is worth belaboring. Deploying a BFO-based, robust, formalization of time can be costly, involving re-educating users, updating existing ontologies, perhaps even rewriting portions of codebases, etc. OBO users have not often had a need for such rigor, and so do not have a need to bear such costs. A charitable reading of early [criticisms](https://github.com/cmungall/trel-crit/raw/master/trc.pdf) of the Temporalized Relations strategy - which provides a rather robust formalization of time in BFO - makes just this point. +This last point is worth belaboring. Deploying a BFO-based, robust, formalization of time can be costly, involving re-educating users, updating existing ontologies, perhaps even rewriting portions of codebases, etc. OBO users have not often had a need for such rigor, and so do not have a need to bear such costs. A charitable reading of early [criticisms](https://github.com/cmungall/trel-crit/raw/master/trc.pdf) of the [Temporalized Relations](src/owl/profiles/temporal extensions/temporalized relations/owl/README.md) strategy - which provides a rather robust formalization of time in BFO - makes just this point. On the other hand, there are reasons that speak in favor of providing formal guidance for modeling time in BFO: @@ -30,14 +29,14 @@ What these observations suggest is that while there are strong motivations for B When evaluating the need for an ontologically robust characterization of time, we recommend users identify specific motivating use cases for their target domain, perhaps codified as competency questions. As a starting point, we recommend developers users reflect on the design patterns and use cases concerning time and change found in the article [Basic Formal Ontology: Case Studies](https://philpapers.org/archive/OTTBBF.pdf). There the authors present seven design patterns based on the FOL implementation of BFO. ## Temporal Extension Artifacts -Temporal Extension Artifacts are artifacts designed to represent extensions of the OWL formalization of BFO - located in the "bfo-core.owl" file - that impose axiom constraints concerning time and change. Temporal Extension Artifacts should be represented in some serialization of RDF, e.g. ttl, owl. +Temporal Extensions of BFO are artifacts designed to represent extensions of the OWL formalization of BFO - located in the "bfo-core.owl" file - that impose axiom constraints concerning time and change. Temporal Extensions of BFO should be represented in some serialization of RDF, e.g. ttl, owl. -With respect to BFO, the scope of Temporal Extensions should include treatment of classes: +With respect to BFO, the scope of Temporal Extensions should include treatment of the following classes: * Temporal Region and subclasses * Spatiotemporal Region -And relations reflecting the following relations and their inverses (where applicable): +As well as the following relations and their inverses (where applicable): * continuant part of * proper continuant part of @@ -51,4 +50,4 @@ And relations reflecting the following relations and their inverses (where appli * spatially projects onto ## Temporal Extension Integration -BFO is a top-level ontology designed to provide a common hierarchy across all scientific research; interoperability is its motivation. It is thus incumbent on developers to demonstrate not only that their preferred formalization of time conforms to BFO, but also that interpretations, formal mappings, or provable containments exists across temporal extensions. This is, admittedly, considerable work, but it is a consequence of sustaining interoperability, which our community prizes. +BFO is a top-level ontology designed to provide a common hierarchy across all scientific research; as a consequence, interoperability is its main motivation. It is thus incumbent on developers to demonstrate not only that their preferred formalization of time conforms to BFO, but also that interpretations, formal mappings, or provable containments exists across temporal extensions. This is, admittedly, considerable work, but it is a consequence of sustaining interoperability, which our community prizes. diff --git a/src/owl/profiles/temporal extensions/temporalized relations/owl/README.md b/src/owl/profiles/temporal extensions/temporalized relations/owl/README.md index e4cddff..267a6c8 100755 --- a/src/owl/profiles/temporal extensions/temporalized relations/owl/README.md +++ b/src/owl/profiles/temporal extensions/temporalized relations/owl/README.md @@ -4,6 +4,6 @@ This directory contains the temporal extension of BFO using temporalized relatio # Directory Structure -* bfo-temporalized-relations.owl, formatted as RDF/XML. -* bfo-temporalized-relations.ofn, formatted as Functional-style Syntax. -* bfo-temporalized-relations.ttl, formatted as Terse RDF Triple Language. +* bfo-temporalized-relations.owl, formatted as [RDF/XML](https://www.w3.org/TR/rdf-syntax-grammar/). +* bfo-temporalized-relations.ofn, formatted as [Functional-style Syntax](https://www.w3.org/TR/owl2-syntax/#Functional-Style_Syntax). +* bfo-temporalized-relations.ttl, formatted as [Terse RDF Triple Language](https://www.w3.org/TR/turtle/).