diff --git a/docs/index.rst b/docs/index.rst index f69f289e44d0a68359e71b488fc10ba63ba074e0..8610bdef4f09d3eda6805d3e3e07070a77a72100 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -5,4 +5,4 @@ JSON Schema for the Quality Control Format :maxdepth: 2 :caption: Inhalt: - Hier steht dann das Schema! + schema diff --git a/docs/schema.rst b/docs/schema.rst new file mode 100644 index 0000000000000000000000000000000000000000..6dc44d54b0a37e79b557f590f9578d042bf0c2c2 --- /dev/null +++ b/docs/schema.rst @@ -0,0 +1,288 @@ +.. code-block:: json + { + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "JSON schema quality control lotsize 1", + "type": "object", + "properties": { + "$version": { + "type": "string" + }, + "quality_control_info": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "cad_model": { + "type": "string" + }, + "manufacturing_profile": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "material": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "vendor": { + "type": "string" + }, + "weight": { + "type": "string" + }, + "material_kind": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "processing_temp": { + "type": "number" + } + }, + "required": [ + "id", + "name", + "processing_temp" + ] + } + }, + "required": [ + "id", + "name", + "vendor", + "weight", + "material_kind" + ] + }, + "layer_height": { + "type": "number" + }, + "scale_settings": { + "type": "object", + "properties": { + "x": { + "type": "number" + }, + "y": { + "type": "number" + }, + "z": { + "type": "number" + }, + "id": { + "type": "string" + } + }, + "required": [ + "x", + "y", + "z", + "id" + ] + }, + "nozzle_diameter": { + "type": "number" + } + }, + "required": [ + "id", + "material", + "layer_height", + "scale_settings", + "nozzle_diameter" + ] + }, + "customization": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "content": { + "type": "string" + }, + "position": { + "type": "array", + "items": { + "type": "number" + } + }, + "customization_kind": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "name" + ] + } + }, + "required": [ + "id", + "content", + "position", + "customization_kind" + ] + } + }, + "scan": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "data": { + "type": "string" + }, + "scan_profile": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "unit": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "factor_to_m": { + "type": "number" + } + }, + "required": [ + "id", + "name", + "factor_to_m" + ] + }, + "model": { + "type": "string" + }, + "vendor": { + "type": "string" + }, + "model_no": { + "type": "string" + }, + "file_type": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "name" + ] + } + }, + "required": [ + "id", + "unit", + "model", + "vendor", + "model_no", + "file_type" + ] + } + }, + "required": [ + "id", + "data", + "scan_profile" + ] + } + }, + "requirements": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "tolerance": { + "type": "number" + }, + "requirement_type": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "position": { + "type": "array", + "items": { + "type": "number" + } + }, + "direction": { + "type": "array", + "items": { + "type": "number" + } + } + }, + "required": [ + "id", + "name", + "position", + "direction" + ] + } + }, + "required": [ + "id", + "tolerance", + "requirement_type" + ] + } + } + }, + "required": [ + "id", + "cad_model", + "manufacturing_profile", + "customization", + "scan", + "requirements" + ] + } + }, + "required": [ + "$version", + "quality_control_info" + ] + }