PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver-r4.r5@0.0.1-snapshot-2
    http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid
description: This cross-version extension represents SubstanceNucleicAcid from http://hl7.org/fhir/StructureDefinition/SubstanceNucleicAcid|4.0.1 for use in FHIR R5.
package_name: hl7.fhir.uv.xver-r4.r5
derivation: constraint
name: Ext_R4_SubstanceNucleicAcid
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    index: 0
    slicing:
      rules: closed
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 0
      slices:
        sequenceType:
          match: {url: sequenceType}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: The type of the sequence shall be specified based on a controlled vocabulary
            index: 1
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: sequenceType}
                index: 2
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The type of the sequence shall be specified based on a controlled vocabulary
                choices: [valueCodeableConcept]
                index: 4
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: The type of the sequence shall be specified based on a controlled vocabulary
                choiceOf: value
                index: 5
            required: [url]
        numberOfSubunits:
          match: {url: numberOfSubunits}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
            index: 6
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: numberOfSubunits}
                index: 7
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
                choices: [valueInteger]
                index: 9
              valueInteger:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: integer
                short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
                choiceOf: value
                index: 10
            required: [url]
        areaOfHybridisation:
          match: {url: areaOfHybridisation}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
            index: 11
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: areaOfHybridisation}
                index: 12
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
                choices: [valueString]
                index: 14
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
                choiceOf: value
                index: 15
            required: [url]
        oligoNucleotideType:
          match: {url: oligoNucleotideType}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: (TBC)
            index: 16
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: oligoNucleotideType}
                index: 17
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: (TBC)
                choices: [valueCodeableConcept]
                index: 19
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: (TBC)
                choiceOf: value
                index: 20
            required: [url]
        subunit:
          match: {url: subunit}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Subunits are listed in order of decreasing length; sequences of the same length will be ordered by molecular weight; subunits that have identical sequences will be repeated multiple times
            array: true
            index: 21
            extensions:
              subunit:
                url: subunit
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: subunit}
                    index: 24
                  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: 26
                  valueInteger:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: integer
                    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
                    choiceOf: value
                    index: 27
                required: [url]
              sequence:
                url: sequence
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequence}
                    index: 29
                  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: 31
                  valueString:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: string
                    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
                    choiceOf: value
                    index: 32
                required: [url]
              length:
                url: length
                base: {max: '*', min: 0, path: Extension.extension}
                short: The length of the sequence shall be captured
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: length}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The length of the sequence shall be captured
                    choices: [valueInteger]
                    index: 36
                  valueInteger:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: integer
                    short: The length of the sequence shall be captured
                    choiceOf: value
                    index: 37
                required: [url]
              sequenceAttachment:
                url: sequenceAttachment
                base: {max: '*', min: 0, path: Extension.extension}
                short: (TBC)
                index: 38
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequenceAttachment}
                    index: 39
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: (TBC)
                    choices: [valueAttachment]
                    index: 41
                  valueAttachment:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Attachment
                    short: (TBC)
                    choiceOf: value
                    index: 42
                required: [url]
              fivePrime:
                url: fivePrime
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 43
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: fivePrime}
                    index: 44
                  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: 46
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    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
                    choiceOf: value
                    index: 47
                required: [url]
              threePrime:
                url: threePrime
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 48
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: threePrime}
                    index: 49
                  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: 51
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    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
                    choiceOf: value
                    index: 52
                required: [url]
              linkage:
                url: linkage
                base: {max: '*', min: 0, path: Extension.extension}
                short: The linkages between sugar residues will also be captured
                array: true
                index: 53
                extensions:
                  connectivity:
                    url: connectivity
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: connectivity}
                        index: 56
                      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: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 59
                    required: [url]
                  identifier:
                    url: identifier
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have an ID
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 61
                      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: 63
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: Each linkage will be registered as a fragment and have an ID
                        choiceOf: value
                        index: 64
                    required: [url]
                  name:
                    url: name
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    index: 65
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 66
                      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: 68
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                        choiceOf: value
                        index: 69
                    required: [url]
                  residueSite:
                    url: residueSite
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Residues shall be captured as described in 5.3.6.8.3
                    index: 70
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 71
                      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: 73
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Residues shall be captured as described in 5.3.6.8.3
                        choiceOf: value
                        index: 74
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 54
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        connectivity:
                          match: {url: connectivity}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: connectivity}
                                index: 56
                              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: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 59
                            required: [url]
                        identifier:
                          match: {url: identifier}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have an ID
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 61
                              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: 63
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: Each linkage will be registered as a fragment and have an ID
                                choiceOf: value
                                index: 64
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                            index: 65
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 66
                              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: 68
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                                choiceOf: value
                                index: 69
                            required: [url]
                        residueSite:
                          match: {url: residueSite}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Residues shall be captured as described in 5.3.6.8.3
                            index: 70
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 71
                              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: 73
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Residues shall be captured as described in 5.3.6.8.3
                                choiceOf: value
                                index: 74
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: linkage}
                    index: 75
                required: [url]
              sugar:
                url: sugar
                base: {max: '*', min: 0, path: Extension.extension}
                short: 5.3.6.8.1 Sugar ID (Mandatory)
                array: true
                index: 76
                extensions:
                  identifier:
                    url: identifier
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    index: 78
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 79
                      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: 81
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 82
                    required: [url]
                  name:
                    url: name
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    index: 83
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 84
                      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: 86
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: The name of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 87
                    required: [url]
                  residueSite:
                    url: residueSite
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 88
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 89
                      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: 91
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 92
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 77
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        identifier:
                          match: {url: identifier}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                            index: 78
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 79
                              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: 81
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 82
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The name of the sugar or sugar-like component that make up the nucleotide
                            index: 83
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 84
                              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: 86
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: The name of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 87
                            required: [url]
                        residueSite:
                          match: {url: residueSite}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 88
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 89
                              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: 91
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 92
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sugar}
                    index: 93
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 22
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    subunit:
                      match: {url: subunit}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        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
                        index: 23
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: subunit}
                            index: 24
                          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: 26
                          valueInteger:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: integer
                            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
                            choiceOf: value
                            index: 27
                        required: [url]
                    sequence:
                      match: {url: sequence}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        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
                        index: 28
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: sequence}
                            index: 29
                          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: 31
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            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
                            choiceOf: value
                            index: 32
                        required: [url]
                    length:
                      match: {url: length}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The length of the sequence shall be captured
                        index: 33
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: length}
                            index: 34
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The length of the sequence shall be captured
                            choices: [valueInteger]
                            index: 36
                          valueInteger:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: integer
                            short: The length of the sequence shall be captured
                            choiceOf: value
                            index: 37
                        required: [url]
                    sequenceAttachment:
                      match: {url: sequenceAttachment}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: (TBC)
                        index: 38
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: sequenceAttachment}
                            index: 39
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: (TBC)
                            choices: [valueAttachment]
                            index: 41
                          valueAttachment:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Attachment
                            short: (TBC)
                            choiceOf: value
                            index: 42
                        required: [url]
                    fivePrime:
                      match: {url: fivePrime}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        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
                        index: 43
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: fivePrime}
                            index: 44
                          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: 46
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            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
                            choiceOf: value
                            index: 47
                        required: [url]
                    threePrime:
                      match: {url: threePrime}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        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
                        index: 48
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: threePrime}
                            index: 49
                          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: 51
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            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
                            choiceOf: value
                            index: 52
                        required: [url]
                    linkage:
                      match: {url: linkage}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The linkages between sugar residues will also be captured
                        array: true
                        index: 53
                        extensions:
                          connectivity:
                            url: connectivity
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: connectivity}
                                index: 56
                              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: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 59
                            required: [url]
                          identifier:
                            url: identifier
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have an ID
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 61
                              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: 63
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: Each linkage will be registered as a fragment and have an ID
                                choiceOf: value
                                index: 64
                            required: [url]
                          name:
                            url: name
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                            index: 65
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 66
                              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: 68
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                                choiceOf: value
                                index: 69
                            required: [url]
                          residueSite:
                            url: residueSite
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Residues shall be captured as described in 5.3.6.8.3
                            index: 70
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 71
                              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: 73
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Residues shall be captured as described in 5.3.6.8.3
                                choiceOf: value
                                index: 74
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 54
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                connectivity:
                                  match: {url: connectivity}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    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
                                    index: 55
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: connectivity}
                                        index: 56
                                      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: 58
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        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
                                        choiceOf: value
                                        index: 59
                                    required: [url]
                                identifier:
                                  match: {url: identifier}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: Each linkage will be registered as a fragment and have an ID
                                    index: 60
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: identifier}
                                        index: 61
                                      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: 63
                                      valueIdentifier:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Identifier
                                        short: Each linkage will be registered as a fragment and have an ID
                                        choiceOf: value
                                        index: 64
                                    required: [url]
                                name:
                                  match: {url: name}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                                    index: 65
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: name}
                                        index: 66
                                      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: 68
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                                        choiceOf: value
                                        index: 69
                                    required: [url]
                                residueSite:
                                  match: {url: residueSite}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: Residues shall be captured as described in 5.3.6.8.3
                                    index: 70
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: residueSite}
                                        index: 71
                                      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: 73
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        short: Residues shall be captured as described in 5.3.6.8.3
                                        choiceOf: value
                                        index: 74
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: linkage}
                            index: 75
                        required: [url]
                    sugar:
                      match: {url: sugar}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: 5.3.6.8.1 Sugar ID (Mandatory)
                        array: true
                        index: 76
                        extensions:
                          identifier:
                            url: identifier
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                            index: 78
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 79
                              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: 81
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 82
                            required: [url]
                          name:
                            url: name
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The name of the sugar or sugar-like component that make up the nucleotide
                            index: 83
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 84
                              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: 86
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: The name of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 87
                            required: [url]
                          residueSite:
                            url: residueSite
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 88
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 89
                              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: 91
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 92
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 77
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                identifier:
                                  match: {url: identifier}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                                    index: 78
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: identifier}
                                        index: 79
                                      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: 81
                                      valueIdentifier:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Identifier
                                        short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                                        choiceOf: value
                                        index: 82
                                    required: [url]
                                name:
                                  match: {url: name}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: The name of the sugar or sugar-like component that make up the nucleotide
                                    index: 83
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: name}
                                        index: 84
                                      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: 86
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        short: The name of the sugar or sugar-like component that make up the nucleotide
                                        choiceOf: value
                                        index: 87
                                    required: [url]
                                residueSite:
                                  match: {url: residueSite}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    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
                                    index: 88
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: residueSite}
                                        index: 89
                                      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: 91
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        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
                                        choiceOf: value
                                        index: 92
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: sugar}
                            index: 93
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: subunit}
                index: 94
            required: [url]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid'}
    index: 95
package_version: 0.0.1-snapshot-2
extensions:
  sequenceType:
    url: sequenceType
    base: {max: '*', min: 0, path: Extension.extension}
    short: The type of the sequence shall be specified based on a controlled vocabulary
    index: 1
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: sequenceType}
        index: 2
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: The type of the sequence shall be specified based on a controlled vocabulary
        choices: [valueCodeableConcept]
        index: 4
      valueCodeableConcept:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: CodeableConcept
        short: The type of the sequence shall be specified based on a controlled vocabulary
        choiceOf: value
        index: 5
    required: [url]
  numberOfSubunits:
    url: numberOfSubunits
    base: {max: '*', min: 0, path: Extension.extension}
    short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
    index: 6
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: numberOfSubunits}
        index: 7
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
        choices: [valueInteger]
        index: 9
      valueInteger:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: integer
        short: 'The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit'
        choiceOf: value
        index: 10
    required: [url]
  areaOfHybridisation:
    url: areaOfHybridisation
    base: {max: '*', min: 0, path: Extension.extension}
    short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
    index: 11
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: areaOfHybridisation}
        index: 12
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
        choices: [valueString]
        index: 14
      valueString:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: string
        short: 'The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”'
        choiceOf: value
        index: 15
    required: [url]
  oligoNucleotideType:
    url: oligoNucleotideType
    base: {max: '*', min: 0, path: Extension.extension}
    short: (TBC)
    index: 16
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: oligoNucleotideType}
        index: 17
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: (TBC)
        choices: [valueCodeableConcept]
        index: 19
      valueCodeableConcept:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: CodeableConcept
        short: (TBC)
        choiceOf: value
        index: 20
    required: [url]
  subunit:
    url: subunit
    base: {max: '*', min: 0, path: Extension.extension}
    short: Subunits are listed in order of decreasing length; sequences of the same length will be ordered by molecular weight; subunits that have identical sequences will be repeated multiple times
    array: true
    index: 21
    extensions:
      subunit:
        url: subunit
        base: {max: '*', min: 0, path: Extension.extension}
        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
        index: 23
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: subunit}
            index: 24
          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: 26
          valueInteger:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: integer
            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
            choiceOf: value
            index: 27
        required: [url]
      sequence:
        url: sequence
        base: {max: '*', min: 0, path: Extension.extension}
        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
        index: 28
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: sequence}
            index: 29
          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: 31
          valueString:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: string
            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
            choiceOf: value
            index: 32
        required: [url]
      length:
        url: length
        base: {max: '*', min: 0, path: Extension.extension}
        short: The length of the sequence shall be captured
        index: 33
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: length}
            index: 34
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The length of the sequence shall be captured
            choices: [valueInteger]
            index: 36
          valueInteger:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: integer
            short: The length of the sequence shall be captured
            choiceOf: value
            index: 37
        required: [url]
      sequenceAttachment:
        url: sequenceAttachment
        base: {max: '*', min: 0, path: Extension.extension}
        short: (TBC)
        index: 38
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: sequenceAttachment}
            index: 39
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: (TBC)
            choices: [valueAttachment]
            index: 41
          valueAttachment:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: Attachment
            short: (TBC)
            choiceOf: value
            index: 42
        required: [url]
      fivePrime:
        url: fivePrime
        base: {max: '*', min: 0, path: Extension.extension}
        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
        index: 43
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: fivePrime}
            index: 44
          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: 46
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            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
            choiceOf: value
            index: 47
        required: [url]
      threePrime:
        url: threePrime
        base: {max: '*', min: 0, path: Extension.extension}
        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
        index: 48
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: threePrime}
            index: 49
          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: 51
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            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
            choiceOf: value
            index: 52
        required: [url]
      linkage:
        url: linkage
        base: {max: '*', min: 0, path: Extension.extension}
        short: The linkages between sugar residues will also be captured
        array: true
        index: 53
        extensions:
          connectivity:
            url: connectivity
            base: {max: '*', min: 0, path: Extension.extension}
            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
            index: 55
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: connectivity}
                index: 56
              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: 58
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                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
                choiceOf: value
                index: 59
            required: [url]
          identifier:
            url: identifier
            base: {max: '*', min: 0, path: Extension.extension}
            short: Each linkage will be registered as a fragment and have an ID
            index: 60
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: identifier}
                index: 61
              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: 63
              valueIdentifier:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Identifier
                short: Each linkage will be registered as a fragment and have an ID
                choiceOf: value
                index: 64
            required: [url]
          name:
            url: name
            base: {max: '*', min: 0, path: Extension.extension}
            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
            index: 65
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: name}
                index: 66
              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: 68
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                choiceOf: value
                index: 69
            required: [url]
          residueSite:
            url: residueSite
            base: {max: '*', min: 0, path: Extension.extension}
            short: Residues shall be captured as described in 5.3.6.8.3
            index: 70
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: residueSite}
                index: 71
              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: 73
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: Residues shall be captured as described in 5.3.6.8.3
                choiceOf: value
                index: 74
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 54
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                connectivity:
                  match: {url: connectivity}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: connectivity}
                        index: 56
                      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: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 59
                    required: [url]
                identifier:
                  match: {url: identifier}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have an ID
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 61
                      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: 63
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: Each linkage will be registered as a fragment and have an ID
                        choiceOf: value
                        index: 64
                    required: [url]
                name:
                  match: {url: name}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    index: 65
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 66
                      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: 68
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                        choiceOf: value
                        index: 69
                    required: [url]
                residueSite:
                  match: {url: residueSite}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Residues shall be captured as described in 5.3.6.8.3
                    index: 70
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 71
                      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: 73
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Residues shall be captured as described in 5.3.6.8.3
                        choiceOf: value
                        index: 74
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: linkage}
            index: 75
        required: [url]
      sugar:
        url: sugar
        base: {max: '*', min: 0, path: Extension.extension}
        short: 5.3.6.8.1 Sugar ID (Mandatory)
        array: true
        index: 76
        extensions:
          identifier:
            url: identifier
            base: {max: '*', min: 0, path: Extension.extension}
            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
            index: 78
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: identifier}
                index: 79
              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: 81
              valueIdentifier:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Identifier
                short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                choiceOf: value
                index: 82
            required: [url]
          name:
            url: name
            base: {max: '*', min: 0, path: Extension.extension}
            short: The name of the sugar or sugar-like component that make up the nucleotide
            index: 83
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: name}
                index: 84
              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: 86
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: The name of the sugar or sugar-like component that make up the nucleotide
                choiceOf: value
                index: 87
            required: [url]
          residueSite:
            url: residueSite
            base: {max: '*', min: 0, path: Extension.extension}
            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
            index: 88
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: residueSite}
                index: 89
              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: 91
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                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
                choiceOf: value
                index: 92
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 77
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                identifier:
                  match: {url: identifier}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    index: 78
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 79
                      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: 81
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 82
                    required: [url]
                name:
                  match: {url: name}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    index: 83
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 84
                      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: 86
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: The name of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 87
                    required: [url]
                residueSite:
                  match: {url: residueSite}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 88
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 89
                      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: 91
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 92
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: sugar}
            index: 93
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        index: 22
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            subunit:
              match: {url: subunit}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: subunit}
                    index: 24
                  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: 26
                  valueInteger:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: integer
                    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
                    choiceOf: value
                    index: 27
                required: [url]
            sequence:
              match: {url: sequence}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequence}
                    index: 29
                  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: 31
                  valueString:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: string
                    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
                    choiceOf: value
                    index: 32
                required: [url]
            length:
              match: {url: length}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The length of the sequence shall be captured
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: length}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The length of the sequence shall be captured
                    choices: [valueInteger]
                    index: 36
                  valueInteger:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: integer
                    short: The length of the sequence shall be captured
                    choiceOf: value
                    index: 37
                required: [url]
            sequenceAttachment:
              match: {url: sequenceAttachment}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: (TBC)
                index: 38
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequenceAttachment}
                    index: 39
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: (TBC)
                    choices: [valueAttachment]
                    index: 41
                  valueAttachment:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Attachment
                    short: (TBC)
                    choiceOf: value
                    index: 42
                required: [url]
            fivePrime:
              match: {url: fivePrime}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 43
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: fivePrime}
                    index: 44
                  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: 46
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    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
                    choiceOf: value
                    index: 47
                required: [url]
            threePrime:
              match: {url: threePrime}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                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
                index: 48
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: threePrime}
                    index: 49
                  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: 51
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    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
                    choiceOf: value
                    index: 52
                required: [url]
            linkage:
              match: {url: linkage}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The linkages between sugar residues will also be captured
                array: true
                index: 53
                extensions:
                  connectivity:
                    url: connectivity
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: connectivity}
                        index: 56
                      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: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 59
                    required: [url]
                  identifier:
                    url: identifier
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have an ID
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 61
                      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: 63
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: Each linkage will be registered as a fragment and have an ID
                        choiceOf: value
                        index: 64
                    required: [url]
                  name:
                    url: name
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                    index: 65
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 66
                      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: 68
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                        choiceOf: value
                        index: 69
                    required: [url]
                  residueSite:
                    url: residueSite
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Residues shall be captured as described in 5.3.6.8.3
                    index: 70
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 71
                      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: 73
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: Residues shall be captured as described in 5.3.6.8.3
                        choiceOf: value
                        index: 74
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 54
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        connectivity:
                          match: {url: connectivity}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: connectivity}
                                index: 56
                              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: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 59
                            required: [url]
                        identifier:
                          match: {url: identifier}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have an ID
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 61
                              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: 63
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: Each linkage will be registered as a fragment and have an ID
                                choiceOf: value
                                index: 64
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                            index: 65
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 66
                              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: 68
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage
                                choiceOf: value
                                index: 69
                            required: [url]
                        residueSite:
                          match: {url: residueSite}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Residues shall be captured as described in 5.3.6.8.3
                            index: 70
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 71
                              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: 73
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: Residues shall be captured as described in 5.3.6.8.3
                                choiceOf: value
                                index: 74
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: linkage}
                    index: 75
                required: [url]
            sugar:
              match: {url: sugar}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: 5.3.6.8.1 Sugar ID (Mandatory)
                array: true
                index: 76
                extensions:
                  identifier:
                    url: identifier
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                    index: 78
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: identifier}
                        index: 79
                      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: 81
                      valueIdentifier:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Identifier
                        short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 82
                    required: [url]
                  name:
                    url: name
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The name of the sugar or sugar-like component that make up the nucleotide
                    index: 83
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 84
                      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: 86
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: The name of the sugar or sugar-like component that make up the nucleotide
                        choiceOf: value
                        index: 87
                    required: [url]
                  residueSite:
                    url: residueSite
                    base: {max: '*', min: 0, path: Extension.extension}
                    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
                    index: 88
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: residueSite}
                        index: 89
                      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: 91
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        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
                        choiceOf: value
                        index: 92
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 77
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        identifier:
                          match: {url: identifier}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                            index: 78
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: identifier}
                                index: 79
                              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: 81
                              valueIdentifier:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Identifier
                                short: The Substance ID of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 82
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The name of the sugar or sugar-like component that make up the nucleotide
                            index: 83
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 84
                              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: 86
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: The name of the sugar or sugar-like component that make up the nucleotide
                                choiceOf: value
                                index: 87
                            required: [url]
                        residueSite:
                          match: {url: residueSite}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            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
                            index: 88
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: residueSite}
                                index: 89
                              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: 91
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                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
                                choiceOf: value
                                index: 92
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sugar}
                    index: 93
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: subunit}
        index: 94
    required: [url]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceNucleicAcid
base: http://hl7.org/fhir/StructureDefinition/Extension|5.0.0
version: 0.0.1-snapshot-2
required: [url]