{
  "resourceType": "StructureDefinition",
  "id": "logicalmodel-Urinalysis-R4",
  "url": "http://linkehr.com/fhir/logicalmodel-urinalysis-R4",
  "identifier": [
    {
      "system": "openEHR-CKM",
      "value": "openEHR-EHR-OBSERVATION.urinalysis.v1"
    }
  ],
  "version": "0",
  "name": "Urinalysis",
  "title": "Urinalysis",
  "status": "draft",
  "date": "2024-06-18",
  "publisher": "openEHR",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://www.veratech.es"
        }
      ]
    }
  ],
  "description": "Qualitative and semi-quantitative test array using reagent test strips to indicate possible abnormalities in a sample of urine, often performed as part of Point of Care Testing (POCT).",
  "purpose": "To record the results of a qualitative and semi-quantitative test array using reagent test strips to indicate possible abnormalities in a sample of urine. This test may be performed by clinicians at the point of care, technicians in a laboratory setting or individuals at home.",
  "fhirVersion": "4.0.0",
  "mapping": [
    {
      "identity": "openEHR",
      "uri": "http://openehr.org",
      "name": "openEHR Mapping"
    },
    {
      "identity": "openEHR-natural",
      "uri": "http://openehr.org",
      "name": "openEHR natural path"
    }
  ],
  "kind": "logical",
  "abstract": false,
  "type": "StructureDefinition",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Element",
  "snapshot": {
    "element": [
      {
        "id": "Urinalysis",
        "path": "Urinalysis",
        "short": "Urinalysis",
        "definition": "Qualitative and semi-quantitative test array using reagent test strips to indicate possible abnormalities in a sample of urine, often performed as part of Point of Care Testing (POCT).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Urinalysis",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": true,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.protocol",
        "path": "Urinalysis.protocol",
        "short": "Tree",
        "definition": "@ internal @",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.protocol",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.protocol.Reagent_Strips",
        "path": "Urinalysis.protocol.Reagent_Strips",
        "short": "Reagent Strips",
        "definition": "Details about the reagent strips used.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.protocol.Reagent_Strips",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.protocol.Method",
        "path": "Urinalysis.protocol.Method",
        "short": "Method",
        "definition": "Method by which the reagent strips were read.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.protocol.Method",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.protocol.Method.value",
        "path": "Urinalysis.protocol.Method.value",
        "short": "Method",
        "definition": "Method by which the reagent strips were read.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.protocol.Method.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.protocol.Device",
        "path": "Urinalysis.protocol.Device",
        "short": "Device",
        "definition": "Details about the device used to automatically read the reagent strips.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.protocol.Device",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.protocol.Extension",
        "path": "Urinalysis.protocol.Extension",
        "short": "Extension",
        "definition": "Additional information required to capture local content or to align with other reference models/formalisms.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Urinalysis.protocol.Extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series",
        "path": "Urinalysis.Event_Series",
        "short": "Event Series",
        "definition": "@ internal @",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time",
        "path": "Urinalysis.Event_Series.Point_in_Time",
        "short": "Point in Time",
        "definition": "A specific date and/or time which may be explicitly defined in a template or at run-time.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data",
        "path": "Urinalysis.Event_Series.Point_in_Time.data",
        "short": "Tree",
        "definition": "@ internal @",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Glucose",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Glucose",
        "short": "Glucose",
        "definition": "Detection of glucose in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Glucose",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Glucose.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Glucose.value",
        "short": "Glucose",
        "definition": "Detection of glucose in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Glucose.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin",
        "short": "Bilirubin",
        "definition": "Detection of bilirubin in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin.value",
        "short": "Bilirubin",
        "definition": "Detection of bilirubin in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Bilirubin.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Ketones",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Ketones",
        "short": "Ketones",
        "definition": "Detection of ketones in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Ketones",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Ketones.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Ketones.value",
        "short": "Ketones",
        "definition": "Detection of ketones in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Ketones.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity",
        "short": "Specific gravity",
        "definition": "Measurement of the concentration of substances dissolved (solutes) in the urine sample relative to distilled water.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity.value",
        "short": "Specific gravity",
        "definition": "Measurement of the concentration of substances dissolved (solutes) in the urine sample relative to distilled water.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Specific_gravity.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Blood",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Blood",
        "short": "Blood",
        "definition": "Detection of blood in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Blood",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Blood.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Blood.value",
        "short": "Blood",
        "definition": "Detection of blood in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Blood.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.pH",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.pH",
        "short": "pH",
        "definition": "Measurement of pH in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.pH",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.pH.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.pH.value",
        "short": "pH",
        "definition": "Measurement of pH in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.pH.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Protein",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Protein",
        "short": "Protein",
        "definition": "Detection of protein in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Protein",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Protein.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Protein.value",
        "short": "Protein",
        "definition": "Detection of protein in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Protein.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen",
        "short": "Urobilinogen",
        "definition": "Detection of urobilinogen in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen.value",
        "short": "Urobilinogen",
        "definition": "Detection of urobilinogen in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Urobilinogen.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite",
        "short": "Nitrite",
        "definition": "Detection of nitrites in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite.value",
        "short": "Nitrite",
        "definition": "Detection of nitrites in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Nitrite.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes",
        "short": "Leukocytes",
        "definition": "Detection of white blood cells in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes.value",
        "short": "Leukocytes",
        "definition": "Detection of white blood cells in urine sample.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Leukocytes.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Additional_details",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Additional_details",
        "short": "Additional details",
        "definition": "Additional details about the point of care urinalysis, including macroscopic appearance or other tests not currently captured in the structured data.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Additional_details",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation",
        "short": "Clinical interpretation",
        "definition": "Single word, phrase or brief description represents the clinical meaning and significance of the urinalysis findings.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation",
          "min": 0,
          "max": "*"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation.value",
        "short": "Clinical interpretation",
        "definition": "Single word, phrase or brief description represents the clinical meaning and significance of the urinalysis findings.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Clinical_interpretation.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Comment",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Comment",
        "short": "Comment",
        "definition": "Narrative about the urinalysis not captured in other fields.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Comment",
          "min": 0,
          "max": "1"
        }
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Comment.value",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Comment.value",
        "short": "Comment",
        "definition": "Narrative about the urinalysis not captured in other fields.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Comment.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      },
      {
        "id": "Urinalysis.Event_Series.Point_in_Time.data.Exam_not_done",
        "path": "Urinalysis.Event_Series.Point_in_Time.data.Exam_not_done",
        "short": "Exam not done",
        "definition": "Details to explicitly record that urinalysis was not performed.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Urinalysis.Event_Series.Point_in_Time.data.Exam_not_done",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mustSupport": false,
        "isModifier": false,
        "isSummary": true
      }
    ]
  }
}