PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver-r4.r3@0.1.0
    http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid.subunit
description: 'R4: `SubstanceNucleicAcid.subunit` (new:BackboneElement)'
package_name: hl7.fhir.uv.xver-r4.r3
derivation: constraint
name: ExtensionSubstanceNucleicAcid_Subunit
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    index: 0
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 0
      slices:
        subunit:
          match: {url: subunit}
          schema:
            short: 'R4: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 1
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: subunit}
                index: 2
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts
                choices: [valueInteger]
                index: 4
              valueInteger:
                short: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts
                type: integer
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 5
            required: [url]
        sequence:
          match: {url: sequence}
          schema:
            short: 'R4: Actual nucleotide sequence notation from 5'' to 3'' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 6
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: sequence}
                index: 7
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Actual nucleotide sequence notation from 5' to 3' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured
                choices: [valueString]
                index: 9
              valueString:
                short: Actual nucleotide sequence notation from 5' to 3' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 10
            required: [url]
        length:
          match: {url: length}
          schema:
            short: 'R4: The length of the sequence shall be captured (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 11
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: length}
                index: 12
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The length of the sequence shall be captured
                choices: [valueInteger]
                index: 14
              valueInteger:
                short: The length of the sequence shall be captured
                type: integer
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 15
            required: [url]
        sequenceAttachment:
          match: {url: sequenceAttachment}
          schema:
            short: 'R4: (TBC) (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 16
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: sequenceAttachment}
                index: 17
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: (TBC)
                choices: [valueAttachment]
                index: 19
              valueAttachment:
                short: (TBC)
                type: Attachment
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 20
            required: [url]
        fivePrime:
          match: {url: fivePrime}
          schema:
            short: 'R4: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5'' to the 3'' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 21
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: fivePrime}
                index: 22
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant
                choices: [valueCodeableConcept]
                index: 24
              valueCodeableConcept:
                short: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant
                type: CodeableConcept
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 25
            required: [url]
        threePrime:
          match: {url: threePrime}
          schema:
            short: 'R4: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5'' to the 3'' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 26
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: threePrime}
                index: 27
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant
                choices: [valueCodeableConcept]
                index: 29
              valueCodeableConcept:
                short: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant
                type: CodeableConcept
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 30
            required: [url]
        linkage:
          match: {url: linkage}
          schema:
            short: 'R4: The linkages between sugar residues will also be captured (new)'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 31
            extensions:
              connectivity:
                url: connectivity
                short: 'R4: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: connectivity}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                    choices: [valueString]
                    index: 36
                  valueString:
                    short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 37
                required: [url]
              identifier:
                url: identifier
                short: 'R4: Each linkage will be registered as a fragment and have an ID (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 38
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: identifier}
                    index: 39
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Each linkage will be registered as a fragment and have an ID
                    choices: [valueIdentifier]
                    index: 41
                  valueIdentifier:
                    short: Each linkage will be registered as a fragment and have an ID
                    type: Identifier
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 42
                required: [url]
              name:
                url: name
                short: 'R4: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 43
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 44
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    choices: [valueString]
                    index: 46
                  valueString:
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 47
                required: [url]
              residueSite:
                url: residueSite
                short: 'R4: Residues shall be captured as described in 5.3.6.8.3 (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 48
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: residueSite}
                    index: 49
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Residues shall be captured as described in 5.3.6.8.3
                    choices: [valueString]
                    index: 51
                  valueString:
                    short: Residues shall be captured as described in 5.3.6.8.3
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 52
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 32
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    connectivity:
                      match: {url: connectivity}
                      schema:
                        short: 'R4: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 33
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: connectivity}
                            index: 34
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                            choices: [valueString]
                            index: 36
                          valueString:
                            short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 37
                        required: [url]
                    identifier:
                      match: {url: identifier}
                      schema:
                        short: 'R4: Each linkage will be registered as a fragment and have an ID (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 38
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: identifier}
                            index: 39
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Each linkage will be registered as a fragment and have an ID
                            choices: [valueIdentifier]
                            index: 41
                          valueIdentifier:
                            short: Each linkage will be registered as a fragment and have an ID
                            type: Identifier
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 42
                        required: [url]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 43
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 44
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                            choices: [valueString]
                            index: 46
                          valueString:
                            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 47
                        required: [url]
                    residueSite:
                      match: {url: residueSite}
                      schema:
                        short: 'R4: Residues shall be captured as described in 5.3.6.8.3 (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 48
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: residueSite}
                            index: 49
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Residues shall be captured as described in 5.3.6.8.3
                            choices: [valueString]
                            index: 51
                          valueString:
                            short: Residues shall be captured as described in 5.3.6.8.3
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 52
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: linkage}
                index: 53
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 55
            required: [url]
        sugar:
          match: {url: sugar}
          schema:
            short: 'R4: 5.3.6.8.1 Sugar ID (Mandatory) (new)'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 56
            extensions:
              identifier:
                url: identifier
                short: 'R4: The Substance ID of the sugar or sugar-like component that make up the nucleotide (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 58
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: identifier}
                    index: 59
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    choices: [valueIdentifier]
                    index: 61
                  valueIdentifier:
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    type: Identifier
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 62
                required: [url]
              name:
                url: name
                short: 'R4: The name of the sugar or sugar-like component that make up the nucleotide (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 63
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 64
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    choices: [valueString]
                    index: 66
                  valueString:
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 67
                required: [url]
              residueSite:
                url: residueSite
                short: 'R4: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 68
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: residueSite}
                    index: 69
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                    choices: [valueString]
                    index: 71
                  valueString:
                    short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 72
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 57
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    identifier:
                      match: {url: identifier}
                      schema:
                        short: 'R4: The Substance ID of the sugar or sugar-like component that make up the nucleotide (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 58
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: identifier}
                            index: 59
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                            choices: [valueIdentifier]
                            index: 61
                          valueIdentifier:
                            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                            type: Identifier
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 62
                        required: [url]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: The name of the sugar or sugar-like component that make up the nucleotide (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 63
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 64
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The name of the sugar or sugar-like component that make up the nucleotide
                            choices: [valueString]
                            index: 66
                          valueString:
                            short: The name of the sugar or sugar-like component that make up the nucleotide
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 67
                        required: [url]
                    residueSite:
                      match: {url: residueSite}
                      schema:
                        short: 'R4: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 68
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: residueSite}
                            index: 69
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                            choices: [valueString]
                            index: 71
                          valueString:
                            short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 72
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: sugar}
                index: 73
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 75
            required: [url]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid.subunit'}
    index: 76
  value:
    base: {max: '1', min: 0, path: 'Extension.value[x]'}
    choices: []
    index: 78
package_version: 0.1.0
extensions:
  subunit:
    url: subunit
    short: 'R4: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 1
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: subunit}
        index: 2
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts
        choices: [valueInteger]
        index: 4
      valueInteger:
        short: Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts
        type: integer
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 5
    required: [url]
  sequence:
    url: sequence
    short: 'R4: Actual nucleotide sequence notation from 5'' to 3'' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 6
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: sequence}
        index: 7
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Actual nucleotide sequence notation from 5' to 3' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured
        choices: [valueString]
        index: 9
      valueString:
        short: Actual nucleotide sequence notation from 5' to 3' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured
        type: string
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 10
    required: [url]
  length:
    url: length
    short: 'R4: The length of the sequence shall be captured (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 11
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: length}
        index: 12
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: The length of the sequence shall be captured
        choices: [valueInteger]
        index: 14
      valueInteger:
        short: The length of the sequence shall be captured
        type: integer
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 15
    required: [url]
  sequenceAttachment:
    url: sequenceAttachment
    short: 'R4: (TBC) (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 16
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: sequenceAttachment}
        index: 17
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: (TBC)
        choices: [valueAttachment]
        index: 19
      valueAttachment:
        short: (TBC)
        type: Attachment
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 20
    required: [url]
  fivePrime:
    url: fivePrime
    short: 'R4: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5'' to the 3'' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 21
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: fivePrime}
        index: 22
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant
        choices: [valueCodeableConcept]
        index: 24
      valueCodeableConcept:
        short: The nucleotide present at the 5’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant
        type: CodeableConcept
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 25
    required: [url]
  threePrime:
    url: threePrime
    short: 'R4: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5'' to the 3'' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant (new)'
    base: {max: '*', min: 0, path: Extension.extension}
    index: 26
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: threePrime}
        index: 27
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant
        choices: [valueCodeableConcept]
        index: 29
      valueCodeableConcept:
        short: The nucleotide present at the 3’ terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5’ prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant
        type: CodeableConcept
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choiceOf: value
        index: 30
    required: [url]
  linkage:
    url: linkage
    short: 'R4: The linkages between sugar residues will also be captured (new)'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 31
    extensions:
      connectivity:
        url: connectivity
        short: 'R4: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 33
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: connectivity}
            index: 34
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
            choices: [valueString]
            index: 36
          valueString:
            short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 37
        required: [url]
      identifier:
        url: identifier
        short: 'R4: Each linkage will be registered as a fragment and have an ID (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 38
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: identifier}
            index: 39
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Each linkage will be registered as a fragment and have an ID
            choices: [valueIdentifier]
            index: 41
          valueIdentifier:
            short: Each linkage will be registered as a fragment and have an ID
            type: Identifier
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 42
        required: [url]
      name:
        url: name
        short: 'R4: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 43
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 44
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
            choices: [valueString]
            index: 46
          valueString:
            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 47
        required: [url]
      residueSite:
        url: residueSite
        short: 'R4: Residues shall be captured as described in 5.3.6.8.3 (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 48
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: residueSite}
            index: 49
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Residues shall be captured as described in 5.3.6.8.3
            choices: [valueString]
            index: 51
          valueString:
            short: Residues shall be captured as described in 5.3.6.8.3
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 52
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        index: 32
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            connectivity:
              match: {url: connectivity}
              schema:
                short: 'R4: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: connectivity}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                    choices: [valueString]
                    index: 36
                  valueString:
                    short: The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3’-5’. If the linkage is either 3’-3’ or 5’-5’ this should be specified
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 37
                required: [url]
            identifier:
              match: {url: identifier}
              schema:
                short: 'R4: Each linkage will be registered as a fragment and have an ID (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 38
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: identifier}
                    index: 39
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Each linkage will be registered as a fragment and have an ID
                    choices: [valueIdentifier]
                    index: 41
                  valueIdentifier:
                    short: Each linkage will be registered as a fragment and have an ID
                    type: Identifier
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 42
                required: [url]
            name:
              match: {url: name}
              schema:
                short: 'R4: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 43
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 44
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    choices: [valueString]
                    index: 46
                  valueString:
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 47
                required: [url]
            residueSite:
              match: {url: residueSite}
              schema:
                short: 'R4: Residues shall be captured as described in 5.3.6.8.3 (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 48
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: residueSite}
                    index: 49
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Residues shall be captured as described in 5.3.6.8.3
                    choices: [valueString]
                    index: 51
                  valueString:
                    short: Residues shall be captured as described in 5.3.6.8.3
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 52
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: linkage}
        index: 53
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 55
    required: [url]
  sugar:
    url: sugar
    short: 'R4: 5.3.6.8.1 Sugar ID (Mandatory) (new)'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 56
    extensions:
      identifier:
        url: identifier
        short: 'R4: The Substance ID of the sugar or sugar-like component that make up the nucleotide (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 58
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: identifier}
            index: 59
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
            choices: [valueIdentifier]
            index: 61
          valueIdentifier:
            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
            type: Identifier
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 62
        required: [url]
      name:
        url: name
        short: 'R4: The name of the sugar or sugar-like component that make up the nucleotide (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 63
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 64
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The name of the sugar or sugar-like component that make up the nucleotide
            choices: [valueString]
            index: 66
          valueString:
            short: The name of the sugar or sugar-like component that make up the nucleotide
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 67
        required: [url]
      residueSite:
        url: residueSite
        short: 'R4: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 68
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: residueSite}
            index: 69
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
            choices: [valueString]
            index: 71
          valueString:
            short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 72
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        index: 57
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            identifier:
              match: {url: identifier}
              schema:
                short: 'R4: The Substance ID of the sugar or sugar-like component that make up the nucleotide (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 58
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: identifier}
                    index: 59
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    choices: [valueIdentifier]
                    index: 61
                  valueIdentifier:
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    type: Identifier
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 62
                required: [url]
            name:
              match: {url: name}
              schema:
                short: 'R4: The name of the sugar or sugar-like component that make up the nucleotide (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 63
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 64
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    choices: [valueString]
                    index: 66
                  valueString:
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 67
                required: [url]
            residueSite:
              match: {url: residueSite}
              schema:
                short: 'R4: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 68
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: residueSite}
                    index: 69
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                    choices: [valueString]
                    index: 71
                  valueString:
                    short: The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5‘-3‘direction consistent with the base sequences listed above
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 72
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: sugar}
        index: 73
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 75
    required: [url]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid.subunit
base: http://hl7.org/fhir/StructureDefinition/Extension
version: 0.1.0
required: [url]