Cimphony performs data validation at multiple levels. The first is a syntax test that occurs during parsing and will find low-level errors such as incorrectly formatted XML and will often result in a fatal error. The next level of validation checks that the data meets the requirements of the serialisation format and conforms to the meta-model. For our CIM XML data this means that the initial load of a CIM XML file will check that: it is valid XML, conforms to the IEC 61970-552 standard for RDF XML and that the data defined within the file conforms to one of the CIM meta-models supported by Cimphony.
Once the initial parsing of the file is complete the data can then be tested against one or more Validation Profiles. These profiles check the data conforms to a series of rules that place additional restrictions on the meta-model. For example these rules can include requirements for attributes to be set, for association cardinalities to be within a specific range or for associations to be restricted to specific classes.
Cimphony contains a number of validation profiles covering existing IEC standards which can be executed on loaded models.
10.1 Validating a Resource
- Go to the Examples project folder in the Project Explorer and then navigate to EDF AIGUE→ Merged and double click on AIGUE_EDF_V1-1-C15.xml
- Accept the default load options to load this small sample distribution network into the Cimphony Browser
- Hover the mouse over the green tick icon which should then show that there are currently no validation profiles active for this file.
- Click on this icon to show the list of validation profiles available forthis file. This list is generated based on the resource meta-model, inthis case CIM v15.
- Select the four profiles under the group CDPSM 2011 (Profiled) andensure the Open Validation Report option is selected
- Click Finish to generate a validation report on the instance data. Thiswill open a separate Validation Report window detailing the classes that have failed validation, the rules that have failing objects and the number of objects for each class that failed the validation.
For this model the majority of classes in this file there are no validation errors. In this example we have only a small number of errors around about missing attributes (in this case name). This is to be expected as the file is a CDPSM (Common Distribution Power System Model) instance file, however If the validation were run with a different set of profiles (for example the ENTSO-E transmission model profiles) then we would expect to see more errors.
- Using the previously loaded data, hover the mouse over the green tick icon which should now show that there are multiple CDPSM validation profiles active for this file.
- Click on the icon and select the profiles under the ENTSO-E 2011 (with Dynamics) group, make sure Open Validation Report is not selected and click Finish.
- The list of classes in the Types view will now show small red squares with a white cross in the bottom-right hand corner for multiple entries indicating that they have errors. Click on the Generating Unit icon
- The Instances window will now show the four instances of GeneratingUnit all marked as having validation errors.
- Click on the first instance (73019P9001_1_GU) and the Outline view at the right will show the detailed validation outline for that instance showing the active Profiles and then a breakdown of the validation status for each instance on a per-profile and per-rule basis. In this case it shows that the instance failed because minOperatingP and maxOperatingP were not set.
- Selecting all four objects at the one time will then update the Outline to show the detailed validation breakdown for all four instances. The same view is shown when the class is selected in the Types view.