Class MedicinalProductDefinition
- java.lang.Object
-
- org.linuxforhealth.fhir.model.visitor.AbstractVisitable
-
- org.linuxforhealth.fhir.model.resource.Resource
-
- org.linuxforhealth.fhir.model.resource.DomainResource
-
- org.linuxforhealth.fhir.model.resource.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)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MedicinalProductDefinition.Builder
static class
MedicinalProductDefinition.Characteristic
Allows the key product features to be recorded, such as "sugar free", "modified release", "parallel import".static class
MedicinalProductDefinition.Contact
A product specific contact, person (in a role), or an organization.static class
MedicinalProductDefinition.CrossReference
Reference to another product, e.g.static class
MedicinalProductDefinition.Name
The product's name, including full name and possibly coded parts.static class
MedicinalProductDefinition.Operation
A manufacturing or administrative process or step associated with (or performed on) the medicinal product.
-
Field Summary
-
Fields inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
contained, extension, modifierExtension, text
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(java.lang.String elementName, int elementIndex, Visitor visitor)
Accept a Visitor and invoke the appropriate visit methods.static MedicinalProductDefinition.Builder
builder()
boolean
equals(java.lang.Object obj)
CodeableConcept
getAdditionalMonitoringIndicator()
Whether the Medicinal Product is subject to additional monitoring for regulatory reasons, such as heightened reporting requirements.java.util.List<Reference>
getAttachedDocument()
Additional information or supporting documentation about the medicinal product.java.util.List<MedicinalProductDefinition.Characteristic>
getCharacteristic()
Allows the key product features to be recorded, such as "sugar free", "modified release", "parallel import".java.util.List<CodeableConcept>
getClassification()
Allows the product to be classified by various systems, commonly WHO ATC.java.util.List<Reference>
getClinicalTrial()
Clinical trials or studies that this product is involved in.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.CodeableConcept
getCombinedPharmaceuticalDoseForm()
The dose form for a single part product, or combined form of a multiple part product.java.util.List<MedicinalProductDefinition.Contact>
getContact()
A product specific contact, person (in a role), or an organization.java.util.List<MedicinalProductDefinition.CrossReference>
getCrossReference()
Reference to another product, e.g.Markdown
getDescription()
General description of this product.CodeableConcept
getDomain()
If this medicine applies to human or veterinary uses.java.util.List<Identifier>
getIdentifier()
Business identifier for this product.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.Markdown
getIndication()
Description of indication(s) for this product, used when structured indications are not required.java.util.List<CodeableConcept>
getIngredient()
The ingredients of this medicinal product - when not detailed in other resources.CodeableConcept
getLegalStatusOfSupply()
The legal status of supply of the medicinal product as classified by the regulator.java.util.List<MarketingStatus>
getMarketingStatus()
Marketing status of the medicinal product, in contrast to marketing authorization.java.util.List<Reference>
getMasterFile()
A master file for the medicinal product (e.g.java.util.List<MedicinalProductDefinition.Name>
getName()
The product's name, including full name and possibly coded parts.java.util.List<MedicinalProductDefinition.Operation>
getOperation()
A manufacturing or administrative process or step associated with (or performed on) the medicinal product.java.util.List<CodeableConcept>
getPackagedMedicinalProduct()
Package type for the product.CodeableConcept
getPediatricUseIndicator()
If authorised for use in children, or infants, neonates etc.java.util.List<CodeableConcept>
getRoute()
The path by which the product is taken into or makes contact with the body.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.CodeableConcept
getStatus()
The status within the lifecycle of this product record.DateTime
getStatusDate()
The date at which the given status became applicable.CodeableConcept
getType()
Regulatory type, e.g.String
getVersion()
A business identifier relating to a specific version of the product, this is commonly used to support revisions to an existing product.boolean
hasChildren()
int
hashCode()
MedicinalProductDefinition.Builder
toBuilder()
Create a new Builder from the contents of this Resource-
Methods inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
getContained, getExtension, getModifierExtension, getText
-
Methods inherited from class org.linuxforhealth.fhir.model.resource.Resource
as, getId, getImplicitRules, getLanguage, getMeta, is
-
-
-
-
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.
-
getContact
public java.util.List<MedicinalProductDefinition.Contact> getContact()
A product specific contact, person (in a role), or an organization.- Returns:
- An unmodifiable list containing immutable objects of type
MedicinalProductDefinition.Contact
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.
-
getName
public java.util.List<MedicinalProductDefinition.Name> getName()
The product's name, including full name and possibly coded parts.- Returns:
- An unmodifiable list containing immutable objects of type
MedicinalProductDefinition.Name
that is non-empty.
-
getCrossReference
public java.util.List<MedicinalProductDefinition.CrossReference> getCrossReference()
Reference to another product, e.g. for linking authorised to investigational product, or a virtual product.- Returns:
- An unmodifiable list containing immutable objects of type
MedicinalProductDefinition.CrossReference
that may be empty.
-
getOperation
public java.util.List<MedicinalProductDefinition.Operation> getOperation()
A manufacturing or administrative process or step associated with (or performed on) the medicinal product.- Returns:
- An unmodifiable list containing immutable objects of type
MedicinalProductDefinition.Operation
that may be empty.
-
getCharacteristic
public java.util.List<MedicinalProductDefinition.Characteristic> getCharacteristic()
Allows the key product features to be recorded, such as "sugar free", "modified release", "parallel import".- Returns:
- An unmodifiable list containing immutable objects of type
MedicinalProductDefinition.Characteristic
that may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildren
in classDomainResource
-
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 interfaceVisitable
- Specified by:
accept
in classAbstractVisitable
- Parameters:
elementName
- the name of the element in the context of this visitelementIndex
- the index of the element in a list or -1 if it is not contained within a Listvisitor
- the visitor to use
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toBuilder
public MedicinalProductDefinition.Builder toBuilder()
Description copied from class:Resource
Create a new Builder from the contents of this Resource- Specified by:
toBuilder
in classDomainResource
-
builder
public static MedicinalProductDefinition.Builder builder()
-
-