PackagesCanonicalsLogsProblems
    Packages
    fhir.hrsa.uds@plus-1.1.0
    http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-import-manifest
description: The UDS+ profile is based on the **Parameters FHIR Resource and establishes the core elements, extensions, vocabularies and value sets for representing the Manifest for UDS+ import FHIR Operations.
package_name: fhir.hrsa.uds
derivation: constraint
name: UDSPlusImportManifest
type: Parameters
elements:
  parameter:
    mustSupport: true
    array: true
    min: 6
    index: 0
    slicing:
      rules: open
      discriminator:
      - {path: $this.name, type: value}
      min: 6
      slices:
        partialSubmissionName:
          match:
            $this: {name: null}
          schema:
            short: Parameter that can be used by the Health Center to identify the partial submission, for e.g EHR product name or site name
            mustSupport: true
            index: 26
            elements:
              name:
                short: The Parameter name to convey the partial submission name
                pattern: {type: String, value: partialSubmissionName}
                mustSupport: true
                index: 27
              value:
                short: Actual partial submission name
                mustSupport: true
                choices: [valueString]
                index: 29
              valueString: {type: string, short: Actual partial submission name, mustSupport: true, choiceOf: value, index: 30}
            required: [valueString, name, value]
        submissionTime:
          match:
            $this: {name: null}
          schema:
            short: Parameter to convey the submission time of the manifest resource to '$import' operation
            mustSupport: true
            _required: true
            index: 11
            elements:
              name:
                short: Name of the parameter to convey the submission time
                pattern: {type: String, value: submissionTime}
                mustSupport: true
                index: 12
              value:
                short: Submission Time value
                mustSupport: true
                choices: [valueDateTime]
                index: 14
              valueDateTime: {type: dateTime, short: Submission Time value, mustSupport: true, choiceOf: value, index: 15}
            required: [valueDateTime, name, value]
        udsData:
          match:
            $this: {name: null}
          schema:
            mustSupport: true
            array: true
            min: 1
            _required: true
            index: 82
            elements:
              name:
                pattern: {type: String, value: udsData}
                mustSupport: true
                index: 83
              part:
                mustSupport: true
                array: true
                index: 84
                slicing:
                  rules: open
                  discriminator:
                  - {path: $this.name, type: value}
                  min: 0
                  slices:
                    resourceType:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 85
                        elements:
                          name:
                            pattern: {type: String, value: type}
                            mustSupport: true
                            index: 86
                          value:
                            mustSupport: true
                            choices: [valueCode]
                            index: 88
                          valueCode: {type: code, mustSupport: true, choiceOf: value, index: 89}
                        required: [valueCode, name, value]
                    resourceUrl:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 90
                        elements:
                          name:
                            pattern: {type: String, value: url}
                            mustSupport: true
                            index: 91
                          value:
                            mustSupport: true
                            choices: [valueUrl]
                            index: 93
                          valueUrl: {type: url, mustSupport: true, choiceOf: value, index: 94}
                        required: [name, value, valueUrl]
                    resourceUrlExpirationTime:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 95
                        elements:
                          name:
                            pattern: {type: String, value: expirationTime}
                            mustSupport: true
                            index: 96
                          value:
                            mustSupport: true
                            choices: [valueDateTime]
                            index: 98
                          valueDateTime: {type: dateTime, mustSupport: true, choiceOf: value, index: 99}
                        required: [valueDateTime, name, value]
                    importAccessToken:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        index: 100
                        elements:
                          name:
                            pattern: {type: String, value: bearer}
                            mustSupport: true
                            index: 101
                          value:
                            mustSupport: true
                            choices: [valueString]
                            index: 103
                          valueString: {type: string, mustSupport: true, choiceOf: value, index: 104}
                        required: [valueString, name, value]
                    incrementalData:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        index: 105
                        elements:
                          name:
                            pattern: {type: String, value: incrementalData}
                            mustSupport: true
                            index: 106
                          value:
                            mustSupport: true
                            choices: [valueBoolean]
                            index: 108
                          valueBoolean: {type: boolean, mustSupport: true, choiceOf: value, index: 109}
                        required: [name, value, valueBoolean]
            required: [name]
        inputFormat:
          match:
            $this: {name: null}
          schema:
            short: Parameter used to define the Mime Type of the data contained within the submitted files
            mustSupport: true
            _required: true
            index: 1
            elements:
              name:
                short: The parameter name for the Mime Type
                pattern: {type: String, value: inputFormat}
                mustSupport: true
                index: 2
              value:
                short: The Mime type of the data contained within the submitted files
                pattern: {type: Code, value: fhir+ndjson}
                mustSupport: true
                choices: [valueCode]
                index: 4
              valueCode:
                pattern: {type: Code, value: fhir+ndjson}
                short: The Mime type of the data contained within the submitted files
                type: code
                mustSupport: true
                choiceOf: value
                index: 5
            required: [valueCode, name, value]
        hcInformation:
          match:
            $this: {name: null}
          schema:
            short: Parameters to convey the Health Center information
            mustSupport: true
            _required: true
            index: 31
            elements:
              name:
                short: Parameter that holds the Health Center information
                pattern: {type: String, value: hcInformation}
                mustSupport: true
                index: 32
              part:
                mustSupport: true
                array: true
                min: 7
                index: 33
                slicing:
                  rules: open
                  discriminator:
                  - {path: $this.name, type: value}
                  min: 7
                  slices:
                    ueiNumber:
                      match:
                        $this: {name: null}
                      schema:
                        short: Parameter to convey the UEI number for the Health Center
                        mustSupport: true
                        _required: true
                        index: 34
                        elements:
                          name:
                            short: Parameter that indicates this is an UEI number
                            pattern: {type: String, value: uei}
                            mustSupport: true
                            index: 35
                          value:
                            short: Actual UEI value
                            mustSupport: true
                            choices: [valueString]
                            index: 37
                          valueString: {type: string, short: Actual UEI value, mustSupport: true, choiceOf: value, index: 38}
                        required: [valueString, name, value]
                    grantNumber:
                      match:
                        $this: {name: null}
                      schema:
                        short: Parameter to convey the GRANT number of the Health Center
                        mustSupport: true
                        _required: true
                        index: 39
                        elements:
                          name:
                            pattern: {type: String, value: grantNumber}
                            mustSupport: true
                            index: 40
                          value:
                            mustSupport: true
                            choices: [valueString]
                            index: 42
                          valueString: {type: string, mustSupport: true, choiceOf: value, index: 43}
                        required: [valueString, name, value]
                    hcName:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 44
                        elements:
                          name:
                            pattern: {type: String, value: hcName}
                            mustSupport: true
                            index: 45
                          value:
                            mustSupport: true
                            choices: [valueString]
                            index: 47
                          valueString: {type: string, mustSupport: true, choiceOf: value, index: 48}
                        required: [valueString, name, value]
                    hcAddress:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 49
                        elements:
                          name:
                            pattern: {type: String, value: hcAddress}
                            mustSupport: true
                            index: 50
                          value:
                            mustSupport: true
                            choices: [valueAddress]
                            index: 52
                          valueAddress: {type: Address, mustSupport: true, choiceOf: value, index: 53}
                          value[x]:
                            elements:
                              line: {type: string, mustSupport: true, array: true, min: 1, index: 54}
                              city: {type: string, mustSupport: true, index: 55}
                              state: {type: string, mustSupport: true, index: 56}
                              postalCode: {type: string, mustSupport: true, index: 57}
                            required: [city, postalCode, line, state]
                        required: [valueAddress, name, value]
                    hcContactPerson:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 58
                        elements:
                          name:
                            pattern: {type: String, value: hcContactPerson}
                            mustSupport: true
                            index: 59
                          value:
                            mustSupport: true
                            choices: [valueHumanName]
                            index: 61
                          valueHumanName: {type: HumanName, mustSupport: true, choiceOf: value, index: 62}
                          value[x]:
                            elements:
                              family: {type: string, mustSupport: true, index: 63}
                              given: {type: string, mustSupport: true, array: true, min: 1, index: 64}
                            required: [given, family]
                        required: [valueHumanName, name, value]
                    hcContactPhone:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 65
                        elements:
                          name:
                            pattern: {type: String, value: hcContactPhone}
                            mustSupport: true
                            index: 66
                          value:
                            mustSupport: true
                            choices: [valueContactPoint]
                            index: 68
                          valueContactPoint: {type: ContactPoint, mustSupport: true, choiceOf: value, index: 69}
                          value[x]:
                            elements:
                              system:
                                type: code
                                pattern: {type: Code, value: phone}
                                mustSupport: true
                                index: 70
                              value: {type: string, mustSupport: true, index: 71}
                            required: [value, system]
                        required: [valueContactPoint, name, value]
                    hcPrenatalCareByReferralOnly:
                      match:
                        $this: {name: null}
                      schema:
                        mustSupport: true
                        _required: true
                        index: 72
                        elements:
                          name:
                            pattern: {type: String, value: hcPrenatalCareByReferralOnly}
                            mustSupport: true
                            index: 73
                          value:
                            mustSupport: true
                            choices: [valueBoolean]
                            index: 75
                          valueBoolean: {type: boolean, mustSupport: true, choiceOf: value, index: 76}
                        required: [name, value, valueBoolean]
            required: [name]
        submissionId:
          match:
            $this: {name: null}
          schema:
            short: Parameter to convey the unique submission identifier
            mustSupport: true
            _required: true
            index: 6
            elements:
              name:
                short: The Parameter name for submission identifier
                pattern: {type: String, value: submissionId}
                mustSupport: true
                index: 7
              value:
                short: Submission Identifier value
                mustSupport: true
                choices: [valueString]
                index: 9
              valueString: {type: string, short: Submission Identifier value, mustSupport: true, choiceOf: value, index: 10}
            required: [valueString, name, value]
        replaceSubmissionId:
          match:
            $this: {name: null}
          schema:
            short: Parameer to identify the previous submission data that needs to be replaced with this submission
            mustSupport: true
            index: 16
            elements:
              name:
                short: Name of the parameter to convey the submission that needs to be replaced
                pattern: {type: String, value: replaceSubmissionId}
                mustSupport: true
                index: 17
              value:
                short: Actual value of the previous submission that needs to be replaced
                mustSupport: true
                choices: [valueString]
                index: 19
              valueString: {type: string, short: Actual value of the previous submission that needs to be replaced, mustSupport: true, choiceOf: value, index: 20}
            required: [valueString, name, value]
        importProtocol:
          match:
            $this: {name: null}
          schema:
            mustSupport: true
            _required: true
            index: 77
            elements:
              name:
                pattern: {type: String, value: importProtocol}
                mustSupport: true
                index: 78
              value:
                pattern: {type: Code, value: https}
                mustSupport: true
                choices: [valueCode]
                index: 80
              valueCode:
                type: code
                pattern: {type: Code, value: https}
                mustSupport: true
                choiceOf: value
                index: 81
            required: [valueCode, name, value]
        partialSubmission:
          match:
            $this: {name: null}
          schema:
            short: Parameter to indicate if the submission has to be treated as a partial submission for the Health Center
            mustSupport: true
            index: 21
            elements:
              name:
                short: The Parameter name to indicate that this ia a partial submission
                pattern: {type: String, value: partialSubmission}
                mustSupport: true
                index: 22
              value:
                short: Actual value indicating if this is a partial submission
                mustSupport: true
                choices: [valueBoolean]
                index: 24
              valueBoolean: {type: boolean, short: Actual value indicating if this is a partial submission, mustSupport: true, choiceOf: value, index: 25}
            required: [name, value, valueBoolean]
package_version: plus-1.1.0
class: profile
kind: resource
url: http://fhir.org/guides/hrsa/uds-plus/StructureDefinition/uds-plus-import-manifest
base: http://hl7.org/fhir/StructureDefinition/Parameters
version: 1.1.0