# versioning

**URL:** https://discourse.openehr.org/t/versioning/14814
**Category:** Implementers (archive)
**Created:** [30 August 2008 06:48 UTC](https://discourse.openehr.org/t/versioning/14814 "2008-08-30T06:48:18Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![Masoumeh\_Seydi](https://discourse.openehr.org/letter_avatar_proxy/v4/letter/m/e47c2d/32.png) [@Masoumeh\_Seydi](https://discourse.openehr.org/u/Masoumeh_Seydi)
#### Post date: [30 August 2008 06:48 UTC](https://discourse.openehr.org/t/versioning/14814/1 "2008-08-30T06:48:18Z")

</div>

Hi  
I have a question about versioning.I’m afraid I haven’t get it.  
Regarding the openEHR common doc.it seems that any changes in an object usch as composition, cause creating a new version in its version container.Am I right.Or changes records in an audit?  
And if it is true so why we save contribution objects too?I mean there will be overlapping ‘cos’ as I understood contributions will cause creating nwe versions.

Couls someone help me please?  
Besr Regards

---

<div class="post-metadata">

### Author: ![thomas.beale](https://discourse.openehr.org/user_avatar/discourse.openehr.org/thomas.beale/32/35_2.png) [@thomas.beale](https://discourse.openehr.org/u/thomas.beale)
#### Post date: [30 August 2008 10:25 UTC](https://discourse.openehr.org/t/versioning/14814/2 "2008-08-30T10:25:02Z")

</div>

masoumeh seydi wrote:

---

<div class="post-metadata">

### Author: ![Masoumeh\_Seydi](https://discourse.openehr.org/letter_avatar_proxy/v4/letter/m/e47c2d/32.png) [@Masoumeh\_Seydi](https://discourse.openehr.org/u/Masoumeh_Seydi)
#### Post date: [30 August 2008 11:08 UTC](https://discourse.openehr.org/t/versioning/14814/3 "2008-08-30T11:08:08Z")

</div>

**Hi**  **Thomas**

---

<div class="post-metadata">

### Author: ![thomas.beale](https://discourse.openehr.org/user_avatar/discourse.openehr.org/thomas.beale/32/35_2.png) [@thomas.beale](https://discourse.openehr.org/u/thomas.beale)
#### Post date: [30 August 2008 11:21 UTC](https://discourse.openehr.org/t/versioning/14814/4 "2008-08-30T11:21:43Z")

</div>

The information model doesn't change in openEHR - it is designed to be  
stable for a very long time (actually certain additions can be safely  
made).

- thomas

masoumeh seydi wrote:

---

<div class="post-metadata">

### Author: ![Masoumeh\_Seydi](https://discourse.openehr.org/letter_avatar_proxy/v4/letter/m/e47c2d/32.png) [@Masoumeh\_Seydi](https://discourse.openehr.org/u/Masoumeh_Seydi)
#### Post date: [1 September 2008 03:41 UTC](https://discourse.openehr.org/t/versioning/14814/5 "2008-09-01T03:41:05Z")

</div>

But I can’t get the point ,why when just a part of an object changes,the whole object is made again?  
Doesn’t it repeat lots of data that haven’t change just because of that part that has changed?

---

<div class="post-metadata">

### Author: ![system](https://discourse.openehr.org/uploads/default/original/2X/f/f0a1dedb20c42747bddcafd6c7df9db5f34f003c.svg) [@system](https://discourse.openehr.org/u/system)
#### Post date: [1 September 2008 07:40 UTC](https://discourse.openehr.org/t/versioning/14814/6 "2008-09-01T07:40:25Z")

</div>

masoumeh seydi schreef:

> But I can't get the point ,why when just a part of an object  
> changes,the whole object is made again?  
> Doesn't it repeat lots of data that haven't change just because of  
> that part that has changed?

That is up to you to decide, I think the specs only say that a previous  
version must be able to be restored, it does not tell you how to  
implement this idea.  
For example, if you store in XML, you could just store the diff's. The  
code from the open source product SVN could help you to develop this.  
But it is a safe and easy way to implement it to store each version  
completely separately.

Bert

---

<div class="post-metadata">

### Author: ![thomas.beale](https://discourse.openehr.org/user_avatar/discourse.openehr.org/thomas.beale/32/35_2.png) [@thomas.beale](https://discourse.openehr.org/u/thomas.beale)
#### Post date: [1 September 2008 08:41 UTC](https://discourse.openehr.org/t/versioning/14814/7 "2008-09-01T08:41:32Z")

</div>

masoumeh seydi wrote:

> But I can't get the point ,why when just a part of an object  
> changes,the whole object is made again?  
> Doesn't it repeat lots of data that haven't change just because of  
> that part that has changed?

\*How the objects are stored is up to your implementation. The interface  
says nothing about that; the storage details are in your implementation  
of the class VERSIONED\_OBJECT (see  
[http://www.openehr.org/uml/release-1.0.1/Browsable/\_9\_0\_76d0249\_1109326589721\_134411\_997Report.html](http://www.openehr.org/uml/release-1.0.1/Browsable/_9_0_76d0249_1109326589721_134411_997Report.html)).  
You can choose to implement the VERSION representation as differential  
objects, compressed XML diffs or any other thing you like.

- thomas beale
