{
  "resourceType": "StructureDefinition",
  "url": "https://fhir.nmdp.org/ig/HLAAntibodyReport/StructureDefinition/hla-antibody-report-bundle",
  "version": "0.2.0",
  "name": "HLAAntibodyReportBundle",
  "title": "HLA Antibody Report Bundle",
  "status": "draft",
  "publisher": "NMDP",
  "contact": [
    {
      "name": "David Wroe",
      "telecom": [
        {
          "system": "email",
          "value": "fhir@nmndp.org",
          "use": "old"
        }
      ]
    }
  ],
  "purpose": "Collection of resources to describe a complete HLA antibody report",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Bundle",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Bundle",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Bundle.type",
        "path": "Bundle.type",
        "fixedCode": "transaction"
      },
      {
        "id": "Bundle.entry",
        "path": "Bundle.entry",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Bundle.entry:Patient",
        "path": "Bundle.entry",
        "sliceName": "Patient",
        "label": "Patient",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:Patient.resource",
        "path": "Bundle.entry.resource",
        "label": "Patient Resource",
        "short": "Patient Resource information",
        "type": [
          {
            "code": "Resource",
            "profile": [
              "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:race",
        "path": "Bundle.entry.resource.extension",
        "sliceName": "race"
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:race.value[x]",
        "path": "Bundle.entry.resource.extension.value[x]",
        "type": [
          {
            "code": "base64Binary"
          },
          {
            "code": "boolean"
          },
          {
            "code": "canonical"
          },
          {
            "code": "code"
          },
          {
            "code": "date"
          },
          {
            "code": "dateTime"
          },
          {
            "code": "decimal"
          },
          {
            "code": "id"
          },
          {
            "code": "instant"
          },
          {
            "code": "integer"
          },
          {
            "code": "integer64"
          },
          {
            "code": "markdown"
          },
          {
            "code": "oid"
          },
          {
            "code": "positiveInt"
          },
          {
            "code": "string"
          },
          {
            "code": "time"
          },
          {
            "code": "unsignedInt"
          },
          {
            "code": "uri"
          },
          {
            "code": "url"
          },
          {
            "code": "uuid"
          },
          {
            "code": "Address"
          },
          {
            "code": "Age"
          },
          {
            "code": "Annotation"
          },
          {
            "code": "Attachment"
          },
          {
            "code": "CodeableConcept"
          },
          {
            "code": "CodeableReference"
          },
          {
            "code": "Coding"
          },
          {
            "code": "ContactPoint"
          },
          {
            "code": "Count"
          },
          {
            "code": "Distance"
          },
          {
            "code": "Duration"
          },
          {
            "code": "HumanName"
          },
          {
            "code": "Identifier"
          },
          {
            "code": "Money"
          },
          {
            "code": "Period"
          },
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          },
          {
            "code": "Reference"
          },
          {
            "code": "SampledData"
          },
          {
            "code": "Signature"
          },
          {
            "code": "Timing"
          },
          {
            "code": "ContactDetail"
          },
          {
            "code": "DataRequirement"
          },
          {
            "code": "Expression"
          },
          {
            "code": "ParameterDefinition"
          },
          {
            "code": "RelatedArtifact"
          },
          {
            "code": "TriggerDefinition"
          },
          {
            "code": "UsageContext"
          },
          {
            "code": "Dosage"
          },
          {
            "code": "Meta"
          }
        ]
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:ethnicity",
        "path": "Bundle.entry.resource.extension",
        "sliceName": "ethnicity"
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:ethnicity.value[x]",
        "path": "Bundle.entry.resource.extension.value[x]",
        "type": [
          {
            "code": "base64Binary"
          },
          {
            "code": "boolean"
          },
          {
            "code": "canonical"
          },
          {
            "code": "code"
          },
          {
            "code": "date"
          },
          {
            "code": "dateTime"
          },
          {
            "code": "decimal"
          },
          {
            "code": "id"
          },
          {
            "code": "instant"
          },
          {
            "code": "integer"
          },
          {
            "code": "integer64"
          },
          {
            "code": "markdown"
          },
          {
            "code": "oid"
          },
          {
            "code": "positiveInt"
          },
          {
            "code": "string"
          },
          {
            "code": "time"
          },
          {
            "code": "unsignedInt"
          },
          {
            "code": "uri"
          },
          {
            "code": "url"
          },
          {
            "code": "uuid"
          },
          {
            "code": "Address"
          },
          {
            "code": "Age"
          },
          {
            "code": "Annotation"
          },
          {
            "code": "Attachment"
          },
          {
            "code": "CodeableConcept"
          },
          {
            "code": "CodeableReference"
          },
          {
            "code": "Coding"
          },
          {
            "code": "ContactPoint"
          },
          {
            "code": "Count"
          },
          {
            "code": "Distance"
          },
          {
            "code": "Duration"
          },
          {
            "code": "HumanName"
          },
          {
            "code": "Identifier"
          },
          {
            "code": "Money"
          },
          {
            "code": "Period"
          },
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          },
          {
            "code": "Reference"
          },
          {
            "code": "SampledData"
          },
          {
            "code": "Signature"
          },
          {
            "code": "Timing"
          },
          {
            "code": "ContactDetail"
          },
          {
            "code": "DataRequirement"
          },
          {
            "code": "Expression"
          },
          {
            "code": "ParameterDefinition"
          },
          {
            "code": "RelatedArtifact"
          },
          {
            "code": "TriggerDefinition"
          },
          {
            "code": "UsageContext"
          },
          {
            "code": "Dosage"
          },
          {
            "code": "Meta"
          }
        ]
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:tribalAffiliation",
        "path": "Bundle.entry.resource.extension",
        "sliceName": "tribalAffiliation"
      },
      {
        "id": "Bundle.entry:Patient.resource.extension:tribalAffiliation.value[x]",
        "path": "Bundle.entry.resource.extension.value[x]",
        "type": [
          {
            "code": "base64Binary"
          },
          {
            "code": "boolean"
          },
          {
            "code": "canonical"
          },
          {
            "code": "code"
          },
          {
            "code": "date"
          },
          {
            "code": "dateTime"
          },
          {
            "code": "decimal"
          },
          {
            "code": "id"
          },
          {
            "code": "instant"
          },
          {
            "code": "integer"
          },
          {
            "code": "integer64"
          },
          {
            "code": "markdown"
          },
          {
            "code": "oid"
          },
          {
            "code": "positiveInt"
          },
          {
            "code": "string"
          },
          {
            "code": "time"
          },
          {
            "code": "unsignedInt"
          },
          {
            "code": "uri"
          },
          {
            "code": "url"
          },
          {
            "code": "uuid"
          },
          {
            "code": "Address"
          },
          {
            "code": "Age"
          },
          {
            "code": "Annotation"
          },
          {
            "code": "Attachment"
          },
          {
            "code": "CodeableConcept"
          },
          {
            "code": "CodeableReference"
          },
          {
            "code": "Coding"
          },
          {
            "code": "ContactPoint"
          },
          {
            "code": "Count"
          },
          {
            "code": "Distance"
          },
          {
            "code": "Duration"
          },
          {
            "code": "HumanName"
          },
          {
            "code": "Identifier"
          },
          {
            "code": "Money"
          },
          {
            "code": "Period"
          },
          {
            "code": "Quantity"
          },
          {
            "code": "Range"
          },
          {
            "code": "Ratio"
          },
          {
            "code": "Reference"
          },
          {
            "code": "SampledData"
          },
          {
            "code": "Signature"
          },
          {
            "code": "Timing"
          },
          {
            "code": "ContactDetail"
          },
          {
            "code": "DataRequirement"
          },
          {
            "code": "Expression"
          },
          {
            "code": "ParameterDefinition"
          },
          {
            "code": "RelatedArtifact"
          },
          {
            "code": "TriggerDefinition"
          },
          {
            "code": "UsageContext"
          },
          {
            "code": "Dosage"
          },
          {
            "code": "Meta"
          }
        ]
      },
      {
        "id": "Bundle.entry:Laboratory",
        "path": "Bundle.entry",
        "sliceName": "Laboratory",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:Laboratory.resource",
        "path": "Bundle.entry.resource",
        "label": "Laboratory Resource",
        "short": "Laboratory information",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:Laboratory.resource.contact",
        "path": "Bundle.entry.resource.contact",
        "max": "0"
      },
      {
        "id": "Bundle.entry:WorkingSample",
        "path": "Bundle.entry",
        "sliceName": "WorkingSample",
        "label": "Working Sample",
        "short": "Working Sample information",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:WorkingSample.resource",
        "path": "Bundle.entry.resource",
        "label": "Working Sample Resource",
        "short": "Working sample resource information",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-immunoassay-working-sample"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayKit",
        "path": "Bundle.entry",
        "sliceName": "ImmunoassayKit",
        "label": "Immunoassay Kit",
        "short": "Immunoassay kit information",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayKit.resource",
        "path": "Bundle.entry.resource",
        "short": "Immunoassay kit resource information",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-immunoassay-kit"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayInterpretation",
        "path": "Bundle.entry",
        "sliceName": "ImmunoassayInterpretation",
        "label": "Immunoassay Interpretation",
        "short": "Immunoassay interpretation information",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayInterpretation.resource",
        "path": "Bundle.entry.resource",
        "label": "Immunoassay Interpretation Resource",
        "short": "Immunoassay Interpretation Resource",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-immunoassay-interpretation"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayTargetBeadObservation",
        "path": "Bundle.entry",
        "sliceName": "ImmunoassayTargetBeadObservation",
        "label": "Immunoassay Target Bead Observation",
        "short": "Immunoassay target bead observation",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayTargetBeadObservation.resource",
        "path": "Bundle.entry.resource",
        "label": "Immunoassay Bead Observation Resource",
        "short": "Immunoassay bead observation resource",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-immunoassay-target-bead-observation"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayTargetBeadObservation.resource.category",
        "path": "Bundle.entry.resource.category",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Bundle.entry:ImmunoassayTargetBeadObservation.resource.interpretation",
        "path": "Bundle.entry.resource.interpretation",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Bundle.entry:HLAAntibodyDiagnosticReport",
        "path": "Bundle.entry",
        "sliceName": "HLAAntibodyDiagnosticReport",
        "label": "HLA Antibody Diagnostic Report",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:HLAAntibodyDiagnosticReport.resource",
        "path": "Bundle.entry.resource",
        "label": "HLA Antibody Diagnostic Report Resource",
        "short": "HLA Antibody Diagnostic Report Resource",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-antibody-diagnostic-report"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayControlBeadObservation",
        "path": "Bundle.entry",
        "sliceName": "ImmunoassayControlBeadObservation",
        "label": "ImmunoassayControlBeadObservation",
        "short": "Immunoassay control bead observation",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayControlBeadObservation.resource",
        "path": "Bundle.entry.resource",
        "label": "Immunoassay Control Bead Observation",
        "short": "A control bead observation resource in the bundle",
        "min": 1,
        "type": [
          {
            "code": "Resource",
            "profile": [
              "https://fhir.nmdp.org/ig/HlaAntibodyReport/StructureDefinition/hla-immunoassay-control-bead-observation"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Bundle.entry:ImmunoassayControlBeadObservation.resource.category",
        "path": "Bundle.entry.resource.category",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Bundle.entry:ImmunoassayControlBeadObservation.resource.interpretation",
        "path": "Bundle.entry.resource.interpretation",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "min": 1
      }
    ]
  }
}