Converter: irJSON

The Converter: irJSON Web service is used to convert irJSONdata into RDF+XML, RDF+N3 or XML (the internal OSF Web Service DTD structure), or to convert XML (internal DTD) into irJSON data. In other words, this Web service provides the import and export functionality for the irJSON format, which is a common text representation for citations.

All converter Web services endpoints are used to convert multiple kinds of data and to make the bridge between a OSF Web Service and other existing systems that understand these formats.

Developers communicate with the Converter: irJSON 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/iron+json. The content returned by the Web service is serialized using the mime type requested and the data returned depends on the parameters selected.

Usage
This Web service is intended to be used by content management systems, developers or administrators to manage access to WSF (Web Service Framework) resources (users, datasets, Web services endpoints).

Web Service Endpoint Information
This section describes 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: False
 * Read: True
 * Update: False
 * Delete: False

On the graph URI:


 * none

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)

URI:


 * http://[...]/ws/converter/irjson/?document=param1&docmime=param2& include_dataset_description=param3&registered_ip=param4

URI dynamic parameters description:

Note: All parameters have to be URL-encoded


 * param1. Text of the document to convert
 * param2. The requested type of the convertion. One of:
 * "application/iron+json (default)": Document formatted in irJSON
 * "text/xml": Document formatted in XML with OSF Web Services internal DTD representation


 * param3. Include the description of the dataset in non-irJSON serializations. One of:
 * "true": Include the description of the dataset
 * "false (default)": Exclude the description of the dataset


 * param4.Target IP address registered in the WSF. Needed when the IP of the requester is not the one of the one making the request to the endpoint. Otherwise this parameter as to be omitted.

Content Returned
The content returned by the Web service endpoint depends on the "Accept:" parameter sent by the requester. The user can request one of the four supported mime types. The converted content from the input document will be returned by using the requested serialization format.

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 data to convert
 * Message description:Document mime not supported (supported mimes: application/iron+json and text/xml)
 * Message description:No irJSON data converted
 * 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 create access and the requested user (XYZ) doesn't have this access for that dataset (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)
 * Message description:The target Web service (XYZ) needs update access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)
 * Message description:The target Web service (XYZ) needs delete 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