STU3 Candidate

This page is part of the FHIR Specification (v1.8.0: STU 3 Draft). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

10.4 Resource Sequence - Content

Clinical Genomics Work GroupMaturity Level: 0Compartments: Not linked to any defined compartments

Raw data describing a biological sequence.

The Sequence resource is designed to describe an atomic sequence which contains the alignment sequencing test result and multiple variations. Atomic sequences can be connected by link element and they will lead to sequence graph. By this method, a sequence can be reported. Complete genetic sequence information, of which specific genetic variations are a part, is reported by reference to the GA4GH repository. Thus, the FHIR Sequence resource avoids large genomic payloads in a manner analogous to how the FHIR ImagingStudy resource references large images maintained in other systems. For use cases, details on how this resource interact with other Clinical Genomics resources or profiles, please refer Implementation Guide here .

This resource is designed to describe sequence variations with clinical significance with information such as:

  • Name of the variation represented
  • Type of the variation
  • Gene region occupied by the variation
  • Tissue source used to determine genotype of the variation
  • Quality of the result

It is strongly encouraged to provide all available information in this resource for any reported variants, because receiving systems (e.g. discovery research, outcomes analysis, and public health reporting) may use this information to normalize variants over time or across sources. However, these data should not be used to dynamically correct/change variant representations for clinical use outside of the laboratory, due to insufficient information.

Implementers should be aware that semantic equivalency of results of genetic variants cannot be guaranteed unless there is an agreed upon standard between sending and receiving systems.

Focus of the resource is to provide sequencing alignment data immediately relevant to what the interpretation on clinical decision-making originates from. Hence data such as precise read of DNA sequences and sequence alignment are not included; such data are nonetheless accessible through references to GA4GH (Global Alliance for Genomics and Health) API. The Sequence resource will be referenced by Observation to provide variant information. As clinical assessments/diagnosis of a patient are typically captured in the Condition resource or the ClinicalImpression resource, the Sequence resource can be referenced by the Condition resource to provide specific genetic data to support an assertions. This is analogous to how Condition references other resources, such as AllergyIntolerance, Procedure, and Questionnaire resources.

This resource is referenced by observation

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Sequence ΣIDomainResourceInformation about a biological sequence
Only 0 and 1 are valid for coordinateSystem
... identifier Σ0..*IdentifierUnique ID for this particular sequence. This is a FHIR-defined id
... type Σ0..1codeAA | DNA | RNA
sequenceType (Example)
... coordinateSystem Σ1..1integerBase number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
... patient Σ0..1Reference(Patient)Who and/or what this is about
... specimen Σ0..1Reference(Specimen)Specimen used for sequencing
... device Σ0..1Reference(Device)The method for sequencing
... performer Σ0..1Reference(Organization)Who should be responsible for test result
... quantity Σ0..1QuantityThe number of copies of the seqeunce of interest. (RNASeq)
... referenceSeq ΣI0..1BackboneElementReference sequence
Only +1 and -1 are valid for strand
GenomeBuild and chromosome must be both contained if either one of them is contained
Have and only have one of the following elements in referenceSeq : 1. genomeBuild ; 2 referenceSeqId; 3. referenceSeqPointer; 4. referenceSeqString;
.... chromosome Σ0..1CodeableConceptChromosome containing genetic finding
chromosome-human (Example)
.... genomeBuild Σ0..1stringThe Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
.... referenceSeqId Σ0..1CodeableConceptReference identifier
ENSEMBL (Example)
.... referenceSeqPointer Σ0..1Reference(Sequence)A Pointer to another Sequence entity as reference sequence
.... referenceSeqString Σ0..1stringA Reference Sequence string
.... strand Σ0..1integerDirectionality of DNA ( +1/-1)
.... windowStart Σ1..1integerStart position of the window on the reference sequence
.... windowEnd Σ1..1integerEnd position of the window on the reference sequence
... variant Σ0..*BackboneElementSequence variant
.... start Σ0..1integerStart position of the variant on the reference sequence
.... end Σ0..1integerEnd position of the variant on the reference sequence
.... observedAllele Σ0..1stringAllele that was observed
.... referenceAllele Σ0..1stringAllele of reference sequence
.... cigar Σ0..1stringExtended CIGAR string for aligning the sequence with reference bases
.... variantPointer Σ0..1Reference(Observation)Pointer to observed variant information
... observedSeq Σ0..1stringObserved sequence
... quality Σ0..*BackboneElementSequence quality
.... type Σ1..1codeINDEL | SNP | UNKNOWN
qualityType (Required)
.... standardSequence Σ0..1CodeableConceptStandard sequence for comparison
.... start Σ0..1integerStart position of the sequence
.... end Σ0..1integerEnd position of the sequence
.... score Σ0..1QuantityQuality score
.... method Σ0..1CodeableConceptMethod for quality
.... truthTP Σ0..1decimalTrue positives from the perspective of the truth data
.... queryTP Σ0..1decimalTrue positives from the perspective of the query data
.... truthFN Σ0..1decimalFalse negatives
.... queryFP Σ0..1decimalFalse positives
.... gtFP Σ0..1decimalFalse positives where the non-REF alleles in the Truth and Query Call Sets match
.... precision Σ0..1decimalPrecision
.... recall Σ0..1decimalRecall
.... fScore Σ0..1decimalF-score
... readCoverage Σ0..1integerAverage number of reads representing a given nucleotide in the reconstructed sequence
... repository Σ0..*BackboneElementExternal repository which contains detailed report related with observedSeq in this resource
.... type Σ1..1codedirectlink | openapi | login | oauth | other
repositoryType (Required)
.... url Σ0..1uriURI of the repository
.... name Σ0..1stringName of the repository
.... datasetId Σ0..1stringId of the dataset that used to call for dataset in repository
.... variantsetId Σ0..1stringId of the variantset that used to call for variantset in repository
.... readsetId Σ0..1stringId of the read
... pointer Σ0..*Reference(Sequence)Pointer to next atomic sequence
... structureVariant Σ0..*BackboneElementStructural variant
.... precisionOfBoundaries Σ0..1stringPrecision of boundaries
.... reportedaCGHRatio Σ0..1decimalStructural Variant reported aCGH ratio
.... length Σ0..1integerStructural Variant Length
.... outer Σ0..1BackboneElementStructural variant outer
..... start Σ0..1integerStructural Variant Outer Start
..... end Σ0..1integerStructural Variant Outer End
.... inner Σ0..1BackboneElementStructural variant inner
..... start Σ0..1integerStructural Variant Inner Start
..... end Σ0..1integerStructural Variant Inner End

doco Documentation for this format

UML Diagram (Legend)

Sequence (DomainResource)A unique identifier for this particular sequence instance. This is a FHIR-defined ididentifier : Identifier [0..*]Amino Acid Sequence/ DNA Sequence / RNA Sequencetype : code [0..1] « Type if a sequence -- DNA, RNA, or amino acid sequence (Strength=Example)sequenceType?? »Whether the sequence is numbered starting at 0 (0-based numbering or coordinates, inclusive start, exclusive end) or starting at 1 (1-based numbering, inclusive start and inclusive end)coordinateSystem : integer [1..1]The patient whose sequencing results are described by this resourcepatient : Reference [0..1] « Patient »Specimen used for sequencingspecimen : Reference [0..1] « Specimen »The method for sequencing, for example, chip informationdevice : Reference [0..1] « Device »The organization or lab that should be responsible for this resultperformer : Reference [0..1] « Organization »The number of copies of the seqeunce of interest. (RNASeq)quantity : Quantity [0..1]Sequence that was observed. It is the result marked by referenceSeq along with variant records on referenceSeq. This shall starts from referenceSeq.windowStart and end by referenceSeq.windowEndobservedSeq : string [0..1]Coverage (read depth or depth) is the average number of reads representing a given nucleotide in the reconstructed sequencereadCoverage : integer [0..1]Pointer to next atomic sequence which at most contains one variantpointer : Reference [0..*] « Sequence »ReferenceSeqStructural unit composed of a nucleic acid molecule which controls its own replication through the interaction of specific proteins at one or more origins of replication ([SO:0000340](http://www.sequenceontology.org/browser/current_svn/term/SO:0000340))chromosome : CodeableConcept [0..1] « Chromosome number for human (Strength=Example)chromosome-human?? »The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'. Version number must be included if a versioned release of a primary build was usedgenomeBuild : string [0..1]Reference identifier of reference sequence submitted to NCBI. It must match the type in the Sequence.type field. For example, the prefix, “NG_” identifies reference sequence for genes, “NM_” for messenger RNA transcripts, and “NP_” for amino acid sequencesreferenceSeqId : CodeableConcept [0..1] « Reference identifier (Strength=Example)ENSEMBL?? »A Pointer to another Sequence entity as reference sequencereferenceSeqPointer : Reference [0..1] « Sequence »A Reference Sequence stringreferenceSeqString : string [0..1]Directionality of DNA sequence. Available values are "1" for the plus strand (5' to 3')/Watson/Sense/positive and "-1" for the minus strand(3' to 5')/Crick/Antisense/negativestrand : integer [0..1]Start position of the window on the reference sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusivewindowStart : integer [1..1]End position of the window on the reference sequence. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionwindowEnd : integer [1..1]VariantStart position of the variant on the reference sequence.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]End position of the variant on the reference sequence.If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the observed sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.endobservedAllele : string [0..1]An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the reference sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.endreferenceAllele : string [0..1]Extended CIGAR string for aligning the sequence with reference bases. See detailed documentation [here](http://support.illumina.com/help/SequencingAnalysisWorkflow/Content/Vault/Informatics/Sequencing_Analysis/CASAVA/swSEQ_mCA_ExtendedCIGARFormat.htm)cigar : string [0..1]A pointer to an Observation containing variant informationvariantPointer : Reference [0..1] « Observation »QualityINDEL / SNP / Undefined varianttype : code [1..1] « Type for quality report (Strength=Required)qualityType! »Gold standard sequence used for comparing againststandardSequence : CodeableConcept [0..1]Start position of the sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]End position of the sequence.If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]The score of an experimentally derived feature such as a p-value ([SO:0001685](http://www.sequenceontology.org/browser/current_svn/term/SO:0001685))score : Quantity [0..1]Method for qualitymethod : CodeableConcept [0..1]True positives, from the perspective of the truth data, i.e. the number of sites in the Truth Call Set for which there are paths through the Query Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the eventtruthTP : decimal [0..1]True positives, from the perspective of the query data, i.e. the number of sites in the Query Call Set for which there are paths through the Truth Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the eventqueryTP : decimal [0..1]False negatives, i.e. the number of sites in the Truth Call Set for which there is no path through the Query Call Set that is consistent with all of the alleles at this site, or sites for which there is an inaccurate genotype call for the event. Sites with correct variant but incorrect genotype are counted heretruthFN : decimal [0..1]False positives, i.e. the number of sites in the Query Call Set for which there is no path through the Truth Call Set that is consistent with this site. Sites with correct variant but incorrect genotype are counted herequeryFP : decimal [0..1]The number of false positives where the non-REF alleles in the Truth and Query Call Sets match (i.e. cases where the truth is 1/1 and the query is 0/1 or similar)gtFP : decimal [0..1]QUERY.TP / (QUERY.TP + QUERY.FP)precision : decimal [0..1]TRUTH.TP / (TRUTH.TP + TRUTH.FN)recall : decimal [0..1]Harmonic mean of Recall and Precision, computed as: 2 * precision * recall / (precision + recall)fScore : decimal [0..1]RepositoryClick and see / RESTful API / Need login to see / RESTful API with authentication / Other ways to see resourcetype : code [1..1] « Type for access of external uri (Strength=Required)repositoryType! »URI of an external repository which contains further details about the genetics dataurl : uri [0..1]URI of an external repository which contains further details about the genetics dataname : string [0..1]Id of the variant in this external repository. The server will understand how to use this id to call for more info about datasets in external repositorydatasetId : string [0..1]Id of the variantset in this external repository. The server will understand how to use this id to call for more info about variantsets in external repositoryvariantsetId : string [0..1]Id of the read in this external repositoryreadsetId : string [0..1]StructureVariantPrecision of boundariesprecisionOfBoundaries : string [0..1]Structural Variant reported aCGH ratioreportedaCGHRatio : decimal [0..1]Structural Variant Lengthlength : integer [0..1]OuterStructural Variant Outer Start.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]Structural Variant Outer End. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]InnerStructural Variant Inner Start.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]Structural Variant Inner End. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]A sequence that is used as a reference to describe variants that are present in a sequence analyzedreferenceSeq[0..1]The definition of variant here originates from Sequence ontology ([variant_of](http://www.sequenceontology.org/browser/current_svn/term/variant_of)). This element can represent amino acid or nucleic sequence change(including insertion,deletion,SNP,etc.) It can represent some complex mutation or segment variation with the assist of CIGAR stringvariant[0..*]An experimental feature attribute that defines the quality of the feature in a quantitative way, such as a phred quality score ([SO:0001686](http://www.sequenceontology.org/browser/current_svn/term/SO:0001686))quality[0..*]Configurations of the external repository. The repository shall store target's observedSeq or records related with target's observedSeqrepository[0..*]Structural variant outerouter[0..1]Structural variant innerinner[0..1]Structural variantstructureVariant[0..*]

XML Template

<Sequence xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Unique ID for this particular sequence. This is a FHIR-defined id --></identifier>
 <type value="[code]"/><!-- 0..1 AA | DNA | RNA -->
 <coordinateSystem value="[integer]"/><!-- 1..1 Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end) -->
 <patient><!-- 0..1 Reference(Patient) Who and/or what this is about --></patient>
 <specimen><!-- 0..1 Reference(Specimen) Specimen used for sequencing --></specimen>
 <device><!-- 0..1 Reference(Device) The method for sequencing --></device>
 <performer><!-- 0..1 Reference(Organization) Who should be responsible for test result --></performer>
 <quantity><!-- 0..1 Quantity The number of copies of the seqeunce of interest.  (RNASeq) --></quantity>
 <referenceSeq>  <!-- 0..1 Reference sequence -->
  <chromosome><!-- 0..1 CodeableConcept Chromosome containing genetic finding --></chromosome>
  <genomeBuild value="[string]"/><!-- 0..1 The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37' -->
  <referenceSeqId><!-- 0..1 CodeableConcept Reference identifier --></referenceSeqId>
  <referenceSeqPointer><!-- 0..1 Reference(Sequence) A Pointer to another Sequence entity as reference sequence --></referenceSeqPointer>
  <referenceSeqString value="[string]"/><!-- 0..1 A Reference Sequence string -->
  <strand value="[integer]"/><!-- 0..1 Directionality of DNA ( +1/-1) -->
  <windowStart value="[integer]"/><!-- 1..1 Start position of the window on the  reference sequence -->
  <windowEnd value="[integer]"/><!-- 1..1 End position of the window on the reference sequence -->
 </referenceSeq>
 <variant>  <!-- 0..* Sequence variant -->
  <start value="[integer]"/><!-- 0..1 Start position of the variant on the  reference sequence -->
  <end value="[integer]"/><!-- 0..1 End position of the variant on the reference sequence -->
  <observedAllele value="[string]"/><!-- 0..1 Allele that was observed -->
  <referenceAllele value="[string]"/><!-- 0..1 Allele of reference sequence -->
  <cigar value="[string]"/><!-- 0..1 Extended CIGAR string for aligning the sequence with reference bases -->
  <variantPointer><!-- 0..1 Reference(Observation) Pointer to observed variant information --></variantPointer>
 </variant>
 <observedSeq value="[string]"/><!-- 0..1 Observed sequence -->
 <quality>  <!-- 0..* Sequence quality -->
  <type value="[code]"/><!-- 1..1 INDEL | SNP | UNKNOWN -->
  <standardSequence><!-- 0..1 CodeableConcept Standard sequence for comparison --></standardSequence>
  <start value="[integer]"/><!-- 0..1 Start position of the sequence -->
  <end value="[integer]"/><!-- 0..1 End position of the sequence -->
  <score><!-- 0..1 Quantity Quality score --></score>
  <method><!-- 0..1 CodeableConcept Method for quality --></method>
  <truthTP value="[decimal]"/><!-- 0..1 True positives from the perspective of the truth data -->
  <queryTP value="[decimal]"/><!-- 0..1 True positives from the perspective of the query data -->
  <truthFN value="[decimal]"/><!-- 0..1 False negatives -->
  <queryFP value="[decimal]"/><!-- 0..1 False positives -->
  <gtFP value="[decimal]"/><!-- 0..1 False positives where the non-REF alleles in the Truth and Query Call Sets match -->
  <precision value="[decimal]"/><!-- 0..1 Precision -->
  <recall value="[decimal]"/><!-- 0..1 Recall -->
  <fScore value="[decimal]"/><!-- 0..1 F-score -->
 </quality>
 <readCoverage value="[integer]"/><!-- 0..1 Average number of reads representing a given nucleotide in the reconstructed sequence -->
 <repository>  <!-- 0..* External repository which contains detailed report related with observedSeq in this resource -->
  <type value="[code]"/><!-- 1..1 directlink | openapi | login | oauth | other -->
  <url value="[uri]"/><!-- 0..1 URI of the repository -->
  <name value="[string]"/><!-- 0..1 Name of the repository -->
  <datasetId value="[string]"/><!-- 0..1 Id of the dataset that used to call for dataset in repository -->
  <variantsetId value="[string]"/><!-- 0..1 Id of the variantset that used to call for variantset in repository -->
  <readsetId value="[string]"/><!-- 0..1 Id of the read -->
 </repository>
 <pointer><!-- 0..* Reference(Sequence) Pointer to next atomic sequence --></pointer>
 <structureVariant>  <!-- 0..* Structural variant -->
  <precisionOfBoundaries value="[string]"/><!-- 0..1 Precision of boundaries -->
  <reportedaCGHRatio value="[decimal]"/><!-- 0..1 Structural Variant reported aCGH ratio -->
  <length value="[integer]"/><!-- 0..1 Structural Variant Length -->
  <outer>  <!-- 0..1 Structural variant outer -->
   <start value="[integer]"/><!-- 0..1 Structural Variant Outer Start -->
   <end value="[integer]"/><!-- 0..1 Structural Variant Outer End -->
  </outer>
  <inner>  <!-- 0..1 Structural variant inner -->
   <start value="[integer]"/><!-- 0..1 Structural Variant Inner Start -->
   <end value="[integer]"/><!-- 0..1 Structural Variant Inner End -->
  </inner>
 </structureVariant>
</Sequence>

JSON Template

{doco
  "resourceType" : "Sequence",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique ID for this particular sequence. This is a FHIR-defined id
  "type" : "<code>", // AA | DNA | RNA
  "coordinateSystem" : <integer>, // R!  Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
  "patient" : { Reference(Patient) }, // Who and/or what this is about
  "specimen" : { Reference(Specimen) }, // Specimen used for sequencing
  "device" : { Reference(Device) }, // The method for sequencing
  "performer" : { Reference(Organization) }, // Who should be responsible for test result
  "quantity" : { Quantity }, // The number of copies of the seqeunce of interest.  (RNASeq)
  "referenceSeq" : { // Reference sequence
    "chromosome" : { CodeableConcept }, // Chromosome containing genetic finding
    "genomeBuild" : "<string>", // The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
    "referenceSeqId" : { CodeableConcept }, // Reference identifier
    "referenceSeqPointer" : { Reference(Sequence) }, // A Pointer to another Sequence entity as reference sequence
    "referenceSeqString" : "<string>", // A Reference Sequence string
    "strand" : <integer>, // Directionality of DNA ( +1/-1)
    "windowStart" : <integer>, // R!  Start position of the window on the  reference sequence
    "windowEnd" : <integer> // R!  End position of the window on the reference sequence
  },
  "variant" : [{ // Sequence variant
    "start" : <integer>, // Start position of the variant on the  reference sequence
    "end" : <integer>, // End position of the variant on the reference sequence
    "observedAllele" : "<string>", // Allele that was observed
    "referenceAllele" : "<string>", // Allele of reference sequence
    "cigar" : "<string>", // Extended CIGAR string for aligning the sequence with reference bases
    "variantPointer" : { Reference(Observation) } // Pointer to observed variant information
  }],
  "observedSeq" : "<string>", // Observed sequence
  "quality" : [{ // Sequence quality
    "type" : "<code>", // R!  INDEL | SNP | UNKNOWN
    "standardSequence" : { CodeableConcept }, // Standard sequence for comparison
    "start" : <integer>, // Start position of the sequence
    "end" : <integer>, // End position of the sequence
    "score" : { Quantity }, // Quality score
    "method" : { CodeableConcept }, // Method for quality
    "truthTP" : <decimal>, // True positives from the perspective of the truth data
    "queryTP" : <decimal>, // True positives from the perspective of the query data
    "truthFN" : <decimal>, // False negatives
    "queryFP" : <decimal>, // False positives
    "gtFP" : <decimal>, // False positives where the non-REF alleles in the Truth and Query Call Sets match
    "precision" : <decimal>, // Precision
    "recall" : <decimal>, // Recall
    "fScore" : <decimal> // F-score
  }],
  "readCoverage" : <integer>, // Average number of reads representing a given nucleotide in the reconstructed sequence
  "repository" : [{ // External repository which contains detailed report related with observedSeq in this resource
    "type" : "<code>", // R!  directlink | openapi | login | oauth | other
    "url" : "<uri>", // URI of the repository
    "name" : "<string>", // Name of the repository
    "datasetId" : "<string>", // Id of the dataset that used to call for dataset in repository
    "variantsetId" : "<string>", // Id of the variantset that used to call for variantset in repository
    "readsetId" : "<string>" // Id of the read
  }],
  "pointer" : [{ Reference(Sequence) }], // Pointer to next atomic sequence
  "structureVariant" : [{ // Structural variant
    "precisionOfBoundaries" : "<string>", // Precision of boundaries
    "reportedaCGHRatio" : <decimal>, // Structural Variant reported aCGH ratio
    "length" : <integer>, // Structural Variant Length
    "outer" : { // Structural variant outer
      "start" : <integer>, // Structural Variant Outer Start
      "end" : <integer> // Structural Variant Outer End
    },
    "inner" : { // Structural variant inner
      "start" : <integer>, // Structural Variant Inner Start
      "end" : <integer> // Structural Variant Inner End
    }
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Sequence;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Sequence.identifier [ Identifier ], ... ; # 0..* Unique ID for this particular sequence. This is a FHIR-defined id
  fhir:Sequence.type [ code ]; # 0..1 AA | DNA | RNA
  fhir:Sequence.coordinateSystem [ integer ]; # 1..1 Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
  fhir:Sequence.patient [ Reference(Patient) ]; # 0..1 Who and/or what this is about
  fhir:Sequence.specimen [ Reference(Specimen) ]; # 0..1 Specimen used for sequencing
  fhir:Sequence.device [ Reference(Device) ]; # 0..1 The method for sequencing
  fhir:Sequence.performer [ Reference(Organization) ]; # 0..1 Who should be responsible for test result
  fhir:Sequence.quantity [ Quantity ]; # 0..1 The number of copies of the seqeunce of interest.  (RNASeq)
  fhir:Sequence.referenceSeq [ # 0..1 Reference sequence
    fhir:Sequence.referenceSeq.chromosome [ CodeableConcept ]; # 0..1 Chromosome containing genetic finding
    fhir:Sequence.referenceSeq.genomeBuild [ string ]; # 0..1 The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
    fhir:Sequence.referenceSeq.referenceSeqId [ CodeableConcept ]; # 0..1 Reference identifier
    fhir:Sequence.referenceSeq.referenceSeqPointer [ Reference(Sequence) ]; # 0..1 A Pointer to another Sequence entity as reference sequence
    fhir:Sequence.referenceSeq.referenceSeqString [ string ]; # 0..1 A Reference Sequence string
    fhir:Sequence.referenceSeq.strand [ integer ]; # 0..1 Directionality of DNA ( +1/-1)
    fhir:Sequence.referenceSeq.windowStart [ integer ]; # 1..1 Start position of the window on the  reference sequence
    fhir:Sequence.referenceSeq.windowEnd [ integer ]; # 1..1 End position of the window on the reference sequence
  ];
  fhir:Sequence.variant [ # 0..* Sequence variant
    fhir:Sequence.variant.start [ integer ]; # 0..1 Start position of the variant on the  reference sequence
    fhir:Sequence.variant.end [ integer ]; # 0..1 End position of the variant on the reference sequence
    fhir:Sequence.variant.observedAllele [ string ]; # 0..1 Allele that was observed
    fhir:Sequence.variant.referenceAllele [ string ]; # 0..1 Allele of reference sequence
    fhir:Sequence.variant.cigar [ string ]; # 0..1 Extended CIGAR string for aligning the sequence with reference bases
    fhir:Sequence.variant.variantPointer [ Reference(Observation) ]; # 0..1 Pointer to observed variant information
  ], ...;
  fhir:Sequence.observedSeq [ string ]; # 0..1 Observed sequence
  fhir:Sequence.quality [ # 0..* Sequence quality
    fhir:Sequence.quality.type [ code ]; # 1..1 INDEL | SNP | UNKNOWN
    fhir:Sequence.quality.standardSequence [ CodeableConcept ]; # 0..1 Standard sequence for comparison
    fhir:Sequence.quality.start [ integer ]; # 0..1 Start position of the sequence
    fhir:Sequence.quality.end [ integer ]; # 0..1 End position of the sequence
    fhir:Sequence.quality.score [ Quantity ]; # 0..1 Quality score
    fhir:Sequence.quality.method [ CodeableConcept ]; # 0..1 Method for quality
    fhir:Sequence.quality.truthTP [ decimal ]; # 0..1 True positives from the perspective of the truth data
    fhir:Sequence.quality.queryTP [ decimal ]; # 0..1 True positives from the perspective of the query data
    fhir:Sequence.quality.truthFN [ decimal ]; # 0..1 False negatives
    fhir:Sequence.quality.queryFP [ decimal ]; # 0..1 False positives
    fhir:Sequence.quality.gtFP [ decimal ]; # 0..1 False positives where the non-REF alleles in the Truth and Query Call Sets match
    fhir:Sequence.quality.precision [ decimal ]; # 0..1 Precision
    fhir:Sequence.quality.recall [ decimal ]; # 0..1 Recall
    fhir:Sequence.quality.fScore [ decimal ]; # 0..1 F-score
  ], ...;
  fhir:Sequence.readCoverage [ integer ]; # 0..1 Average number of reads representing a given nucleotide in the reconstructed sequence
  fhir:Sequence.repository [ # 0..* External repository which contains detailed report related with observedSeq in this resource
    fhir:Sequence.repository.type [ code ]; # 1..1 directlink | openapi | login | oauth | other
    fhir:Sequence.repository.url [ uri ]; # 0..1 URI of the repository
    fhir:Sequence.repository.name [ string ]; # 0..1 Name of the repository
    fhir:Sequence.repository.datasetId [ string ]; # 0..1 Id of the dataset that used to call for dataset in repository
    fhir:Sequence.repository.variantsetId [ string ]; # 0..1 Id of the variantset that used to call for variantset in repository
    fhir:Sequence.repository.readsetId [ string ]; # 0..1 Id of the read
  ], ...;
  fhir:Sequence.pointer [ Reference(Sequence) ], ... ; # 0..* Pointer to next atomic sequence
  fhir:Sequence.structureVariant [ # 0..* Structural variant
    fhir:Sequence.structureVariant.precisionOfBoundaries [ string ]; # 0..1 Precision of boundaries
    fhir:Sequence.structureVariant.reportedaCGHRatio [ decimal ]; # 0..1 Structural Variant reported aCGH ratio
    fhir:Sequence.structureVariant.length [ integer ]; # 0..1 Structural Variant Length
    fhir:Sequence.structureVariant.outer [ # 0..1 Structural variant outer
      fhir:Sequence.structureVariant.outer.start [ integer ]; # 0..1 Structural Variant Outer Start
      fhir:Sequence.structureVariant.outer.end [ integer ]; # 0..1 Structural Variant Outer End
    ];
    fhir:Sequence.structureVariant.inner [ # 0..1 Structural variant inner
      fhir:Sequence.structureVariant.inner.start [ integer ]; # 0..1 Structural Variant Inner Start
      fhir:Sequence.structureVariant.inner.end [ integer ]; # 0..1 Structural Variant Inner End
    ];
  ], ...;
]

Changes since DSTU2

This resource did not exist in Release 2

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Sequence ΣIDomainResourceInformation about a biological sequence
Only 0 and 1 are valid for coordinateSystem
... identifier Σ0..*IdentifierUnique ID for this particular sequence. This is a FHIR-defined id
... type Σ0..1codeAA | DNA | RNA
sequenceType (Example)
... coordinateSystem Σ1..1integerBase number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
... patient Σ0..1Reference(Patient)Who and/or what this is about
... specimen Σ0..1Reference(Specimen)Specimen used for sequencing
... device Σ0..1Reference(Device)The method for sequencing
... performer Σ0..1Reference(Organization)Who should be responsible for test result
... quantity Σ0..1QuantityThe number of copies of the seqeunce of interest. (RNASeq)
... referenceSeq ΣI0..1BackboneElementReference sequence
Only +1 and -1 are valid for strand
GenomeBuild and chromosome must be both contained if either one of them is contained
Have and only have one of the following elements in referenceSeq : 1. genomeBuild ; 2 referenceSeqId; 3. referenceSeqPointer; 4. referenceSeqString;
.... chromosome Σ0..1CodeableConceptChromosome containing genetic finding
chromosome-human (Example)
.... genomeBuild Σ0..1stringThe Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
.... referenceSeqId Σ0..1CodeableConceptReference identifier
ENSEMBL (Example)
.... referenceSeqPointer Σ0..1Reference(Sequence)A Pointer to another Sequence entity as reference sequence
.... referenceSeqString Σ0..1stringA Reference Sequence string
.... strand Σ0..1integerDirectionality of DNA ( +1/-1)
.... windowStart Σ1..1integerStart position of the window on the reference sequence
.... windowEnd Σ1..1integerEnd position of the window on the reference sequence
... variant Σ0..*BackboneElementSequence variant
.... start Σ0..1integerStart position of the variant on the reference sequence
.... end Σ0..1integerEnd position of the variant on the reference sequence
.... observedAllele Σ0..1stringAllele that was observed
.... referenceAllele Σ0..1stringAllele of reference sequence
.... cigar Σ0..1stringExtended CIGAR string for aligning the sequence with reference bases
.... variantPointer Σ0..1Reference(Observation)Pointer to observed variant information
... observedSeq Σ0..1stringObserved sequence
... quality Σ0..*BackboneElementSequence quality
.... type Σ1..1codeINDEL | SNP | UNKNOWN
qualityType (Required)
.... standardSequence Σ0..1CodeableConceptStandard sequence for comparison
.... start Σ0..1integerStart position of the sequence
.... end Σ0..1integerEnd position of the sequence
.... score Σ0..1QuantityQuality score
.... method Σ0..1CodeableConceptMethod for quality
.... truthTP Σ0..1decimalTrue positives from the perspective of the truth data
.... queryTP Σ0..1decimalTrue positives from the perspective of the query data
.... truthFN Σ0..1decimalFalse negatives
.... queryFP Σ0..1decimalFalse positives
.... gtFP Σ0..1decimalFalse positives where the non-REF alleles in the Truth and Query Call Sets match
.... precision Σ0..1decimalPrecision
.... recall Σ0..1decimalRecall
.... fScore Σ0..1decimalF-score
... readCoverage Σ0..1integerAverage number of reads representing a given nucleotide in the reconstructed sequence
... repository Σ0..*BackboneElementExternal repository which contains detailed report related with observedSeq in this resource
.... type Σ1..1codedirectlink | openapi | login | oauth | other
repositoryType (Required)
.... url Σ0..1uriURI of the repository
.... name Σ0..1stringName of the repository
.... datasetId Σ0..1stringId of the dataset that used to call for dataset in repository
.... variantsetId Σ0..1stringId of the variantset that used to call for variantset in repository
.... readsetId Σ0..1stringId of the read
... pointer Σ0..*Reference(Sequence)Pointer to next atomic sequence
... structureVariant Σ0..*BackboneElementStructural variant
.... precisionOfBoundaries Σ0..1stringPrecision of boundaries
.... reportedaCGHRatio Σ0..1decimalStructural Variant reported aCGH ratio
.... length Σ0..1integerStructural Variant Length
.... outer Σ0..1BackboneElementStructural variant outer
..... start Σ0..1integerStructural Variant Outer Start
..... end Σ0..1integerStructural Variant Outer End
.... inner Σ0..1BackboneElementStructural variant inner
..... start Σ0..1integerStructural Variant Inner Start
..... end Σ0..1integerStructural Variant Inner End

doco Documentation for this format

UML Diagram (Legend)

Sequence (DomainResource)A unique identifier for this particular sequence instance. This is a FHIR-defined ididentifier : Identifier [0..*]Amino Acid Sequence/ DNA Sequence / RNA Sequencetype : code [0..1] « Type if a sequence -- DNA, RNA, or amino acid sequence (Strength=Example)sequenceType?? »Whether the sequence is numbered starting at 0 (0-based numbering or coordinates, inclusive start, exclusive end) or starting at 1 (1-based numbering, inclusive start and inclusive end)coordinateSystem : integer [1..1]The patient whose sequencing results are described by this resourcepatient : Reference [0..1] « Patient »Specimen used for sequencingspecimen : Reference [0..1] « Specimen »The method for sequencing, for example, chip informationdevice : Reference [0..1] « Device »The organization or lab that should be responsible for this resultperformer : Reference [0..1] « Organization »The number of copies of the seqeunce of interest. (RNASeq)quantity : Quantity [0..1]Sequence that was observed. It is the result marked by referenceSeq along with variant records on referenceSeq. This shall starts from referenceSeq.windowStart and end by referenceSeq.windowEndobservedSeq : string [0..1]Coverage (read depth or depth) is the average number of reads representing a given nucleotide in the reconstructed sequencereadCoverage : integer [0..1]Pointer to next atomic sequence which at most contains one variantpointer : Reference [0..*] « Sequence »ReferenceSeqStructural unit composed of a nucleic acid molecule which controls its own replication through the interaction of specific proteins at one or more origins of replication ([SO:0000340](http://www.sequenceontology.org/browser/current_svn/term/SO:0000340))chromosome : CodeableConcept [0..1] « Chromosome number for human (Strength=Example)chromosome-human?? »The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'. Version number must be included if a versioned release of a primary build was usedgenomeBuild : string [0..1]Reference identifier of reference sequence submitted to NCBI. It must match the type in the Sequence.type field. For example, the prefix, “NG_” identifies reference sequence for genes, “NM_” for messenger RNA transcripts, and “NP_” for amino acid sequencesreferenceSeqId : CodeableConcept [0..1] « Reference identifier (Strength=Example)ENSEMBL?? »A Pointer to another Sequence entity as reference sequencereferenceSeqPointer : Reference [0..1] « Sequence »A Reference Sequence stringreferenceSeqString : string [0..1]Directionality of DNA sequence. Available values are "1" for the plus strand (5' to 3')/Watson/Sense/positive and "-1" for the minus strand(3' to 5')/Crick/Antisense/negativestrand : integer [0..1]Start position of the window on the reference sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusivewindowStart : integer [1..1]End position of the window on the reference sequence. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionwindowEnd : integer [1..1]VariantStart position of the variant on the reference sequence.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]End position of the variant on the reference sequence.If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the observed sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.endobservedAllele : string [0..1]An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the reference sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.endreferenceAllele : string [0..1]Extended CIGAR string for aligning the sequence with reference bases. See detailed documentation [here](http://support.illumina.com/help/SequencingAnalysisWorkflow/Content/Vault/Informatics/Sequencing_Analysis/CASAVA/swSEQ_mCA_ExtendedCIGARFormat.htm)cigar : string [0..1]A pointer to an Observation containing variant informationvariantPointer : Reference [0..1] « Observation »QualityINDEL / SNP / Undefined varianttype : code [1..1] « Type for quality report (Strength=Required)qualityType! »Gold standard sequence used for comparing againststandardSequence : CodeableConcept [0..1]Start position of the sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]End position of the sequence.If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]The score of an experimentally derived feature such as a p-value ([SO:0001685](http://www.sequenceontology.org/browser/current_svn/term/SO:0001685))score : Quantity [0..1]Method for qualitymethod : CodeableConcept [0..1]True positives, from the perspective of the truth data, i.e. the number of sites in the Truth Call Set for which there are paths through the Query Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the eventtruthTP : decimal [0..1]True positives, from the perspective of the query data, i.e. the number of sites in the Query Call Set for which there are paths through the Truth Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the eventqueryTP : decimal [0..1]False negatives, i.e. the number of sites in the Truth Call Set for which there is no path through the Query Call Set that is consistent with all of the alleles at this site, or sites for which there is an inaccurate genotype call for the event. Sites with correct variant but incorrect genotype are counted heretruthFN : decimal [0..1]False positives, i.e. the number of sites in the Query Call Set for which there is no path through the Truth Call Set that is consistent with this site. Sites with correct variant but incorrect genotype are counted herequeryFP : decimal [0..1]The number of false positives where the non-REF alleles in the Truth and Query Call Sets match (i.e. cases where the truth is 1/1 and the query is 0/1 or similar)gtFP : decimal [0..1]QUERY.TP / (QUERY.TP + QUERY.FP)precision : decimal [0..1]TRUTH.TP / (TRUTH.TP + TRUTH.FN)recall : decimal [0..1]Harmonic mean of Recall and Precision, computed as: 2 * precision * recall / (precision + recall)fScore : decimal [0..1]RepositoryClick and see / RESTful API / Need login to see / RESTful API with authentication / Other ways to see resourcetype : code [1..1] « Type for access of external uri (Strength=Required)repositoryType! »URI of an external repository which contains further details about the genetics dataurl : uri [0..1]URI of an external repository which contains further details about the genetics dataname : string [0..1]Id of the variant in this external repository. The server will understand how to use this id to call for more info about datasets in external repositorydatasetId : string [0..1]Id of the variantset in this external repository. The server will understand how to use this id to call for more info about variantsets in external repositoryvariantsetId : string [0..1]Id of the read in this external repositoryreadsetId : string [0..1]StructureVariantPrecision of boundariesprecisionOfBoundaries : string [0..1]Structural Variant reported aCGH ratioreportedaCGHRatio : decimal [0..1]Structural Variant Lengthlength : integer [0..1]OuterStructural Variant Outer Start.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]Structural Variant Outer End. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]InnerStructural Variant Inner Start.If the coordinate system is either 0-based or 1-based, then start position is inclusivestart : integer [0..1]Structural Variant Inner End. If the coordinate system is 0-based then end is is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last positionend : integer [0..1]A sequence that is used as a reference to describe variants that are present in a sequence analyzedreferenceSeq[0..1]The definition of variant here originates from Sequence ontology ([variant_of](http://www.sequenceontology.org/browser/current_svn/term/variant_of)). This element can represent amino acid or nucleic sequence change(including insertion,deletion,SNP,etc.) It can represent some complex mutation or segment variation with the assist of CIGAR stringvariant[0..*]An experimental feature attribute that defines the quality of the feature in a quantitative way, such as a phred quality score ([SO:0001686](http://www.sequenceontology.org/browser/current_svn/term/SO:0001686))quality[0..*]Configurations of the external repository. The repository shall store target's observedSeq or records related with target's observedSeqrepository[0..*]Structural variant outerouter[0..1]Structural variant innerinner[0..1]Structural variantstructureVariant[0..*]

XML Template

<Sequence xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Unique ID for this particular sequence. This is a FHIR-defined id --></identifier>
 <type value="[code]"/><!-- 0..1 AA | DNA | RNA -->
 <coordinateSystem value="[integer]"/><!-- 1..1 Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end) -->
 <patient><!-- 0..1 Reference(Patient) Who and/or what this is about --></patient>
 <specimen><!-- 0..1 Reference(Specimen) Specimen used for sequencing --></specimen>
 <device><!-- 0..1 Reference(Device) The method for sequencing --></device>
 <performer><!-- 0..1 Reference(Organization) Who should be responsible for test result --></performer>
 <quantity><!-- 0..1 Quantity The number of copies of the seqeunce of interest.  (RNASeq) --></quantity>
 <referenceSeq>  <!-- 0..1 Reference sequence -->
  <chromosome><!-- 0..1 CodeableConcept Chromosome containing genetic finding --></chromosome>
  <genomeBuild value="[string]"/><!-- 0..1 The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37' -->
  <referenceSeqId><!-- 0..1 CodeableConcept Reference identifier --></referenceSeqId>
  <referenceSeqPointer><!-- 0..1 Reference(Sequence) A Pointer to another Sequence entity as reference sequence --></referenceSeqPointer>
  <referenceSeqString value="[string]"/><!-- 0..1 A Reference Sequence string -->
  <strand value="[integer]"/><!-- 0..1 Directionality of DNA ( +1/-1) -->
  <windowStart value="[integer]"/><!-- 1..1 Start position of the window on the  reference sequence -->
  <windowEnd value="[integer]"/><!-- 1..1 End position of the window on the reference sequence -->
 </referenceSeq>
 <variant>  <!-- 0..* Sequence variant -->
  <start value="[integer]"/><!-- 0..1 Start position of the variant on the  reference sequence -->
  <end value="[integer]"/><!-- 0..1 End position of the variant on the reference sequence -->
  <observedAllele value="[string]"/><!-- 0..1 Allele that was observed -->
  <referenceAllele value="[string]"/><!-- 0..1 Allele of reference sequence -->
  <cigar value="[string]"/><!-- 0..1 Extended CIGAR string for aligning the sequence with reference bases -->
  <variantPointer><!-- 0..1 Reference(Observation) Pointer to observed variant information --></variantPointer>
 </variant>
 <observedSeq value="[string]"/><!-- 0..1 Observed sequence -->
 <quality>  <!-- 0..* Sequence quality -->
  <type value="[code]"/><!-- 1..1 INDEL | SNP | UNKNOWN -->
  <standardSequence><!-- 0..1 CodeableConcept Standard sequence for comparison --></standardSequence>
  <start value="[integer]"/><!-- 0..1 Start position of the sequence -->
  <end value="[integer]"/><!-- 0..1 End position of the sequence -->
  <score><!-- 0..1 Quantity Quality score --></score>
  <method><!-- 0..1 CodeableConcept Method for quality --></method>
  <truthTP value="[decimal]"/><!-- 0..1 True positives from the perspective of the truth data -->
  <queryTP value="[decimal]"/><!-- 0..1 True positives from the perspective of the query data -->
  <truthFN value="[decimal]"/><!-- 0..1 False negatives -->
  <queryFP value="[decimal]"/><!-- 0..1 False positives -->
  <gtFP value="[decimal]"/><!-- 0..1 False positives where the non-REF alleles in the Truth and Query Call Sets match -->
  <precision value="[decimal]"/><!-- 0..1 Precision -->
  <recall value="[decimal]"/><!-- 0..1 Recall -->
  <fScore value="[decimal]"/><!-- 0..1 F-score -->
 </quality>
 <readCoverage value="[integer]"/><!-- 0..1 Average number of reads representing a given nucleotide in the reconstructed sequence -->
 <repository>  <!-- 0..* External repository which contains detailed report related with observedSeq in this resource -->
  <type value="[code]"/><!-- 1..1 directlink | openapi | login | oauth | other -->
  <url value="[uri]"/><!-- 0..1 URI of the repository -->
  <name value="[string]"/><!-- 0..1 Name of the repository -->
  <datasetId value="[string]"/><!-- 0..1 Id of the dataset that used to call for dataset in repository -->
  <variantsetId value="[string]"/><!-- 0..1 Id of the variantset that used to call for variantset in repository -->
  <readsetId value="[string]"/><!-- 0..1 Id of the read -->
 </repository>
 <pointer><!-- 0..* Reference(Sequence) Pointer to next atomic sequence --></pointer>
 <structureVariant>  <!-- 0..* Structural variant -->
  <precisionOfBoundaries value="[string]"/><!-- 0..1 Precision of boundaries -->
  <reportedaCGHRatio value="[decimal]"/><!-- 0..1 Structural Variant reported aCGH ratio -->
  <length value="[integer]"/><!-- 0..1 Structural Variant Length -->
  <outer>  <!-- 0..1 Structural variant outer -->
   <start value="[integer]"/><!-- 0..1 Structural Variant Outer Start -->
   <end value="[integer]"/><!-- 0..1 Structural Variant Outer End -->
  </outer>
  <inner>  <!-- 0..1 Structural variant inner -->
   <start value="[integer]"/><!-- 0..1 Structural Variant Inner Start -->
   <end value="[integer]"/><!-- 0..1 Structural Variant Inner End -->
  </inner>
 </structureVariant>
</Sequence>

JSON Template

{doco
  "resourceType" : "Sequence",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Unique ID for this particular sequence. This is a FHIR-defined id
  "type" : "<code>", // AA | DNA | RNA
  "coordinateSystem" : <integer>, // R!  Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
  "patient" : { Reference(Patient) }, // Who and/or what this is about
  "specimen" : { Reference(Specimen) }, // Specimen used for sequencing
  "device" : { Reference(Device) }, // The method for sequencing
  "performer" : { Reference(Organization) }, // Who should be responsible for test result
  "quantity" : { Quantity }, // The number of copies of the seqeunce of interest.  (RNASeq)
  "referenceSeq" : { // Reference sequence
    "chromosome" : { CodeableConcept }, // Chromosome containing genetic finding
    "genomeBuild" : "<string>", // The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
    "referenceSeqId" : { CodeableConcept }, // Reference identifier
    "referenceSeqPointer" : { Reference(Sequence) }, // A Pointer to another Sequence entity as reference sequence
    "referenceSeqString" : "<string>", // A Reference Sequence string
    "strand" : <integer>, // Directionality of DNA ( +1/-1)
    "windowStart" : <integer>, // R!  Start position of the window on the  reference sequence
    "windowEnd" : <integer> // R!  End position of the window on the reference sequence
  },
  "variant" : [{ // Sequence variant
    "start" : <integer>, // Start position of the variant on the  reference sequence
    "end" : <integer>, // End position of the variant on the reference sequence
    "observedAllele" : "<string>", // Allele that was observed
    "referenceAllele" : "<string>", // Allele of reference sequence
    "cigar" : "<string>", // Extended CIGAR string for aligning the sequence with reference bases
    "variantPointer" : { Reference(Observation) } // Pointer to observed variant information
  }],
  "observedSeq" : "<string>", // Observed sequence
  "quality" : [{ // Sequence quality
    "type" : "<code>", // R!  INDEL | SNP | UNKNOWN
    "standardSequence" : { CodeableConcept }, // Standard sequence for comparison
    "start" : <integer>, // Start position of the sequence
    "end" : <integer>, // End position of the sequence
    "score" : { Quantity }, // Quality score
    "method" : { CodeableConcept }, // Method for quality
    "truthTP" : <decimal>, // True positives from the perspective of the truth data
    "queryTP" : <decimal>, // True positives from the perspective of the query data
    "truthFN" : <decimal>, // False negatives
    "queryFP" : <decimal>, // False positives
    "gtFP" : <decimal>, // False positives where the non-REF alleles in the Truth and Query Call Sets match
    "precision" : <decimal>, // Precision
    "recall" : <decimal>, // Recall
    "fScore" : <decimal> // F-score
  }],
  "readCoverage" : <integer>, // Average number of reads representing a given nucleotide in the reconstructed sequence
  "repository" : [{ // External repository which contains detailed report related with observedSeq in this resource
    "type" : "<code>", // R!  directlink | openapi | login | oauth | other
    "url" : "<uri>", // URI of the repository
    "name" : "<string>", // Name of the repository
    "datasetId" : "<string>", // Id of the dataset that used to call for dataset in repository
    "variantsetId" : "<string>", // Id of the variantset that used to call for variantset in repository
    "readsetId" : "<string>" // Id of the read
  }],
  "pointer" : [{ Reference(Sequence) }], // Pointer to next atomic sequence
  "structureVariant" : [{ // Structural variant
    "precisionOfBoundaries" : "<string>", // Precision of boundaries
    "reportedaCGHRatio" : <decimal>, // Structural Variant reported aCGH ratio
    "length" : <integer>, // Structural Variant Length
    "outer" : { // Structural variant outer
      "start" : <integer>, // Structural Variant Outer Start
      "end" : <integer> // Structural Variant Outer End
    },
    "inner" : { // Structural variant inner
      "start" : <integer>, // Structural Variant Inner Start
      "end" : <integer> // Structural Variant Inner End
    }
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Sequence;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:Sequence.identifier [ Identifier ], ... ; # 0..* Unique ID for this particular sequence. This is a FHIR-defined id
  fhir:Sequence.type [ code ]; # 0..1 AA | DNA | RNA
  fhir:Sequence.coordinateSystem [ integer ]; # 1..1 Base number of coordinate system (0 for 0-based numbering or coordinates, inclusive start, exclusive end, 1 for 1-based numbering, inclusive start, inclusive end)
  fhir:Sequence.patient [ Reference(Patient) ]; # 0..1 Who and/or what this is about
  fhir:Sequence.specimen [ Reference(Specimen) ]; # 0..1 Specimen used for sequencing
  fhir:Sequence.device [ Reference(Device) ]; # 0..1 The method for sequencing
  fhir:Sequence.performer [ Reference(Organization) ]; # 0..1 Who should be responsible for test result
  fhir:Sequence.quantity [ Quantity ]; # 0..1 The number of copies of the seqeunce of interest.  (RNASeq)
  fhir:Sequence.referenceSeq [ # 0..1 Reference sequence
    fhir:Sequence.referenceSeq.chromosome [ CodeableConcept ]; # 0..1 Chromosome containing genetic finding
    fhir:Sequence.referenceSeq.genomeBuild [ string ]; # 0..1 The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
    fhir:Sequence.referenceSeq.referenceSeqId [ CodeableConcept ]; # 0..1 Reference identifier
    fhir:Sequence.referenceSeq.referenceSeqPointer [ Reference(Sequence) ]; # 0..1 A Pointer to another Sequence entity as reference sequence
    fhir:Sequence.referenceSeq.referenceSeqString [ string ]; # 0..1 A Reference Sequence string
    fhir:Sequence.referenceSeq.strand [ integer ]; # 0..1 Directionality of DNA ( +1/-1)
    fhir:Sequence.referenceSeq.windowStart [ integer ]; # 1..1 Start position of the window on the  reference sequence
    fhir:Sequence.referenceSeq.windowEnd [ integer ]; # 1..1 End position of the window on the reference sequence
  ];
  fhir:Sequence.variant [ # 0..* Sequence variant
    fhir:Sequence.variant.start [ integer ]; # 0..1 Start position of the variant on the  reference sequence
    fhir:Sequence.variant.end [ integer ]; # 0..1 End position of the variant on the reference sequence
    fhir:Sequence.variant.observedAllele [ string ]; # 0..1 Allele that was observed
    fhir:Sequence.variant.referenceAllele [ string ]; # 0..1 Allele of reference sequence
    fhir:Sequence.variant.cigar [ string ]; # 0..1 Extended CIGAR string for aligning the sequence with reference bases
    fhir:Sequence.variant.variantPointer [ Reference(Observation) ]; # 0..1 Pointer to observed variant information
  ], ...;
  fhir:Sequence.observedSeq [ string ]; # 0..1 Observed sequence
  fhir:Sequence.quality [ # 0..* Sequence quality
    fhir:Sequence.quality.type [ code ]; # 1..1 INDEL | SNP | UNKNOWN
    fhir:Sequence.quality.standardSequence [ CodeableConcept ]; # 0..1 Standard sequence for comparison
    fhir:Sequence.quality.start [ integer ]; # 0..1 Start position of the sequence
    fhir:Sequence.quality.end [ integer ]; # 0..1 End position of the sequence
    fhir:Sequence.quality.score [ Quantity ]; # 0..1 Quality score
    fhir:Sequence.quality.method [ CodeableConcept ]; # 0..1 Method for quality
    fhir:Sequence.quality.truthTP [ decimal ]; # 0..1 True positives from the perspective of the truth data
    fhir:Sequence.quality.queryTP [ decimal ]; # 0..1 True positives from the perspective of the query data
    fhir:Sequence.quality.truthFN [ decimal ]; # 0..1 False negatives
    fhir:Sequence.quality.queryFP [ decimal ]; # 0..1 False positives
    fhir:Sequence.quality.gtFP [ decimal ]; # 0..1 False positives where the non-REF alleles in the Truth and Query Call Sets match
    fhir:Sequence.quality.precision [ decimal ]; # 0..1 Precision
    fhir:Sequence.quality.recall [ decimal ]; # 0..1 Recall
    fhir:Sequence.quality.fScore [ decimal ]; # 0..1 F-score
  ], ...;
  fhir:Sequence.readCoverage [ integer ]; # 0..1 Average number of reads representing a given nucleotide in the reconstructed sequence
  fhir:Sequence.repository [ # 0..* External repository which contains detailed report related with observedSeq in this resource
    fhir:Sequence.repository.type [ code ]; # 1..1 directlink | openapi | login | oauth | other
    fhir:Sequence.repository.url [ uri ]; # 0..1 URI of the repository
    fhir:Sequence.repository.name [ string ]; # 0..1 Name of the repository
    fhir:Sequence.repository.datasetId [ string ]; # 0..1 Id of the dataset that used to call for dataset in repository
    fhir:Sequence.repository.variantsetId [ string ]; # 0..1 Id of the variantset that used to call for variantset in repository
    fhir:Sequence.repository.readsetId [ string ]; # 0..1 Id of the read
  ], ...;
  fhir:Sequence.pointer [ Reference(Sequence) ], ... ; # 0..* Pointer to next atomic sequence
  fhir:Sequence.structureVariant [ # 0..* Structural variant
    fhir:Sequence.structureVariant.precisionOfBoundaries [ string ]; # 0..1 Precision of boundaries
    fhir:Sequence.structureVariant.reportedaCGHRatio [ decimal ]; # 0..1 Structural Variant reported aCGH ratio
    fhir:Sequence.structureVariant.length [ integer ]; # 0..1 Structural Variant Length
    fhir:Sequence.structureVariant.outer [ # 0..1 Structural variant outer
      fhir:Sequence.structureVariant.outer.start [ integer ]; # 0..1 Structural Variant Outer Start
      fhir:Sequence.structureVariant.outer.end [ integer ]; # 0..1 Structural Variant Outer End
    ];
    fhir:Sequence.structureVariant.inner [ # 0..1 Structural variant inner
      fhir:Sequence.structureVariant.inner.start [ integer ]; # 0..1 Structural Variant Inner Start
      fhir:Sequence.structureVariant.inner.end [ integer ]; # 0..1 Structural Variant Inner End
    ];
  ], ...;
]

Changes since DSTU2

This resource did not exist in Release 2

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron (for ) + JSON Schema, ShEx (for Turtle), JSON-LD (for RDF as JSON-LD),

PathDefinitionTypeReference
Sequence.type Type if a sequence -- DNA, RNA, or amino acid sequenceExamplesequenceType
Sequence.referenceSeq.chromosome Chromosome number for humanExamplechromosome-human
Sequence.referenceSeq.referenceSeqId Reference identifierExampleENSEMBL
Sequence.quality.type Type for quality reportRequiredqualityType
Sequence.repository.type Type for access of external uriRequiredrepositoryType

  • seq-3: Only 0 and 1 are valid for coordinateSystem (expression : coordinateSystem = 1 or coordinateSystem = 0)
  • seq-4: On Sequence.referenceSeq: Only +1 and -1 are valid for strand (expression on Sequence.referenceSeq: strand.empty() or strand = 1 or strand = -1)
  • seq-5: On Sequence.referenceSeq: GenomeBuild and chromosome must be both contained if either one of them is contained (expression on Sequence.referenceSeq: (chromosome.empty() and genomeBuild.empty()) or (chromosome.exists() and genomeBuild.exists()))
  • seq-6: On Sequence.referenceSeq: Have and only have one of the following elements in referenceSeq : 1. genomeBuild ; 2 referenceSeqId; 3. referenceSeqPointer; 4. referenceSeqString; (expression on Sequence.referenceSeq: (genomeBuild.count()+referenceSeqId.count()+ referenceSeqPointer.count()+ referenceSeqString.count()) = 1)

When saving the variant information, the nucleic acid will be numbered with order. Some files are using 0-based coordiantes (e.g. BCD file format) while some files are using 1-based coordinates (e.g. VCF file format) . The element coordinateSystem in Sequence Resource contains this information.

Sequence.coordinateSystem constraints within two possible values: 0 for 0-based system, which will mark the sequence from number 0, while 1 for 1-based system, which will begin marking the first position with number 1. The significant difference between two system is the end position. In 0-based system, the end position is exclusive , which means the last position will not be contained in the sequence window while in 1-based system, the end position is inclusive , which means the last position is included in the sequence window. Note both systems has an inclusive start position.

For example, ACGTGCAT will be numbered from 1 to 8 in 1-based system and will be numbered from 0 to 8 in 0-based system to mark flanks (i.e. place between two Nucleotide). So the interval [3,5] in 1-based system is GTG while interval [2,5) in 0-based system is same segment GTG.

There are lots of definition concerning with the Directionality of DNA or RNA. Here strand element in Sequence resource is defined to have constraints with value +1 and -1 , to indicate what is the direction for nucleotide series. In order to avoid confusion, we use +1 to express the "plus" strand (5' to 3') and -1 to express the "minus" strand (3' to 5'). Here is a very simple mapping that indicates which number the expression will be represented.

+1 -1
Watson Crick
Sense Antisense
positive negative

Here is a small-scale example: if 5' GCGATATCGCAAA 3' is the data, then GC..AAA is plus strand while AAA..CG is the minus strand.

We hope that string of observedSeq can be constrained more than just any normal string but with notation tables. Here we present what the nucleotide acid stirng should be constrianed within the range:

A --> adenosine M --> A C (amino) U --> uridine H --> A C T V --> G C A
C --> cytidine S --> G C (strong) D --> G A T K --> G T (keto)
G --> guanine W --> A T (weak) R --> G A (purine) N --> A G C T (any)
T --> thymidine B --> G T C Y --> T C (pyrimidine) - --> gap of indeterminate length
while the amino acid string should be constrained within the range:
A alanine P proline B aspartate or asparagine Q glutamine
C cystine R arginine D aspartate S serine
E glutamate T threonine F phenylalanine U selenocysteine
G glycine V valine H histidine W tryptophan
I isoleucine Y tyrosine K lysine Z glutamate or glutamine
L leucine X any M methionine * translation stop
N asparagine - gap of indeterminate length

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionPathsIn Common
chromosometokenChromosome number of the reference sequenceSequence.referenceSeq.chromosome
coordinatecompositeSearch parameter for region of the reference DNA sequence string. This will refer to part of a locus or part of a gene where search region will be represented in 1-based system. Since the coordinateSystem can either be 0-based or 1-based, this search query will include the result of both coordinateSystem that contains the equivalent segment of the gene or whole genome sequence. For example, a search for sequence can be represented as `coordinate=1$lt345$gt123`, this means it will search for the Sequence resource on chromosome 1 and with position >123 and <345, where in 1-based system resource, all strings within region 1:124-344 will be revealed, while in 0-based system resource, all strings within region 1:123-344 will be revealed. You may want to check detail about 0-based v.s. 1-based above.
endnumberEnd position (0-based exclusive, which menas the acid at this position will not be included, 1-based inclusive, which means the acid at this position will be included) of the reference sequence.Sequence.referenceSeq.windowEnd
identifiertokenThe unique identity for a particular sequenceSequence.identifier
patientreferenceThe subject that the observation is aboutSequence.patient
(Patient)
startnumberStart position (0-based inclusive, 1-based inclusive, that means the nucleic acid or amino acid at this position will be included) of the reference sequence.Sequence.referenceSeq.windowStart
typetokenAmino Acid Sequence/ DNA Sequence / RNA SequenceSequence.type