The changes proposed to res.csv are to do with how we use the metadata in the file.
The metadata fields are: Field, Units, ScenarioName, ScenarioInputSetName, Name, Site, ElementName, WaterFeatureType, ElementType, Structure, Custom
In File version 1: When saving, units has moved to the second column, directly after "Field" for ease of finding it. In order to do this, the metadata fields can now be read in any order and it depends on the metadata headings to map the metadata to the correct field. See attached example.res.csv.
Populates as many metadata fields as possible, including name.
When exporting from Data Sources, we no longer append the input set name (Corresponding with the Data Source Group) to the Name metadata.
Above the data (Arrow pointing to the row described, ), each header will be a "key". The key is aiming to uniquely identify each column but also retain some information of the column metadata to make it more user friendly. The key is made up of two parts, the "Field" metadata (unique within the res.csv file) and a descriptive part (not necessarily unique within the res.csv file). The metadata should be referenced via the field when distinguishing the differences between each column. The key will always start with the "Field" metadata to make it unique, but to descriptive part depends on where it is exported from:
From Results Manager or any place in which has the "Site" and "Structure" metadata it will be: Field > Site > Structure
From Data Sources or any place that DOESN'T have all the metadata it will be: Field > Name
The metadata will be loaded into the domain object, but will for the most part be hidden from the UI. We have chosen not to strip any of the metadata in attempt to be able to round trip as close to the original file and the UI will determine how the data is displayed.
Importing into Results Manager
When Data was exported from a Results Manager run it should contain all the metadata, it will be able to replicate the tree structure that it had before it was exported.
When the res.csv doesn't contain all the required metadata (such as, importing a csv than exporting as a res.csv) it will appear to flatten the data.
Reading into Data Sources
The name chosen for display will be "Site > Structure" if the metadata exists, otherwise the "Name" Field will be used. However, as names need to be unique, we will append the Field metadata to this name for any non unique columns
Backwards Compatibility for the original format
We will bring back the ability to READ the old undocumented format for the following reasons:
- It shouldn't be too hard to distinguish the old version by a lack of version field
- Results Manager Persisted Run Data was stored in res.csv
- People have data stored in the old format they wanted to be able to use in the new version rather than causing it to crash.