Class ModelMetadata
java.lang.Object
neqsim.process.processmodel.lifecycle.ModelMetadata
- All Implemented Interfaces:
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:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumCalibration status of the model.static enumLifecycle phases for a process model.static classRecord of a model modification.static classRecord of a validation event. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Stringprivate Stringprivate doubleprivate ModelMetadata.CalibrationStatusprivate Stringprivate Stringprivate Instantprivate Instantprivate ModelMetadata.LifecyclePhaseprivate List<ModelMetadata.ModificationRecord> private Stringprivate Stringprivate Stringprivate Stringprivate static final longprivate List<ModelMetadata.ValidationRecord> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoublelongGets the number of days since last calibration.longGets the number of days since last validation.getTags()booleanneedsRevalidation(long maxDays) Checks if the model needs revalidation (e.g., more than 90 days old).voidrecordModification(String description) Records a model modification.voidrecordModification(String description, String author) Records a model modification with author.voidrecordValidation(String description, String referenceId) Records a validation event.voidsetAssetId(String assetId) voidsetAssetName(String assetName) voidsetDataSource(String dataSource) voidsetFacility(String facility) voidsetLifecyclePhase(ModelMetadata.LifecyclePhase lifecyclePhase) voidvoidsetRegulatoryBasis(String regulatoryBasis) voidsetResponsibleEngineer(String responsibleEngineer) voidsetResponsibleTeam(String responsibleTeam) voidupdateCalibration(ModelMetadata.CalibrationStatus status, double accuracy) Updates calibration status.
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
assetId
-
assetName
-
facility
-
region
-
lifecyclePhase
-
responsibleEngineer
-
responsibleTeam
-
lastValidated
-
lastCalibrated
-
calibrationStatus
-
calibrationAccuracy
private double calibrationAccuracy -
validationHistory
-
modificationHistory
-
tags
-
dataSource
-
regulatoryBasis
-
-
Constructor Details
-
ModelMetadata
public ModelMetadata()Default constructor.
-
-
Method Details
-
recordValidation
-
recordModification
Records a model modification.- Parameters:
description- what was changed
-
recordModification
-
updateCalibration
Updates calibration status.- Parameters:
status- new calibration statusaccuracy- 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
-
setAssetId
-
getAssetName
-
setAssetName
-
getFacility
-
setFacility
-
getRegion
-
setRegion
-
getLifecyclePhase
-
setLifecyclePhase
-
getResponsibleEngineer
-
setResponsibleEngineer
-
getResponsibleTeam
-
setResponsibleTeam
-
getLastValidated
-
getLastCalibrated
-
getCalibrationStatus
-
getCalibrationAccuracy
public double getCalibrationAccuracy() -
getValidationHistory
-
getModificationHistory
-
getTags
-
addTag
-
getDataSource
-
setDataSource
-
getRegulatoryBasis
-
setRegulatoryBasis
-