{
  "resourceType": "StructureDefinition",
  "id": "DhdCataractVisus",
  "url": "http://dhd.nl/fhir/StructureDefinition/DhdCataractVisus",
  "version": "0.1.1",
  "name": "DhdCataractVisus",
  "status": "draft",
  "description": "Visus measurement as defined in proposed ZIB for Visus.",
  "fhirVersion": "3.0.2",
  "kind": "resource",
  "abstract": false,
  "type": "Observation",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation",
  "derivation": "constraint",
  "snapshot": {},
  "differential": {
    "element": [
      {
        "id": "Observation.category",
        "path": "Observation.category",
        "definition": "onderzoek van gezichtsscherpte (verrichting)"
      },
      {
        "id": "Observation.category.coding.system",
        "path": "Observation.category.coding.system",
        "fixedUri": "http://snomed.info/sct"
      },
      {
        "id": "Observation.category.coding.code",
        "path": "Observation.category.coding.code",
        "fixedCode": "16830007"
      },
      {
        "id": "Observation.code",
        "path": "Observation.code",
        "definition": "Visual acuity (observable entity)"
      },
      {
        "id": "Observation.code.coding.system",
        "path": "Observation.code.coding.system",
        "fixedUri": "http://snomed.info/sct"
      },
      {
        "id": "Observation.code.coding.code",
        "path": "Observation.code.coding.code",
        "fixedCode": "363983007"
      },
      {
        "id": "Observation.subject",
        "path": "Observation.subject",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://dhd.nl/fhir/StructureDefinition/DhdCataractPatient"
          }
        ]
      },
      {
        "id": "Observation.effective[x]:effectiveDateTime",
        "path": "Observation.effectiveDateTime",
        "sliceName": "effectiveDateTime",
        "min": 1,
        "type": [
          {
            "code": "dateTime"
          }
        ]
      },
      {
        "id": "Observation.value[x]:valueQuantity",
        "path": "Observation.valueQuantity",
        "sliceName": "valueQuantity",
        "type": [
          {
            "code": "Quantity"
          }
        ],
        "condition": [
          "visus-quantity"
        ],
        "constraint": [
          {
            "key": "visus-quantity",
            "severity": "error",
            "human": "Visus quantity outside range (0 - 2.00) (actually <= 3.00 as NOG wants to make sure that slightly larger visus also will be incorporated.)",
            "expression": "$this.as(Quantity).value >=0 and $this.as(Quantity).value <= 3.00"
          }
        ]
      },
      {
        "id": "Observation.bodySite",
        "path": "Observation.bodySite",
        "min": 1
      },
      {
        "id": "Observation.bodySite.extension",
        "path": "Observation.bodySite.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Observation.bodySite.extension:VisusLaterality",
        "path": "Observation.bodySite.extension",
        "sliceName": "VisusLaterality",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": "http://nictiz.nl/fhir/StructureDefinition/BodySite-Qualifier"
          }
        ]
      },
      {
        "id": "Observation.bodySite.extension:VisusLaterality.valueCodeableConcept:valueCodeableConcept",
        "path": "Observation.bodySite.extension.valueCodeableConcept",
        "sliceName": "valueCodeableConcept",
        "binding": {
          "strength": "extensible",
          "description": "VisusLateralityCodelist",
          "valueSetUri": "http://dhd.nl/fhir/ValueSet/VisusLateraliteitCodelijst"
        }
      },
      {
        "id": "Observation.method.coding",
        "path": "Observation.method.coding",
        "binding": {
          "strength": "extensible",
          "description": "VisusMetingTypeCodelijst",
          "valueSetUri": "http://dhd.nl/fhir/ValueSet/VisusMetingTypeCodelijst"
        }
      }
    ]
  }
}