The WSDL file can be found at http://peppol.helger.com/wsdvs?wsdl.
The endpoint URL for this WebService is http://peppol.helger.com/wsdvs
.
This service is currently provided free of charge. If you want to setup your own service for production usage don't hesitate to contact me at philip[at]helger[dot]com for support.
It offers one method called "validate" that takes the following arguments:
Parameter | Type | Usage | Notes |
---|---|---|---|
XML
|
string | required | This is the main XML document to be validated. For simplicity it must be provided as an inline string. Must use the same character set as the surrounding SOAP envelope. |
VESID
|
string | required | The Validation Executor Set ID to be used.
This is a special ID introduced by PEPPOL practical to clearly identify different validation sets.Supported VES IDs are:
|
DisplayLocale
|
string | optional |
This parameter determines the language in which error codes are returned. The following languages are supported:
If this parameter is not provided |
<?xml version="1.0"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<validateRequestInput xmlns="http://peppol.helger.com/ws/documentvalidationservice/201701/" VESID="eu.peppol.bis2:t10:3.3.0" displayLocale="en">
<XML><?xml version="1.0" encoding="UTF-8"?>
<Invoice:Invoice xmlns:Invoice="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
...
</Invoice:Invoice>
</XML>
</validateRequestInput>
</S:Body>
</S:Envelope>
The response of calling this service is a complex structure with the following items:
Name | Type | Usage | Notes |
---|---|---|---|
@success
|
boolean | required | The overall success or error indicator.
If true validation was successful (no errors occurred)
If false at least one error was found upon document validation. |
@interrupted
|
boolean | required |
true if the validation was interrupted and not all validation layers were
executed (e.g. when XSD validation fails, Schematron validation is not performed)
or false if validation was executed for all layers |
@mostSevereErrorLevel
|
enumeration | optional | The most severe error level of all validation results contained in here.
This field has the sole purpose to easily identify whether a document was totally valid
(value SUCCESS ), whether some warnings but no errors occurred
(value WARN ) or whether at least one error occurred
(value ERROR ). |
Result
|
element | 0-n times | This element contains the results of a single validation layer execution. |
The Result
element contains the following fields:
Name | Type | Usage | Notes |
---|---|---|---|
@success
|
enumeration | required | The overall success or error indicator.
If true validation was successful (no errors occurred).
If false at least one error was found upon document validation.
If undefined this validation layer was not executed |
@artifactType
|
string | required |
The type of validation artefact (e.g. XSD or Schematron) that was used to perform the validation. Currently supported types are:
|
@artifactPath
|
string | required | The path to the validation artefact that was used to perform the validation. |
Item
|
Element | 0-n times | Contains the detail errors occurred in this validation layer. |
The Item
element contains the following fields:
Name | Type | Usage | Notes |
---|---|---|---|
@errorLevel
|
enumeration | required | Error level of this item.
If it was totally valid (value SUCCESS ),
whether some warnings but no errors occurred (value WARN ) or
whether at least one error occurred (value ERROR ). |
@errorID
|
string | optional | The ID of the error |
@errorFieldName
|
string | optional | The name of the field where the error occurred |
@errorLocation
|
string | optional | The location where the error occurred |
@errorText
|
string | required | The error text |
@test
|
string | optional | The test that was executed and lead to this error (e.g. Schematron 'test' attribute) |
Exception
|
string | optional | The internal exception that occurred |