This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions
Clinical Genomics Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: No defined compartments |
ShEx statement for moleculardefinition
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 <Range.shex> IMPORT <string.shex> IMPORT <integer.shex> IMPORT <boolean.shex> IMPORT <markdown.shex> IMPORT <Quantity.shex> IMPORT <Reference.shex> IMPORT <Identifier.shex> IMPORT <DomainResource.shex> IMPORT <CodeableConcept.shex> IMPORT <BackboneElement.shex> IMPORT <DocumentReference.shex> start=@<MolecularDefinition> AND {fhir:nodeRole [fhir:treeRoot]} # Definitional content for a molecular entity <MolecularDefinition> EXTENDS @<DomainResource> CLOSED { a [fhir:MolecularDefinition]?;fhir:nodeRole [fhir:treeRoot]?; fhir:identifier @<OneOrMore_Identifier>?; # Unique ID of an instance fhir:description @<markdown>?; # Description of the Molecular # Definition instance fhir:moleculeType @<CodeableConcept>?; # The type of molecule (e.g., DNA, # RNA, amino acid) fhir:type @<OneOrMore_CodeableConcept>?; # Classification of the molecule # into types other than those # defined by moleculeType fhir:topology @<OneOrMore_CodeableConcept>?; # The structural topology of the # molecular entity (e.g., linear, # circular) fhir:memberState @<OneOrMore_Reference_MolecularDefinition>?; # Reserved for future profiles # (e.g., haplotype, genotype) fhir:location @<OneOrMore_MolecularDefinition.location>?; # A defined location on a molecular # entity fhir:representation @<OneOrMore_MolecularDefinition.representation>?; # A representation of a molecular # entity } # One of the concatenated entities <MolecularDefinition.representation.concatenated.sequenceElement> EXTENDS @<BackboneElement> CLOSED { fhir:sequence @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # A reference to the sequence that # defines this specific concatenated # element fhir:ordinalIndex @<integer>; # The ordinal index of the element # within the concatenated # representation } # A cytoband-based location on a sequence <MolecularDefinition.location.cytobandLocation> EXTENDS @<BackboneElement> CLOSED { fhir:genomeAssembly @<MolecularDefinition.location.cytobandLocation.genomeAssembly>; # Reference Genome fhir:cytobandInterval @<MolecularDefinition.location.cytobandLocation.cytobandInterval>; # Cytoband Interval } # A defined location on a molecular entity <MolecularDefinition.location> EXTENDS @<BackboneElement> CLOSED { fhir:sequenceLocation @<MolecularDefinition.location.sequenceLocation>?; # A coordinate-based location on a # sequence fhir:cytobandLocation @<MolecularDefinition.location.cytobandLocation>?; # A cytoband-based location on a # sequence fhir:featureLocation @<OneOrMore_string>?; # Reserved and possibly deprecated } # The interval on startingMolecule that defines the portion to be extracted to produce the intended entity <MolecularDefinition.representation.extracted.coordinateInterval> EXTENDS @<BackboneElement> CLOSED { fhir:coordinateSystem @<MolecularDefinition.representation.extracted.coordinateInterval.coordinateSystem>?; # The coordinate system used to # define the location fhir:start @<Quantity> OR @<Range> ?; # The start location of the interval fhir:end @<Quantity> OR @<Range> ?; # The end location of the interval } # Cytoband Interval <MolecularDefinition.location.cytobandLocation.cytobandInterval> EXTENDS @<BackboneElement> CLOSED { fhir:chromosome @<CodeableConcept>; # Chromosome fhir:startCytoband @<MolecularDefinition.location.cytobandLocation.cytobandInterval.startCytoband>?; # Start fhir:endCytoband @<MolecularDefinition.location.cytobandLocation.cytobandInterval.endCytoband>?; # End } # Reference Genome <MolecularDefinition.location.cytobandLocation.genomeAssembly> EXTENDS @<BackboneElement> CLOSED { fhir:organism @<CodeableConcept>?; # Species of the organism fhir:build @<CodeableConcept>?; # Build number fhir:accession @<CodeableConcept>?; # Accession fhir:description @<markdown> OR @<string> ?; # Genome assembly description } # A molecular entity defined as a string literal <MolecularDefinition.representation.literal> EXTENDS @<BackboneElement> CLOSED { fhir:encoding @<CodeableConcept>?; # The encoding used in the value fhir:value @<string>; # A string literal representation of # the molecular entity, using the # encoding specified in encoding } # A molecular entity that is represented as a portion of a different entity <MolecularDefinition.representation.extracted> EXTENDS @<BackboneElement> CLOSED { fhir:startingMolecule @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # The molecular entity that serves # as the conceptual 'parent' from # which the intended entity is # derived fhir:coordinateInterval @<MolecularDefinition.representation.extracted.coordinateInterval>?; # The interval on startingMolecule # that defines the portion to be # extracted to produce the intended # entity fhir:reverseComplement @<boolean>?; # A flag that indicates whether the # extracted sequence should be # reverse complemented } # An ordered concatenation of molecular entities <MolecularDefinition.representation.concatenated> EXTENDS @<BackboneElement> CLOSED { fhir:sequenceElement @<OneOrMore_MolecularDefinition.representation.concatenated.sequenceElement>; # One of the concatenated entities } # Start <MolecularDefinition.location.cytobandLocation.cytobandInterval.startCytoband> EXTENDS @<BackboneElement> CLOSED { fhir:arm @<code> OR @<string> ?; # Arm fhir:region @<code> OR @<string> ?; # Region fhir:band @<code> OR @<string> ?; # Band fhir:subBand @<code> OR @<string> ?; # Sub-band } # The coordinate system used to define the location <MolecularDefinition.representation.extracted.coordinateInterval.coordinateSystem> EXTENDS @<BackboneElement> CLOSED { fhir:system @<CodeableConcept>?; # The type of coordinate system used fhir:origin @<CodeableConcept>?; # The location of the origin of the # coordinate system fhir:normalizationMethod @<CodeableConcept>?; # The normalization method used for # determining a location within the # coordinate system } # The coordinate system used to define the location <MolecularDefinition.location.sequenceLocation.coordinateInterval.coordinateSystem> EXTENDS @<BackboneElement> CLOSED { fhir:system @<CodeableConcept>?; # The type of coordinate system used fhir:origin @<CodeableConcept>?; # The location of the origin of the # coordinate system fhir:normalizationMethod @<CodeableConcept>?; # The normalization method used for # determining a location within the # coordinate system } # A representation of a molecular entity <MolecularDefinition.representation> EXTENDS @<BackboneElement> CLOSED { fhir:focus @<CodeableConcept>?; # The domain concept that is the # focus of a given instance of the # representation fhir:code @<OneOrMore_CodeableConcept>?; # A code (e.g., sequence accession # number) used to represent a # molecular entity fhir:literal @<MolecularDefinition.representation.literal>?; # A molecular entity defined as a # string literal fhir:resolvable @<Reference> AND {fhir:link @<DocumentReference> ? }?; # A resolvable representation of a # molecular entity (e.g., URI, # attached and formatted file) fhir:extracted @<MolecularDefinition.representation.extracted>?; # A molecular entity that is # represented as a portion of a # different entity fhir:repeated @<MolecularDefinition.representation.repeated>?; # A representation as a repeated # motif fhir:concatenated @<MolecularDefinition.representation.concatenated>?; # An ordered concatenation of # molecular entities fhir:relative @<MolecularDefinition.representation.relative>?; # A molecular entity represented as # an ordered series of edits on a # specified starting entity } # The coordinate system used to define the location <MolecularDefinition.representation.relative.edit.coordinateInterval.coordinateSystem> EXTENDS @<BackboneElement> CLOSED { fhir:system @<CodeableConcept>?; # The type of coordinate system used fhir:origin @<CodeableConcept>?; # The location of the origin of the # coordinate system fhir:normalizationMethod @<CodeableConcept>?; # The normalization method used for # determining a location within the # coordinate system } # A defined edit (change) to be applied <MolecularDefinition.representation.relative.edit> EXTENDS @<BackboneElement> CLOSED { fhir:editOrder @<integer>?; # Defines the order of edits when # multiple edits are to be applied # to the startingMolecule fhir:coordinateInterval @<MolecularDefinition.representation.relative.edit.coordinateInterval>?; # The interval on startingMolecule # that defines the portion to be # extracted to produce the intended # entity fhir:replacementMolecule @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # The molecular entity that serves # as the replacement in the edit # operation fhir:replacedMolecule @<Reference> AND {fhir:link @<MolecularDefinition> ? }?; # The portion of the molecular # entity that is replaced by the # replacementMolecule } # The interval on startingMolecule that defines the portion to be extracted to produce the intended entity <MolecularDefinition.representation.relative.edit.coordinateInterval> EXTENDS @<BackboneElement> CLOSED { fhir:coordinateSystem @<MolecularDefinition.representation.relative.edit.coordinateInterval.coordinateSystem>?; # The coordinate system used to # define the location fhir:start @<Quantity> OR @<Range> ?; # The start location of the interval fhir:end @<Quantity> OR @<Range> ?; # The end location of the interval } # A coordinate-based location on a sequence <MolecularDefinition.location.sequenceLocation> EXTENDS @<BackboneElement> CLOSED { fhir:sequenceContext @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # The sequence on which the location # is defined fhir:coordinateInterval @<MolecularDefinition.location.sequenceLocation.coordinateInterval>?; # An interval on a sequence fhir:strand @<CodeableConcept>?; # The strand at the # coordinateInterval } # An interval on a sequence <MolecularDefinition.location.sequenceLocation.coordinateInterval> EXTENDS @<BackboneElement> CLOSED { fhir:coordinateSystem @<MolecularDefinition.location.sequenceLocation.coordinateInterval.coordinateSystem>?; # The coordinate system used to # define the location fhir:start @<Quantity> OR @<Range> ?; # The start location of the interval fhir:end @<Quantity> OR @<Range> ?; # The end location of the interval } # End <MolecularDefinition.location.cytobandLocation.cytobandInterval.endCytoband> EXTENDS @<BackboneElement> CLOSED { fhir:arm @<code> OR @<string> ?; # Arm fhir:region @<code> OR @<string> ?; # Region fhir:band @<code> OR @<string> ?; # Band fhir:subBand @<code> OR @<string> ?; # SuBand } # A representation as a repeated motif <MolecularDefinition.representation.repeated> EXTENDS @<BackboneElement> CLOSED { fhir:sequenceMotif @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # The motif that is repeated fhir:copyCount @<integer>; # The number of copies of the motif } # A molecular entity represented as an ordered series of edits on a specified starting entity <MolecularDefinition.representation.relative> EXTENDS @<BackboneElement> CLOSED { fhir:startingMolecule @<Reference> AND {fhir:link @<MolecularDefinition> ? }; # The molecular entity on which # edits will be applied fhir:edit @<OneOrMore_MolecularDefinition.representation.relative.edit>?; # A defined edit (change) to be # applied } #---------------------- Cardinality Types (OneOrMore) ------------------- <OneOrMore_Identifier> CLOSED { rdf:first @<Identifier> ; rdf:rest [rdf:nil] OR @<OneOrMore_Identifier> } <OneOrMore_CodeableConcept> CLOSED { rdf:first @<CodeableConcept> ; rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept> } <OneOrMore_Reference_MolecularDefinition> CLOSED { rdf:first @<Reference> AND {fhir:link @<MolecularDefinition> } ; rdf:rest [rdf:nil] OR @<OneOrMore_Reference_MolecularDefinition> } <OneOrMore_MolecularDefinition.location> CLOSED { rdf:first @<MolecularDefinition.location> ; rdf:rest [rdf:nil] OR @<OneOrMore_MolecularDefinition.location> } <OneOrMore_MolecularDefinition.representation> CLOSED { rdf:first @<MolecularDefinition.representation> ; rdf:rest [rdf:nil] OR @<OneOrMore_MolecularDefinition.representation> } <OneOrMore_string> CLOSED { rdf:first @<string> ; rdf:rest [rdf:nil] OR @<OneOrMore_string> } <OneOrMore_MolecularDefinition.representation.concatenated.sequenceElement> CLOSED { rdf:first @<MolecularDefinition.representation.concatenated.sequenceElement> ; rdf:rest [rdf:nil] OR @<OneOrMore_MolecularDefinition.representation.concatenated.sequenceElement> } <OneOrMore_MolecularDefinition.representation.relative.edit> CLOSED { rdf:first @<MolecularDefinition.representation.relative.edit> ; rdf:rest [rdf:nil] OR @<OneOrMore_MolecularDefinition.representation.relative.edit> }
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 Fri, Feb 21, 2025 15:35+0000.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R5 |
|
Propose a change