github.com/kaptinlin/jsonschema@v0.4.6/testdata/JSON-Schema-Test-Suite/tests/draft6/optional/id.json (about)

     1  [
     2      {
     3          "description": "id inside an enum is not a real identifier",
     4          "comment": "the implementation must not be confused by an id buried in the enum",
     5          "schema": {
     6              "definitions": {
     7                  "id_in_enum": {
     8                      "enum": [
     9                          {
    10                            "$id": "https://localhost:1234/id/my_identifier.json",
    11                            "type": "null"
    12                          }
    13                      ]
    14                  },
    15                  "real_id_in_schema": {
    16                      "$id": "https://localhost:1234/id/my_identifier.json",
    17                      "type": "string"
    18                  },
    19                  "zzz_id_in_const": {
    20                      "const": {
    21                          "$id": "https://localhost:1234/id/my_identifier.json",
    22                          "type": "null"
    23                      }
    24                  }
    25              },
    26              "anyOf": [
    27                  { "$ref": "#/definitions/id_in_enum" },
    28                  { "$ref": "https://localhost:1234/id/my_identifier.json" }
    29              ]
    30          },
    31          "tests": [
    32              {
    33                  "description": "exact match to enum, and type matches",
    34                  "data": {
    35                      "$id": "https://localhost:1234/id/my_identifier.json",
    36                      "type": "null"
    37                  },
    38                  "valid": true
    39              },
    40              {
    41                  "description": "match $ref to id",
    42                  "data": "a string to match #/definitions/id_in_enum",
    43                  "valid": true
    44              },
    45              {
    46                  "description": "no match on enum or $ref to id",
    47                  "data": 1,
    48                  "valid": false
    49              }
    50          ]
    51      },
    52      {
    53          "description": "non-schema object containing a plain-name $id property",
    54          "schema": {
    55              "definitions": {
    56                  "const_not_anchor": {
    57                      "const": {
    58                          "$id": "#not_a_real_anchor"
    59                      }
    60                  }
    61              },
    62              "oneOf": [
    63                  {
    64                      "const": "skip not_a_real_anchor"
    65                  },
    66                  {
    67                      "allOf": [
    68                          {
    69                              "not": {
    70                                  "const": "skip not_a_real_anchor"
    71                              }
    72                          },
    73                          {
    74                              "$ref": "#/definitions/const_not_anchor"
    75                          }
    76                      ]
    77                  }
    78              ]
    79          },
    80          "tests": [
    81              {
    82                  "description": "skip traversing definition for a valid result",
    83                  "data": "skip not_a_real_anchor",
    84                  "valid": true
    85              },
    86              {
    87                  "description": "const at const_not_anchor does not match",
    88                  "data": 1,
    89                  "valid": false
    90              }
    91          ]
    92      },
    93      {
    94          "description": "non-schema object containing an $id property",
    95          "schema": {
    96              "definitions": {
    97                  "const_not_id": {
    98                      "const": {
    99                          "$id": "not_a_real_id"
   100                      }
   101                  }
   102              },
   103              "oneOf": [
   104                  {
   105                      "const":"skip not_a_real_id"
   106                  },
   107                  {
   108                      "allOf": [
   109                          {
   110                              "not": {
   111                                  "const": "skip not_a_real_id"
   112                              }
   113                          },
   114                          {
   115                              "$ref": "#/definitions/const_not_id"
   116                          }
   117                      ]
   118                  }
   119              ]
   120          },
   121          "tests": [
   122              {
   123                  "description": "skip traversing definition for a valid result",
   124                  "data": "skip not_a_real_id",
   125                  "valid": true
   126              },
   127              {
   128                  "description": "const at const_not_id does not match",
   129                  "data": 1,
   130                  "valid": false
   131              }
   132          ]
   133      }
   134  ]