FHIR Chat · Maintaining data across versions · implementers

Stream: implementers

Topic: Maintaining data across versions


view this post on Zulip Declan Kieran (Mar 16 2022 at 14:33):

I've noticed that in some of the base transforms, some elements are moved over and put in an extension as is, i.e. maintaining the 3.0 uri and follow the uri convention defined here https://build.fhir.org/versions.html#extensions

If an element does not have a target in the version it is being transform into, but it should be maintained. Is this the correct approach to adopt?

@Oliver Egger @Vadim Peretokin @Gino Canessa @Lloyd McKenzie @Grahame Grieve ?

view this post on Zulip Vadim Peretokin (Mar 16 2022 at 14:34):

Hmm... are you asking if elements that were deleted in the newer version should still be transformed?

view this post on Zulip Declan Kieran (Mar 16 2022 at 14:54):

@Vadim Peretokin More if this is the method to adopt if it was the case that you had decided this was data you did not want to lose during a transform, and there was no appropriate target in the later version, but I'd assume it would also be applicable going back versions too?

view this post on Zulip Vadim Peretokin (Mar 16 2022 at 14:58):

I think that is fine. This paragraph addresses it head on:

If applications have implemented less stable resources, not only do they have the problem of new elements for new requirements, the specification may change in either compatible or incompatible ways, and it may be necessary to carry data elements from past versions forward in order to allow seamless round-tripping.

view this post on Zulip Grahame Grieve (Mar 16 2022 at 21:32):

the conversion code framework predates the cross version extensions, and I haven't applied myself to figuring out how I'd manage the issues around fields appearing and disappearing and filtering out extensions. It's kind of on the long term todo list, and I don't mind if someone else takes it up

view this post on Zulip Michael Lawley (Mar 16 2022 at 22:05):

@Grahame Grieve That's good to know - I was looking at exactly this issue over the last couple of days, and frustrated that the BaseAdvisor hooks (handleExtension) don't provide sufficient context to add this capability in.

view this post on Zulip Grahame Grieve (Mar 17 2022 at 00:52):

That's in my queue. It should provide the context

view this post on Zulip Grahame Grieve (Mar 17 2022 at 00:52):

PRs welcome

view this post on Zulip Vadim Peretokin (Mar 17 2022 at 07:53):

Just to confirm, that's the Java code that also does version conversion?


Last updated: Apr 12 2022 at 19:14 UTC