Ontology Create

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

This service is a web service wrapper over the OWLAPI ontology library. It wraps all the needed functionalities related to ontology creation/import. Most of the relatd API has been implemented. So we can say that web service (with the 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.

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

Usage
This Web service is intended to be used by content management systems, developers or administrators to create ontologies that are hosted on a structWSF 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 structWSF 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)

URI:


 * http://[...]/ws/ontology/create/ ?uri=param1&globalPermissions=param2&advancedIndexation=param3&reasoner=param4&registered_ip=param5&interface=param6

URI dynamic parameters description:

Note: All parameters have to be URL-encoded


 * param1. 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.
 * param2 The permissions to set, for accessing this ontology, for the global (guess) user. It is represented by a quadruple with a value "True" or "False" defined as . Each value is separated by the ";" character. an example of such a quadruple is: "crud=True;True;False;False", meaning: Create = True, Read = True, Update = False and Delete = False. This defines the permissions granted for global user (so any requester) for that ontology.
 * param3. 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 structWSF. 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.
 * param4. Only used when  One of:
 * True (Default) &mdash; Enable the reasoner for indexing the ontology into structWSF (the triple store and the full text engine)
 * False &mdash; Disable the reasoner for this query
 * param5. Target IP address registered in the WSF. Needed when param1 = "access_user". Otherwise this parameter as to be omitted.
 * param6. 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'

Available Sources Interfaces
A source interface is a way to process a web service query. Different sources interfaces can be implemented for the same structWSF 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  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 structWSF 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.

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).


 * Code:200
 * Message: OK


 * Code:400
 * Message: Bad Request
 * Message description: No Ontology URI defined for this request
 * Message description: The ontology can\'t be loaded by the endpoint
 * Message description: No requester IP available
 * Message description: No Web service URI available
 * Message description: Target Web service XYZ not registered to this Web Services Framework
 * Message description: No access defined for this requester IP XYZ, dataset (XYZ) and Web service (XYZ)
 * Message description: The target Web service (XYZ) needs read access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)


 * Code:406
 * Message: Not Acceptable
 * Message description: Unacceptable mime type requested


 * Code:500
 * Message:Internal Error