Схема JSON относительно использования $ ref

Я понимаю, что $ ref принимает URI для использования в схеме json, но где $ ref: "#" указать на? Это просто значит использовать текущую схему для этого уровня блока? Или это означает использовать схему корневого уровня, определенную в идентификаторе корневого уровня? Спасибо

РЕДАКТИРОВАТЬ: Итак, если у меня есть:

"items": {
        "anyOf": [
            { "$ref": "#" },
            { "$ref": "#/definitions/schemaArray" }
        ],
        "default": {}
    }

Поскольку в нем отсутствует поле id, он сначала попытается проверить элементы экземпляра с помощью корневой схемы, а затем, если это не удастся, попытаться проверить его с помощью схемы schemaArray, определенной в схеме определений, верно?

Так что, если я изменю это на:

 "items": {
            "id" : "#/items",
            "anyOf": [
                { "$ref": "#" },
                { "$ref": "#/definitions/schemaArray" }
            ],
            "default": {}
        }

Тогда первая подсхема в массиве anyOf будет указывать на саму схему элементов?

РЕДАКТИРОВАТЬ № 2: Хорошо, так что если у меня было:

 "items": {
        "id" : "itemSchema",
        "anyOf": [
            { "$ref": "#" },
            { "$ref": "#/definitions/schemaArray" }
        ],
        "default": {}
    }

а также"

"stringArray": {
        "type": "array",
        "items": { "$ref" : "itemSchema" },
        "minItems": 1,
        "uniqueItems": true
    }

stringArray "s"Предметы" поле будет проверено на соответствие вышеуказанномуitemsSchema "?

Также делает второй $ ref в 'любой из' работать, перейдя к корню и затем пройти по пути, пока он не достигнет этой схемы? Спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос