MarkLogic 12 EA 1 Product Documentation
xdmp:json-validate

xdmp:json-validate(
   $node as node(),
   $schema as xs:string,
   $options as xs:string*
) as node()

Summary

Validate a JSON node against a JSON Schema. If the node is not valid per the schema, raise an error. Otherwise, return the input node.

Parameters
node JSON node to be validated.
schema URI of the JSON schema to use for validation.
options Validation options. Supported options:
"full"
Keep trying to find all the errors.
"strict"
Stop after the first error. (Default)

Example

(: Assuming the following JSON schema is in the schema database at
   "/schemas/example.json" :
    {
      "language": "zxx",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "properties": {
         "count": { "type":"integer", "minimum":0 },
         "items": { "type":"array", "items": {"type":"string", "minLength":1 } }
      }
    }
:)
  xdmp:json-validate(
     object-node{ "count": 3, "items": array-node{12} }, "/schemas/example.json" )

=> XDMP-JSVALIDATEINVTYPE: Invalid node type: Expected node of type text, found number at number-node{12} using schema "/schemas/example.json"
at 1:0 [1.0-ml]
  
Powered by MarkLogic Server | Terms of Use | Privacy Policy