> So are you saying that persisted clinical data is never converted to conform > to newer versions of an achetype, or simply that one is not compelled to > convert?
Usually there zould be no reason to convert - no more than there would be to convert data of archtype A into a form corresponding to archetype B. IN openEHR, new versions are only used to upgrade an archetype when a new _incompatible_ requirement occurs on an existing archetype. There are unlikely to be many of these once you analyse a few possibilities - and it is important to realise that such changes are most likely to be local. Most changes that you can think of are dealt with by: - judicious initial design; e.g. adding 4th sound to BP (systlic and diastolic are 1st and 5th sound pressures respectively) can be done with no changes to the BP measurement archetype. - specialisation: if you want a new kind of lab test to be specifically modelled, just create a new specialisation of the lab result archetype - revision: certain changes like adding a new field, or changing a cardinality from 1..1 to 1..0 can be made to the current version of the archetype. - template changes: templates can turn off and on ad rename various parts of archetypes with no effect to the archetype semantics. Hope this helps. - thomas > > Randolph > > On 11/8/07, Rong Chen <rong.acode at gmail.com> wrote: > > > > On 11/8/07, Randolph Neall <randy.neall at veriquant.com> wrote: > > > > > > Thomas, thanks for your extended remarks. Your point is one you've made > > > for a long time, that relational db schemas cannot keep up with the real > > > world. I'm just wondering if moving the problem out of the relational DB > > > and > > > into blobs (persisted objects, I take it) solves the problem you so > > > eloquently depict. Yes, it solves the schema problem. I grant you that. > > > But > > > you're still left with imperfect and changing models even with blobs. I've > > > read the openEHR specs enough to know that when an archetype version > > > changes, one is obliged to convert all existing records (blobs) to conform > > > to the new version, and that, it > > > > > > > That is not true. When an archetype version changes, new data are > > created/validated by new version of the archetype while old data (blobs or > > whatever) are still processed by old archetypes. In the root node of the > > data, there is always information about the archetype (and its version) used > > to create the data ( LOCATABLE.archetype_details). So there is really no > > need to convert existing data when archetype changes. Hope this clarifies > > the matter. > > > > Cheers, > > Rong > > -- Thomas Beale Chief Technology Officer Ocean Informatics