Class SubstanceSourceMaterial

  • All Implemented Interfaces:
    Visitable

    @Generated("com.ibm.fhir.tools.CodeGenerator")
    public class SubstanceSourceMaterial
    extends DomainResource
    Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.
    • Method Detail

      • getSourceMaterialClass

        public CodeableConcept getSourceMaterialClass()
        General high level classification of the source material specific to the origin of the material.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getSourceMaterialType

        public CodeableConcept getSourceMaterialType()
        The type of the source material shall be specified based on a controlled vocabulary. For vaccines, this subclause refers to the class of infectious agent.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getSourceMaterialState

        public CodeableConcept getSourceMaterialState()
        The state of the source material when extracted.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getOrganismId

        public Identifier getOrganismId()
        The unique identifier associated with the source material parent organism shall be specified.
        Returns:
        An immutable object of type Identifier that may be null.
      • getOrganismName

        public String getOrganismName()
        The organism accepted Scientific name shall be provided based on the organism taxonomy.
        Returns:
        An immutable object of type String that may be null.
      • getParentSubstanceId

        public List<Identifier> getParentSubstanceId()
        The parent of the herbal drug Ginkgo biloba, Leaf is the substance ID of the substance (fresh) of Ginkgo biloba L. or Ginkgo biloba L. (Whole plant).
        Returns:
        An unmodifiable list containing immutable objects of type Identifier that may be empty.
      • getParentSubstanceName

        public List<String> getParentSubstanceName()
        The parent substance of the Herbal Drug, or Herbal preparation.
        Returns:
        An unmodifiable list containing immutable objects of type String that may be empty.
      • getCountryOfOrigin

        public List<CodeableConcept> getCountryOfOrigin()
        The country where the plant material is harvested or the countries where the plasma is sourced from as laid down in accordance with the Plasma Master File. For “Plasma-derived substances” the attribute country of origin provides information about the countries used for the manufacturing of the Cryopoor plama or Crioprecipitate.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getGeographicalLocation

        public List<String> getGeographicalLocation()
        The place/region where the plant is harvested or the places/regions where the animal source material has its habitat.
        Returns:
        An unmodifiable list containing immutable objects of type String that may be empty.
      • getDevelopmentStage

        public CodeableConcept getDevelopmentStage()
        Stage of life for animals, plants, insects and microorganisms. This information shall be provided only when the substance is significantly different in these stages (e.g. foetal bovine serum).
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getFractionDescription

        public List<SubstanceSourceMaterial.FractionDescription> getFractionDescription()
        Many complex materials are fractions of parts of plants, animals, or minerals. Fraction elements are often necessary to define both Substances and Specified Group 1 Substances. For substances derived from Plants, fraction information will be captured at the Substance information level ( . Oils, Juices and Exudates). Additional information for Extracts, such as extraction solvent composition, will be captured at the Specified Substance Group 1 information level. For plasma-derived products fraction information will be captured at the Substance and the Specified Substance Group 1 levels.
        Returns:
        An unmodifiable list containing immutable objects of type SubstanceSourceMaterial.FractionDescription that may be empty.
      • getOrganism

        public SubstanceSourceMaterial.Organism getOrganism()
        This subclause describes the organism which the substance is derived from. For vaccines, the parent organism shall be specified based on these subclause elements. As an example, full taxonomy will be described for the Substance Name: ., Leaf.
        Returns:
        An immutable object of type SubstanceSourceMaterial.Organism that may be null.
      • accept

        public void accept​(String elementName,
                           int elementIndex,
                           Visitor visitor)
        Description copied from interface: Visitable
        Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:
         if (visitor.preVisit(this)) {
             visitor.visitStart(elementName, elementIndex, this);
             if (visitor.visit(elementName, elementIndex, this)) {
                 // visit children
             }
             visitor.visitEnd(elementName, elementIndex, this);
             visitor.postVisit(this);
         }
         
        Specified by:
        accept in interface Visitable
        Specified by:
        accept in class AbstractVisitable
        Parameters:
        elementName - the name of the element in the context of this visit
        elementIndex - the index of the element in a list or -1 if it is not contained within a List
        visitor - the visitor to use
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object