Skip to content

Latest commit

 

History

History
583 lines (486 loc) · 56.5 KB

File metadata and controls

583 lines (486 loc) · 56.5 KB

GenFORM: from Free Text to Operational Knowledge Rules

Table of Contents

Core Definitions

Term Definition
GenFORM A generic formulary system that transforms free-text medication knowledge into fully computable Operational Knowledge Rules (OKRs).
Operational Knowledge Rule (OKR) A fully structured, machine-interpretable and constraint-based representation of medication knowledge used for prescribing, preparation, and administration.
Dose Rule An OKR that defines qualitative and quantitative constraints for dosing a specific generic in a defined clinical context.
Dose Limit A set of numeric constraints defining the minimum, maximum, or normative allowable dose.
Dose A patient-specific calculated dose value that satisfies all applicable constraints. Note that a dose can be per administration, per time unit, or rate unit and can be adjusted for patient weight or BSA.
Dose Type The temporal category of dosing (e.g., once, timed, continuous).
Selection Constraint A rule element used to determine which calculation constraints apply.
Calculation Constraint A quantitative rule element used to compute dose, rate, volume, or timing.
Adjustment Unit A patient normalization unit used to scale doses (e.g., kg for weight, m² for BSA).
Relative Adjustment A renal or clinical adjustment expressed as a multiplier of the base dose.
Absolute Adjustment A renal or clinical adjustment expressed as an absolute numeric replacement of a dose.
Reconstitution The process of converting a medication into an administrable form by adding a diluent.
Expansion Volume The increase in total volume resulting from reconstitution.
Solution The process of further adjusting concentration and volume for safe administration.
Administration Fraction The fraction of the prepared solution used to deliver the calculated dose.
Generic Product (GPK) An abstract pharmaceutical product definition independent of branding.
Prescription Product (PRK) A prescribable form of a generic product.
Trade Product (HPK) A branded pharmaceutical product.
Consumer Product (ZInr) A retail package variant of a trade product.

1. Objectives

The aim of GenFORM is to extract and structure expert medication-related knowledge, together with all additional operational information, so that medication can be automatically prescribed, planned, prepared, and administered (see Addendum A. The Medication Treatment Cycle).

GenFORM (Generic FORMulary) is a generic solution that produces Operational Knowledge Rules (OKRs): fully computable, constraint-based representations of all medication knowledge relevant to prescribing, preparing, and administering medication.

To create OKRs, free text or semi-structured clinical texts are transformed into a fully structured and machine-interpretable format. The resulting OKRs define explicit constraints on indications, dosing, scheduling, preparation, administration, product availability, and patient-specific parameters.

Because OKRs are expressed as constraints, they can be used by a constraint-solving engine to compute all valid options for a given clinical context. The user selects the most appropriate option, and this selection acts as an additional constraint that further narrows the solution space. Consequently, every option presented—and every option chosen—remains, by definition, within the boundaries defined by the OKRs and is therefore guaranteed to be valid.

2. Operational Knowledge Rules

OKRs should allow for:

  1. Selecting the specific scenario determined by:
    1. The indication and
    2. The medication (generic naming) and
    3. The route of administration and/or
    4. The pharmaceutical form and
    5. The type of dosing

In addition, the following context information for a specific patient and clinical situation is required:

  1. The setting: location/department and
  2. The patient: gender, and min/max ranges for age, weight, body surface area (BSA), gestational age, and post-menstrual age.

Together, all of the above rule items form a constraint qualifying system that determines which actual quantitative dose rule settings are applicable. These quantitative settings are:

  1. The specific available medication product assortment that can be used
  2. Dose schedule settings and
  3. Dose limit settings

The dose schedule settings contain all quantitative constraints to allow calculation of the dose scheduling, the dose limit settings contain the quantitative constraints to allow calculation of the actual dose.

Finally, dose adjustment rules like renal rules can apply that are used to adjust schedule and/or dose limit settings.

3. Sources and Types of Dose Rules

Currently, dose rules are defined across multiple source documents and repositories. These rules can be categorized into two primary types:

  1. Dose checking rules: Rules that verify whether a prescribed dose falls within acceptable margins, primarily ensuring that no over- or underdosing occurs.
  2. Dose advice rules: Rules that specify recommended exact dose(s) within the boundaries set by the checking rules or that enable calculation of exact dose(s).

Dose checking rules are maintained in the national registry, the G-Standaard. More specific dose advice rules are available in several additional sources:

  • Farmacotherapeutisch Kompas: contains dose advice rules for adults and part of the pediatric population.
  • Kinderformularium: contains all pediatric dose advice rules.
  • SWAB (Stichting Werkgroep Antibiotica Beleid) guidelines: contain antibiotic-specific dose advice rules.
  • Oncology protocols: contain dose advice rules for oncology medications.
  • Local protocols: contain hospital- or specialty-specific dose advice rules.

4. Additional Information

To establish a structured and operational knowledge-rule system that supports prescribing, planning, preparation, and administration, additional information is required:

  • Reconstitution rules: define how medication must be reconstituted to enable administration of, for example, a powder as a liquid.
  • Solution rules: define requirements for the amount and/or concentration of liquid medication.
  • Renal rules: used to adjust the dose advice according to the renal function (GFR normal, too low or too high).
  • Product information: defines product availability, pharmaceutical forms, and parameters required for calculating the delivered dose.

Reconstitution and solution rules are typically summarized in parenteralia, while the corresponding information for oral medication is provided in oralia.

For renal rules specific sections are available in the Kinderformularium or specific renal reference guidelines.

All required product information can be obtained from the G-Standaard.

5. Operational Structure of a Dose Rule

In order to be available as an OKR, the dose rule needs to be structured so that:

  1. The context can be specified so it can be narrowed down to specifically one dose rule.
  2. The resulting dose rule needs to contain all information necessary to perform a full calculation of prescription, preparation and administration of a medication.
  3. Every possible dosing scenario should be able to be encoded as an operational dose rule structure.

This results in the dose rule structure as shown in Appendix D. The Dose Rule Structure.

6. Selection and Calculation Constraints

All OKRs can be translated to either selection or calculation constraints. The selection constraints determine which calculation constraints are available. For every set of calculation constraints there is exactly one set of selection constraints that uniquely identifies the calculation constraints (i.e. the dose).

6.1. Selection Constraints

  • Dose Rule
    • Source
    • Generic
    • Indication
    • Route
    • Setting
    • Patient
    • Dose Type
    • Component
    • Substance
  • Reconstitution Rule
    • Generic
    • GPK
    • Form
    • Route
    • Setting
  • Solution Rule
    • Generic
    • Form
    • Route
    • Indication
    • Dose Type
    • Setting
    • Administration Access Device (e.g., CVL/PVL)
    • Patient
    • Dose
    • Substance
  • Renal Rule
    • Source
    • Generic
    • Indication
    • Patient
    • Renal Function

6.2. Calculation Constraints

  • Dose Rule
    • Schedule
    • Duration
    • Dose Limits
  • Reconstitution Rule:
    • Diluent Volume
    • Expansion Volume
  • Solution Rule:
    • Volume
    • Drip Rate
    • Administration Fraction
    • Dose
    • Concentration
  • Renal Rule
    • Schedule
    • Dose Adjustment (relative or absolute)

7. Prescription Rules

Dose-, Reconstitution-, Solution- and Renal rules are combined within a patient context and specific setting into a Prescription Rule. The Prescription Rule can, therefore, be used to generate an order determining, prescription, preparation and administration of an order.

8. Related Documents

GenFORM is part of the GenPRES transformation pipeline. The following documents provide additional context:

Document Description Relationship
Core Domain Model Central domain definitions and transformation pipeline GenFORM is the Layer 1 component transforming free text to OKRs
GenORDER Transforms OKRs to Order Scenarios Consumes OKRs produced by GenFORM
GenSOLVER Constraint solving engine Provides algorithmic foundation used by GenORDER

8.1. Pipeline Position

Free Text → [GenFORM] → OKRs → [GenORDER] → Order Scenarios → [GenSOLVER] → Quantitative Solutions

GenFORM occupies the first transformation stage, responsible for:

  1. Parsing free-text and semi-structured clinical texts
  2. Extracting Selection Constraints and Calculation Constraints
  3. Producing fully computable Operational Knowledge Rules (OKRs)

8.2. Patient Category vs Patient

GenFORM defines Patient Categories (also referred to as "Patient" in rule tables)—these are types of patients characterized by demographic ranges (age, weight, BSA, gestational age). A Patient Category is not a specific individual but rather a classification used to determine which rules apply.

In contrast, GenORDER works with a specific Patient instance—an actual individual with concrete demographic values. GenORDER matches the Patient's attributes against GenFORM's Patient Categories to select the applicable OKRs.

For a specific patient, a matching property like BSA can be calculated from weight and height (e.g., Mosteller: $\mathrm{BSA}(m^2)=\sqrt{(\mathrm{height}{cm}\cdot\mathrm{weight}{kg})/3600}$).

8.3. Key Terminology Alignment

GenFORM Term Related Term in Other Documents Notes
Operational Knowledge Rule (OKR) Rule (Core Domain) Umbrella term for all computable rules
Dose Rule Dose Rule (GenORDER) Applied to specific patient context in GenORDER
Solution Rule Solution Rule (GenORDER) Formerly "DilutionRule" in some contexts
Patient (in rule tables) Patient Category (GenORDER) GenFORM defines categories; GenORDER matches patients
Selection Constraint Filter Stage (GenORDER) Determines rule applicability
Calculation Constraint Solver Stage (GenORDER) Provides quantitative bounds

Appendices

The below appendices provide graphical and table detailed representations of all rule related concepts.

In tables, mutually exclusive options are represented by a bar "|".

Appendix A. The Medication Treatment Cycle

image1

Appendix B.1. GenFORM Conceptual Architecture

image2

Free text is structured by GenFORM to operational structured knowledge rules and can be returned as human-readable text.

Appendix B.2. GenFORM Technical Architecture

image3

Addendum B.3. GenFORM Libraries

Classification:

  • Free Text Sources
  • Utility Library
  • Domain Library

Libraries:

  1. Informedica.Agents.Lib: Library using the FSharp MailboxProcessor to create message based agents.

    • Capabilities:
      • Message-based agent abstraction using F# MailboxProcessor
      • Asynchronous, concurrent API execution model
      • Specific low level agent implementations
  2. Informedica.Logging.Lib: Library with advanced printing capabilities to enable human-readable logging for analysis.

    • Capabilities:
      • Human-readable logging and structured output for analysis
      • Advanced printing and formatting capabilities
      • Agent-based logging service
  3. Informedica.NLP.Lib: Library using NLP to extract structured rules from free text.

    • Capabilities:
      • Natural language processing for rule extraction
      • Conversion of free text to structured typed records
  4. Informedica.OTS.Lib: Library to retrieve and send rules sets to the OTS server for storage and version control. Can also export and import rules sets as spreadsheets.

    • Capabilities:
      • Integration with OTS server for product and rule set storage and version control
      • Rule set import/export to spreadsheet formats
      • Can log import and export
      • Can run as an agent based microservice
  5. Informedica.GenUnits.Lib: Domain library handling complex value unit combinations and calculation.

    • Capabilities:
      • Complex value-unit combinations and dimensional analysis
      • Unit conversion and validation
      • Arithmetic operations on values with units
  6. Informedica.ZIndex.Lib: Performs first parsing of products and rules from the ZIndex registry. Products can be used by GenFORM.

    • Capabilities:
      • Parsing of pharmaceutical products from ZIndex registry
      • Initial rule extraction from ZIndex data
      • Product catalog and formulary management
  7. Informedica.ZForm.Lib: Additional processing of rules to more generic constructs. These rules can be used by GenFORM to check specific dose rules.

    • Capabilities:
      • Advanced rule processing and normalization
      • Conversion of ZIndex rules to generic constructs
      • Can store and retrieve products and rules in OTS
      • Can log extraction messages
      • Can run as an agent microservice
      • Can be exposed via MCP host
  8. Informedica.NKF.Lib: Library used to parse structured content from the Kinderformularium containing pediatric dosing rules.

    • Capabilities:
      • Parsing of pediatric dosing guidelines from Kinderformularium
      • Structured pediatric dosing rules
      • Can log extraction messages
      • Can run as an agent based microservice
  9. Informedica.FTK.Lib: Library used to parse structured content from the Farmacotherapeutisch Kompas containing pediatric dosing rules.

    • Capabilities:
      • Parsing of adult dosing guidelines from Farmacotherapeutisch Kompas
      • Structured adult dosing rules
      • Can log extraction messages
      • Can run as an agent based microservice
  10. Informedica.GenFORM.Lib: Handles all rule sets and combines those with products creating specific patient context prescription rules.

    • Capabilities:
      • Unified rule set management across all sources
      • Patient-context-specific prescription rule generation
      • Product-rule combination and validation
      • Can store and retrieve products and rules in OTS
      • Can log all rule retrieval messages
      • Can run as an agent based microservice
      • Can be accessed as a MCP service
  11. Informedica.MCP.Lib: Library enabling a MCP implementation and using LLMs.

    • Capabilities:
      • Model Context Protocol (MCP) framework implementation in F#
      • LLM-powered extraction of structured typed records from free text
      • Agent-based MCP service execution
      • Can host ZForm, GenFORM, GenORDER

Appendix C.1. Dose Rule Model Figure

image4

Addendum C.2. Dose Rule Model Table

Object Variable Type Unit Key Description
Source Name text yes The source of the dose rule
Source Text text yes The source dose description
Generic Name text yes The generic name
Generic Form text yes Pharmaceutical form to narrow down the dose rule
Generic Brand text yes A brand to narrow down the dose rule
Generic GPKs text list A list of GPKs to narrow down the dose rule
Indication Indication text yes The indication (label) for the dose rule
Route Route text yes The route
Setting Location text Hospital/institute/organization
Setting Department text yes The department
Patient Gender male / female yes The gender
Patient MinAge int day yes The minimum age
Patient MaxAge int day yes The maximum age
Patient MinWeight int gram yes The minimum weight (in gram)
Patient MaxWeight int gram yes The maximum weight
Patient MinBSA float m2 yes The minimum bsa
Patient MaxBSA float m2 yes The maximum bsa
Patient MinGestAge int day yes The minimum gestational age
Patient MaxGestAge int day yes The maximum gestational age
Patient MinPMAge int day yes The minimum post-menstrual age
Patient MaxPMAge int day yes The maximum post-menstrual age
DoseType DoseType once / onceTimed / discontinuous / timed / continuous yes The dose type of the dose rule
DoseType DoseText text A label for a dose type
Schedule Freqs int list count_unit / freq_unit The possible frequencies
Schedule FreqUnit text The freq unit
Schedule MinTime float time_unit The minimum time for infusion of a dose
Schedule MaxTime float time_unit The maximum time for infusion of a dose
Schedule TimeUnit text The time unit to measure the infusion
Schedule MinInt float int_unit The minimum interval between two doses
Schedule MaxInt float int_unit The maximum interval between two doses
Schedule IntUnit text The interval unit
Schedule MinDur float dur_unit The minimum duration of the dose rule
Schedule MaxDur float dur_unit The maximum duration of the dose rule
Schedule DurUnit text The duration time unit
Component Component text The component the substance belongs to
Substance Substance text The substance used for the below fields
DoseLimit DoseUnit text The dose unit
DoseLimit AdjustUnit kg / m2 The adjust unit
DoseLimit RateUnit text The rate unit
DoseLimit MinQty float dose_unit The minimum dose quantity
DoseLimit MaxQty float dose_unit The maximum dose quantity
DoseLimit MinQtyAdj float dose_unit / adjust_unit The minimum adjusted dose quantity
DoseLimit MaxQtyAdj float dose_unit / adjust_unit The maximum patient-adjusted dose quantity
DoseLimit MinPerTime float dose_unit / freq_unit The minimum dose quantity per time
DoseLimit MaxPerTime float dose_unit / freq_unit The maximum dose quantity per time
DoseLimit MinPerTimeAdj float dose_unit / adjust_unit / freq_unit The minimum patient-adjusted dose quantity per time
DoseLimit MaxPerTimeAdj float dose_unit / adjust_unit / freq_unit The maximum dose adjusted quantity per time
DoseLimit MinRate float dose_unit / rate_unit The minimum dose rate
DoseLimit MaxRate float dose_unit / rate_unit The maximum dose rate
DoseLimit MinRateAdj float dose_unit / adjust_unit / rate_unit The minimum patient-adjusted dose rate
DoseLimit MaxRateAdj float dose_unit / adjust_unit / rate_unit The maximum patient-adjusted dose rate

Addendum C.1. Reconstitution and Solution Rule Model Figure

image5

Addendum C.2. Reconstitution Rule Model Table

Object Property Type Unit Key Description
Generic GPK text yes The unique Generic Product Identifier
Generic Generic text The generic medication name
Generic Form text The pharmaceutical form of the generic medication
Route Route text yes The route
Setting Location text yes Hospital / institute / organization
Setting Department text yes The department
Solution DiluentVol float mL The volume of the diluent
Solution ExpansionVol float mL The expansion volume
Solution Diluents text list The possible diluents that can be used

Addendum C.3. Solution Rule Model Table

Object Property Type Unit Key Description
Generic Generic text yes The generic name
Generic Form text yes The pharmaceutical form name of the generic medication
Route Route text yes The route
Indication Indication text yes The corresponding matching dose rule indication
DoseType DoseType once / onceTimed / discontinuous / timed / continuous yes The dosetype
Administration Access Device CVL boolean yes Central Venous Line
Administration Access Device PVL boolean yes Peripheral Venous Line
Setting Location text yes Hospital / institute / organization
Setting Department text yes The department
Patient MinAge int day yes The minimum age
Patient MaxAge int day yes The maximum age
Patient MinWeight int gram yes The minimum weight
Patient MaxWeight int gram yes The maximum weight
SolutionRule MinDose float unit yes The minimum dose
SolutionRule MaxDose float unit yes The maximum dose
SolutionRule Solutions text list The possible solutions that can be used
SolutionRule Volumes float list mL The possible volume quantities that can be used
SolutionRule MinVol float mL The minimum volume
SolutionRule MaxVol float mL The maximum volume
SolutionRule MinVolAdj float mL / kg The minimum allowed solution volume
SolutionRule MaxVolAdj float mL / kg The maximum allowed solution volume
SolutionRule MinDrip float mL / hour The minimum allowed infusion rate
SolutionRule MaxDrip float mL / hour The maximum allowed infusion rate
SolutionRule MinPerc float perc The minimum percentage of the solution to use for the DoseQuantity
SolutionRule MaxPerc float perc The maximum percentage of the solution to use for the DoseQuantity
SolutionLimit Substance text The substance used for the below fields
SolutionLimit SubstUnit text The unit to measure the substance
SolutionLimit Quantities float list subst_unit The substance quantities that can be used
SolutionLimit MinQty float subst_unit The minimum substance quantity
SolutionLimit MaxQty float subst_unit The maximum substance quantity
SolutionLimit MinConc float subst_unit / mL The minimum substance concentration
SolutionLimit MaxConc float subst_unit / mL The maximum substance concentration

Addendum D.1. Renal Rule Model Figure

image6

Addendum D.2. Renal Rule Model Table

Object Variable Type Unit Key Description
Generic Generic text yes The generic name
Route Route text yes The route
Indication Indication text yes The corresponding matching dose rule indication
Source Source text yes The source of the renal rule
Patient MinAge int day yes The minimum age
Patient MaxAge int day yes The maximum age
Renal ContDial boolean yes If continuous dialysis
Renal IntDial boolean yes If discontinuous dialysis
Renal PerDial boolean yes If peritoneal dialysis
Renal MinGFR float mL / min / 1.73 m2 yes The minimum standardized GFR
Renal MaxGFR float mL / min / 1.73 m2 yes The maximum standardized GFR
DoseType DoseType once / onceTimed / discontinuous / timed / continuous yes Dose type
DoseType DoseText text yes The dose type description
Schedule Freqs int list count / freq_unit yes The possible frequencies
Schedule MinInt float int_unit The minimum interval duration
Schedule MaxInt float int_unit The maximum interval duration
Schedule IntUnit text The interval time unit
Substance Substance text The matching substance for the DoseLimit
Adjustment DoseRed rel / abs Whether the dose limit is relative or absolute
DoseLimit DoseUnit text The dose substance dose unit
DoseLimit AdjustUnit text The adjust unit (kg or m2)
Schedule FreqUnit text The frequency time unit
Schedule RateUnit text The rate time unit
DoseLimit MinQty float count /dose_unit The relative or absolute minimum dose quantity (renal adjustment)
DoseLimit MaxQty float count /dose_unit The relative or absolute maximum dose quantity (renal adjustment)
DoseLimit NormQtyAdj float count /dose_unit / adjust_unit The relative or absolute norm dose patient-adjusted quantity (renal adjustment)
DoseLimit MinQtyAdj float count /dose_unit / adjust_unit The relative or absolute minimum dose patient-adjusted quantity (renal adjustment)
DoseLimit MaxQtyAdj float count /dose_unit / adjust_unit The relative or absolute maximum dose patient-adjusted quantity (renal adjustment)
DoseLimit MinPerTime float count /dose_unit / freq_unit The relative or absolute minimum dose per time (renal adjustment)
DoseLimit MaxPerTime float count /dose_unit / freq_unit The relative or absolute maximum dose per time (renal adjustment)
DoseLimit NormPerTimeAdj float count /dose_unit / adjust_unit / freq_unit The relative or absolute norm dose patient-adjusted per time (renal adjustment)
DoseLimit MinPerTimeAdj float count /dose_unit / adjust_unit / freq_unit The relative or absolute minimum dose patient-adjusted per time (renal adjustment)
DoseLimit MaxPerTimeAdj float count /dose_unit / adjust_unit / freq_unit The relative or absolute maximum dose patient-adjusted per time (renal adjustment)
DoseLimit MinRate float count /dose_unit / rate_unit The relative or absolute minimum dose rate (renal adjustment)
DoseLimit MaxRate float count /dose_unit / rate_unit The relative or absolute maximum dose rate (renal adjustment)
DoseLimit MinRateAdj float count /dose_unit / adjust_unit / rate_unit The relative or absolute minimum patient-adjusted dose rate (renal adjustment)
DoseLimit MaxRateAdj float count /dose_unit / adjust_unit / rate_unit The relative or absolute minimum patient-adjusted dose rate (renal adjustment)

Addendum E.1. Product Component Model Figure

image7

Addendum E.2. Product Component Model Table

Object Prop Type Unit Key Description
GenPRES Product Name text yes The name of the GenPRES product.
GenPRES Product Form text yes Shared pharmaceutical form for all included generic products.
GenPRES Product Routes text list yes Routes of administration associated with the GenPRES product.
GenPRES Product PharmacologicalGroups text list Pharmacological groups applied to this product.
GenPRES Product Unit text yes Dose unit used at the GenPRES level (e.g., mg, mmol, IU).
GenPRES Product Synonyms text list Synonyms for searching and matching.
GenPRES Product GenericProducts Generic Product list Generic products belonging to this GenPRES product.
Generic Product Id (GPK) int yes Generic product identifier (GPK).
Generic Product Name text yes Full generic product name.
Generic Product Label text yes Display label for the generic product.
Generic Product ATC text ATC-5 code for classification.
Generic Product ATCName text ATC-5 description.
Generic Product Form text yes Pharmaceutical form.
Generic Product Routes text list yes Routes of administration.
Generic Product Substances ProductSubstance list yes Full substance composition of the generic product.
Generic Product PrescriptionProducts Prescription Product list Prescription products belonging to this generic product.
Product Substance SubstanceId int Identifier of the substance.
Product Substance SortOrder int Ordering index for display and naming.
Product Substance SubstanceName text yes Name of the active or additional substance.
Product Substance SubstanceQuantity float substance_unit yes Quantity of the substance.
Product Substance SubstanceUnit text yes Unit of the substance quantity.
Product Substance GenericId int Identifier of the underlying generic substance.
Product Substance GenericName text Name of the generic (salt) substance.
Product Substance GenericQuantity float generic_unit Quantity of the generic substance.
Product Substance GenericUnit text Unit of measured generic substance.
Product Substance FormUnit text Form-dependent unit (e.g., mg/mL).
Product Substance IsAdditional boolean Whether substance is additional (not active).
Prescription Product Id (PRK) int yes Prescription product identifier (PRK).
Prescription Product Name text yes Full prescription product name.
Prescription Product Label text yes Display label for prescription product.
Prescription Product Quantity float form_unit yes Pharmaceutical form quantity.
Prescription Product Unit text yes Unit corresponding to Quantity.
Prescription Product Container text Container description.
Prescription Product TradeProducts Trade Product list Trade products included under this prescription product.
Trade Product Id (HPK) int yes Trade product identifier (HPK).
Trade Product Name text yes Full trade product name.
Trade Product Label text Display label.
Trade Product Brand text yes Brand/manufacturer’s product name.
Trade Product Company text Company/marketing authorization holder.
Trade Product Denominator int Strength denominator used for concentration.
Trade Product UnitWeight float unit Strength or unit weight.
Trade Product Route text list Routes of administration.
Trade Product Substances Product Substance list Substance composition at trade level.
Trade Product ConsumerProducts Consumer Product list Consumer-level package variants.
Consumer Product Id (ZInr) int yes Consumer product identifier.
Consumer Product Name text Consumer product name.
Consumer Product Label text Display label.
Consumer Product Quantity float container_unit yes Pack quantity for consumer sale.
Consumer Product Container text yes Container description.
Product Component GPK int Generic product identifier.
Product Component ATC text ATC classification code.
Product Component MainGroup text Main pharmacological group.
Product Component SubGroup text Subgroup classification.
Product Component Generic text Generic name.
Product Component UseGenericName boolean Whether generic name should be used for display.
Product Component UseForm boolean Whether the pharmaceutical form should be included in naming.
Product Component UseBrand boolean Whether brand name should be used.
Product Component TallMan text Tall-Man lettering for LASA safety.
Product Component Synonyms text list Search synonyms.
Product Component Product text Product name generated for user-facing display.
Product Component Label text Label used in UI/selection.
Product Component Form text Pharmaceutical form.
Product Component Routes text list Routes of administration.
Product Component FormQuantities float list form_unit List of form quantities (e.g., 5 mg, 10 mg).
Product Component FormUnit text Unit corresponding to form quantities.
Product Component RequiresReconstitution boolean Whether the product requires reconstitution before use.
Product Component Reconstitution text Description or parameters for reconstitution.
Product Component Divisible int Divisibility of the dosage form.
Product Component Substances Substance Item list Substance items associated with this component.