Hi Paolo,
Many thanks for the quick and detailed response.
I tried seeing if there was a song called "Hiding to Nowhere" so I could cue it as a backing track, but that search turned up nothing but reference to a line in a Muse song. Now
that's a hiding to nowhere

In any case:
The model in Sparx is a mirror of the ERWIN model. The Erwin model is the canonical change-controlled model, and Sparx must contain that and no more (other than the links to other sparx modelling elements such as applications, Business Functions, services etc).
I have not found a way of importing the Erwin model into sparx
while retaining the Erwin GUIDs as the Sparx GUID. As far as I can tell, it is the GUID that drives the package control diff/merge capability. I was pinning my hopes on that capability to drive the updates from Erwin into Sparx.
The name in Sparx is identical to that in the Erwin model. But alas, the Erwin model has changed entity names as well, so the entity Name is not a reliable reference.
Given that the sparx import
does put the inbound GUID into a tagged value the mapping is there (that's one thing that is going right).
All in all, I think you have confirmed that I am heading into custom coding territory (and I really don't like coding to xml, mainly because I have not done a lot of it). I'm going to investigate the Erwin csv export and see if that is a more amenable approach.
The SQL bit is the easy one (I've got Thomas' book) - I've done lots of sql to the sparx database. It's the navigating the xmi model which is non-trivial.
Anyway, thanks again Paolo.
hans