{
    "resourceType": "StructureDefinition",
    "id": "encounter-admission-validation",
    "url": "https://ny.sepsis.ipro.org/fhir/StructureDefinition/encounter-validation",
    "version": "1.0.1",
    "name": "EncounterAdmissionValidation",
    "title": "Encounter Profile for Admission Date Validation",
    "status": "draft",
    "date": "2025-05-12",
    "publisher": "Example Org",
    "description": "Profile enforcing that Encounter admission date is on or after the Patient's birth date.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Encounter",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Encounter",
    "derivation": "constraint",
    "differential": {
      "element": [
        {
          "id": "Encounter",
          "path": "Encounter",
          "constraint": [
            {
              "key": "encounter-start-after-birth",
              "severity": "error",
              "human": "Encounter start date must be on or after the Patient's birth date",
              "expression": "period.start >= subject.resolve().birthDate"
            }
          ]
        },
        {
          "id": "Encounter.subject",
          "path": "Encounter.subject",
          "min": 1,
          "max": "1",
          "type": [
            {
              "code": "Reference",
              "targetProfile": [
                "https://ny.sepsis.ipro.org/fhir/StructureDefinition/patient-validation"
              ]
            }
          ]
        },
        {
          "id": "Encounter.period",
          "path": "Encounter.period",
          "min": 1,
          "max": "1",
          "type": [
            { "code": "Period" }
          ]
        },
        {
          "id": "Encounter.period.start",
          "path": "Encounter.period.start",
          "min": 1,
          "max": "1"
        }
      ]
    }
}