Class ModelMetadata

java.lang.Object
neqsim.process.processmodel.lifecycle.ModelMetadata
All Implemented Interfaces:
Serializable

public class ModelMetadata extends Object implements Serializable
Metadata for tracking the lifecycle of a process model (digital twin).

This class supports:

  • Lifecycle Phase Tracking: Concept → Design → Commissioning → Operation → Late-life
  • Validation History: Track when and how the model was validated
  • Audit Trail: Record model modifications for compliance and knowledge preservation
  • Quality Metrics: Track model accuracy and calibration state

Usage Example:

ModelMetadata metadata = new ModelMetadata();
metadata.setAssetId("PLATFORM-A-TRAIN-1");
metadata.setLifecyclePhase(LifecyclePhase.OPERATION);
metadata.setResponsibleEngineer("john.doe@company.com");
metadata.recordValidation("Matched well test data within 2%", "WELL-TEST-2024-01");
metadata.recordModification("Tuned compressor curves based on vendor data");
Version:
1.0
Author:
ESOL
See Also:
  • Field Details

  • Constructor Details

    • ModelMetadata

      public ModelMetadata()
      Default constructor.
  • Method Details

    • recordValidation

      public void recordValidation(String description, String referenceId)
      Records a validation event.
      Parameters:
      description - what was validated and the outcome
      referenceId - reference to validation data (e.g., well test ID)
    • recordModification

      public void recordModification(String description)
      Records a model modification.
      Parameters:
      description - what was changed
    • recordModification

      public void recordModification(String description, String author)
      Records a model modification with author.
      Parameters:
      description - what was changed
      author - who made the change
    • updateCalibration

      public void updateCalibration(ModelMetadata.CalibrationStatus status, double accuracy)
      Updates calibration status.
      Parameters:
      status - new calibration status
      accuracy - relative accuracy achieved (e.g., 0.02 for 2%)
    • getDaysSinceValidation

      public long getDaysSinceValidation()
      Gets the number of days since last validation.
      Returns:
      days since validation, or -1 if never validated
    • getDaysSinceCalibration

      public long getDaysSinceCalibration()
      Gets the number of days since last calibration.
      Returns:
      days since calibration, or -1 if never calibrated
    • needsRevalidation

      public boolean needsRevalidation(long maxDays)
      Checks if the model needs revalidation (e.g., more than 90 days old).
      Parameters:
      maxDays - maximum days allowed since last validation
      Returns:
      true if revalidation is recommended
    • getAssetId

      public String getAssetId()
    • setAssetId

      public void setAssetId(String assetId)
    • getAssetName

      public String getAssetName()
    • setAssetName

      public void setAssetName(String assetName)
    • getFacility

      public String getFacility()
    • setFacility

      public void setFacility(String facility)
    • getRegion

      public String getRegion()
    • setRegion

      public void setRegion(String region)
    • getLifecyclePhase

      public ModelMetadata.LifecyclePhase getLifecyclePhase()
    • setLifecyclePhase

      public void setLifecyclePhase(ModelMetadata.LifecyclePhase lifecyclePhase)
    • getResponsibleEngineer

      public String getResponsibleEngineer()
    • setResponsibleEngineer

      public void setResponsibleEngineer(String responsibleEngineer)
    • getResponsibleTeam

      public String getResponsibleTeam()
    • setResponsibleTeam

      public void setResponsibleTeam(String responsibleTeam)
    • getLastValidated

      public Instant getLastValidated()
    • getLastCalibrated

      public Instant getLastCalibrated()
    • getCalibrationStatus

      public ModelMetadata.CalibrationStatus getCalibrationStatus()
    • getCalibrationAccuracy

      public double getCalibrationAccuracy()
    • getValidationHistory

      public List<ModelMetadata.ValidationRecord> getValidationHistory()
    • getModificationHistory

      public List<ModelMetadata.ModificationRecord> getModificationHistory()
    • getTags

      public Map<String,String> getTags()
    • addTag

      public void addTag(String key, String value)
    • getDataSource

      public String getDataSource()
    • setDataSource

      public void setDataSource(String dataSource)
    • getRegulatoryBasis

      public String getRegulatoryBasis()
    • setRegulatoryBasis

      public void setRegulatoryBasis(String regulatoryBasis)