csingleattribute and existence

2013-01-08 Thread Sam Heard
Hi Bert

 

I have been a little irritating about this in the past. The single attribute
could be determined by occurrences but I am not sure of the downstream
implications at this stage.

 

My interest has been in existence as a constraint. Clearly everything is
logically optional at any level if existence is to have any relevance.
Existence as a constraint is therefore binary - something is mandatory or
prohibited. I have proposed in XML that we have existence as a binary
statement 0 or 1.

 

The expression of existence is clearly a tertiary state - optional as well
as mandatory or prohibited - it is only as a constraint that it is binary.

 

Cheers, Sam

 

From: openEHR-technical [mailto:openehr-technical-boun...@lists.openehr.org]
On Behalf Of Thomas Beale
Sent: Monday, 7 January 2013 9:57 PM
To: openehr-technical at lists.openehr.org
Subject: Re: csingleattribute and existence

 


Bert,

one very useful thing you can do is to identify guidelines for use of the
current specification. E.g. statements of the form

if existence is set on a single-valued attribute, and there is only one
child object, no occurrences should be set, since they can always be
inferred from the owning attribute's existence. 

and so on. These kind of statements I can add to the ADL 1.5 spec (which we
should treat as the usable spec these days).

thanks

- thomas

On 07/01/2013 11:21, Bert Verhees wrote:





But besides that, suppose you have a CSingleAttribute with REQUIRED set with
more CObjects as alternatives in it. 
All occurrences for the CObjects need then to be set to 0..1, every other
setting is erroneous. 
Occurrences 0..0 is useless, why define a CObject if it may never occur. 
Occurrences 1..1 is useless, why define alternative CObjects if the one
chosen is defined. 

Maybe the occurrences of CObjects should not be looked at when child of a
CSingleAttribute 


occurrences can be 1..1 if it is the only possibility. 


My statement was that it is useless, it can be possible but has no meaning.
Skipping the alternatives is more clear. 
And if there are no alternatives, setting the CSingleAttribute.existence to
REQUIRED does the same. 





occurrences can be 0..1 on two alternatives, with an additional rule that
says that either A or B must be there (thus satisfying the 1..1 in the
attribute itself) 

That is the only meaningful occurrence possible in the CObject. So if there
is only one meaningful, what is the point of making it configurable? 








- 
It is that I am looking further in the world then existing archetypes. 
We had the discussion about the tried enforcing top-down-structure of
archetypes and the consequences of this policy a few weeks ago. 


I'm not sure how this relates to the technical issue we are discussing
here...? 


It is because you advised me to use the existing OpenEHR archetypes and
Java-implementation. I indicated why I don't do that exclusively. 









I am also looking further than the existing Java-libraries, but that I will
soon announce more about this. 


I am not claiming that the current specification approach is perfect. But
the experience I know about elsewhere leads me to think it is pretty
workable; we don't seem to have any problems in most tools or libraries on
this issue. 

If there are aspects you are thinking about in some other kind of archetype,
please share it, that would help. 


No it is not perfect, and yes it is workable. My suggestions were partly
that I was not sure to understand the construct well, and partly to discuss
improvements. 

When I have other issues, I will gladly discuss them. 

Bert 

___ 
openEHR-technical mailing list 
openEHR-technical at lists.openehr.org
<mailto:openEHR-technical at lists.openehr.org>  
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.or
g 

 

-- 




Thomas Beale
Chief Technology Officer, Ocean Informatics
<http://www.oceaninformatics.com/> 

Chair Architectural Review Board,  <http://www.openehr.org/> openEHR
Foundation 
Honorary Research Fellow, University College London
<http://www.chime.ucl.ac.uk/>  
Chartered IT Professional Fellow, BCS, British Computer Society
<http://www.bcs.org.uk/>  
Health IT blog <http://www.wolandscat.net/>  

 

-- next part --
An HTML attachment was scrubbed...
URL: 
<http://lists.openehr.org/pipermail/openehr-technical_lists.openehr.org/attachments/20130108/0cbc2e9a/attachment-0001.html>
-- next part --
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 5828 bytes
Desc: not available
URL: 
<http://lists.openehr.org/pipermail/openehr-technical_lists.openehr.org/attachments/20130108/0cbc2e9a/attachment-0001.jpg>


defaultValue/assumedValue in CPrimitive.

2013-01-08 Thread Sam Heard
Hi All

 

The reason we introduced the assumed value in the Observation.State was to
deal with the fact that many variables may be introduced in regard to the
state of the person when an observation is made - clothing, fasting,
post-challenge, at rest, on exertion, asleep, upright/sitting/lying etc.

 

Actually these 'state' variables are not recorded but are largely assumed to
be of a certain value. So we do not need to say that an ECG is at rest - but
we do need to say that it was an exercise ECG. The state variable for
exertion is assumed to be at rest unless stated. A blood pressure which is
stand alone is assumed to be sitting in most instances. The archetype allows
formal expression of what the relevant state variables are and what they are
assumed to be when they are missing. This is helpful for standardisation of
observations without massive data collection constraints.

 

Cheers, Sam

 

From: openEHR-technical [mailto:openehr-technical-boun...@lists.openehr.org]
On Behalf Of Ian McNicoll
Sent: Tuesday, 8 January 2013 12:57 AM
To: For openEHR technical discussions
Subject: Re: defaultValue/assumedValue in CPrimitive.

 

Hi Bert,

 

 

Assumed value: This is a statement in an archetype which asserts what should
happen if a value is missing. It can really only apply safely to an element
is Observation/State or in a Cluster archetype intended for use in  state.
Essentially this is a design-time statement of 'clinical knowledge' and
should not end up in data. Personally I don't use this very often as it can
be difficult to know when/how that knowledge can be safely applied. One
reasonable example is in OBSERVATION.body_weight.v1 where the 'State of
Clothing' has an assumed value of 'Lightly Dressed'.

 

 

Default value: Generally applied at template level as it will often differ
depending on the exact use-case. A default value does appear in  run-time
data.

 

As Thomas,says in his reply, Assumed value has rarely been used but it can
sometimes be helpful.

 

On 7 January 2013 13:52, Bert Verhees mailto:bert.verhees at rosa.nl> > wrote:

Please can some one short explain what the difference is between
assumedValue and defaultValue in CPrimitive?

Thanks
Bert

___
openEHR-technical mailing list
openEHR-technical at lists.openehr.org
<mailto:openEHR-technical at lists.openehr.org> 
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.or
g





 

-- 
Dr Ian McNicoll
office +44 (0)1536 414 994
fax +44 (0)1536 516317
mobile +44 (0)775 209 7859
skype ianmcnicoll
ian.mcnicoll at oceaninformatics.com <mailto:ian.mcnicoll at 
oceaninformatics.com>


Clinical Modelling Consultant, Ocean Informatics, UK
Director openEHR Foundation  www.openehr.org/knowledge
<http://www.openehr.org/knowledge> 
Honorary Senior Research Associate, CHIME, UCL
SCIMP Working Group, NHS Scotland
BCS Primary Health Care  www.phcsg.org <http://www.phcsg.org> 

-- next part --
An HTML attachment was scrubbed...
URL: 
<http://lists.openehr.org/pipermail/openehr-technical_lists.openehr.org/attachments/20130108/aa04dec1/attachment.html>


defaultValue/assumedValue in CPrimitive.

2013-01-08 Thread Peter Gummer
Ian McNicoll wrote:

> Assumed value: This is a statement in an archetype which asserts what should 
> happen if a value is missing. It can really only apply safely to an element 
> is Observation/State or in a Cluster archetype intended for use in state.


Ian, it's not only CLUSTER archetypes that can appear within the state of an 
OBSERVATION archetype:

* An ELEMENT archetype can similarly be slotted into the OBSERVATION.state.

* We should also allow it in EVENT.state. (That's the "Person State" check box 
that you see in the Archetype Editor when working on an OBSERVATION.)

* The Person State can be defined by an embedded archetype of type ITEM_SINGLE, 
ITEM_LIST, ITEM_TREE or ITEM_TABLE.


So if the idea is that assumed value should be used only to describe state, 
then I think that the complete list of places where it would be needed is in:

* OBSERVATION.state
* EVENT.state
* CLUSTER archetypes
* ELEMENT archetypes
* ITEM_SINGLE archetypes
* ITEM_LIST archetypes
* ITEM_TREE archetypes
* ITEM_TABLE archetypes

Peter