summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/annotation-model/annotations/bodiesTargets/3.2.2-bodyType.json
blob: 25b0e48ab720166c2031448bfd68f73650290466 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "id": "3.2.2-bodyType.json",
    "assertionType": "may",
    "expectedResult": "valid",
    "onUnexpectedResult" : "passAndContinue",
    "errorMessage": "The description of a Body may include type key with one or more values that are each drawn from the model's list of resource classes.",
    "title": "Implements **body _type_ key** with one or more values each of which is drawn from the **model's list of resource classes** [model 3.2.1](https://www.w3.org/TR/annotation-model/#bodies-and-targets)",
    "description": "True when Annotation includes one or more Bodies, one or more of which include type key with one or more values that are each drawn from the model's list of resource classes. (Section 3.2.1)",
    "type": "object",
    "required": ["body"],
    "properties":
    {
        "body":
        {
           "oneOf": [
                      { "anyOf": [
                        { "$ref": "bodyTarget.json#/definitions/recognizedTypeFound" },
                        { "$ref": "bodyTarget.json#/definitions/itemRecognizedTypeFound" },
                        { "$ref": "bodyTarget.json#/definitions/sourceFormatPropertyFound" }
                        ]
                      },
                       { "not":
                         { "items":
                            { "not":
                               { "anyOf": [
                                  { "$ref": "bodyTarget.json#/definitions/recognizedTypeFound" },
                                  { "$ref": "bodyTarget.json#/definitions/itemRecognizedTypeFound" },
                                  { "$ref": "bodyTarget.json#/definitions/sourceRecognizedTypeFound" }
                                 ]
                               }
                             }
                         }
                       }
                     ]
         }
     }
}