-
Notifications
You must be signed in to change notification settings - Fork 252
WebProtégé Road Map
Below is a list of items on the WebProtégé road map. It is basically an unordered, non-prioritized, collection of items from our wish list, which we would like to see implemented at some point in the future in WebProtégé. It includes both items which we can implement in the context of our currently funded projects, but also items for which we still need to secure funding, to allocate the appropriate resources to work on their implementation.
If you see an item on this list that you would like to see implemented sooner rather than later, or you have other features in mind that would be important for your project, and you would be interested in providing support for that work, please contact the Protégé team. Thank you!
We would like to provide support for branching a project so that features and bugs can be worked on in isolation with the changes being merged back into the master branch.
We would like to provide a suite of tests that are commonly used in ontology development projects. Checks would typically be run after a batch of edits. Example tests and checks could include:
- Check that each entity has a label and that it is spelled correctly.
- Check that there are labels for a set of languages.
- Check that each entity has a textual definition.
- Check that no entities have been deleted from the signature of the ontology since the previous release.
- Check for certain patterns of axioms (specified as axiom templates)
- Check that the ontology is consistent
- Check that each class and property is satisfiable
- Check that obsoleted classes are not used in the “main” signature of the ontology
- Check that certain constructors are not used
- Check that a given profile is adhered to
- Check that multiple inheritance is not stated explicitly
- Check that multiple typing is not stated explicitly
- Check that siblings are disjoint (or disjoint classes axioms are applied in a uniform manner)
- Check that reasoning performance is maintained (or does not get significantly worse)
Integrate with GitHub Issues. Consider integrating with GitHub repos for push/pull access.
Add the ability to tag revisions. Add the ability to comment on revisions or tags. Support for producing diffs between releases.
Users should be able to upload any ontology file or set of axioms and merge it into a WebProtégé ontology. We might consider a format for applying a patch/diff.
It should be easier to work with multiple ontology documents. Move to a collection of documents rather than an imports closure of documents.
Showing “is-a” and “part of”
Reimplement the forms mechanism using “native” GWT UI code and provide axiom templates with late binding to axioms.
Users will be able to use other types of documents (e.g., spreadsheets, document outlines, JSON files) to edit the content of the ontology. A compile function will generate at request an ontology representation using some mapping language. The main source of the content will remain the source document, and the ontology representation will be generated on-the-fly.
Support transforming information entered in forms into OWL axioms using DOS-DPs
Support reasoning in WebProtégé. The reasoning will happen in the background, and users will be able to continue editing, while the reasoning is going on. The reasoner will be puggable and run as a separate service.
Users should be able to open an ontology from WebProtégé in Protégé desktop. It should be easy to upload/merge an ontology from Protégé desktop into WebProtégé.
Users should be able to open an ontology from BioPortal in WebProtégé. It should be easy to publish a certain (version of an) ontology in WebProtégé to BioPortal.
For general public (maybe as a page that can be reached through the About page): See number of users, projects, classes and/or axioms, number of daily commits (average or last), In addition, for admins only: most active projects, projects with most users, etc.
Provide capabilities for:
- Viewing/editing/deleting users,
- Resetting passwords
- Reassign owner of projects
Get slack notifications when comments are posted. Consider other event types. This is tied to the Webhooks functionality.
Provide the ability to add notifications for certain events e.g. project change event, tag published etc. Events are posted to specified URLs. For inspiration see GitHub webhooks and Slack webhooks. Webhooks can be used to integrate WebProtégé with other apps.
Graphical visualisation of class hierarchies and other relationships.