T285 Added OpenApi
This commit is contained in:
279
openapi.yml
Normal file
279
openapi.yml
Normal file
@@ -0,0 +1,279 @@
|
||||
swagger: "2.0"
|
||||
info:
|
||||
description: "This is a simple API allowing you to perform XSLT and XPath operations <br>
|
||||
Currently we support Xalan and Saxon (libxml2 is in progress) for XSLT and Saxon for XPath"
|
||||
version: "0.3"
|
||||
title: "XML Tools API"
|
||||
host: "gordon.zipper.release11.com:8081"
|
||||
schemes:
|
||||
- http
|
||||
tags:
|
||||
- name: "XPath"
|
||||
description: "XPath processing API"
|
||||
- name: "XSLT"
|
||||
description: "XSLT processing API"
|
||||
- name: "XSD"
|
||||
description: "XSD verification API"
|
||||
paths:
|
||||
/xpathpost:
|
||||
post:
|
||||
tags:
|
||||
- "XPath"
|
||||
summary: "Perform XPath transform on XML file"
|
||||
description: ""
|
||||
operationId: "xpath"
|
||||
consumes:
|
||||
- "application/json"
|
||||
produces:
|
||||
- "application/json"
|
||||
parameters:
|
||||
- in: "body"
|
||||
name: "request"
|
||||
description: "A transform that is to be performed"
|
||||
required: true
|
||||
schema:
|
||||
$ref: "#/definitions/RequestXPath"
|
||||
responses:
|
||||
"200":
|
||||
description: "successful operation"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/Response"
|
||||
"400":
|
||||
description: "Invalid status value"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/ResponseError"
|
||||
/xsltpost:
|
||||
post:
|
||||
tags:
|
||||
- "XSLT"
|
||||
summary: "Perform XSLT transform on XML file"
|
||||
description: ""
|
||||
operationId: "xslt"
|
||||
consumes:
|
||||
- "application/json"
|
||||
produces:
|
||||
- "application/json"
|
||||
parameters:
|
||||
- in: "body"
|
||||
name: "request"
|
||||
description: "A transform that is to be performed"
|
||||
required: true
|
||||
schema:
|
||||
$ref: "#/definitions/RequestXSLT"
|
||||
responses:
|
||||
"200":
|
||||
description: "successful operation"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/Response"
|
||||
"400":
|
||||
description: "Invalid status value"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/ResponseError"
|
||||
/xsdpost:
|
||||
post:
|
||||
tags:
|
||||
- "XSD"
|
||||
summary: "Verify XML file using XSD"
|
||||
description: ""
|
||||
operationId: "xsd"
|
||||
consumes:
|
||||
- "application/json"
|
||||
produces:
|
||||
- "application/json"
|
||||
parameters:
|
||||
- in: "body"
|
||||
name: "request"
|
||||
description: "A XML that is to be verified"
|
||||
required: true
|
||||
schema:
|
||||
$ref: "#/definitions/RequestXSD"
|
||||
responses:
|
||||
"200":
|
||||
description: "successful operation"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/XSDResponse"
|
||||
"400":
|
||||
description: "Invalid status value"
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/definitions/XSDError"
|
||||
definitions:
|
||||
RequestXPath:
|
||||
type: "object"
|
||||
properties:
|
||||
data:
|
||||
type: "string"
|
||||
example: "<values>
|
||||
<value>Test1</value>
|
||||
<value>Test3</value>
|
||||
</values>"
|
||||
description: "The XML data to be processed"
|
||||
process:
|
||||
type: "string"
|
||||
example: "count(//value)"
|
||||
description: "XPath tranform to be executed"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "saxon"
|
||||
- "xalan"
|
||||
version:
|
||||
type: "string"
|
||||
enum:
|
||||
- "2.0"
|
||||
- "3.0"
|
||||
- "3.1"
|
||||
RequestXSLT:
|
||||
type: "object"
|
||||
properties:
|
||||
data:
|
||||
type: "string"
|
||||
example: "<values>
|
||||
<value>Test1</value>
|
||||
<value>Test3</value>
|
||||
</values>"
|
||||
description: "The XML data to be processed"
|
||||
process:
|
||||
type: "string"
|
||||
example: "count(//value)"
|
||||
description: "XSLT tranform to be executed"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "saxon"
|
||||
- "xalan"
|
||||
version:
|
||||
type: "string"
|
||||
enum:
|
||||
- "2.0"
|
||||
- "3.0"
|
||||
- "3.1"
|
||||
RequestXSD:
|
||||
type: "object"
|
||||
properties:
|
||||
data:
|
||||
type: "string"
|
||||
example: "<shiporder orderid=\"889923\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
|
||||
<shipto>
|
||||
<name>Ola Nordmann</name>
|
||||
<address>Langgt 23</address>
|
||||
<city>4000 Stavanger</city>
|
||||
<country>Norway</country>
|
||||
</shipto>
|
||||
</shiporder>"
|
||||
description: "The XML data to be processed"
|
||||
process:
|
||||
type: "string"
|
||||
example: "<shiporder orderid=\"889923\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
|
||||
<shipto>
|
||||
<name>Ola Nordmann</name>
|
||||
<address>Langgt 23</address>
|
||||
<city>4000 Stavanger</city>
|
||||
<country>Norway</country>
|
||||
</shipto>
|
||||
</shiporder>"
|
||||
description: "XSD to perform verification with"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "saxon"
|
||||
- "xalan"
|
||||
version:
|
||||
type: "string"
|
||||
enum:
|
||||
- "2.0"
|
||||
- "3.0"
|
||||
- "3.1"
|
||||
Response:
|
||||
type: "object"
|
||||
properties:
|
||||
result:
|
||||
type: "string"
|
||||
example: "4"
|
||||
description: "Result of performing transformation on provided XML"
|
||||
time:
|
||||
type: "string"
|
||||
example: "320"
|
||||
description: "Computation time in milliseconds"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Saxon 10.3 2.0 over s9api"
|
||||
- "Xalan Java 2.7.2"
|
||||
status:
|
||||
type: "string"
|
||||
enum:
|
||||
- "OK"
|
||||
ResponseError:
|
||||
type: "object"
|
||||
properties:
|
||||
result:
|
||||
type: "string"
|
||||
example: "Concatenation operator ('||') requires XPath 3.0 to be enabled"
|
||||
description: "Error from XPath processor"
|
||||
time:
|
||||
type: "string"
|
||||
example: "40"
|
||||
description: "Computation time in milliseconds"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Saxon 10.3 2.0 over s9api"
|
||||
- "Xalan Java 2.7.2"
|
||||
status:
|
||||
type: "string"
|
||||
enum:
|
||||
- "ERR"
|
||||
XSDResponse:
|
||||
type: "object"
|
||||
properties:
|
||||
result:
|
||||
type: "string"
|
||||
example: "XML file is valid"
|
||||
description: "Validation result"
|
||||
time:
|
||||
type: "string"
|
||||
example: "7"
|
||||
description: "Computation time in milliseconds"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Xalan Java 2.7.2"
|
||||
status:
|
||||
type: "string"
|
||||
enum:
|
||||
- "OK"
|
||||
XSDError:
|
||||
type: "object"
|
||||
properties:
|
||||
result:
|
||||
type: "string"
|
||||
example: "The end-tag for element type \"xs:complexType\" must end with a '>' delimiter."
|
||||
description: "Validation result"
|
||||
time:
|
||||
type: "string"
|
||||
example: "7"
|
||||
description: "Computation time in milliseconds"
|
||||
processor:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Xalan Java 2.7.2"
|
||||
status:
|
||||
type: "string"
|
||||
enum:
|
||||
- "ERR"
|
||||
|
||||
externalDocs:
|
||||
description: "Find out more about Swagger"
|
||||
url: "http://swagger.io"
|
||||
Reference in New Issue
Block a user