﻿{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://api-erp.kamsoft.pl/ns/StructureDefinition/WarehouseDocument",
  "title": "WarehouseDocument",
  "version": "1.0.0",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "resourceType": {
      "type": "string"
    },
    "meta": {
      "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Meta"
    },
    "owner": {
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Reference"
      }
    },
    "comment": {
      "type": "string"
    },
    "category": {
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/CodeableConcept"
      }
    },
    "status": {
      "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/CodeableConcept"
    },
    "type": {
      "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/CodeableConcept"
    },
    "contained": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "attribute": {
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Attribute"
      }
    },
    "identifier": {
      "description": "Identyfikatory dokumentu",
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Identifier"
      }
    },
    "space": {
      "description": "Przestrze\u0144 dokumentu",
      "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/CodeableConcept"
    },
    "issueDate": {
      "description": "Data wystawienia / dokumentu",
      "type": "string"
    },
    "participant": {
      "description": "Uczestnicy",
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Reference"
      }
    },
    "basedOn": {
      "description": "Powi\u0105zane dokumenty",
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Reference"
      }
    },
    "position": {
      "description": "Pozycje / segmenty dokumentu",
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/DocumentPosition"
      }
    },
    "attachment": {
      "description": "Za\u0142\u0105czniki",
      "type": "array",
      "items": {
        "$ref": "https://api-erp.kamsoft.pl/ns/StructureDefinition/Attachment"
      }
    }
  },
  "required": [
    "category"
  ],
  "allOf": [
    {
      "properties": {
        "category": {
          "contains": {
            "required": [
              "coding"
            ],
            "properties": {
              "coding": {
                "contains": {
                  "required": [
                    "code"
                  ],
                  "properties": {
                    "code": {
                      "const": "warehouse-document"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  ]
}