The Ontology of Immune Epitopes (ONTIE) is an effort to represent terms in the immunology domain in a formal ontology with the specific goal of representing experiments that identify and characterize immune epitopes.
This is the developer repository for ONTIE. You can learn more about ONTIE through our documentation.
In ONTIE we use ROBOT templates to convert spreadsheets to OWL. Edit the relevant src/ontology/templates/
file:
assays.tsv
for assays related to immune epitopescomplex.tsv
for protein complexesdisease.tsv
for diseasesexternal.tsv
external terms from Chemical Entities of Biological Interest (CHEBI), NCBI Taxon, Gene Ontology (GO), NCBI Taxon database, and other sourcesindex.tsv
list of ONTIE termsother.tsv
all miscellaneous ontology termspredicate.tsv
top level termsprotein.tsv
all protein related terms in ONTIEtaxon.tsv
NCBI Taxon, biological tax
README.md
this overview documentontie.owl
the latest release of ONTIEMakefile
scripts for building ONTIEsrc/
The Makefile
contains scripts for building ONTIE. On macOS or Linux, you should just be able to run make
or one of the specific tasks below. On Windows consider using some sort of Linux virtual machine such as Docker or Vagrant. Most results will be in the build/
directory. If you have trouble, contact James.
make test
build ONTIE and run tests (this is run on every push to GitHub)make sort
sort templates, and fix quoting and line endings, see more in Keeping Things Tidy sectionmake ONTIE.owl
build the release filemake all
run all build tasksmake clean
remove temporary files
We use git and GitHub to develop ONTIE. There's a lot of good documentation on both:
- git website with files and documentation
- GitHub Help and Flow
- git command-line overview
Before you can start developing with ONTIE, you will need to do some initial setup:
- Sign up for a GitHub account
- Install the Git command line tool, the GitHub Desktop app, or another Git client of your choosing
- Configure Git with your name and email
- Clone the ONTIE repository
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 master
branch of the ONTIE repository. Make sure your local copy is up-to-date. Make your changes on a new branch.
When you're ready, push your branch to the ONTIE repository and make a Pull Request (PR) on the GitHub website. Your PR is a request to merge your branch back into master
. 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 master
start on themaster
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 https://github.com/IEDB/ONTIE in your browser and click the "Make Pull Request" button. Enter the details of the changes you intend to contribute.
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 master
. Rinse and repeat!
The easiest way to edit our src/ontology/template/
files is with Excel. Unfortunately Excel on macOS uses old line endings, and this messes up our diffs.
For clean diffs, we also like to keep out templates sorted by ID.
The make sort
command will fix line endings and sorting by running all the templates through a Python script.