Bruce,
I think your question is related to transmission versus persistence. The purpose of transmission is just to move data around (either from hospitals/labs to the Central Registry, or from the Central Registry to the Standard Setters, etc…). The purpose of persistence is to keep a consolidated view of the data at the Central Registry; I would assume that most Registries if not all use some kind of database for that. Both mechanism have a data model but those models do not have to be the same and in many registries, the persistence data model is more complex than the transmission data model because the Registry wants to keep track of more data than can be transmitted via NAACCR data files.
The primary purpose of the NAACCR XML Exchange standard is to transmit data and its data model was design with that in mind. A Registry is welcome to use the same data model for persistence if that works for them, but if not, they probably need to move to a more complex persistence data model.
Taking the address as an example: the standard defines it as the "current address" and so the transmission data model only allows one (the address at the time the abstract was created). If you want to keep track of the addresses over time in your database, you would have to use a more complex data model where you consolidate all the incoming current addresses into a list of addresses.
I understand having different models is not as convenient than using the same model for transmission and persistence because it requires some type of conversion, but in general those conversion should be fairly simple.