PackagesCanonicalsLogsProblems
    Packages
    uk.nhsdigital.r4.test@2.8.9-prerelease
    https://fhir.nhs.uk/StructureDefinition/Extension-NHSDigital-CapabilityStatement-Examples
description: null
package_name: uk.nhsdigital.r4.test
derivation: constraint
name: ExtensionCapabilityStatementExamples
type: Extension
elements:
  extension:
    index: 0
    slicing:
      rules: open
      discriminator:
      - {path: url, type: value}
      min: 0
      slices:
        example:
          match: {url: example}
          schema:
            index: 1
            extensions:
              request:
                url: request
                _required: true
                index: 3
                elements:
                  url:
                    pattern: {type: Uri, value: request}
                    index: 4
                  value:
                    choices: [valueBoolean]
                    index: 6
                  valueBoolean: {type: boolean, choiceOf: value, index: 7}
                required: [value, valueBoolean]
              summary:
                url: summary
                index: 8
                elements:
                  url:
                    pattern: {type: Uri, value: summary}
                    index: 9
                  value:
                    choices: [valueMarkdown]
                    index: 11
                  valueMarkdown: {type: markdown, choiceOf: value, index: 12}
                required: [valueMarkdown, value]
              description:
                url: description
                index: 13
                elements:
                  url:
                    pattern: {type: Uri, value: description}
                    index: 14
                  value:
                    choices: [valueMarkdown]
                    index: 16
                  valueMarkdown: {type: markdown, choiceOf: value, index: 17}
                required: [valueMarkdown, value]
              externalValue:
                url: externalValue
                index: 18
                elements:
                  url:
                    pattern: {type: Uri, value: externalValue}
                    index: 19
                  value:
                    choices: [valueUrl]
                    index: 21
                  valueUrl: {type: url, choiceOf: value, index: 22}
                required: [value, valueUrl]
              value:
                url: value
                index: 23
                elements:
                  url:
                    pattern: {type: Uri, value: value}
                    index: 24
                  value:
                    choices: [valueReference]
                    index: 26
                  valueReference: {type: Reference, choiceOf: value, index: 27}
                required: [valueReference, value]
            elements:
              extension:
                index: 2
                slicing:
                  rules: open
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    request:
                      match: {url: request}
                      schema:
                        _required: true
                        index: 3
                        elements:
                          url:
                            pattern: {type: Uri, value: request}
                            index: 4
                          value:
                            choices: [valueBoolean]
                            index: 6
                          valueBoolean: {type: boolean, choiceOf: value, index: 7}
                        required: [value, valueBoolean]
                    summary:
                      match: {url: summary}
                      schema:
                        index: 8
                        elements:
                          url:
                            pattern: {type: Uri, value: summary}
                            index: 9
                          value:
                            choices: [valueMarkdown]
                            index: 11
                          valueMarkdown: {type: markdown, choiceOf: value, index: 12}
                        required: [valueMarkdown, value]
                    description:
                      match: {url: description}
                      schema:
                        index: 13
                        elements:
                          url:
                            pattern: {type: Uri, value: description}
                            index: 14
                          value:
                            choices: [valueMarkdown]
                            index: 16
                          valueMarkdown: {type: markdown, choiceOf: value, index: 17}
                        required: [valueMarkdown, value]
                    externalValue:
                      match: {url: externalValue}
                      schema:
                        index: 18
                        elements:
                          url:
                            pattern: {type: Uri, value: externalValue}
                            index: 19
                          value:
                            choices: [valueUrl]
                            index: 21
                          valueUrl: {type: url, choiceOf: value, index: 22}
                        required: [value, valueUrl]
                    value:
                      match: {url: value}
                      schema:
                        index: 23
                        elements:
                          url:
                            pattern: {type: Uri, value: value}
                            index: 24
                          value:
                            choices: [valueReference]
                            index: 26
                          valueReference: {type: Reference, choiceOf: value, index: 27}
                        required: [valueReference, value]
              url:
                pattern: {type: Uri, value: example}
                index: 28
              value:
                choices: []
                index: 30
            required: [extension]
  url:
    pattern: {type: Uri, value: 'https://fhir.nhs.uk/StructureDefinition/Extension-NHSDigital-CapabilityStatement-Examples'}
    index: 31
  value:
    choices: []
    index: 33
package_version: 2.8.9-prerelease
extensions:
  example:
    url: example
    index: 1
    extensions:
      request:
        url: request
        _required: true
        index: 3
        elements:
          url:
            pattern: {type: Uri, value: request}
            index: 4
          value:
            choices: [valueBoolean]
            index: 6
          valueBoolean: {type: boolean, choiceOf: value, index: 7}
        required: [value, valueBoolean]
      summary:
        url: summary
        index: 8
        elements:
          url:
            pattern: {type: Uri, value: summary}
            index: 9
          value:
            choices: [valueMarkdown]
            index: 11
          valueMarkdown: {type: markdown, choiceOf: value, index: 12}
        required: [valueMarkdown, value]
      description:
        url: description
        index: 13
        elements:
          url:
            pattern: {type: Uri, value: description}
            index: 14
          value:
            choices: [valueMarkdown]
            index: 16
          valueMarkdown: {type: markdown, choiceOf: value, index: 17}
        required: [valueMarkdown, value]
      externalValue:
        url: externalValue
        index: 18
        elements:
          url:
            pattern: {type: Uri, value: externalValue}
            index: 19
          value:
            choices: [valueUrl]
            index: 21
          valueUrl: {type: url, choiceOf: value, index: 22}
        required: [value, valueUrl]
      value:
        url: value
        index: 23
        elements:
          url:
            pattern: {type: Uri, value: value}
            index: 24
          value:
            choices: [valueReference]
            index: 26
          valueReference: {type: Reference, choiceOf: value, index: 27}
        required: [valueReference, value]
    elements:
      extension:
        index: 2
        slicing:
          rules: open
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            request:
              match: {url: request}
              schema:
                _required: true
                index: 3
                elements:
                  url:
                    pattern: {type: Uri, value: request}
                    index: 4
                  value:
                    choices: [valueBoolean]
                    index: 6
                  valueBoolean: {type: boolean, choiceOf: value, index: 7}
                required: [value, valueBoolean]
            summary:
              match: {url: summary}
              schema:
                index: 8
                elements:
                  url:
                    pattern: {type: Uri, value: summary}
                    index: 9
                  value:
                    choices: [valueMarkdown]
                    index: 11
                  valueMarkdown: {type: markdown, choiceOf: value, index: 12}
                required: [valueMarkdown, value]
            description:
              match: {url: description}
              schema:
                index: 13
                elements:
                  url:
                    pattern: {type: Uri, value: description}
                    index: 14
                  value:
                    choices: [valueMarkdown]
                    index: 16
                  valueMarkdown: {type: markdown, choiceOf: value, index: 17}
                required: [valueMarkdown, value]
            externalValue:
              match: {url: externalValue}
              schema:
                index: 18
                elements:
                  url:
                    pattern: {type: Uri, value: externalValue}
                    index: 19
                  value:
                    choices: [valueUrl]
                    index: 21
                  valueUrl: {type: url, choiceOf: value, index: 22}
                required: [value, valueUrl]
            value:
              match: {url: value}
              schema:
                index: 23
                elements:
                  url:
                    pattern: {type: Uri, value: value}
                    index: 24
                  value:
                    choices: [valueReference]
                    index: 26
                  valueReference: {type: Reference, choiceOf: value, index: 27}
                required: [valueReference, value]
      url:
        pattern: {type: Uri, value: example}
        index: 28
      value:
        choices: []
        index: 30
    required: [extension]
class: extension
kind: complex-type
url: https://fhir.nhs.uk/StructureDefinition/Extension-NHSDigital-CapabilityStatement-Examples
base: http://hl7.org/fhir/StructureDefinition/Extension
version: null