Я документирую мою схему JSON, используя Sphinx для размещения ее в ReadTheDocs.
Когда у меня есть определения в моем файле основной схемы, все хорошо.Но я хочу переместить мои определения во внешний файл json.
Мой код меняется с
"$ref": "#/definitions/positiveNumber"
на
"$ref": "./general.definitions.json#/definitions/positiveNumber"
Мой general.definitions.json
файл выглядит следующим образом:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/andrejellema/GlobalCoffeeDataStandard/master/schema/general.definitions.json",
"title": "General definitions",
"definitions": {
"percentage": {
"title": "The percentage, 0-100",
"description": "The percentage, from 0 to 100 with decimals allowed",
"$comment": "Duplicate in /productionCosts.json",
"type": "number",
"minimum": 0,
"maximum": 100
},
"positiveNumber": {
"title": "A positive number > 0",
"description": "A positive number starting at 0 with decimals allowed",
"type": "number",
"minimum": 0
},
"greaterThanZero": {
"title": "The positive number, greater than 0",
"description": "A positive number starting at greater than 0 with decimals allowed",
"type": "number",
"exclusiveMinimum": 0
},
"yesNo": {
"title": "Yes-No enumeration",
"type": "string",
"enum": [
"Yes",
"No"
]
}
}
}
Мой первый контент, который не работает:
.. literalinclude:: ../../schema/general.definitions.json#/definitions/positiveNumber
:language: json
:linenos:
:caption: Object description
Мой первый контент, который работает:
.. literalinclude:: ../../schema/global-unique-id.json
:language: json
:linenos:
:caption: Object description
Когда я звоню make html
, я получаюэта ошибка:
[...]\docs\source\explanation.rst:1360: WARNING: Include file '[...]\\schema\\general.definitions.json#\\definitions\\positiveNumber' not found or reading it failed
Файл существует в этом месте.Кажется, Sphinx неправильно обрабатывает указатель JSON.
Что я могу сделать, чтобы решить эту проблему?