cuelang.org/go@v0.13.0/encoding/jsonschema/testdata/external/tests/draft7/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  				{
    28  					"$ref": "#/definitions/id_in_enum"
    29  				},
    30  				{
    31  					"$ref": "https://localhost:1234/id/my_identifier.json"
    32  				}
    33  			]
    34  		},
    35  		"tests": [
    36  			{
    37  				"description": "exact match to enum, and type matches",
    38  				"data": {
    39  					"$id": "https://localhost:1234/id/my_identifier.json",
    40  					"type": "null"
    41  				},
    42  				"valid": true
    43  			},
    44  			{
    45  				"description": "match $ref to id",
    46  				"data": "a string to match #/definitions/id_in_enum",
    47  				"valid": true
    48  			},
    49  			{
    50  				"description": "no match on enum or $ref to id",
    51  				"data": 1,
    52  				"valid": false
    53  			}
    54  		]
    55  	},
    56  	{
    57  		"description": "non-schema object containing a plain-name $id property",
    58  		"schema": {
    59  			"definitions": {
    60  				"const_not_anchor": {
    61  					"const": {
    62  						"$id": "#not_a_real_anchor"
    63  					}
    64  				}
    65  			},
    66  			"if": {
    67  				"const": "skip not_a_real_anchor"
    68  			},
    69  			"then": true,
    70  			"else": {
    71  				"$ref": "#/definitions/const_not_anchor"
    72  			}
    73  		},
    74  		"tests": [
    75  			{
    76  				"description": "skip traversing definition for a valid result",
    77  				"data": "skip not_a_real_anchor",
    78  				"valid": true
    79  			},
    80  			{
    81  				"description": "const at const_not_anchor does not match",
    82  				"data": 1,
    83  				"valid": false
    84  			}
    85  		]
    86  	},
    87  	{
    88  		"description": "non-schema object containing an $id property",
    89  		"schema": {
    90  			"definitions": {
    91  				"const_not_id": {
    92  					"const": {
    93  						"$id": "not_a_real_id"
    94  					}
    95  				}
    96  			},
    97  			"if": {
    98  				"const": "skip not_a_real_id"
    99  			},
   100  			"then": true,
   101  			"else": {
   102  				"$ref": "#/definitions/const_not_id"
   103  			}
   104  		},
   105  		"tests": [
   106  			{
   107  				"description": "skip traversing definition for a valid result",
   108  				"data": "skip not_a_real_id",
   109  				"valid": true
   110  			},
   111  			{
   112  				"description": "const at const_not_id does not match",
   113  				"data": 1,
   114  				"valid": false
   115  			}
   116  		]
   117  	}
   118  ]