1{
2    "$schema": "http://json-schema.org/draft-04/schema#",
3    "id": "3.3.3-targAudience.json",
4    "assertionType": "may",
5    "expectedResult": "valid",
6    "onUnexpectedResult" : "passAndContinue",
7    "errorMessage": "The description of a target may include audience key which has one or more values with each audience instance described using schema.org/Audience classes and properties.",
8    "title": "Implements **target _audience_ key** which has one or more values with each audience instance described using **[schema.org/Audience](http://schema.org/Audience) classes and properties** - [model 3.3.3](https://www.w3.org/TR/annotation-model/#intended-audience)",
9    "description": "True when Annotation includes one or more targets, one or more of which include audience key which has one or more values with each audience instance described using schema.org/Audience classes and properties.. (Section 3.3.3)",
10    "type": "object",
11    "properties":
12    {
13        "target":
14        {
15           "oneOf": [
16                      { "anyOf": [
17                        { "$ref": "otherProperties.json#/definitions/audiencePropertyFound" },
18                        { "$ref": "otherProperties.json#/definitions/itemAudiencePropertyFound" },
19                        { "$ref": "otherProperties.json#/definitions/sourceAudiencePropertyFound" }
20                        ]
21                      },
22                       { "not":
23                         { "items":
24                            { "not":
25                               { "anyOf": [
26                                  { "$ref": "otherProperties.json#/definitions/audiencePropertyFound" },
27                                  { "$ref": "otherProperties.json#/definitions/itemAudiencePropertyFound" },
28                                  { "$ref": "otherProperties.json#/definitions/sourceAudiencePropertyFound" }
29                                 ]
30                               }
31                             }
32                         }
33                       }
34                     ]
35         }
36     },
37    "required": [ "target" ]
38}