-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
- Loading branch information
1 parent
2fc2173
commit b76c174
Showing
72 changed files
with
34,888 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Basic ODK workflow | ||
name: Docs | ||
|
||
# Controls when the action will run. | ||
on: | ||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- main | ||
|
||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel | ||
jobs: | ||
build: | ||
name: Deploy docs | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout main | ||
uses: actions/checkout@v3 | ||
|
||
- name: Deploy docs | ||
uses: mhausenblas/mkdocs-deploy-gh-pages@master | ||
# Or use mhausenblas/mkdocs-deploy-gh-pages@nomaterial to build without the mkdocs-material theme | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
CONFIG_FILE: mkdocs.yaml | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# Basic ODK workflow | ||
|
||
name: CI | ||
|
||
# Controls when the action will run. | ||
on: | ||
# Triggers the workflow on push or pull request events but only for the main branch | ||
push: | ||
branches: [ main ] | ||
pull_request: | ||
branches: [ main ] | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel | ||
jobs: | ||
# This workflow contains a single job called "ontology_qc" | ||
ontology_qc: | ||
# The type of runner that the job will run on | ||
runs-on: ubuntu-latest | ||
container: obolibrary/odkfull:v1.4 | ||
|
||
# Steps represent a sequence of tasks that will be executed as part of the job | ||
steps: | ||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | ||
- uses: actions/checkout@v3 | ||
|
||
- name: Run ontology QC checks | ||
env: | ||
DEFAULT_BRANCH: main | ||
run: cd src/ontology && make ROBOT_ENV='ROBOT_JAVA_ARGS=-Xmx6G' test IMP=false PAT=false | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,44 @@ | ||
build/ | ||
**/catalog-v001.xml | ||
development/sparql/*.csv | ||
robot-extract.txt | ||
robot-filter.txt | ||
development/all.csv | ||
development/.~lock* | ||
.DS_Store | ||
semantic.cache | ||
bin/ | ||
|
||
*.tmp | ||
*.tmp.obo | ||
*.tmp.owl | ||
*.tmp.json | ||
|
||
.github/token.txt | ||
|
||
src/ontology/mirror | ||
src/ontology/mirror/* | ||
src/ontology/reports/* | ||
src/ontology/SRAO.owl | ||
src/ontology/SRAO.obo | ||
src/ontology/SRAO.json | ||
src/ontology/SRAO-base.* | ||
src/ontology/SRAO-basic.* | ||
src/ontology/SRAO-full.* | ||
src/ontology/SRAO-simple.* | ||
src/ontology/SRAO-simple-non-classified.* | ||
|
||
src/ontology/seed.txt | ||
src/ontology/dosdp-tools.log | ||
src/ontology/ed_definitions_merged.owl | ||
src/ontology/ontologyterms.txt | ||
src/ontology/simple_seed.txt | ||
src/ontology/patterns | ||
src/ontology/merged-SRAO-edit.owl | ||
|
||
src/ontology/target/ | ||
src/ontology/tmp/* | ||
!src/ontology/tmp/README.md | ||
|
||
src/ontology/run.sh.conf | ||
src/ontology/run.sh.env | ||
|
||
src/ontology/imports/*_terms_combined.txt | ||
|
||
src/patterns/data/**/*.ofn | ||
src/patterns/data/**/*.txt | ||
src/patterns/pattern_owl_seed.txt | ||
src/patterns/all_pattern_terms.txt |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# Contributor Covenant Code of Conduct | ||
|
||
## Our Pledge | ||
|
||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to make participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. | ||
|
||
## Our Standards | ||
|
||
Examples of behavior that contributes to creating a positive environment include: | ||
|
||
* Using welcoming and inclusive language | ||
* Being respectful of differing viewpoints and experiences | ||
* Gracefully accepting constructive criticism | ||
* Focusing on what is best for the community | ||
* Showing empathy towards other community members | ||
|
||
Examples of unacceptable behavior by participants include: | ||
|
||
* The use of sexualized language or imagery and unwelcome sexual attention or advances | ||
* Trolling, insulting/derogatory comments, and personal or political attacks | ||
* Public or private harassment | ||
* Publishing others' private information, such as a physical or electronic address, without explicit permission | ||
* Other conduct which could reasonably be considered inappropriate in a professional setting | ||
|
||
## Our Responsibilities | ||
|
||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. | ||
|
||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. | ||
|
||
## Scope | ||
|
||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. | ||
|
||
## Enforcement | ||
|
||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by [contacting the project team](contact.md). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. | ||
|
||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. | ||
|
||
## Attribution | ||
|
||
This code of conduct has been derived from the excellent code of conduct of the [ATOM project](https://github.com/atom/atom/blob/master/CODE_OF_CONDUCT.md) which in turn is adapted from the [Contributor Covenant][homepage], version 1.4, available at [https://contributor-covenant.org/version/1/4][version] | ||
|
||
[homepage]: https://contributor-covenant.org | ||
[version]: https://contributor-covenant.org/version/1/4/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
# Contributing to Subject Resource Application Ontology | ||
|
||
:+1: First of all: Thank you for taking the time to contribute! | ||
|
||
The following is a set of guidelines for contributing to SRAO. | ||
These guidelines are not strict rules. Use your best judgment, and feel free to propose | ||
changes to this document in a pull request. | ||
|
||
## Table Of Contents | ||
|
||
- [Code of Conduct](#code-of-conduct) | ||
- [Guidelines for Contributions and Requests](#contributions) | ||
* [Reporting problems with the ontology](#reporting-bugs) | ||
* [Requesting new terms](#requesting-terms) | ||
* [Adding new terms by yourself](#adding-terms) | ||
- [Best practices](#best-practices) | ||
* [How to write a great issue?](#great-issues) | ||
* [How to create a great pull/merge request?](#great-pulls) | ||
|
||
<a id="code-of-conduct"></a> | ||
|
||
## Code of Conduct | ||
|
||
The Subject Resource Application Ontology team strives to create a | ||
welcoming environment for editors, users and other contributors. | ||
Please carefully read our [Code of Conduct](CODE_OF_CONDUCT.md). | ||
|
||
<a id="contributions"></a> | ||
|
||
## Guidelines for Contributions and Requests | ||
|
||
<a id="reporting-bugs"></a> | ||
|
||
### Reporting problems with the ontology | ||
|
||
Please use our [Issue Tracker](https://github.com/allysonlister/SRAO/issues/) for reporting problems with the ontology. | ||
To learn how to write a good issue [see here](#great-issues). | ||
|
||
<a id="requesting-terms"></a> | ||
|
||
### Requesting new terms | ||
|
||
Before you write a new request, please consider the following: | ||
|
||
- **Does the term already exist?** Before submitting suggestions for new ontology terms, check whether the term exist, | ||
either as a primary term or a synonym term. You can search for your term using [OLS](http://www.ebi.ac.uk/ols/ontologies/SRAO). | ||
- **Can you provide a definition for the term?** It should be very clear what the term means, and you should be | ||
able to provide a concise definition, ideally with a scientific reference. | ||
- **Is the ontology in scope for the term?** Sometimes, it is hard to tell whether a term "belongs" in | ||
and ontology. A rule of thumb is "if a similar term already exists, the new term is probably in scope." | ||
It can be very helpful to mention a very similar concept as part of the term request! | ||
|
||
#### Who can request a term? | ||
|
||
Anyone can request new terms. However, there is not guarantee that your term will be added automatically. Since this is a | ||
community resource, it is often necessary to do at least some of the work of adding the term yourself, see below. | ||
|
||
#### How to write a new term request | ||
|
||
Request a new term _via_ the GitHub [Issue Tracker](https://github.com/allysonlister/SRAO/issues/). | ||
|
||
It is important to remember that it takes a lot of time for curators to process issues submitted to the tracker. | ||
To make this work easier, please always use issue templates if they are available (https://github.com/allysonlister/SRAO/issues/new/choose). | ||
|
||
For how to write a good term request, please read the [best practices carefully](#great-issues). | ||
|
||
<a id="adding-terms"></a> | ||
|
||
### How to add a new term | ||
|
||
If you have never editted this ontology before, first follow a [general tutorial](https://oboacademy.github.io/obook/lesson/contributing-to-obo-ontologies) | ||
|
||
**Process**: | ||
|
||
1. Clone the repository (In case you are not an offical team member, create a fork first) | ||
1. Create new branch in git, for example `git checkout -b issue123` | ||
1. Open src/ontology/SRAO-edit.owl in your favourite editor, i.e. [Protege](https://protege.stanford.edu/). **Careful:** double check you are editing the correct file. There are many ontology files in this repository, but only one _editors file_! | ||
1. Perform your edit and save your changes | ||
1. Commit changes to branch | ||
1. Push changes upstream | ||
1. Create pull request | ||
|
||
## Best Practices | ||
|
||
<a id="great-issues"></a> | ||
|
||
### How to write great issues? | ||
|
||
Please refer to the [OBO Academy best practices](https://oboacademy.github.io/obook/lesson/term-request/). | ||
|
||
<a id="great-pulls"></a> | ||
|
||
### How to create a great pull/merge request? | ||
|
||
Please refer to the [OBO Academy best practices](https://oboacademy.github.io/obook/howto/github-create-pull-request/) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,75 +1,29 @@ | ||
# Subject Resource Application Ontology | ||
|
||
The Subject Resource Application Ontology (SRAO) is an application ontology describing subject areas / academic disciplines used within [FAIRsharing](https://www.fairsharing.org) records by curators and the user community (see also the [SRAO FAIRsharing record](https://fairsharing.org/bsg-s001177)). It is built in conjunction with the [Domain Resource Application Ontology (DRAO)](https://github.com/FAIRsharing/domain-ontology), which contains more specific domain terms and other descriptors. | ||
|
||
You can [view SRAO in OLS](https://www.ebi.ac.uk/ols/ontologies/srao). | ||
|
||
All classes within SRAO come from publicly-available ontologies and controlled vocabularies. Currently, the following ontologies are used to build SRAO: | ||
|
||
1. [re3data](https://www.re3data.org/browse/by-subject/). Please note that this is a hierarchical controlled vocabulary and not an ontology. As such, terms which originate within re3data and which do not have a corresponding class within the external ontologies listed here will have a SRAO IRI. | ||
2. [NCIT](https://ncit.nci.nih.gov/ncitbrowser/) ([in OLS](https://www.ebi.ac.uk/ols/ontologies/ncit)) | ||
3. [EDAM](http://edamontology.org/page) ([in OLS](https://www.ebi.ac.uk/ols/ontologies/edam)) | ||
4. [AgroVoc](http://agrovoc.uniroma2.it/agrovoc/agrovoc/en/) | ||
5. [OMIT](https://github.com/OmniSearch/omit) ([in OLS](https://www.ebi.ac.uk/ols/ontologies/omit)) | ||
6. [OBI](http://obi-ontology.org/) ([in OLS](https://www.ebi.ac.uk/ols/ontologies/obi)) | ||
7. [PO](http://browser.planteome.org/amigo) ([in OLS](https://www.ebi.ac.uk/ols/ontologies/po)) | ||
|
||
# Files | ||
|
||
To view the latest release of SRAO please visit [our release directory](https://github.com/FAIRsharing/subject-ontology/tree/master/releases). The release files are created by merging the development files into a single document for easier loading within the editor of your choice, such as [Protege](http://protege.stanford.edu/). | ||
|
||
Below are short descriptions of the other files found within this repository: | ||
|
||
Within any [releases/](https://github.com/FAIRsharing/subject-ontology/tree/master/releases) subdirectory | ||
- SRAO.owl - The automatically-generated release file. It is a single file (with no imports) for ease of use. | ||
- refactoredIRIs-SRAO-RELNUM.txt - A list of IRI refactorings performed since the last release. | ||
- README.md A short description of the changes made since the last release. | ||
|
||
Within [development/](https://github.com/FAIRsharing/subject-ontology/tree/master/development) | ||
- [SRAO.owl](https://github.com/FAIRsharing/subject-ontology/blob/master/SRAO.owl) - This is the main "bleeding edge" development file, manually edited by our team to ensure that all subject areas relevant to FAIRsharing are included within SRAO. It contains a number of import statements. | ||
- [SRAO-merged.owl](https://github.com/FAIRsharing/subject-ontology/blob/master/SRAO.owl) - This is the main "bleeding edge" development file, generated automatically as a single file to be easy to view and use. Please note that it may not always be as up to date as SRAO.owl. | ||
- [SRAO-ontofox-annotation.txt](https://github.com/FAIRsharing/subject-ontology/blob/master/SRAO-ontofox-annotation.txt) - The configuration file required by Ontofox for automatically adding annotation from the external ontologies to SRAO. | ||
- [SRAO-annotation.owl](https://github.com/FAIRsharing/subject-ontology/blob/master/SRAO-annotation.owl) - the file created by Ontofox containing all automatically-generated annotation from the external ontologies | ||
|
||
# Background | ||
|
||
FAIRsharing (https://www.fairsharing.org) is a manually-curated, cross-discipline, searchable portal of three linked registries covering standards, databases and data policies. Every record is designed to be interlinked, providing a detailed description not only of the resource itself, but also its relationship to other resources. | ||
|
||
As FAIRsharing has grown, over 1000 domain tags across all areas of research have been added by users and curators. This tagging system, essentially a flat list, has become unwieldy and limited. To provide a hierarchical structure and richer semantics, two application ontologies drawn from multiple community ontologies were created to supplement these user tags. FAIRsharing domain tags are now divided into three separate fields: | ||
|
||
- Subject Resource Application Ontology (SRAO) - **This repository.** A hierarchy of academic disciplines that combines subsets of seven external ontologies, SRAO provides over 420 classes. | ||
- [Domain Resource Application Ontology (DRAO)](https://github.com/FAIRsharing/domain-ontology) - a hierarchy of specific research domains and descriptors. Fifty external ontologies are used to provide nearly 1000 classes. | ||
- Free-text user tags. A small number of FAIRsharing domain tags were not mappable to external ontologies and are retained as user tags. Existing and new user tags may be promoted to either application ontology as required. | ||
|
||
# SRAO Curation | ||
|
||
Terms are added to SRAO manually, and additional annotation from the originating ontologies is added via Ontofox. | ||
![Build Status](https://github.com/allysonlister/SRAO/workflows/CI/badge.svg) | ||
# Subject Resource Application Ontology | ||
|
||
# Build | ||
Description: None | ||
|
||
Classes from a number of different external ontology classes were added by our curation team until all subject areas / disciplines required to describe FAIRsharing records were included. Additional classes continue to be added as required both by FAIRsharing and other SRAO users. | ||
More information can be found at http://obofoundry.org/ontology/SRAO | ||
|
||
Where an external ontology contains definitions, these are automatically imported into SRAO via Ontofox to supplement the curation already present. Synonyms from these ontologies are vetted and added when the synonym is sufficiently different from the primary label. Release files are created using [ROBOT](http://robot.obolibrary.org/) via a controlling [Makefile](development/Makefile). | ||
## Versions | ||
|
||
SRAO is written in OWL and serialized as RDF/XML. | ||
### Stable release versions | ||
|
||
## Tools Used | ||
The latest version of the ontology can always be found at: | ||
|
||
[Ontofox](http://ontofox.hegroup.org/) has been used to add annotation. [Protege](https://protege.stanford.edu/) (including versions 4.3.0 and 5.2.0) has been used to create and curate the core OWL file. [ROBOT](http://robot.obolibrary.org/) has been used to compare, check and merge all development ontology files into a single merged release file. | ||
http://purl.obolibrary.org/obo/SRAO.owl | ||
|
||
- [Ontofox](http://ontofox.hegroup.org/) - Xiang Z, Courtot M, Brinkman RR, Ruttenberg A, He Y. OntoFox: web-based support for ontology reuse. | ||
BMC Research Notes. 2010, 3:175. PMID: 20569493 | ||
- [Protege](http://protege.stanford.edu/) - Musen, M.A. [The Protégé project: A look back and a look forward.](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4883684/) AI Matters. Association of Computing Machinery Specific Interest Group in Artificial Intelligence, 1(4), June 2015. DOI: 10.1145/2557001.25757003. | ||
- [ROBOT](http://robot.obolibrary.org/) - R.C. Jackson, J.P. Balhoff, E. Douglass, N.L. Harris, C.J. Mungall, and J.A. Overton. [ROBOT: A tool for automating ontology workflows.](https://doi.org/10.1186/s12859-019-3002-3) BMC Bioinformatics, vol. 20, July 2019. | ||
(note this will not show up until the request has been approved by obofoundry.org) | ||
|
||
# Usage and Licence | ||
### Editors' version | ||
|
||
Within FAIRsharing, SRAO is used by both curators and our user community to annotate FAIRsharing records. SRAO itself is also available for general use from this repository under a [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) licence. Please also see our [Licence file](LICENSE.md). | ||
Editors of this ontology should use the edit version, [src/ontology/SRAO-edit.owl](src/ontology/SRAO-edit.owl) | ||
|
||
If you wish to use the ontology in your work, you are free to do so. The licence, as above, is CC-BY, and we request that you also add the FAIRsharing logo to your work wherever you mention the ontology. Also, please let us know so we can get a warm feeling inside. | ||
## Contact | ||
|
||
For licence information for the external ontologies used to create DRAO, please see our [Licensing Compliance](https://github.com/FAIRsharing/subject-ontology/blob/master/LicensingCompliance.md) page. | ||
Please use this GitHub repository's [Issue tracker](https://github.com/allysonlister/SRAO/issues) to request new terms/classes or report errors or specific concerns related to the ontology. | ||
|
||
# Contact Us | ||
## Acknowledgements | ||
|
||
Please feel free to contact us with any comments or suggestions at [email protected]. | ||
This ontology repository was created using the [Ontology Development Kit (ODK)](https://github.com/INCATools/ontology-development-kit). |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
This is the old directory for updating and releasing SRAO, and is now obsolete. For full information regarding the current build procedure, please see [the main README](../README.md). |
Oops, something went wrong.