diff --git a/demo/README.md b/demo/README.md new file mode 100644 index 00000000..0309ee89 --- /dev/null +++ b/demo/README.md @@ -0,0 +1,14 @@ +## JsonSchema\Validator Demo + +This demo script uses the example from the root README.md and provides sample JSON files for testing `JsonSchema\Validator`. + +To change or replace the JSON schema document, please edit `/path/to/json-schema/demo/schema.json`. + +To change or replace the JSON document that is validated, please edit `/path/to/json-schema/demo/data.json`. + +To run the demo, change the path in the following example and run it in your terminal. + +``` +cd /path/to/json-schema/demo +php demo.php // The supplied JSON validates against the schema. +``` diff --git a/demo/data.json b/demo/data.json new file mode 100644 index 00000000..69591b71 --- /dev/null +++ b/demo/data.json @@ -0,0 +1,3 @@ +{ + "foo":"bar" +} diff --git a/demo/demo.php b/demo/demo.php new file mode 100644 index 00000000..e921df6f --- /dev/null +++ b/demo/demo.php @@ -0,0 +1,17 @@ +check($data, (object)['$ref' => 'file://' . realpath('schema.json')]); + +if ($validator->isValid()) { + echo "The supplied JSON validates against the schema.\n"; +} else { + echo "JSON does not validate. Violations:\n"; + foreach ($validator->getErrors() as $error) { + echo sprintf("[%s] %s\n", $error['property'], $error['message']); + } +} diff --git a/demo/schema.json b/demo/schema.json new file mode 100644 index 00000000..e6307dc1 --- /dev/null +++ b/demo/schema.json @@ -0,0 +1,3 @@ +{ + "type": "object" +}