Check Operations
To invoke a check operation, you POST parameters to the specified Check pipeline, in either JSON or XML form.
POST /api/check
Content-Type: application/json
Comparison Example
Here is a simple synchronous example (asynchronous comparison is detailed in more detail on this page):
Request (XML)
<comparison>
<inputA type="file">
<path>samples/compare/docbook/docbook-article-version-1.xml</path>
</inputA>
<inputB type="file">
<path>samples/compare/docbook/docbook-article-version-2.xml</path>
</inputB>
<configuration type="file">
<path>samples/compare/docbook/sample-configuration.xml</path>
</configuration>
</comparison>
Request (JSON)
{
"inputA": {
"type": "file",
"path": "samples/compare/docbook/docbook-article-version-1.xml"
},
"inputB": {
"type": "file",
"path": "samples/compare/docbook/docbook-article-version-2.xml"
},
"configuration": {
"type": "file",
"path": "samples/compare/docbook/sample-configuration.xml"
}
}
The response below indicates the comparison result, in this case a DocBook file describing the changes between the inputs specified in the request.
Response
<?xml version="1.0" encoding="UTF-8"?>
<?oxygen RNGSchema="http://www.oasis-open.org/docbook/xml/5.0/rng/docbook.rng" type="xml"?>
<article xmlns="http://docbook.org/ns/docbook" version="5.0">
<title>DeltaXML DocBook Compare</title>
<sect1>
<title>
<phrase revisionflag="deleted">Section1</phrase>
<phrase revisionflag="added">Section2</phrase> Title
</title>
<para>This sample document shows some of the benefits of DeltaXML DocBook Compare, which shows revisions in all your DocBook Documents.</para>
</sect1>
</article>
Comparison Model
When specifying a comparison, these are the various available objects:
|
Object |
Description |
|
|---|---|---|
|
inputA (required) |
Input A to the comparison. See this page for the various I/O types available. |
|
|
inputB (required) |
Input B to the comparison. See this page for the various I/O types available. |
|
|
configuration |
Configuration to the comparison See this page for more information on configuration files. See this page for the various I/O types available. |
|
|
catalog |
File path or HTTP URI pointing to catalog file(s). See this page for the various I/O types available. |
|
|
async |
output |
Specification of where the comparison result will be written. See this page for the various I/O types available. |
|
callback |
URL that will be polled after the comparison is complete. See Callbacks in Async for more information. |
|
Form Input
In addition to requests in structured XML or JSON format, multipart/form-data can also be used.
For example:
Request
POST /api/compare/docbook
Content-Type: multipart/form-data; boundary=boundary-id
Content-Length: number_of_bytes_in_entire_request_body
--boundary-id
Content-Disposition: file; filename="file1.xml"
Content-Size: 98344
Content-Type: application/xml
... XML ...
--boundary-id
Content-Disposition: file; filename="file2.xml"
Content-Size: 92224
Content-Type: application/xml
... XML ...
--boundary-id
Content-Disposition: file; filename="configuration.xml"
Content-Size: 32224
Content-Type: application/xml
... XML ...
--boundary-id
Content-Disposition: form-data; name="async"
true
--boundary-id
The following table describes the parts that can make up the form-data:
|
Parameter |
Description and example usage |
|---|---|
|
inputA (required) |
Input A Can be specified in either a file path, a HTTP URI, or raw XML |
|
inputB (required) |
Input B Can be specified in either a file path, a HTTP URI, or raw XML |
|
configuration |
Configuration file Can be specified in either a file path, a HTTP URI, or raw XML |
|
catalog |
File path or HTTP URI pointing to catalog file(s). |
|
async |
Whether async comparison is used. Default value if not specified: false |
|
output |
An optional file path to write the output to when using async. E.g. "/Users/exampleUser/Documents/test.xml" |
|
callback |
Callback URL called after comparison is complete. Note : only used with asynchronous comparisons. See this page. |