As Clifford says, the goal here is to keep the ValueType intact. This will not preserve the relationship between the entity type and the other fact types, but at least you won't have to reenter the building data.
-
Select a shape for the entity type you want to change to a value type.
-
Set the 'ExpandRefMode' property to true. You'll see a fact type and a value type appear.
-
(Order is important here) Delete the fact type, then the entity type.
-
Rename the value type to the original entity type name.
-
You'll have errors on the roles that used the original entity type. Double-click these errors in the Error List to activate an editor that will let you drop on the replacement value type, or just drag the roles yourself. Alternately, you can multi-select the roles (click accurately to select the role, not the fact type) and use the RolePlayer property to set them all at once.
-
Fixup an fact type populations.
I'd like to improve this area in general. Currently, the populations of existential fact types (those with roles in a preferred identifier) are implicitly populated based on the population of the identified entity type. An alternative approach is to fully populated these fact types, giving the the entity instance an identifier but no asserted population (the population is derived from the existential fact types instead of the current situation, which derives the fact population from the entity identifier population). This alternate approach would make it easier to switch identifiers without having to repopulate all role players. You probably won't see this in the near future, but I'd like to do it eventually because I know this is a pain point.
-Matt