Ontology Create

From OSF Wiki
Jump to: navigation, search
Ontology: Create endpoint version:

The Ontology Create service is used to create/import a new OWL ontology into the OSF Web Service instance.

This Web service is wrapper over the OWLAPI ontology library. It wraps all the needed functionality related to ontology creation or import. Most of the related API has been implemented. Effectively, this Web service (with its other related services) turns the OWLAPI into a Web service API.

Developers communicate with the Ontology Create Web service using the HTTP POST method. You may request one of the following mime types: (1) text/xml, (2) application/rdf+xml, (3) application/rdf+n3 or (4) application/json. The content returned by the Web service is serialized using the mime type requested and the data returned depends on the parameters selected.


This documentation page is used for the version 3 of this endpoint. Check at the top of this page to see the documentation pages for the other versions of this endpoint.


This Web service is intended to be used by content management systems, developers or administrators to create ontologies that are hosted on a OSF Web Service instance, and that are used to describe the named entities in the system.

This endpoint, along with the other related endpoints: Ontology Read, Ontology Update and Ontology Delete; can be seen as the brain of your OSF Web Service instance.

Web Service Endpoint Information

This section describes all the permissions you need in the WSF (Web Service Framework) to send a query to this Web service endpoint, and it describes how to access it.

To access this Web service endpoint you need the proper CRUD (Create, Read, Update and Delete) permissions on a specific graph (dataset) of the WSF. Without the proper permissions on this graph you won't be able to send any queries to the endpoint.

Needed registered CRUD permission:
  • Create: True
  • Read: False
  • Update: False
  • Delete: False

As shown on the graph URI:

  • URI of the dataset being created

Note: normally, the URI of an Ontology dataset is the URL used to import that ontology in the system. The URL can be the URI of the ontology if it was resolvable on the Web, or the URL where the OWL file, containing the ontology's description, can be resolved by the server (on the web, on the file system, etc) via a URL.

Here is the information needed to communicate with this Web service's endpoint. Descriptions of the parameters are included below.

Note: if a parameter has a default value, the requester can omit it and the default value will be used. Also, some baseline Web services may not offer other values than the default.

HTTP method:
  • POST

Possible "Accept:" HTTP header field value:

  • text/xml (structXML)
  • application/json (structJSON)
  • application/rdf+xml (RDF+XML)
  • application/rdf+n3 (N3/Turtle)
  • application/iron+json (irJSON)
  • application/iron+csv (commON)


  • http://[...]/ws/ontology/create/?uri=&advancedIndexation=&reasoner=&interface=&version=

URI dynamic parameters description:

Note: All parameters have to be URL-encoded

  • uri. URI of the ontology; the URI is the URL used to import that ontology in the system. The URL can be the URI of the ontology if it was resolvable on the Web, or the URL where the OWL file, containing the ontology's description, that can be resolved on the Web by this endpoint. This URL can refers to a file accessible on the web, on the file system, etc. The endpoint will get the ontology's description from that URL.
  • advancedIndexation. If
    • "True": Advanced Indexation is enabled. This means that the ontology's description (so all the classes, properties and named individuals) will be indexed in the other data management system in OSF Web Service. This means that all the information in these ontologies will be accessible via the other endpoints such as the Search and the SPARQL web service endpoints. Enabling this option may render the creation process slower depending on the size of the created ontology.
    • "False"(default): Advanced Indexation is disabled. This means that the ontologies will be queriable via the Ontology Read, Ontology Update and Ontology Delete web service endpoints only.
  • reasoner. Only used when advancedIndexation=true One of:
    • True (Default) — Enable the reasoner for indexing the ontology into OSF Web Service (the triple store and the full text engine)
    • False — Disable the reasoner for this query
  • interface. Source interface used for this web service query. The interface is a different way to process a query (different algorithms, different data management system, etc. The default interface is 'default'
  • version. (default: 3.0) Version of the interface to query

Available Sources Interfaces

A source interface is a way to process a web service query. Different sources interfaces can be implemented for the same OSF Web Service endpoint. Each interface will process the query differently, but all the queries to the web service endpoint will be the same, at the exception of the interface parameter. Each interface shares the same API (the one defined by the web service endpoint), but their processing may differ (like using different algorithms, using different data management systems, etc.)

This is a list of the core interfaces for this endpoint. Organizations that hosts a OSF Web Service network could create their own interface and make it available to the users. However such private source interface won't be part of this list, but should be publicized by the organization.

Source Interface Name Description
default Default source interface for this OSF Web Service endpoint. This interface implements the default behavior of this OSF Web Service endpoint.

HTTP Status Codes

Here are the possible HTTP status (error) codes returned by this Web service endpoint.

On error code and the specific error, a different message description can be issued (meaning a different error has been returned).

HTTP 200

Message Description

HTTP 400

ID Level Name Description
WS-ONTOLOGY-CREATE-200 Warning No Ontology URI defined for this request No Ontology URI defined for this request
WS-ONTOLOGY-CREATE-201 Warning No permissions to use the advanced indexation Make sure to create the permissions, for this user, to write data into this ontology dataset prior making this call.
WS-ONTOLOGY-CREATE-300 Error Can't load the ontology The ontology can't be loaded by the endpoint
WS-ONTOLOGY-CREATE-301 Error Can't tag dataset Can't tag the dataset as being a dataset holding an ontology description
WS-ONTOLOGY-CREATE-302 Error Ontology already existing Can't create the ontology because an ontology with that URI is already existing in the system.
WS-ONTOLOGY-CREATE-303 Fatal Requested source interface not existing The source interface you requested is not existing for this web service endpoint.
WS-ONTOLOGY-CREATE-304 Fatal Requested incompatible Source Interface version The version of the source interface you requested is not compatible with the version of the source interface currently hosted on the system. Please make sure that your tool get upgraded for using this current version of the endpoint.
WS-ONTOLOGY-CREATE-305 Fatal Source Interface's version not compatible with the web service endpoint's The version of the source interface you requested is not compatible with the one of the web service endpoint. Please contact the system administrator such that he updates the source interface to make it compatible with the new endpoint version.

HTTP 403

ID Level Name Description
WS-AUTH-VALIDATION-100 Fatal Unauthorized Request Your request cannot be authorized for this web service call
WS-AUTH-VALIDATION-101 Fatal Unauthorized Request Your request cannot be authorized for this web service call
WS-AUTH-VALIDATION-102 Fatal Couldn't authorize request An internal error occured when we tried to authorize this request
WS-AUTH-VALIDATION-103 Fatal Unauthorized Request Your request cannot be authorized for this user: "---", on this dataset: "---", using this web service endpoint: "---"

HTTP 406

Message Description
Not Acceptable Unacceptable mime type requested

HTTP 500

Message Description
Internal Error