This is the developers repository for a techniques and methods ontology to support work at AIBS and BICCN. The techniques and methods ontology is designed to help scientists communicate about their experiments and results by defining a set of terms for techniques, methods, modalities, assays, devices, tools, and the like.
The latest version of the ontology can be found here
The best way to browse TMN is to use Protege and open the current release directly.
Editors of this ontology should use the edit version, src/ontology/TMN-edit.owl
Following best practices for ontology development, we attempt to reuse as many terms as we are able and attempt a rather modular approach to development. Although there are many ways to add to or edit the ontology, we try to stick to three main methods:
- When adding external terms (from other ontologies): Use ODK import functionality for importing terms. Simply create a branch, add the terms you would like to the .txt file of the source ontology of the term you wish to add, and make a pull request. If you are not comfortable with this process, simply provide a term request through our issue tracker.
- When adding new terms: Edit owlfile in Protege.
README.md
the document you are currently reading.- .owl the latest release of the ontology.
- Makefile scripts for building the ontology.
- .obo the latest release of the ontology in .obo file format
- base.owl the latest release of ontology base: key terms
- src/
The Makefile contains scripts for building the ontology. On macOS or Linux, you should just be able to run make
.
We use git and GitHub to develop. There's a lot of good documentation on both:
- git website with files and documentation
- GitHub Help and Flow
- git command-line overview
Changes should be made in manageable pieces, e.g. add one term or edit a few related terms. Most changes should correspond to a single issue on the tracker.
Start from a local copy of the main
branch of the repository. Make sure your local copy is up-to-date. Make your changes on a new branch. Please use the TMN-idranges file to manage new IDs.
When you're ready, push your branch to the repository and make a Pull Request (PR) on the GitHub website. Your PR is a request to merge your branch back into main
. Your PR will be tested, discussed, adjusted if necessary, then merged. Then the cycle can repeat for the next change that you or another developer will make.
These are the steps with their CLI commands. When using a GUI application the steps will be the same.
git fetch
make sure your local copy is up-to-dategit checkout main
start on themain
branchgit checkout -b your-branch-name
create a new branch named for the change you're making- make your changes
git status
andgit diff
inspect your changesgit add --update src/
add all updated files in thesrc/
directory to staginggit commit --message "Description, issue #123"
commit staged changes with a message; it's good to include an issue numbergit push --set-upstream origin your-branch-name
push your commit to GitHub- open in your browser and click the "Make Pull Request" button
Your Pull Request will be automatically tested. If there are problems, we will update your branch. When all tests have passed, your PR can be merged into main
.
Please use this GitHub repository's Issue tracker to request new terms/classes or report errors or specific concerns related to the ontology.
This ontology repository was created using the ontology starter kit