Contributing to Phenomics Integrated Ontology
:+1: First of all: Thank you for taking the time to contribute!
The following is a set of guidelines for contributing to PHENIO. 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
The Phenomics Integrated Ontology team strives to create a welcoming environment for editors, users and other contributors. Please carefully read our Code of Conduct.
Guidelines for Contributions and Requests
Reporting problems with the ontology
Please use our Issue Tracker for reporting problems with the ontology. To learn how to write a good issue see here.
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.
- 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.
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/monarch-initiative/phenio/issues/new/choose).
For how to write a good term request, please read the best practices carefully.
How to add a new term
If you have never editted this ontology before, first follow a general tutorial
Process:
- Clone the repository (In case you are not an offical team member, create a fork first)
- Create new branch in git, for example
git checkout -b issue123
- Open src/ontology/phenio-edit.owl in your favourite editor, i.e. Protege. Careful: double check you are editing the correct file. There are many ontology files in this repository, but only one editors file!
- Perform your edit and save your changes
- Commit changes to branch
- Push changes upstream
- Create pull request
Best Practices
How to write great issues?
Please refer to the OBO Academy best practices.
How to create a great pull/merge request?
Please refer to the OBO Academy best practices