tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

otherProperties.json (46267B)


      1 {
      2  "$schema": "http://json-schema.org/draft-04/schema#",
      3  "id": "otherProperties.json",
      4  "title": "Definitions: Other Properties.",
      5  "description": "Schemas in #/definitions detect or validate keys, objects or constraints variously applicable to Annotations, Bodies, Targets, Specific Resources, Textual Bodies, Items, and/or Sources (Section 3.3).",
      6  "definitions": {
      7 
      8    "createdValidIfPresent": {
      9      "$schema": "http://json-schema.org/draft-04/schema#",
     10      "title": "Validation: created value",
     11      "description": "True when the object being tested (annotation, body, target...) has no created or has a single created of format date-time (Section 3.3.1)",
     12      "type": "object",
     13      "properties": {"created": {"oneOf": [
     14        {
     15          "type": "string",
     16          "format": "date-time"
     17        },
     18        {
     19          "type": "array",
     20          "minItems": 1,
     21          "maxItems": 1,
     22          "items": {
     23            "type": "string",
     24            "format": "date-time"
     25          }
     26        }
     27      ]}}
     28    },
     29 
     30    "createdPropertyFound": {
     31      "$schema": "http://json-schema.org/draft-04/schema#",
     32      "title": "Collate: created key with qualifying body/target classes",
     33      "description": "Supports implementation check of created (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
     34      "oneOf": [
     35      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
     36      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
     37      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
     38        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
     39      ],
     40      "allOf": [
     41      {"$ref": "#/definitions/createdValidIfPresent"},
     42      {"required": ["created"]}
     43      ]
     44    },
     45 
     46    "itemCreatedPropertyFound":
     47    {
     48      "$schema": "http://json-schema.org/draft-04/schema#",
     49      "title": "Collate: items having created key with qualifying body/target classes",
     50      "description": "Supports implementation check of items having created (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
     51      "type": "object",
     52      "properties":
     53      {
     54          "items":
     55          {
     56              "type": "array",
     57              "minItems": 1,
     58              "not":
     59              {
     60                  "items":
     61                  { "not": { "$ref": "#/definitions/createdPropertyFound" } }
     62              }
     63          }
     64      },
     65      "required": ["items"]
     66    },
     67 
     68    "sourceCreatedPropertyFound":
     69    {
     70      "$schema": "http://json-schema.org/draft-04/schema#",
     71      "title": "Collate: Specific Resource source having created key",
     72      "description": "Supports implementation check of created (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
     73      "type": "object",
     74      "properties":
     75      {
     76          "source":
     77          {
     78              "type": "object",
     79              "required": ["created"] ,
     80              "$ref": "#/definitions/createdValidIfPresent"
     81          }
     82      },
     83      "required": ["source"]
     84    },
     85 
     86    "generatedValidIfPresent": {
     87      "$schema": "http://json-schema.org/draft-04/schema#",
     88      "title": "Validation: generated value",
     89      "description": "True when the annotation, body or target has no generated or has a single generated of format date-time (Section 3.3.1)",
     90      "type": "object",
     91      "properties": {"generated": {"oneOf": [
     92        {
     93          "type": "string",
     94          "format": "date-time"
     95        },
     96        {
     97          "type": "array",
     98          "minItems": 1,
     99          "maxItems": 1,
    100          "items": {
    101            "type": "string",
    102            "format": "date-time"
    103          }
    104        }
    105      ]}}
    106    },
    107 
    108    "generatedPropertyFound": {
    109      "$schema": "http://json-schema.org/draft-04/schema#",
    110      "title": "Collate: generated key with qualifying body/target classes",
    111      "description": "Supports implementation check of generated (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    112      "oneOf": [
    113        {"$ref": "annotations.json#/definitions/annotationTypeValueFound"}
    114      ],
    115      "allOf": [
    116      {"$ref": "#/definitions/generatedValidIfPresent"},
    117      {"required": ["generated"]}
    118      ]
    119    },
    120 
    121    "modifiedValidIfPresent": {
    122      "$schema": "http://json-schema.org/draft-04/schema#",
    123      "title": "Validation: modified value",
    124      "description": "True when the annotation, body or target has no modified or has a single modified of format date-time (Section 3.3.1)",
    125      "type": "object",
    126      "properties": {"modified": {"oneOf": [
    127        {
    128          "type": "string",
    129          "format": "date-time"
    130        },
    131        {
    132          "type": "array",
    133          "minItems": 1,
    134          "maxItems": 1,
    135          "items": {
    136            "type": "string",
    137            "format": "date-time"
    138          }
    139        }
    140      ]}}
    141    },
    142 
    143    "modifiedPropertyFound": {
    144      "$schema": "http://json-schema.org/draft-04/schema#",
    145      "title": "Collate: modified key with qualifying body/target classes",
    146      "description": "Supports implementation check of modified (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    147      "oneOf": [
    148      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    149      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    150      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    151        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    152      ],
    153      "allOf": [
    154      {"$ref": "#/definitions/modifiedValidIfPresent"},
    155      {"required": ["modified"]}
    156      ]
    157    },
    158 
    159    "itemModifiedPropertyFound":
    160    {
    161      "$schema": "http://json-schema.org/draft-04/schema#",
    162      "title": "Collate: items having modified key with qualifying body/target classes",
    163      "description": "Supports implementation check of items having modified (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    164      "type": "object",
    165      "properties":
    166      {
    167          "items":
    168          {
    169              "type": "array",
    170              "minItems": 1,
    171              "not":
    172              {
    173                  "items":
    174                  { "not": { "$ref": "#/definitions/modifiedPropertyFound" } }
    175              }
    176          }
    177      },
    178      "required": ["items"]
    179    },
    180 
    181    "sourceModifiedPropertyFound":
    182    {
    183      "$schema": "http://json-schema.org/draft-04/schema#",
    184      "title": "Collate: Specific Resource source having modified key",
    185      "description": "Supports implementation check of modified (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    186      "type": "object",
    187      "properties":
    188      {
    189          "source":
    190          {
    191              "type": "object",
    192              "required": ["modified"] ,
    193              "$ref": "#/definitions/modifiedValidIfPresent"
    194          }
    195      },
    196      "required": ["source"]
    197    },
    198 
    199    "creatorValidIfPresent": {
    200      "$schema": "http://json-schema.org/draft-04/schema#",
    201      "title": "Validation: creator value",
    202      "description": "True when the annotation, body or target has one or more creators (Section 3.3.1)",
    203      "type": "object",
    204      "properties": {"creator":
    205        {"oneOf": [
    206          { "$ref": "id.json#/definitions/stringUri" },
    207          { "type": "object" },
    208          {
    209            "type": "array",
    210            "minItems": 1,
    211            "items":
    212            { "oneOf": [
    213              { "$ref": "id.json#/definitions/stringUri" },
    214              { "type": "object" }
    215            ]
    216            }
    217          }
    218        ]
    219        }
    220      }
    221    },
    222 
    223    "creatorSingularIfPresent": {
    224      "$schema": "http://json-schema.org/draft-04/schema#",
    225      "title": "Validation: creator value",
    226      "description": "True when the annotation, body or target has exactly 1 creator (Section 3.3.1)",
    227      "type": "object",
    228      "properties": {"creator":
    229        {"oneOf": [
    230          { "$ref": "id.json#/definitions/stringUri" },
    231          { "type": "object" },
    232          {
    233            "type": "array",
    234            "minItems": 1,
    235            "maxItems": 1,
    236            "items":
    237            { "oneOf": [
    238              { "$ref": "id.json#/definitions/stringUri" },
    239              { "type": "object" }
    240            ]
    241            }
    242          }
    243        ]
    244        }
    245      }
    246    },
    247 
    248    "creatorPropertyFound": {
    249      "$schema": "http://json-schema.org/draft-04/schema#",
    250      "title": "Collate: creator key with qualifying body/target classes",
    251      "description": "Supports implementation check of creator (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Section 3.3.1)",
    252      "oneOf": [
    253      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    254      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    255      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    256        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    257      ],
    258      "allOf": [
    259      {"required": ["creator"]},
    260      {"$ref": "#/definitions/creatorValidIfPresent"}
    261      ]
    262    },
    263 
    264    "itemCreatorPropertyFound":
    265    {
    266      "$schema": "http://json-schema.org/draft-04/schema#",
    267      "title": "Collate: items having creator key with qualifying body/target classes",
    268      "description": "Supports implementation check of items having creator (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    269      "type": "object",
    270      "properties":
    271      {
    272          "items":
    273          {
    274              "type": "array",
    275              "minItems": 1,
    276              "not":
    277              {
    278                  "items":
    279                  { "not": { "$ref": "#/definitions/creatorPropertyFound" } }
    280              }
    281          }
    282      },
    283      "required": ["items"]
    284    },
    285 
    286    "sourceCreatorPropertyFound":
    287    {
    288      "$schema": "http://json-schema.org/draft-04/schema#",
    289      "title": "Collate: Specific Resource source having creator key",
    290      "description": "Supports implementation check of creator (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    291      "type": "object",
    292      "properties":
    293      {
    294          "source":
    295          {
    296              "type": "object",
    297              "required": ["creator"] ,
    298              "$ref": "#/definitions/creatorValidIfPresent"
    299          }
    300      },
    301      "required": ["source"]
    302    },
    303 
    304    "singleCreatorPropertyFound": {
    305      "$schema": "http://json-schema.org/draft-04/schema#",
    306      "title": "Collate: creator key with qualifying body/target classes",
    307      "description": "Supports implementation check of creator being singular (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Section 3.3.1)",
    308      "oneOf": [
    309      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    310      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    311      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    312        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    313      ],
    314      "allOf": [
    315      {"required": ["creator"]},
    316      {"$ref": "#/definitions/creatorSingularIfPresent"}
    317      ]
    318    },
    319 
    320    "itemSingleCreatorPropertyFound":
    321    {
    322      "$schema": "http://json-schema.org/draft-04/schema#",
    323      "title": "Collate: items having singular creator key with qualifying body/target classes",
    324      "description": "Supports implementation check of items having singular creator (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    325      "type": "object",
    326      "properties":
    327      {
    328          "items":
    329          {
    330              "type": "array",
    331              "minItems": 1,
    332              "not":
    333              {
    334                  "items":
    335                  { "not": { "$ref": "#/definitions/singleCreatorPropertyFound" } }
    336              }
    337          }
    338      },
    339      "required": ["items"]
    340    },
    341 
    342    "sourceSingleCreatorPropertyFound":
    343    {
    344      "$schema": "http://json-schema.org/draft-04/schema#",
    345      "title": "Collate: Specific Resource source having singular creator key",
    346      "description": "Supports implementation check of singular creator (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    347      "type": "object",
    348      "properties":
    349      {
    350          "source":
    351          {
    352              "type": "object",
    353              "required": ["creator"] ,
    354              "$ref": "#/definitions/creatorSingularIfPresent"
    355          }
    356      },
    357      "required": ["source"]
    358    },
    359 
    360    "generatorValidIfPresent": {
    361      "$schema": "http://json-schema.org/draft-04/schema#",
    362      "title": "Validation: generator value",
    363      "description": "True when the annotation, body or target has a single generator (Section 3.3.1)",
    364      "type": "object",
    365      "properties": {"generator":
    366        {"oneOf": [
    367          { "$ref": "id.json#/definitions/stringUri" },
    368          { "type": "object" },
    369          {
    370            "type": "array",
    371            "minItems": 1,
    372            "items":
    373            { "oneOf": [
    374              { "$ref": "id.json#/definitions/stringUri" },
    375              { "type": "object" }
    376            ]
    377            }
    378          }
    379        ]
    380        }
    381      }
    382    },
    383 
    384    "generatorPropertyFound": {
    385      "$schema": "http://json-schema.org/draft-04/schema#",
    386      "title": "Collate: generator key with qualifying body/target classes",
    387      "description": "Supports implementation check of generator (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Section 3.3.1)",
    388      "oneOf": [
    389         {"$ref": "annotations.json#/definitions/annotationTypeValueFound"}
    390      ],
    391      "allOf": [
    392      {"required": ["generator"]},
    393      {"$ref": "#/definitions/generatorValidIfPresent"}
    394      ]
    395    },
    396 
    397    "audienceDefinition":
    398    {
    399      "$schema": "http://json-schema.org/draft-04/schema#",
    400      "title": "Definition: audience object",
    401      "description": "True when object meets our requirements for audience value (Section 3.3.3)",
    402      "type": "object",
    403      "properties": {
    404        "id":  {"$ref": "id.json#/definitions/arraySingleStringUri"} ,
    405        "type": {
    406          "oneOf": [
    407          { "type": "string",
    408            "pattern": "^(schema:)"},
    409          { "type": "array",
    410            "minItems": 1,
    411            "items": {
    412              "type": "string",
    413              "pattern": "^(schema:)"
    414            }
    415          }
    416          ]
    417        }
    418      },
    419      "patternProperties": {
    420        "^(schema:)": { "type": ["string", "object", "array"] }
    421      },
    422      "additionalProperties": false
    423    },
    424 
    425    "audienceValidIfPresent":
    426    {
    427      "$schema": "http://json-schema.org/draft-04/schema#",
    428      "title": "Validation: audience value",
    429      "description": "True when no audience or audience property of the annotation, body, target, ... is valid (Section 3.3.3)",
    430      "type": "object",
    431      "properties": {
    432        "audience":
    433        { "oneOf":
    434          [
    435          { "$ref": "id.json#/definitions/stringUri" },
    436          { "$ref": "#/definitions/audienceDefinition" },
    437          {
    438            "type": "array",
    439            "minItems": 1,
    440            "items": {
    441              "oneOf": [
    442              { "$ref": "id.json#/definitions/stringUri" },
    443              { "$ref": "#/definitions/audienceDefinition" }
    444              ]
    445            }
    446          }
    447          ]
    448        }
    449      }
    450    },
    451 
    452    "audiencePropertyFound":
    453    {
    454      "$schema": "http://json-schema.org/draft-04/schema#",
    455      "title": "Collate: audience key with qualifying body/target classes",
    456      "description": "Supports implementation check of audience (if/when) used on Annotation, External Web Resources, Specific Resources, Textual Body Resources (Section 3.3.3)",
    457      "oneOf": [
    458      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    459      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    460      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    461        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    462      ],
    463      "allOf": [
    464      {"required": ["audience"]},
    465      {"$ref": "#/definitions/audienceValidIfPresent"}
    466      ]
    467    },
    468 
    469    "itemAudiencePropertyFound":
    470    {
    471      "$schema": "http://json-schema.org/draft-04/schema#",
    472      "title": "Collate: items having audience key with qualifying body/target classes",
    473      "description": "Supports implementation check of items having audience (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    474      "type": "object",
    475      "properties":
    476      {
    477          "items":
    478          {
    479              "type": "array",
    480              "minItems": 1,
    481              "not":
    482              {
    483                  "items":
    484                  { "not": { "$ref": "#/definitions/audiencePropertyFound" } }
    485              }
    486          }
    487      },
    488      "required": ["items"]
    489    },
    490 
    491    "sourceAudiencePropertyFound":
    492    {
    493      "$schema": "http://json-schema.org/draft-04/schema#",
    494      "title": "Collate: Specific Resource source having audience key",
    495      "description": "Supports implementation check of audience (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    496      "type": "object",
    497      "properties":
    498      {
    499          "source":
    500          {
    501              "type": "object",
    502              "required": ["audience"] ,
    503              "$ref": "#/definitions/audienceValidIfPresent"
    504          }
    505      },
    506      "required": ["source"]
    507    },
    508 
    509    "accessibilityValidIfPresent":
    510    {
    511      "$schema": "http://json-schema.org/draft-04/schema#",
    512      "title": "Validation: accessibility value",
    513      "description": "True when no accessibility or accessibility property of the body, target, ... is valid (Section 3.3.4)",
    514      "type": "object",
    515      "properties": {
    516        "accessibility" : {
    517          "oneOf": [
    518          { "type": "string" },
    519          { "type": "array" ,
    520            "minItems": 1,
    521            "items": {
    522              "type": "string"
    523            }
    524          }
    525          ]
    526        }
    527      }
    528    },
    529 
    530    "accessibilityPropertyFound":
    531    {
    532      "$schema": "http://json-schema.org/draft-04/schema#",
    533      "title": "Collate: accessibility key with qualifying body/target classes",
    534      "description": "Supports implementation check of accessibility (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Section 3.3.4)",
    535      "oneOf": [
    536      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    537      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    538      {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    539      ],
    540      "allOf": [
    541      {"required": ["accessibility"]},
    542      {"$ref": "#/definitions/accessibilityValidIfPresent"}
    543      ]
    544    },
    545 
    546    "itemAccessibilityPropertyFound":
    547    {
    548      "$schema": "http://json-schema.org/draft-04/schema#",
    549      "title": "Collate: items having accessibility key with qualifying body/target classes",
    550      "description": "Supports implementation check of items having accessibility (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    551      "type": "object",
    552      "properties":
    553      {
    554          "items":
    555          {
    556              "type": "array",
    557              "minItems": 1,
    558              "not":
    559              {
    560                  "items":
    561                  { "not": { "$ref": "#/definitions/accessibilityPropertyFound" } }
    562              }
    563          }
    564      },
    565      "required": ["items"]
    566    },
    567 
    568    "sourceAccessibilityPropertyFound":
    569    {
    570      "$schema": "http://json-schema.org/draft-04/schema#",
    571      "title": "Collate: Specific Resource source having audience key",
    572      "description": "Supports implementation check of audience (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    573      "type": "object",
    574      "properties":
    575      {
    576          "source":
    577          {
    578              "type": "object",
    579              "required": ["accessibility"] ,
    580              "$ref": "#/definitions/accessibilityValidIfPresent"
    581          }
    582      },
    583      "required": ["source"]
    584    },
    585 
    586    "rightsValidIfPresent":
    587    {   "$schema": "http://json-schema.org/draft-04/schema#",
    588      "title": "Validation: rights value",
    589      "description": "True when the annotation, body or target has 0 or more rights properties that are strings of format uri (Section 3.3.6)",
    590      "type": "object",
    591      "properties": {"rights":
    592        { "oneOf": [
    593          { "$ref": "id.json#/definitions/stringUri" },
    594          { "type": "array",
    595            "minItems": 1,
    596            "items": { "$ref": "id.json#/definitions/stringUri" } }
    597        ]
    598        }
    599      }
    600    },
    601 
    602    "rightsPropertyFound":
    603    {   "$schema": "http://json-schema.org/draft-04/schema#",
    604      "title": "Collate: rights key with qualifying annotation/body/target classes",
    605      "description": "Supports implementation check of rights (if/when) used on Annotation, External Web Resources, Specific Resources, Textual Body Resources (Sections 3.3.6)",
    606      "oneOf": [
    607      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    608      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    609      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    610        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    611      ],
    612      "allOf": [
    613      {"required": ["rights"]},
    614      {"$ref": "#/definitions/rightsValidIfPresent"}
    615      ]
    616    },
    617 
    618    "itemRightsPropertyFound":
    619    {
    620      "$schema": "http://json-schema.org/draft-04/schema#",
    621      "title": "Collate: items having rights key with qualifying body/target classes",
    622      "description": "Supports implementation check of items having rights (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    623      "type": "object",
    624      "properties":
    625      {
    626          "items":
    627          {
    628              "type": "array",
    629              "minItems": 1,
    630              "not":
    631              {
    632                  "items":
    633                  { "not": { "$ref": "#/definitions/rightsPropertyFound" } }
    634              }
    635          }
    636      },
    637      "required": ["items"]
    638    },
    639 
    640    "sourceRightsPropertyFound":
    641    {
    642      "$schema": "http://json-schema.org/draft-04/schema#",
    643      "title": "Collate: Specific Resource source having rights key",
    644      "description": "Supports implementation check of rights (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    645      "type": "object",
    646      "properties":
    647      {
    648          "source":
    649          {
    650              "type": "object",
    651              "required": ["rights"] ,
    652              "$ref": "#/definitions/rightsValidIfPresent"
    653          }
    654      },
    655      "required": ["source"]
    656    },
    657 
    658    "canonicalValidIfPresent":
    659    {   "$schema": "http://json-schema.org/draft-04/schema#",
    660      "title": "Validation: canonical value",
    661      "description": "True when the annotation, body or target has 0 or 1 canonical properties that are strings of format uri (Section 3.3.7)",
    662      "type": "object",
    663      "properties": {
    664        "canonical": { "$ref": "id.json#/definitions/arraySingleStringUri" }
    665      }
    666    },
    667 
    668    "canonicalPropertyFound":
    669    {   "$schema": "http://json-schema.org/draft-04/schema#",
    670      "title": "Collate: canonical key with qualifying annotation/body/target classes",
    671      "description": "Supports implementation check of canonical (if/when) used on Annotation, External Web Resources, Specific Resources, Textual Body Resources (Sections 3.3.7)",
    672      "oneOf": [
    673      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    674      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    675      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    676        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    677      ],
    678      "allOf": [
    679      {"required": ["canonical"]},
    680      {"$ref": "#/definitions/canonicalValidIfPresent"}
    681      ]
    682    },
    683 
    684    "itemCanonicalPropertyFound":
    685    {
    686      "$schema": "http://json-schema.org/draft-04/schema#",
    687      "title": "Collate: items having canonical key with qualifying body/target classes",
    688      "description": "Supports implementation check of items having canonical (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    689      "type": "object",
    690      "properties":
    691      {
    692          "items":
    693          {
    694              "type": "array",
    695              "minItems": 1,
    696              "not":
    697              {
    698                  "items":
    699                  { "not": { "$ref": "#/definitions/canonicalPropertyFound" } }
    700              }
    701          }
    702      },
    703      "required": ["items"]
    704    },
    705 
    706    "sourceCanonicalPropertyFound":
    707    {
    708      "$schema": "http://json-schema.org/draft-04/schema#",
    709      "title": "Collate: Specific Resource source having canonical key",
    710      "description": "Supports implementation check of canonical (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    711      "type": "object",
    712      "properties":
    713      {
    714          "source":
    715          {
    716              "type": "object",
    717              "required": ["canonical"] ,
    718              "$ref": "#/definitions/canonicalValidIfPresent"
    719          }
    720      },
    721      "required": ["source"]
    722    },
    723 
    724    "viaValidIfPresent":
    725    {   "$schema": "http://json-schema.org/draft-04/schema#",
    726      "title": "Validation: via value",
    727      "description": "True when the annotation, body or target has 0 or more via properties that are strings of format uri (Section 3.3.7)",
    728      "type": "object",
    729      "properties": {"via":
    730        { "oneOf": [
    731          { "$ref": "id.json#/definitions/stringUri" },
    732          { "type": "array",
    733            "minItems": 1,
    734            "items": { "$ref": "id.json#/definitions/stringUri" } }
    735        ]
    736        }
    737      }
    738    },
    739 
    740    "viaPropertyFound":
    741    {   "$schema": "http://json-schema.org/draft-04/schema#",
    742      "title": "Collate: via key with qualifying annotation/body/target classes",
    743      "description": "Supports implementation check of via (if/when) used on Annotation, External Web Resources, Specific Resources, Textual Body Resources (Sections 3.3.7)",
    744      "oneOf": [
    745      {"$ref": "annotations.json#/definitions/annotationTypeValueFound"},
    746      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    747      {"$ref": "bodyTarget.json#/definitions/externalWebResourceDetected"},
    748        {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    749      ],
    750      "allOf": [
    751      {"required": ["via"]},
    752      {"$ref": "#/definitions/viaValidIfPresent"}
    753      ]
    754    },
    755 
    756    "itemViaPropertyFound":
    757    {
    758      "$schema": "http://json-schema.org/draft-04/schema#",
    759      "title": "Collate: items having via key with qualifying body/target classes",
    760      "description": "Supports implementation check of items having via (if/when) used on External Web Resources, Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    761      "type": "object",
    762      "properties":
    763      {
    764          "items":
    765          {
    766              "type": "array",
    767              "minItems": 1,
    768              "not":
    769              {
    770                  "items":
    771                  { "not": { "$ref": "#/definitions/viaPropertyFound" } }
    772              }
    773          }
    774      },
    775      "required": ["items"]
    776    },
    777 
    778    "sourceViaPropertyFound":
    779    {
    780      "$schema": "http://json-schema.org/draft-04/schema#",
    781      "title": "Collate: Specific Resource source having via key",
    782      "description": "Supports implementation check of via (if/when) used on Specific Resource source (Sections 3.2.1-6, 3.3)",
    783      "type": "object",
    784      "properties":
    785      {
    786          "source":
    787          {
    788              "type": "object",
    789              "required": ["via"] ,
    790              "$ref": "#/definitions/viaValidIfPresent"
    791          }
    792      },
    793      "required": ["source"]
    794    },
    795 
    796    "purposeRecognizedIfPresent":
    797    {   "$schema": "http://json-schema.org/draft-04/schema#",
    798      "title": "Validation: purpose value",
    799      "description": "True when the body has 0 or more purpose property values (Section 3.3.5)",
    800      "type": "object",
    801      "properties": {"purpose":
    802        { "oneOf": [
    803          { "$ref": "annotations.json#/definitions/motivationList" },
    804          { "type": "array",
    805            "minItems": 1,
    806            "items": { "$ref": "annotations.json#/definitions/motivationList" } }
    807        ]
    808        }
    809      }
    810    },
    811 
    812    "purposePropertyFound":
    813    {   "$schema": "http://json-schema.org/draft-04/schema#",
    814      "title": "Collate: purpose key with qualifying body classes",
    815      "description": "Supports implementation check of purpose (if/when) used on Specific Resource Body or Textual Body (Sections 3.3.5)",
    816      "oneOf": [
    817      {"$ref": "specificResource.json#/definitions/specificeResourceDetected"},
    818      {"$ref": "bodyTarget.json#/definitions/textualBodyFound"}
    819      ],
    820      "allOf": [
    821      {"required": ["purpose"]},
    822      {"$ref": "#/definitions/purposeRecognizedIfPresent"}
    823      ]
    824    },
    825 
    826    "itemPurposePropertyFound":
    827    {
    828      "$schema": "http://json-schema.org/draft-04/schema#",
    829      "title": "Collate: items having purpose key with qualifying body/target classes",
    830      "description": "Supports implementation check of items having purpose (if/when) used on Specific Resources, Textual Body Resources (Sections 3.2.1-6, 3.3)",
    831      "type": "object",
    832      "properties":
    833      {
    834          "items":
    835          {
    836              "type": "array",
    837              "minItems": 1,
    838              "not":
    839              {
    840                  "items":
    841                  { "not": { "$ref": "#/definitions/purposePropertyFound" } }
    842              }
    843          }
    844      },
    845      "required": ["items"]
    846    },
    847 
    848    "creatorAgentWithIdFound":
    849    { "type": "object",
    850      "properties":
    851      {  "creator":
    852        { "oneOf":
    853          [
    854          { "$ref": "id.json#/definitions/idValueFound" },
    855          { "type": "array",
    856            "minItems": 1,
    857            "not":
    858            { "items": { "not": { "$ref": "id.json#/definitions/idValueFound" } } }
    859          }
    860          ]
    861        }
    862      },
    863      "required": ["creator"]
    864    },
    865 
    866    "sourceCreatorAgentWithIdFound":
    867    { "type": "object",
    868      "properties":
    869        {
    870            "source":
    871            { "$ref": "#/definitions/creatorAgentWithIdFound" }
    872        },
    873       "required": ["source"]
    874    },
    875 
    876    "itemCreatorAgentWithIdFound":
    877    {
    878      "type": "object",
    879      "properties":
    880      {
    881          "items":
    882          {
    883              "type": "array",
    884              "minItems": 1,
    885              "not":
    886              {
    887                  "items":
    888                  { "not": { "$ref": "#/definitions/creatorAgentWithIdFound" } }
    889              }
    890          }
    891      },
    892      "required": ["items"]
    893    },
    894 
    895    "agentTypeDefinition":
    896    {
    897      "$schema": "http://json-schema.org/draft-04/schema#",
    898      "title": "Definition: Agent type value",
    899      "description": "True when the object (creator or generator agent) has no type or has at least one recognized Agent type value (Section 3.3.2)",
    900      "type": "object",
    901      "properties":
    902      {
    903        "type":
    904        {
    905          "oneOf":
    906            [
    907            {"type": "string",
    908              "enum": ["Person", "Organization", "Software"] },
    909            {"type": "array",
    910              "minItems": 1,
    911              "not":
    912              {
    913                "items" :
    914                { "not":
    915                  { "type": "string",
    916                    "enum": ["Person", "Organization", "Software"] }
    917                }
    918              }
    919            }
    920            ]
    921        }
    922      }
    923    },
    924 
    925    "agentTypeFound":
    926    {
    927      "$schema": "http://json-schema.org/draft-04/schema#",
    928      "title": "Check for implementation of Agent type value",
    929      "description": "True when the object (creator or generator agent) has at least one recognized Agent type value (Section 3.3.2)",
    930      "allOf": [
    931      {"required": ["type"]},
    932      {"$ref": "#/definitions/agentTypeDefinition"}
    933      ]
    934    },
    935 
    936    "creatorAgentWithTypeFound":
    937    { "type": "object",
    938      "properties":
    939      {  "creator":
    940        { "oneOf":
    941          [
    942          { "$ref": "#/definitions/agentTypeFound" },
    943          { "type": "array",
    944            "minItems": 1,
    945            "not":
    946            { "items": { "not": { "$ref": "#/definitions/agentTypeFound" } } }
    947          }
    948          ]
    949        }
    950      },
    951      "required": ["creator"]
    952    },
    953 
    954    "sourceCreatorAgentWithTypeFound":
    955    { "type": "object",
    956      "properties":
    957        {
    958            "source":
    959            { "$ref": "#/definitions/creatorAgentWithTypeFound" }
    960        },
    961       "required": ["source"]
    962    },
    963 
    964    "itemCreatorAgentWithTypeFound":
    965    {
    966      "type": "object",
    967      "properties":
    968      {
    969          "items":
    970          {
    971              "type": "array",
    972              "minItems": 1,
    973              "not":
    974              {
    975                  "items":
    976                  { "not": { "$ref": "#/definitions/creatorAgentWithTypeFound" } }
    977              }
    978          }
    979      },
    980      "required": ["items"]
    981    },
    982 
    983    "agentNameDefinition":
    984    {
    985      "$schema": "http://json-schema.org/draft-04/schema#",
    986      "title": "Definition: Agent name value",
    987      "description": "True when the object (creator or generator agent) has no name or has Agent name(s) of type string (Section 3.3.2)",
    988      "type": "object",
    989      "properties":
    990      {
    991        "name":
    992        {
    993          "oneOf":
    994            [
    995            {"type": "string" },
    996            {"type": "array",
    997              "minItems": 1,
    998              "items": {"type": "string"}
    999            }
   1000            ]
   1001        }
   1002      }
   1003    },
   1004 
   1005    "agentSingularNameDefinition":
   1006    {
   1007      "$schema": "http://json-schema.org/draft-04/schema#",
   1008      "title": "Definition: Agent name value",
   1009      "description": "True when the object (creator or generator agent) has no name or has exactly one Agent name that is a string (Section 3.3.2)",
   1010      "type": "object",
   1011      "properties":
   1012      {
   1013        "name":
   1014        {
   1015          "oneOf":
   1016            [
   1017            {"type": "string" },
   1018            {"type": "array",
   1019              "minItems": 1,
   1020              "maxItems": 1,
   1021              "items": {"type": "string"}
   1022            }
   1023            ]
   1024        }
   1025      }
   1026    },
   1027 
   1028    "agentNameFound":
   1029    {
   1030      "$schema": "http://json-schema.org/draft-04/schema#",
   1031      "title": "Check for implementation of Agent name value",
   1032      "description": "True when the object (creator or generator agent) has Agent name value(s) (Section 3.3.2)",
   1033      "allOf": [
   1034      {"required": ["name"]},
   1035      {"$ref": "#/definitions/agentNameDefinition"}
   1036      ]
   1037    },
   1038 
   1039    "creatorAgentWithNameFound":
   1040    { "type": "object",
   1041      "properties":
   1042      {  "creator":
   1043        { "oneOf":
   1044          [
   1045          { "$ref": "#/definitions/agentNameFound" },
   1046          { "type": "array",
   1047            "minItems": 1,
   1048            "not":
   1049            { "items": { "not": { "$ref": "#/definitions/agentNameFound" } } }
   1050          }
   1051          ]
   1052        }
   1053      },
   1054      "required": ["creator"]
   1055    },
   1056 
   1057    "sourceCreatorAgentWithNameFound":
   1058    { "type": "object",
   1059      "properties":
   1060        {
   1061            "source":
   1062            { "$ref": "#/definitions/creatorAgentWithNameFound" }
   1063        },
   1064       "required": ["source"]
   1065    },
   1066 
   1067    "itemCreatorAgentWithNameFound":
   1068    {
   1069      "type": "object",
   1070      "properties":
   1071      {
   1072          "items":
   1073          {
   1074              "type": "array",
   1075              "minItems": 1,
   1076              "not":
   1077              {
   1078                  "items":
   1079                  { "not": { "$ref": "#/definitions/creatorAgentWithNameFound" } }
   1080              }
   1081          }
   1082      },
   1083      "required": ["items"]
   1084    },
   1085 
   1086    "agentSingularNameFound":
   1087    {
   1088      "$schema": "http://json-schema.org/draft-04/schema#",
   1089      "title": "Check for implementation of Agent name value",
   1090      "description": "True when the object (creator or generator agent) has exactly one Agent name value (Section 3.3.2)",
   1091      "allOf": [
   1092      {"required": ["name"]},
   1093      {"$ref": "#/definitions/agentSingularNameDefinition"}
   1094      ]
   1095    },
   1096 
   1097    "creatorAgentWithSingularNameFound":
   1098    { "type": "object",
   1099      "properties":
   1100      {  "creator":
   1101        { "oneOf":
   1102          [
   1103          { "$ref": "#/definitions/agentSingularNameFound" },
   1104          { "type": "array",
   1105            "minItems": 1,
   1106            "not":
   1107            { "items": { "not": { "$ref": "#/definitions/agentSingularNameFound" } } }
   1108          }
   1109          ]
   1110        }
   1111      },
   1112      "required": ["creator"]
   1113    },
   1114 
   1115    "sourceCreatorAgentWithSingularNameFound":
   1116    { "type": "object",
   1117      "properties":
   1118        {
   1119            "source":
   1120            { "$ref": "#/definitions/creatorAgentWithSingularNameFound" }
   1121        },
   1122       "required": ["source"]
   1123    },
   1124 
   1125    "itemCreatorAgentWithSingularNameFound":
   1126    {
   1127      "type": "object",
   1128      "properties":
   1129      {
   1130          "items":
   1131          {
   1132              "type": "array",
   1133              "minItems": 1,
   1134              "not":
   1135              {
   1136                  "items":
   1137                  { "not": { "$ref": "#/definitions/creatorAgentWithSingularNameFound" } }
   1138              }
   1139          }
   1140      },
   1141      "required": ["items"]
   1142    },
   1143 
   1144    "agentSingularNicknameDefinition":
   1145    {
   1146      "$schema": "http://json-schema.org/draft-04/schema#",
   1147      "title": "Definition: Agent nickname value",
   1148      "description": "True when the object (creator or generator agent) has no nickname or has exacly one Agent nickname that is a string (Section 3.3.2)",
   1149      "type": "object",
   1150      "properties":
   1151      {
   1152        "nickname":
   1153        {
   1154          "oneOf":
   1155            [
   1156            {"type": "string" },
   1157            {"type": "array",
   1158              "minItems": 1,
   1159              "maxItems": 1,
   1160              "items": {"type": "string"}
   1161            }
   1162            ]
   1163        }
   1164      }
   1165    },
   1166 
   1167    "agentSingularNicknameFound":
   1168    {
   1169      "$schema": "http://json-schema.org/draft-04/schema#",
   1170      "title": "Check for implementation of Agent nickname value",
   1171      "description": "True when the object (creator or generator agent) has an Agent nickname value (Section 3.3.2)",
   1172      "allOf": [
   1173      {"required": ["nickname"]},
   1174      {"$ref": "#/definitions/agentSingularNicknameDefinition"}
   1175      ]
   1176    },
   1177 
   1178    "creatorAgentWithSingularNicknameFound":
   1179    { "type": "object",
   1180      "properties":
   1181      {  "creator":
   1182        { "oneOf":
   1183          [
   1184          { "$ref": "#/definitions/agentSingularNicknameFound" },
   1185          { "type": "array",
   1186            "minItems": 1,
   1187            "not":
   1188            { "items": { "not": { "$ref": "#/definitions/agentSingularNicknameFound" } } }
   1189          }
   1190          ]
   1191        }
   1192      },
   1193      "required": ["creator"]
   1194    },
   1195 
   1196    "sourceCreatorAgentWithSingularNicknameFound":
   1197    { "type": "object",
   1198      "properties":
   1199        {
   1200            "source":
   1201            { "$ref": "#/definitions/creatorAgentWithSingularNicknameFound" }
   1202        },
   1203       "required": ["source"]
   1204    },
   1205 
   1206    "itemCreatorAgentWithSingularNicknameFound":
   1207    {
   1208      "type": "object",
   1209      "properties":
   1210      {
   1211          "items":
   1212          {
   1213              "type": "array",
   1214              "minItems": 1,
   1215              "not":
   1216              {
   1217                  "items":
   1218                  { "not": { "$ref": "#/definitions/creatorAgentWithSingularNicknameFound" } }
   1219              }
   1220          }
   1221      },
   1222      "required": ["items"]
   1223    },
   1224 
   1225    "agentEmailDefinition":
   1226    {
   1227      "$schema": "http://json-schema.org/draft-04/schema#",
   1228      "title": "Definition: Agent email value",
   1229      "description": "True when the object (creator or generator agent) has no email or has Agent one or more email addresses that start(s) mailto: and is format uri (Section 3.3.2)",
   1230      "type": "object",
   1231      "properties":
   1232      {
   1233        "email":
   1234        {
   1235          "oneOf":
   1236            [
   1237            { "type": "string",
   1238              "pattern": "^(mailto)",
   1239              "format": "uri" },
   1240            {"type": "array",
   1241              "minItems": 1,
   1242              "items": {"type": "string",
   1243                "pattern": "^(mailto)",
   1244                "format": "uri" }
   1245            }
   1246            ]
   1247        }
   1248      }
   1249    },
   1250 
   1251    "agentEmailFound":
   1252    {
   1253      "$schema": "http://json-schema.org/draft-04/schema#",
   1254      "title": "Check for implementation of Agent email value",
   1255      "description": "True when the object (creator or generator agent) has Agent email value(s) (Section 3.3.2)",
   1256      "allOf": [
   1257      {"required": ["email"]},
   1258      {"$ref": "#/definitions/agentEmailDefinition"}
   1259      ]
   1260    },
   1261 
   1262    "creatorAgentWithEmailFound":
   1263    { "type": "object",
   1264      "properties":
   1265      {  "creator":
   1266        { "oneOf":
   1267          [
   1268          { "$ref": "#/definitions/agentEmailFound" },
   1269          { "type": "array",
   1270            "minItems": 1,
   1271            "not":
   1272            { "items": { "not": { "$ref": "#/definitions/agentEmailFound" } } }
   1273          }
   1274          ]
   1275        }
   1276      },
   1277      "required": ["creator"]
   1278    },
   1279 
   1280    "sourceCreatorAgentWithEmailFound":
   1281    { "type": "object",
   1282      "properties":
   1283        {
   1284            "source":
   1285            { "$ref": "#/definitions/creatorAgentWithEmailFound" }
   1286        },
   1287       "required": ["source"]
   1288    },
   1289 
   1290    "itemCreatorAgentWithEmailFound":
   1291    {
   1292      "type": "object",
   1293      "properties":
   1294      {
   1295          "items":
   1296          {
   1297              "type": "array",
   1298              "minItems": 1,
   1299              "not":
   1300              {
   1301                  "items":
   1302                  { "not": { "$ref": "#/definitions/creatorAgentWithEmailFound" } }
   1303              }
   1304          }
   1305      },
   1306      "required": ["items"]
   1307    },
   1308 
   1309    "agentEmail_sha1Definition":
   1310    {
   1311      "$schema": "http://json-schema.org/draft-04/schema#",
   1312      "title": "Definition: Agent email_sha1 value",
   1313      "description": "True when the object (creator or generator agent) has no email_sha1 or has one or more email_sha1 that is/are a string (Section 3.3.2)",
   1314      "type": "object",
   1315      "properties":
   1316      {
   1317        "email_sha1":
   1318        {
   1319          "oneOf":
   1320            [
   1321            {"type": "string" },
   1322            {"type": "array",
   1323              "minItems": 1,
   1324              "items": {"type": "string"}
   1325            }
   1326            ]
   1327        }
   1328      }
   1329    },
   1330 
   1331    "agentEmail_sha1Found":
   1332    {
   1333      "$schema": "http://json-schema.org/draft-04/schema#",
   1334      "title": "Check for implementation of Agent email_sha1 value",
   1335      "description": "True when the object (creator or generator agent) has has one or more email_sha1 that is/are a string (Section 3.3.2)",
   1336      "allOf": [
   1337      {"required": ["email_sha1"]},
   1338      {"$ref": "#/definitions/agentEmail_sha1Definition"}
   1339      ]
   1340    },
   1341 
   1342    "creatorAgentWithEmail_sha1Found":
   1343    { "type": "object",
   1344      "properties":
   1345      {  "creator":
   1346        { "oneOf":
   1347          [
   1348          { "$ref": "#/definitions/agentEmail_sha1Found" },
   1349          { "type": "array",
   1350            "minItems": 1,
   1351            "not":
   1352            { "items": { "not": { "$ref": "#/definitions/agentEmail_sha1Found" } } }
   1353          }
   1354          ]
   1355        }
   1356      },
   1357      "required": ["creator"]
   1358    },
   1359 
   1360    "sourceCreatorAgentWithEmail_sha1Found":
   1361    { "type": "object",
   1362      "properties":
   1363        {
   1364            "source":
   1365            { "$ref": "#/definitions/creatorAgentWithEmail_sha1Found" }
   1366        },
   1367       "required": ["source"]
   1368    },
   1369 
   1370    "itemCreatorAgentWithEmail_sha1Found":
   1371    {
   1372      "type": "object",
   1373      "properties":
   1374      {
   1375          "items":
   1376          {
   1377              "type": "array",
   1378              "minItems": 1,
   1379              "not":
   1380              {
   1381                  "items":
   1382                  { "not": { "$ref": "#/definitions/creatorAgentWithEmail_sha1Found" } }
   1383              }
   1384          }
   1385      },
   1386      "required": ["items"]
   1387    },
   1388 
   1389    "agentHomepageDefinition":
   1390    {
   1391      "$schema": "http://json-schema.org/draft-04/schema#",
   1392      "title": "Definition: Agent homepage value",
   1393      "description": "True when the object (creator or generator agent) has no homempage or has one or more agent homepage addresses of format uri (Section 3.3.2)",
   1394      "type": "object",
   1395      "properties":
   1396      {
   1397        "email":
   1398        {
   1399          "oneOf":
   1400            [
   1401            { "type": "string",
   1402              "format": "uri" },
   1403            {"type": "array",
   1404              "minItems": 1,
   1405              "items": {"type": "string",
   1406                "format": "uri" }
   1407            }
   1408            ]
   1409        }
   1410      }
   1411    },
   1412 
   1413    "agentHomepageFound":
   1414    {
   1415      "$schema": "http://json-schema.org/draft-04/schema#",
   1416      "title": "Check for implementation of Agent homepage value",
   1417      "description": "True when the object (creator or generator agent) has Agent homepage value(s) (Section 3.3.2)",
   1418      "allOf": [
   1419      {"required": ["homepage"]},
   1420      {"$ref": "#/definitions/agentHomepageDefinition"}
   1421      ]
   1422    },
   1423 
   1424    "creatorAgentWithHomepageFound":
   1425    { "type": "object",
   1426      "properties":
   1427      {  "creator":
   1428        { "oneOf":
   1429          [
   1430          { "$ref": "#/definitions/agentHomepageFound" },
   1431          { "type": "array",
   1432            "minItems": 1,
   1433            "not":
   1434            { "items": { "not": { "$ref": "#/definitions/agentHomepageFound" } } }
   1435          }
   1436          ]
   1437        }
   1438      },
   1439      "required": ["creator"]
   1440    },
   1441 
   1442    "sourceCreatorAgentWithHomepageFound":
   1443    { "type": "object",
   1444      "properties":
   1445        {
   1446            "source":
   1447            { "$ref": "#/definitions/creatorAgentWithHomepageFound" }
   1448        },
   1449       "required": ["source"]
   1450    },
   1451 
   1452    "itemCreatorAgentWithHomepageFound":
   1453    {
   1454      "type": "object",
   1455      "properties":
   1456      {
   1457          "items":
   1458          {
   1459              "type": "array",
   1460              "minItems": 1,
   1461              "not":
   1462              {
   1463                  "items":
   1464                  { "not": { "$ref": "#/definitions/creatorAgentWithHomepageFound" } }
   1465              }
   1466          }
   1467      },
   1468      "required": ["items"]
   1469    }
   1470 
   1471  }
   1472 }