1{ 2 "$schema": "http://json-schema.org/draft-04/schema#", 3 "id": "4.3.1-cached.json", 4 "assertionType": "may", 5 "expectedResult": "valid", 6 "onUnexpectedResult" : "passAndContinue", 7 "errorMessage": "The description of a TimeState may include cached key with a single value that is of format uri.", 8 "title": "Implements **Specific Resource _cached_ key** with one or more values each of **format uri** on a **Specific Resource TimeState** - [model 4.3.1](https://www.w3.org/TR/annotation-model/#time-state)", 9 "description": "True when Annotation includes one or more TimeStates, one or more of which include cached key with a single value of format uri. (Section 4.3.1)", 10 "type": "object", 11 "anyOf": 12 [ 13 { "properties": 14 { "body": 15 { "oneOf": 16 [ 17 { "type": "object", 18 "oneOf": 19 [ 20 { "$ref": "#/definitions/stateSchema" }, 21 { "$ref": "#/definitions/itemSchema" } 22 ] 23 }, 24 { "type": "array", 25 "minItems": 1, 26 "not": 27 { "items": 28 { "not": 29 { "oneOf": 30 [ 31 { "$ref": "#/definitions/stateSchema" }, 32 { "$ref": "#/definitions/itemSchema" } 33 ] 34 } 35 } 36 } 37 } 38 ] 39 } 40 }, 41 "required": [ "body" ] 42 }, 43 { "properties": 44 { "target": 45 { "oneOf": 46 [ 47 { "type": "object", 48 "oneOf": 49 [ 50 { "$ref": "#/definitions/stateSchema" }, 51 { "$ref": "#/definitions/itemSchema" } 52 ] 53 }, 54 { "type": "array", 55 "minItems": 1, 56 "not": 57 { "items": 58 { "not": 59 { "oneOf": 60 [ 61 { "$ref": "#/definitions/stateSchema" }, 62 { "$ref": "#/definitions/itemSchema" } 63 ] 64 } 65 } 66 } 67 } 68 ] 69 } 70 }, 71 "required": [ "target" ] 72 } 73 ], 74 "definitions": 75 { 76 "stateSchema": 77 { "type": "object", 78 "properties": 79 { "state": 80 { "oneOf": 81 [ 82 { "type": "object", 83 "$ref": "specificResource.json#/definitions/cachedPropertyFound" 84 }, 85 { "type": "array", 86 "minItems": 1, 87 "not": 88 { "items": 89 { "not": { "$ref": "specificResource.json#/definitions/cachedPropertyFound" } } 90 } 91 } 92 ] 93 } 94 }, 95 "required": [ "state" ] 96 }, 97 98 "itemSchema": 99 { "type": "object", 100 "properties": 101 { "items": 102 { "type": "array", 103 "minItems": 1, 104 "not": 105 { "items": 106 { "not": { "$ref": "#/definitions/stateSchema" } } 107 } 108 } 109 }, 110 "required": [ "items" ] 111 } 112 } 113}