commit | 856d43350b5a711ef82b29580eaa12fa777f5fe2 | [log] [tgz] |
---|---|---|
author | sigu-399 <sigu.399@gmail.com> | Sat Jun 22 02:59:58 2013 +0800 |
committer | sigu-399 <sigu.399@gmail.com> | Sat Jun 22 02:59:58 2013 +0800 |
tree | ead358faf3f538a2cbcd132066af9f2454a7cd85 | |
parent | bea9cdc14d3ed8bf34278ead7173e0bd3937ec2e [diff] |
reworked items, added additionalItems
An implementation of JSON Schema, based on IETF's draft v4 - Go language
Working, but not all keyword are yet implemented.
What is missing : definitions, dependencies, full coverage of items, additionalItems
Testing / debugging / improvements in progress ( Passed 88% of Json Schema Test Suite )
package main import ( "github.com/sigu-399/gojsonschema" "fmt" ) func main() { schema, err := gojsonschema.NewJsonSchemaDocument("http://myhost/bla/schema1.json") // OR //schema, err := gojsonschema.NewJsonSchemaDocument("file:///home/me/myschemas/schema1.json") if err != nil { panic(err.Error()) } jsonToValidate, err := gojsonschema.GetHttpJson("http://myotherhost/blu/extract56.json") // OR //jsonToValidate, err := gojsonschema.GetFileJson("file:///home/billy/hotels.json") if err != nil { panic(err.Error()) } validationResult := schema.Validate(jsonToValidate) fmt.Printf("IsValid %v\n", validationResult.IsValid()) fmt.Printf("%v\n", validationResult.GetErrorMessages()) }
###Website http://json-schema.org
###Schema Core http://json-schema.org/latest/json-schema-core.html
###Schema Validation http://json-schema.org/latest/json-schema-validation.html
https://github.com/sigu-399/gojsonpointer
https://github.com/sigu-399/gojsonreference
gojsonschema uses the following test suite :