Skip to content

WebProtégé Libraries

Matthew Horridge edited this page Mar 18, 2022 · 7 revisions

WebProtégé Libraries

The table below lists WebProtégé Java libraries that are common to various services. The libraries should be built in the specified order. For each library you can clone the repository that houses the library, switch to the directory that was cloned and then run mvn clean install.

A complete list of repositories containing libraries is here

Library (Maven Artifact Id) Description/Notes
webprotege-common [GitHub] Contains POJO definitions, such as ProjectId, UserId and some Java interfaces that a required by multiple services. All Java-based services will likely require this dependency.

git clone https://github.com/protegeproject/webprotege-common.git
webprotege-authorization [GitHub] Contains APIs and related data structures for accessing information about authorization

git clone https://github.com/protegeproject/webprotege-authorization.git
webprotege-jackson [GitHub] Jackson JSON serialization specifications for OWL API objects, e.g. axioms and class expressions, along with some JSON serialization specification WebProtege objects. All Java-based services will likely require this dependency.

git clone https://github.com/protegeproject/webprotege-jackson.git
webprotege-ipc [GitHub] Functionality for interprocess communication of backend services. All Java-based services will likely require this dependency.

git clone https://github.com/protegeproject/webprotege-ipc.git. Note that tests in this library require a running instance of Apache Pulsar. A standalone version of Apache Pulsar can be run using Docker. See the Pulsar Documentation for information on how to do this.
webprotege-entity-data [GitHub] Basic data structures for OWL Entity Data Transfer Objects (DTOs)

https://github.com/protegeproject/webprotege-entity-data.git
webprotege-entity-frames [GitHub] Basic data structures for representing entity frames along with commands for retrieving and updating entity frames.

https://github.com/protegeproject/webprotege-entity-frames.git
webprotege-ontology-change [GitHub] Contains low level axiom change application objects such as AddAxiom and RemoveAxiom.

git clone https://github.com/protegeproject/webprotege-change.git
webprotege-criteria [GitHub] Contains POJOs pertaining to describing entity matching criteria.

git clone https://github.com/protegeproject/webprotege-criteria.git
webprotege-forms [GitHub] Contains data structures for form representation and form related commands.

git clone https://github.com/protegeproject/webprotege-forms.git
webprotege-backend-api [GitHub] Contains backend monolith calls and related data structures.

git clone https://github.com/protegeproject/webprotege-backend-api.git
webprotege-revision-manager [GitHub] Contains functionality for reading a binary OWL based revision history.

git clone https://github.com/protegeproject/webprotege-revision-manager.git