FoundationThis page is part of the FHIR Specification v6.0.0-ballot2: Release 6 Ballot (2nd Draft) (see Ballot Notes). The current version is 5.0.0. For a full list of available versions, see the Directory of published versions 
| Clinical Genomics Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: No defined compartments |
ShEx statement for molecularsequence
PREFIX fhir: <http://hl7.org/fhir/>
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
IMPORT <code.shex>
IMPORT <string.shex>
IMPORT <integer.shex>
IMPORT <boolean.shex>
IMPORT <Reference.shex>
IMPORT <Identifier.shex>
IMPORT <Attachment.shex>
IMPORT <DomainResource.shex>
IMPORT <BackboneElement.shex>
IMPORT <CodeableConcept.shex>
start=@<MolecularSequence> AND {fhir:nodeRole [fhir:treeRoot]}
# Representation of a molecular sequence
<MolecularSequence> EXTENDS @<DomainResource> CLOSED {
a [fhir:MolecularSequence]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @<OneOrMore_Identifier>?; # Unique ID for this particular
# sequence
fhir:type @<code> AND
{fhir:v @fhirvs:sequence-type}?; # aa | dna | rna
fhir:literal @<OneOrMore_MolecularSequence.literal>?; # A literal representation of a
# Molecular Sequence
fhir:file @<OneOrMore_Attachment>?; # Embedded file or a link (URL)
# which contains content to
# represent the sequence
fhir:relative @<OneOrMore_MolecularSequence.relative>?; # A Molecular Sequence that is
# represented as an ordered series
# of edits on a specified starting
# sequence
fhir:extracted @<OneOrMore_MolecularSequence.extracted>?; # A Molecular Sequence that is
# represented as an extracted
# portion of a different Molecular
# Sequence
fhir:repeated @<OneOrMore_MolecularSequence.repeated>?; # A Molecular Sequence that is
# represented as a repeated sequence
# motif
fhir:concatenated @<MolecularSequence.concatenated>?; # A Molecular Sequence that is
# represented as an ordered
# concatenation of two or more
# Molecular Sequences
}
# One element of a concatenated Molecular Sequence
<MolecularSequence.concatenated.sequenceElement> EXTENDS @<BackboneElement> CLOSED {
fhir:sequence @<Reference> AND {fhir:link
@<MolecularSequence> ? }; # The Molecular Sequence
# corresponding to this element
fhir:ordinalIndex @<integer>; # The ordinal position of this
# sequence element within the
# concatenated Molecular Sequence
}
# An edit (change) made to a sequence
<MolecularSequence.relative.edit> EXTENDS @<BackboneElement> CLOSED {
fhir:editOrder @<integer>?; # The order of this edit, relative
# to other edits on the starting
# sequence
fhir:coordinateSystem @<CodeableConcept>; # The coordinate system used to
# define the edited intervals on the
# starting sequence. Coordinate
# systems are usually 0- or 1-based
fhir:start @<integer>; # The start coordinate of the
# interval that will be edited
fhir:end @<integer>; # The end coordinate of the interval
# that will be edited
fhir:replacementSequence @<Reference> AND {fhir:link
@<MolecularSequence> ? }; # The sequence that defines the
# replacement sequence used in the
# edit operation
fhir:replacedSequence @<Reference> AND {fhir:link
@<MolecularSequence> ? }?; # The sequence on the 'starting'
# sequence for the edit operation,
# defined by the specified interval,
# that will be replaced during the
# edit
}
# A literal representation of a Molecular Sequence
<MolecularSequence.literal> EXTENDS @<BackboneElement> CLOSED {
fhir:sequenceValue @<string>; # The primary (linear) sequence,
# expressed as a literal string
}
# A Molecular Sequence that is represented as an extracted portion of a different Molecular Sequence
<MolecularSequence.extracted> EXTENDS @<BackboneElement> CLOSED {
fhir:startingSequence @<Reference> AND {fhir:link
@<MolecularSequence> ? }; # The Molecular Sequence that serves
# as the parent sequence, from which
# the intended sequence will be
# extracted
fhir:start @<integer>; # The start coordinate (on the
# parent sequence) of the interval
# that defines the subsequence to be
# extracted
fhir:end @<integer>; # The end coordinate (on the parent
# sequence) of the interval that
# defines the subsequence to be
# extracted
fhir:coordinateSystem @<CodeableConcept>; # The coordinate system used to
# define the interval that defines
# the subsequence to be extracted.
# Coordinate systems are usually 0-
# or 1-based
fhir:reverseComplement @<boolean>?; # A flag that indicates whether the
# extracted sequence should be
# reverse complemented
}
# A Molecular Sequence that is represented as an ordered concatenation of two or more Molecular Sequences
<MolecularSequence.concatenated> EXTENDS @<BackboneElement> CLOSED {
fhir:sequenceElement @<OneOrMore_MolecularSequence.concatenated.sequenceElement>; # One element of a concatenated
# Molecular Sequence
}
# A Molecular Sequence that is represented as a repeated sequence motif
<MolecularSequence.repeated> EXTENDS @<BackboneElement> CLOSED {
fhir:sequenceMotif @<Reference> AND {fhir:link
@<MolecularSequence> ? }; # The sequence that defines the
# repeated motif
fhir:copyCount @<integer>; # The number of repeats (copies) of
# the sequence motif
}
# A Molecular Sequence that is represented as an ordered series of edits on a specified starting sequence
<MolecularSequence.relative> EXTENDS @<BackboneElement> CLOSED {
fhir:startingSequence @<Reference> AND {fhir:link
@<MolecularSequence> ? }; # The Molecular Sequence that serves
# as the starting sequence, on which
# edits will be applied
fhir:edit @<OneOrMore_MolecularSequence.relative.edit>?; # An edit (change) made to a sequence
}
#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_Identifier> CLOSED {
rdf:first @<Identifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Identifier>
}
<OneOrMore_MolecularSequence.literal> CLOSED {
rdf:first @<MolecularSequence.literal> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.literal>
}
<OneOrMore_Attachment> CLOSED {
rdf:first @<Attachment> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Attachment>
}
<OneOrMore_MolecularSequence.relative> CLOSED {
rdf:first @<MolecularSequence.relative> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.relative>
}
<OneOrMore_MolecularSequence.extracted> CLOSED {
rdf:first @<MolecularSequence.extracted> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.extracted>
}
<OneOrMore_MolecularSequence.repeated> CLOSED {
rdf:first @<MolecularSequence.repeated> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.repeated>
}
<OneOrMore_MolecularSequence.concatenated.sequenceElement> CLOSED {
rdf:first @<MolecularSequence.concatenated.sequenceElement> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.concatenated.sequenceElement>
}
<OneOrMore_MolecularSequence.relative.edit> CLOSED {
rdf:first @<MolecularSequence.relative.edit> ;
rdf:rest [rdf:nil] OR @<OneOrMore_MolecularSequence.relative.edit>
}
#---------------------- Value Sets ------------------------
# Type if a sequence -- DNA, RNA, or amino acid sequence.
fhirvs:sequence-type ["aa" "dna" "rna"]
Usage note: every effort has been made to ensure that the ShEx files are correct and useful, but they are not a normative part of the specification.
FHIR ®© HL7.org 2011+. FHIR R6 hl7.fhir.core#6.0.0-ballot2 generated on Mon, Aug 12, 2024 16:59+0800.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R5 |
|
Propose a change