Class MedicinalProductDefinition

  • All Implemented Interfaces:
    Visitable

    @Generated("org.linuxforhealth.fhir.tools.CodeGenerator")
    public class MedicinalProductDefinition
    extends DomainResource
    A medicinal product, being a substance or combination of substances that is intended to treat, prevent or diagnose a disease, or to restore, correct or modify physiological functions by exerting a pharmacological, immunological or metabolic action. This resource is intended to define and detail such products and their properties, for uses other than direct patient care (e.g. regulatory use, or drug catalogs).

    Maturity level: FMM1 (Trial Use)

    • Method Detail

      • getIdentifier

        public java.util.List<Identifier> getIdentifier()
        Business identifier for this product. Could be an MPID. When in development or being regulated, products are typically referenced by official identifiers, assigned by a manufacturer or regulator, and unique to a product (which, when compared to a product instance being prescribed, is actually a product type). See also MedicinalProductDefinition.code.
        Returns:
        An unmodifiable list containing immutable objects of type Identifier that may be empty.
      • getType

        public CodeableConcept getType()
        Regulatory type, e.g. Investigational or Authorized.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getDomain

        public CodeableConcept getDomain()
        If this medicine applies to human or veterinary uses.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getVersion

        public String getVersion()
        A business identifier relating to a specific version of the product, this is commonly used to support revisions to an existing product.
        Returns:
        An immutable object of type String that may be null.
      • getStatus

        public CodeableConcept getStatus()
        The status within the lifecycle of this product record. A high-level status, this is not intended to duplicate details carried elsewhere such as legal status, or authorization status.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getStatusDate

        public DateTime getStatusDate()
        The date at which the given status became applicable.
        Returns:
        An immutable object of type DateTime that may be null.
      • getDescription

        public Markdown getDescription()
        General description of this product.
        Returns:
        An immutable object of type Markdown that may be null.
      • getCombinedPharmaceuticalDoseForm

        public CodeableConcept getCombinedPharmaceuticalDoseForm()
        The dose form for a single part product, or combined form of a multiple part product. This is one concept that describes all the components. It does not represent the form with components physically mixed, if that might be necessary, for which see (AdministrableProductDefinition.administrableDoseForm).
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getRoute

        public java.util.List<CodeableConcept> getRoute()
        The path by which the product is taken into or makes contact with the body. In some regions this is referred to as the licenced or approved route. See also AdministrableProductDefinition resource. MedicinalProductDefinition.route is the same concept as AdministrableProductDefinition.routeOfAdministration.code, and they cannot be used together.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getIndication

        public Markdown getIndication()
        Description of indication(s) for this product, used when structured indications are not required. In cases where structured indications are required, they are captured using the ClinicalUseDefinition resource. An indication is a medical situation for which using the product is appropriate.
        Returns:
        An immutable object of type Markdown that may be null.
      • getLegalStatusOfSupply

        public CodeableConcept getLegalStatusOfSupply()
        The legal status of supply of the medicinal product as classified by the regulator.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getAdditionalMonitoringIndicator

        public CodeableConcept getAdditionalMonitoringIndicator()
        Whether the Medicinal Product is subject to additional monitoring for regulatory reasons, such as heightened reporting requirements.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getSpecialMeasures

        public java.util.List<CodeableConcept> getSpecialMeasures()
        Whether the Medicinal Product is subject to special measures for regulatory reasons, such as a requirement to conduct post-authorisation studies.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getPediatricUseIndicator

        public CodeableConcept getPediatricUseIndicator()
        If authorised for use in children, or infants, neonates etc.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getClassification

        public java.util.List<CodeableConcept> getClassification()
        Allows the product to be classified by various systems, commonly WHO ATC.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getMarketingStatus

        public java.util.List<MarketingStatus> getMarketingStatus()
        Marketing status of the medicinal product, in contrast to marketing authorization. This refers to the product being actually 'on the market' as opposed to being allowed to be on the market (which is an authorization).
        Returns:
        An unmodifiable list containing immutable objects of type MarketingStatus that may be empty.
      • getPackagedMedicinalProduct

        public java.util.List<CodeableConcept> getPackagedMedicinalProduct()
        Package type for the product. See also the PackagedProductDefinition resource.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getIngredient

        public java.util.List<CodeableConcept> getIngredient()
        The ingredients of this medicinal product - when not detailed in other resources. This is only needed if the ingredients are not specified by incoming references from the Ingredient resource, or indirectly via incoming AdministrableProductDefinition, PackagedProductDefinition or ManufacturedItemDefinition references. In cases where those levels of detail are not used, the ingredients may be specified directly here as codes.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getImpurity

        public java.util.List<CodeableReference> getImpurity()
        Any component of the drug product which is not the chemical entity defined as the drug substance, or an excipient in the drug product. This includes process-related impurities and contaminants, product-related impurities including degradation products.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableReference that may be empty.
      • getAttachedDocument

        public java.util.List<Reference> getAttachedDocument()
        Additional information or supporting documentation about the medicinal product.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getMasterFile

        public java.util.List<Reference> getMasterFile()
        A master file for the medicinal product (e.g. Pharmacovigilance System Master File). Drug master files (DMFs) are documents submitted to regulatory agencies to provide confidential detailed information about facilities, processes or articles used in the manufacturing, processing, packaging and storing of drug products.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getClinicalTrial

        public java.util.List<Reference> getClinicalTrial()
        Clinical trials or studies that this product is involved in.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getCode

        public java.util.List<Coding> getCode()
        A code that this product is known by, usually within some formal terminology, perhaps assigned by a third party (i.e. not the manufacturer or regulator). Products (types of medications) tend to be known by identifiers during development and within regulatory process. However when they are prescribed they tend to be identified by codes. The same product may be have multiple codes, applied to it by multiple organizations.
        Returns:
        An unmodifiable list containing immutable objects of type Coding that may be empty.
      • accept

        public void accept​(java.lang.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
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object