Interface CgmesMetadataModel
- All Known Implementing Classes:
CgmesMetadataModelImpl
In each CGMES instance file there is a unique Model
object that holds metadata information.
The model contents are specified by profiles: equipment, power flow initial values, power flow results, etc.
Each model can contain data from multiple profiles and is produced by a modeling authority.
A model may have relationships to other models. Two kind of relationships are considered: "dependent on" and "supersedes".
A "dependent on" is a reference to an other required model. As an example: a load flow solution depends on the topology model it was computed from.
When a model is updated, the resulting model "supersedes" the models that were used as basis for the update.
As an example: when building a Common Grid Model (CGM) from Individual Grid Models (IGM), the power flow initial assumptions (SSH) of each IGM might be adjusted as part of the merging process and area interchange control, thus updated SSH instance files are created. Each updated SSH model "supersedes" the original one.
More information can be found in the IEC-61970-552.
- Author:
- Luma ZamarreƱo <zamarrenolm at aia.es>
-
Method Summary
Modifier and TypeMethodDescriptionaddDependentOn
(String id) Add the given model id to the set of ids this model depends on.addDependentOn
(Collection<String> dependentOn) Add the given model ids to the set of ids this model depends on.addProfiles
(Collection<String> profiles) Extend model profiles with the given ones.addSupersedes
(String id) Add the given model id to the set of ids this model supersedesaddSupersedes
(Collection<String> supersedes) Add the given model ids to the set of ids this model supersedes.Remove all the model ids this model depends on.References to other models that the model depends on.A description for the model.getId()
The unique identifier for the model.A reference to the organisation role / modeling authority set responsible for producing the model contents.References to the profiles used in the model.The CGMES instance file (subset) that the model refers to: EQ, SSH, ...References to other models that are superseded by this model.int
The version number for the model.setDescription
(String description) Set the given model description.Set the given model id.setModelingAuthoritySet
(String modelingAuthoritySet) Set the given modeling authority set.setProfile
(String profile) Remove any existing profile and set the given model profile.setVersion
(int version) Set the given model version.
-
Method Details
-
getSubset
CgmesSubset getSubset()The CGMES instance file (subset) that the model refers to: EQ, SSH, ...- Returns:
- the subset of the CGMES the model refers to
-
getId
String getId()The unique identifier for the model. A model identifier should change if the data contained in the model has changed.- Returns:
- the identifier of the model
-
getDescription
String getDescription()A description for the model.- Returns:
- the description of the model
-
getVersion
int getVersion()The version number for the model. The version number should change if the data contained in the model has changed.- Returns:
- the version number of the model
-
getModelingAuthoritySet
String getModelingAuthoritySet()A reference to the organisation role / modeling authority set responsible for producing the model contents. It is a URN/URI.- Returns:
- the URN/URI of the modeling authority set producing the model
-
getProfiles
References to the profiles used in the model. Each profile defines semantics data that may appear inside the model. A model may contain data from multiple profiles.
As an example, "http://iec.ch/TC57/61970-456/SteadyStateHypothesis/2/0" refers to power flow inputs in CGMES 3.
In CGMES 2.4, the model for the EQ subset may contain two profiles: "http://iec.ch/TC57/2013/61970-452/EquipmentCore/4" to describe the equipment core and "http://iec.ch/TC57/2013/61970-452/EquipmentOperation/4" if the model is defined at node/braker level.
- Returns:
- the URN/URIs of profiles describing the data in the model
-
getDependentOn
References to other models that the model depends on.- Returns:
- the identifiers of the models the model depends on
-
getSupersedes
References to other models that are superseded by this model.- Returns:
- the identifiers of the models this model supersedes
-
setVersion
Set the given model version.- Parameters:
version
- The version to set for the model.- Returns:
- The model with the new version set.
-
setId
Set the given model id.- Parameters:
id
- The id to set for the model.- Returns:
- The model with the new id set.
-
setProfile
Remove any existing profile and set the given model profile.- Parameters:
profile
- The profile to set for the model.- Returns:
- The model with the new profile set.
-
addProfiles
Extend model profiles with the given ones.- Parameters:
profiles
- The profiles to add for the model.- Returns:
- The model with the new profiles added.
-
setDescription
Set the given model description.- Parameters:
description
- The description to set for the model.- Returns:
- The model with the new description set.
-
addSupersedes
Add the given model id to the set of ids this model supersedes- Parameters:
id
- The additional model id this model should supersede.- Returns:
- The model with an updated set of values this model supersedes.
-
addDependentOn
Add the given model id to the set of ids this model depends on.- Parameters:
id
- The additional model id this model should depend on.- Returns:
- The model with an updated set of values this model depends on.
-
addDependentOn
Add the given model ids to the set of ids this model depends on.- Parameters:
dependentOn
- The additional model ids this model should depend on.- Returns:
- The model with an updated set of values this model depends on.
-
addSupersedes
Add the given model ids to the set of ids this model supersedes.- Parameters:
supersedes
- The additional model ids this model should supersede.- Returns:
- The model with an updated set of values this model supersedes.
-
setModelingAuthoritySet
Set the given modeling authority set.- Parameters:
modelingAuthoritySet
- The modeling authority set to set for the model.- Returns:
- The model with the new modeling authority set defined.
-
clearDependencies
CgmesMetadataModelImpl clearDependencies()Remove all the model ids this model depends on.- Returns:
- The model with an empty set of values this model depends on.
-