PREFIX fhir:
PREFIX fhirvs:
PREFIX xsd:
PREFIX rdf:
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
start=@ AND {fhir:nodeRole [fhir:treeRoot]}
# Properties of a substance specific to it being a polymer
EXTENDS @ CLOSED {
a [fhir:SubstancePolymer]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @?; # A business idenfier for this
# polymer, but typically this is
# handled by a SubstanceDefinition
# identifier
fhir:class @?; # Overall type of the polymer
fhir:geometry @?; # Polymer geometry, e.g. linear,
# branched, cross-linked, network or
# dendritic
fhir:copolymerConnectivity @?; # Descrtibes the copolymer sequence
# type (polymer connectivity)
fhir:modification @?; # Todo - this is intended to connect
# to a repeating full modification
# structure, also used by Protein
# and Nucleic Acid . String is just
# a placeholder
fhir:monomerSet @?; # Todo
fhir:repeat @?; # Specifies and quantifies the
# repeated units and their
# configuration
}
# A graphical structure for this SRU
EXTENDS @ CLOSED {
fhir:type @?; # The type of structure (e.g. Full,
# Partial, Representative)
fhir:representation @?; # The structural representation as
# text string in a standard format
# e.g. InChI, SMILES, MOLFILE, CDX,
# SDF, PDB, mmCIF
fhir:format @?; # The format of the representation
# e.g. InChI, SMILES, MOLFILE, CDX,
# SDF, PDB, mmCIF
fhir:attachment @?; # An attached file with the
# structural representation
}
# Todo
EXTENDS @ CLOSED {
fhir:ratioType @?; # Captures the type of ratio to the
# entire polymer, e.g.
# Monomer/Polymer ratio, SRU/Polymer
# Ratio
fhir:startingMaterial @?; # The starting materials -
# monomer(s) used in the synthesis
# of the polymer
}
# An SRU - Structural Repeat Unit
EXTENDS @ CLOSED {
fhir:unit @?; # Structural repeat units are
# essential elements for defining
# polymers
fhir:orientation @?; # The orientation of the
# polymerisation, e.g. head-tail,
# head-head, random
fhir:amount @?; # Number of repeats of this unit
fhir:degreeOfPolymerisation @?; # Applies to homopolymer and block
# co-polymers where the degree of
# polymerisation within a block can
# be described
fhir:structuralRepresentation @?; # A graphical structure for this SRU
}
# Applies to homopolymer and block co-polymers where the degree of polymerisation within a block can be described
EXTENDS @ CLOSED {
fhir:type @?; # The type of the degree of
# polymerisation shall be described,
# e.g. SRU/Polymer Ratio
fhir:average @?; # An average amount of polymerisation
fhir:low @?; # A low expected limit of the amount
fhir:high @?; # A high expected limit of the amount
}
# Specifies and quantifies the repeated units and their configuration
EXTENDS @ CLOSED {
fhir:averageMolecularFormula @?; # A representation of an (average)
# molecular formula from a polymer
fhir:repeatUnitAmountType @?; # How the quantitative amount of
# Structural Repeat Units is
# captured (e.g. Exact, Numeric,
# Average)
fhir:repeatUnit @?; # An SRU - Structural Repeat Unit
}
# The starting materials - monomer(s) used in the synthesis of the polymer
EXTENDS @ CLOSED {
fhir:code @?; # The type of substance for this
# starting material
fhir:category @?; # Substance high level category,
# e.g. chemical substance
fhir:isDefining @?; # Used to specify whether the
# attribute described is a defining
# element for the unique
# identification of the polymer
fhir:amount @?; # A percentage
}
#---------------------- Cardinality Types (OneOrMore) -------------------
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}