The XML file is certainly available, and most bogus changes you make that do not break schema compliance (open the Error List with the XML editor open to see any problems) will be cleaned up during the load process. Loading does a full validation of the model so that subsequent changes can be based on a fully compliant state. Deleting the orm:ModelErrors section will never hurt as this will be regenerated on load if the model does have errors.
I think I've tracked down what you did here, and it is definitely a bug in the tool. Here's what I believe happened:
-
You added an instance to CityName, which has an implied mandatory constraint on the 'City has CityName' role because this is the only role played by CityName.
-
The implied mandatory means that each CityName instance must participate in the FactType. This puts a 'population mandatory' error on the CityName role.
-
City has CityName is part of the preferred identification scheme for City, which means that the FactType populations are implied by the City population. Therefore, we do not store the FactType populations. You'll see this in the UI because the Sample Population editor shows as read only.
-
(Here's the bug). Activating the error via {double-click on the role, select in the context menu, double-click in the error list, click in the verbalization browser} invokes an error activation routine. The error activation routine should populate a new EntityInstance on city, but it isn't catching the implied FactType population state and is adding a fact instance instead of an entity instance.
-
The automatic error activator has now added a fact instance that is not supposed to be there and is inaccessible through the UI.
This is something I need to fix for the next release. The suspect code is the ORMSamplePopulationToolWindow.AutoCorrectMandatoryError routine in ORMModel\Shell\SamplePopulationToolWindow.cs if you're as curious about the code as about the XML.
Although it is far from obvious, the easiest way to fix this in the tool is to toggle the IsPreferredIdentifier property on the external uniqueness constraint two times. The first toggle will leave City with no preferred identifier, the second toggle (back to true) will restore the preferred identifier and remove the unwanted fact instances.
I'm glad you're excited about NORMA. Your comments on how you are currently using--and want to use the tool--are much appreciated.
-Matt