Getting Data In

How to do XSD schema validation on JSON data

msrama5
Explorer

Hello, I have complex JSON being written to Splunk and want to do XSD schema validation on the JSON, this is to ensure that JSON is not corrupted for some fields missing or out of order, what is the best way to do this ?

Below is the JSON request which has XSD schema and validation needs done:

 {
     "TestTransaction":{
     "OrderEntryType":141,
     "Number":69909696,
     "CloseDate":"2020-02-03T15:31:38.1260000Z",
     "ab":"test",
     "Trans":[
     {
     "Amt":5.45,
     "Desc":"test card",
     "Id":"961071022758064128",
     "Number":7777207236838910,
     "ab":"test",
     "$type":"test"
     }
     ],
     "TotalAmt":5.45,
     "SubAmount":4.95,
     "TaxAmount":0.5,
     "DiscountAmount":0.0,
     "Header":{
     "ServiceType":null,
     "RequestDate":"2020-02-03T15:31:38.1260000Z",
     "$type":"Header"
     },
     "Preparation":"ConsOutOfStore",
     "Details":{
     "Discounts":[
     ],
     "Items":[
     {
     "Qty":1.0,
     "Sku":null,
     "Price":4.45,
     "Discounts":[
     ],
     "OverrideDescription":null,
     "OverridePrice":null,
     "Suffix":null,
     "ChildItems":[
     {
     "Qty":1.0,
     "Sku":null,
     "Price":0.0,
     "Discounts":null,
     "IsRefunded":false,
     "IsTaxed":false,
     "Summary":{
     "TotalPrice":4.95,
     "DiscountAmount":0,
     "SubtotalAmount":4.95,
     "$type":"testSummary"
     },
     "$type":"testItem"
     }
     ],
     "Taxes":[
     {
     "Name":"Sales Tax",
     "Amount":50,
     "$type":"testTax"
     }
     ],
     "ReceiptLines":[
     ],
     "Delivery":null,
     "$type":"testDetails"
     },
     "$type":"trans"
     },
     "RequestId":"test",
     "MessageId":"test",
     "$type":"testTransaction"
     }
0 Karma
Get Updates on the Splunk Community!

Splunk Observability Cloud’s AI Assistant in Action Series: Analyzing and ...

This is the second post in our Splunk Observability Cloud’s AI Assistant in Action series, in which we look at ...

Elevate Your Organization with Splunk’s Next Platform Evolution

 Thursday, July 10, 2025  |  11AM PDT / 2PM EDT Whether you're managing complex deployments or looking to ...

Splunk Answers Content Calendar, June Edition

Get ready for this week’s post dedicated to Splunk Dashboards! We're celebrating the power of community by ...