If a problemtype is evolving along the time, it is possible to try to open a old model with the old problemtype data structure and try to convert the old data to the new structure (fields of conditions, materials, general data,…)
To do it you must use ‘transform’.
Data->Problemtype->Transform…
or load again the same Data->Problemtype, and a window will ask you to ‘reset to new problemtype’ (lost all old data and have the new definition) or ‘transform’ (try to match the old data to the new data preserving it)
The problem is that do you have two different problemtypes with the same name, and wihout any version number to identify them.
This is a design error!! (and loading the old model will try to load the new problemtype without any transform and this is a bug)
The simple approach to handle problemtype versions is to use a name based on the version
e.g.
ExProbType1.0
ExProbType1.1
…
But change the name of the problemtype and its inner files is a problem, specially if do you store your source files in some version repository (SVN, CVS, git, etc.)
A little better approach is to use an intermediate folder based on the version name
ExProbType_1.0\ExProbType
ExProbType_1.1\ExProbType
…
then the filenames of the problemtype doesn’t change, only the folder name that must not be stored in any repository.
The best approach is to store the version number in the .xml, without change
ExProbType (containing the file ExProbType.xml that store the version 1.0, 1.1,…)
And automatically when loading a model the problemtype compares the version name of the problemtype saved with the model, and the current problemtype version, and automatically invokes a transform if necessary to update the old data.
Could see (and copy) how is implemented this approach in some of our problemtypes (obtained from the menu Data->problemtype->Internet retrieve…)
e.g. SAP2000, OpenFoam,…