FHIR Release 3 (STU)

This page is part of the FHIR Specification (v3.0.2: STU 3). 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.5 Resource Sequence - Content

Clinical Genomics Work Group Maturity Level: 1 Trial Use Compartments: Not linked to any defined compartments

Raw data describing a biological sequence.

10.5.1 Scope and Usage

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 to implementation guidance document here .

10.5.1.1 Genetic Standards and Resources include:

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.

10.5.2 Boundaries and Relationships

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

10.5.3 Resource Content

Structure

Name Flags Card. Type Description & Constraints doco
.. Sequence ΣIDomainResource Information about a biological sequence
+ Only 0 and 1 are valid for coordinateSystem
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*Identifier Unique ID for this particular sequence. This is a FHIR-defined id
... type Σ0..1code aa | dna | rna
sequenceType (Example)
... coordinateSystem Σ1..1integer 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..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..1Quantity The number of copies of the seqeunce of interest. (RNASeq)
... referenceSeq ΣI0..1BackboneElement A sequence used as reference
+ 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..1CodeableConcept Chromosome containing genetic finding
chromosome-human (Example)
.... genomeBuild Σ0..1string The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
.... referenceSeqId Σ0..1CodeableConcept Reference identifier
ENSEMBL (Example)
.... referenceSeqPointer Σ0..1Reference(Sequence)A Pointer to another Sequence entity as reference sequence
.... referenceSeqString Σ0..1string A string to represent reference sequence
.... strand Σ0..1integer Directionality of DNA ( +1/-1)
.... windowStart Σ1..1integer Start position of the window on the reference sequence
.... windowEnd Σ1..1integer End position of the window on the reference sequence
... variant Σ0..*BackboneElement Variant in sequence
.... start Σ0..1integer Start position of the variant on the reference sequence
.... end Σ0..1integer End position of the variant on the reference sequence
.... observedAllele Σ0..1string Allele that was observed
.... referenceAllele Σ0..1string Allele in the reference sequence
.... cigar Σ0..1string Extended CIGAR string for aligning the sequence with reference bases
.... variantPointer Σ0..1Reference(Observation)Pointer to observed variant information
... observedSeq Σ0..1string Sequence that was observed
... quality Σ0..*BackboneElement An set of value as quality of sequence
.... type Σ1..1code indel | snp | unknown
qualityType (Required)
.... standardSequence Σ0..1CodeableConcept Standard sequence for comparison
FDA-StandardSequence (Example)
.... start Σ0..1integer Start position of the sequence
.... end Σ0..1integer End position of the sequence
.... score Σ0..1Quantity Quality score for the comparison
.... method Σ0..1CodeableConcept Method to get quality
FDA-Method (Example)
.... truthTP Σ0..1decimal True positives from the perspective of the truth data
.... queryTP Σ0..1decimal True positives from the perspective of the query data
.... truthFN Σ0..1decimal False negatives
.... queryFP Σ0..1decimal False positives
.... gtFP Σ0..1decimal False positives where the non-REF alleles in the Truth and Query Call Sets match
.... precision Σ0..1decimal Precision of comparison
.... recall Σ0..1decimal Recall of comparison
.... fScore Σ0..1decimal F-score
... readCoverage Σ0..1integer Average number of reads representing a given nucleotide in the reconstructed sequence
... repository Σ0..*BackboneElement External repository which contains detailed report related with observedSeq in this resource
.... type Σ1..1code directlink | openapi | login | oauth | other
repositoryType (Required)
.... url Σ0..1uri URI of the repository
.... name Σ0..1string Repository's name
.... datasetId Σ0..1string Id of the dataset that used to call for dataset in repository
.... variantsetId Σ0..1string Id of the variantset that used to call for variantset in repository
.... readsetId Σ0..1string Id of the read
... pointer Σ0..*Reference(Sequence)Pointer to next atomic sequence

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 string like "ACGT"referenceSeqString : 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] Reference identifier of the sequence that used to mark the quality of tested samples. (Strength=Example)FDA-StandardSequence?? 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]Which method is used to get sequence qualitymethod : CodeableConcept [0..1] The method used to evaluate the numerical quality of the observed sequence. (Strength=Example)FDA-Method?? 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]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..*]

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 A sequence used as reference -->
 <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 string to represent reference sequence  -->
 <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..* Variant in sequence -->
 <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 in the 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 Sequence that was observed  -->
 <quality> <!-- 0..* An set of value as quality of sequence -->
 <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 for the comparison  --></score>
 <method><!-- 0..1 CodeableConcept  Method to get 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 of comparison  -->
 <recall value="[decimal ]"/><!-- 0..1 Recall of comparison  -->
 <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 Repository's name  -->
 <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>
</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" : { // A sequence used as reference 
 "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 string to represent reference sequence 
 "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" : [{ // Variant in sequence 
 "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 in the reference sequence 
 "cigar" : "<string >", // Extended CIGAR string for aligning the sequence with reference bases 
 "variantPointer" : { Reference(Observation) } // Pointer to observed variant information 
 }],
 "observedSeq" : "<string >", // Sequence that was observed 
 "quality" : [{ // An set of value as quality of sequence 
 "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 for the comparison 
 "method" : { CodeableConcept  }, // Method to get 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 of comparison 
 "recall" : <decimal >, // Recall of comparison 
 "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 >", // Repository's name 
 "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 
}

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 A sequence used as reference
 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 string to represent reference sequence
 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..* Variant in sequence
 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 in the 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 Sequence that was observed
 fhir:Sequence.quality[ # 0..* An set of value as quality of sequence
 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 for the comparison
 fhir:Sequence.quality.method[ CodeableConcept ]; # 0..1 Method to get 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 of comparison
 fhir:Sequence.quality.recall[ decimal ]; # 0..1 Recall of comparison
 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 Repository's name
 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
]

Changes since DSTU2

This resource did not exist in Release 2

This analysis is available as XML or JSON.

Structure

Name Flags Card. Type Description & Constraints doco
.. Sequence ΣIDomainResource Information about a biological sequence
+ Only 0 and 1 are valid for coordinateSystem
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*Identifier Unique ID for this particular sequence. This is a FHIR-defined id
... type Σ0..1code aa | dna | rna
sequenceType (Example)
... coordinateSystem Σ1..1integer 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..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..1Quantity The number of copies of the seqeunce of interest. (RNASeq)
... referenceSeq ΣI0..1BackboneElement A sequence used as reference
+ 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..1CodeableConcept Chromosome containing genetic finding
chromosome-human (Example)
.... genomeBuild Σ0..1string The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'
.... referenceSeqId Σ0..1CodeableConcept Reference identifier
ENSEMBL (Example)
.... referenceSeqPointer Σ0..1Reference(Sequence)A Pointer to another Sequence entity as reference sequence
.... referenceSeqString Σ0..1string A string to represent reference sequence
.... strand Σ0..1integer Directionality of DNA ( +1/-1)
.... windowStart Σ1..1integer Start position of the window on the reference sequence
.... windowEnd Σ1..1integer End position of the window on the reference sequence
... variant Σ0..*BackboneElement Variant in sequence
.... start Σ0..1integer Start position of the variant on the reference sequence
.... end Σ0..1integer End position of the variant on the reference sequence
.... observedAllele Σ0..1string Allele that was observed
.... referenceAllele Σ0..1string Allele in the reference sequence
.... cigar Σ0..1string Extended CIGAR string for aligning the sequence with reference bases
.... variantPointer Σ0..1Reference(Observation)Pointer to observed variant information
... observedSeq Σ0..1string Sequence that was observed
... quality Σ0..*BackboneElement An set of value as quality of sequence
.... type Σ1..1code indel | snp | unknown
qualityType (Required)
.... standardSequence Σ0..1CodeableConcept Standard sequence for comparison
FDA-StandardSequence (Example)
.... start Σ0..1integer Start position of the sequence
.... end Σ0..1integer End position of the sequence
.... score Σ0..1Quantity Quality score for the comparison
.... method Σ0..1CodeableConcept Method to get quality
FDA-Method (Example)
.... truthTP Σ0..1decimal True positives from the perspective of the truth data
.... queryTP Σ0..1decimal True positives from the perspective of the query data
.... truthFN Σ0..1decimal False negatives
.... queryFP Σ0..1decimal False positives
.... gtFP Σ0..1decimal False positives where the non-REF alleles in the Truth and Query Call Sets match
.... precision Σ0..1decimal Precision of comparison
.... recall Σ0..1decimal Recall of comparison
.... fScore Σ0..1decimal F-score
... readCoverage Σ0..1integer Average number of reads representing a given nucleotide in the reconstructed sequence
... repository Σ0..*BackboneElement External repository which contains detailed report related with observedSeq in this resource
.... type Σ1..1code directlink | openapi | login | oauth | other
repositoryType (Required)
.... url Σ0..1uri URI of the repository
.... name Σ0..1string Repository's name
.... datasetId Σ0..1string Id of the dataset that used to call for dataset in repository
.... variantsetId Σ0..1string Id of the variantset that used to call for variantset in repository
.... readsetId Σ0..1string Id of the read
... pointer Σ0..*Reference(Sequence)Pointer to next atomic sequence

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 string like "ACGT"referenceSeqString : 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] Reference identifier of the sequence that used to mark the quality of tested samples. (Strength=Example)FDA-StandardSequence?? 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]Which method is used to get sequence qualitymethod : CodeableConcept [0..1] The method used to evaluate the numerical quality of the observed sequence. (Strength=Example)FDA-Method?? 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]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..*]

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 A sequence used as reference -->
 <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 string to represent reference sequence  -->
 <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..* Variant in sequence -->
 <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 in the 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 Sequence that was observed  -->
 <quality> <!-- 0..* An set of value as quality of sequence -->
 <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 for the comparison  --></score>
 <method><!-- 0..1 CodeableConcept  Method to get 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 of comparison  -->
 <recall value="[decimal ]"/><!-- 0..1 Recall of comparison  -->
 <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 Repository's name  -->
 <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>
</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" : { // A sequence used as reference 
 "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 string to represent reference sequence 
 "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" : [{ // Variant in sequence 
 "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 in the reference sequence 
 "cigar" : "<string >", // Extended CIGAR string for aligning the sequence with reference bases 
 "variantPointer" : { Reference(Observation) } // Pointer to observed variant information 
 }],
 "observedSeq" : "<string >", // Sequence that was observed 
 "quality" : [{ // An set of value as quality of sequence 
 "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 for the comparison 
 "method" : { CodeableConcept  }, // Method to get 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 of comparison 
 "recall" : <decimal >, // Recall of comparison 
 "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 >", // Repository's name 
 "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 
}

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 A sequence used as reference
 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 string to represent reference sequence
 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..* Variant in sequence
 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 in the 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 Sequence that was observed
 fhir:Sequence.quality[ # 0..* An set of value as quality of sequence
 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 for the comparison
 fhir:Sequence.quality.method[ CodeableConcept ]; # 0..1 Method to get 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 of comparison
 fhir:Sequence.quality.recall[ decimal ]; # 0..1 Recall of comparison
 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 Repository's name
 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
]

Changes since DSTU2

This resource did not exist in Release 2

This analysis is available as XML or JSON.

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

10.5.3.1 Terminology Bindings

PathDefinitionTypeReference
Sequence.type Type if a sequence -- DNA, RNA, or amino acid sequenceExample sequenceType
Sequence.referenceSeq.chromosome Chromosome number for humanExample chromosome-human
Sequence.referenceSeq.referenceSeqId Reference identifierExample ENSEMBL
Sequence.quality.type Type for quality reportRequired qualityType
Sequence.quality.standardSequence Reference identifier of the sequence that used to mark the quality of tested samples.Example FDA-StandardSequence
Sequence.quality.method The method used to evaluate the numerical quality of the observed sequence.Example FDA-Method
Sequence.repository.type Type for access of external URIRequired repositoryType

10.5.3.2 Constraints

  • 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)

10.5.4 Notes:

10.5.4.1 Sequence Coordinate System

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.

10.5.4.2 Choice of Strand

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.

10.5.4.3 String usage for Reference Sequence and Observed Sequence

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

10.5.5 Search Parameters

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

Name Type Description Expression In Common
chromosome token Chromosome number of the reference sequence Sequence.referenceSeq.chromosome
coordinate composite Search 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. Sequence.variant
end number End 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
identifier token The unique identity for a particular sequence Sequence.identifier
patient reference The subject that the observation is about Sequence.patient
(Patient)
start number Start 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
type token Amino Acid Sequence/ DNA Sequence / RNA Sequence Sequence.type

AltStyle によって変換されたページ (->オリジナル) /