Cyclic datatypes: OpenEHR virus

2014-05-13 Thread Ing. Pablo Pazos
If the value is not constrained, the validator should return true without 
continuing checking in cascade-recursive mode. For this to work as expected, 
the data structure should be validated before than the data validation. The 
easiest way of validating the structure is serializing the instance to XML and 
using XSD.

Sent from my LG Mobile

Bert Verhees bert.verhees at rosa.nl wrote:

Thomas Beale schreef op 12-5-2014 17:25:
 I don't see the problem here; the DV_CODED_TEXT of the 
 TERM_MAPPING.purpose is always a different instance from the root 
 DV_TEXT or DV_CODED_TEXT instance. So how can a loop occur?
What I was doing was writing validation-rules for: DV_TEXT matches{*}
I am working on the finishing part of software to write validation-rules 
automated, archetypes are translated to validation-rules, and I am doing 
the last bits, so I came to this which I had saved in a TODO list.
I had a stack-overflow, and first I thought it was a bug, but after 
investigating, I found, it was as designed.

For this situation, I had to write a rule for attribute: mappings, which 
can be used, because there is no constraint.
And I wanted to validate the expression completely, so every possible 
attribute had to be handled, with occurrence as defined in the 
XML-Schema. Attribute: mappings is optional, so it is allowed.
Every attribute that is not a simple type, but a complex OpenEHR-type 
needs to be treated the same way (recursive), so in the 
mappings-attribute, there is the purpose-attribute which again can have 
a mappings-attribute, which again can have purpose-attribute, and so on.

A data-set which would look like that recursive situation would still 
match inside the archetype-definition.
Even if this would repeat ten times inside that data-set, it would still 
be matching against the archetype.

I admit that the problem is a theoretical one, and I suggested an 
automated feeding system, which could create that to make it less 
theoretical.
I have seen systems which go to every detail and every bit, thinkable, 
automated systems sometimes go very deep.

The problem is, how can validation software distinguish erroneous 
nesting from legitimate nesting.
I don't think that is possible, so the validating software has to stop 
at a certain arbitrary level of depth.
At a certain point, the validating software will mark a part of a 
data-set as erroneous: too deeply nested, even if it still fits inside 
the archetype

Then I remembered a teacher from years ago, he said: Don't write perfect 
software, write feasible software

But OK, thank you all for your reply's, I am now convinced that it is 
not a 100% solvable problem.


best regards
Bert

___
openEHR-technical mailing list
openEHR-technical at lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org



How to start

2013-08-08 Thread Ing. Pablo Pazos
Create tables, saves and retrieves the.same way you do with any other system. 
This is not black magic, is just data :)

But you need to create the bindings.

In 2012 I created bindings and give them to developers of a mobile app for a 
company in Netherlands (Bert works in that project). The developers only had to 
understand the bindings, not the whole openEHR paradigm.

Sent from my LG Mobile

Lexis Nexis lexisnexis5490 at gmail.com wrote:

Should I create a new database table to store these fields:

Last Name:
First Name:
Date of Birth Date:
Gender:
Phone:
Email:
Emergency Contact Person:

I get confused about how to save and retrieve data and where data are saved?

Thanks,

David


On Tue, Aug 6, 2013 at 8:59 PM, pablo pazos pazospablo at hotmail.com wrote:

 Hi Lexis, you can grab the demographic Person archetype here:
 http://www.openehr.org/ckm/

 Then use the ADL Workbench to extract paths, and map those paths with your
 fields. We call that mapping a binding between archetype nodes and
 software elements/artifacts.

 --
 Kind regards,
 Eng. Pablo Pazos Guti?rrez
 http://cabolabs.com http://cabolabs.com/es/homehttp://twitter.com/ppazos

 --
 Date: Tue, 6 Aug 2013 20:50:29 -0400
 Subject: How to start
 From: lexisnexis5490 at gmail.com
 To: openehr-technical at lists.openehr.org


 I am a Java developer. I am assigned to develop EHR based on OpenEHR. I
 read some specifications and they seem very complex to me. For instance, I
 want to create a web page like:

 Last Name:
 First Name:
 Date of Birth Date:
 Gender:
 Phone:
 Email:
 Emergency Contact Person:

 How do I map this object to Archetype?


 David

 ___ openEHR-technical mailing
 list openEHR-technical at lists.openehr.org
 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org

 ___
 openEHR-technical mailing list
 openEHR-technical at lists.openehr.org

 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org


___
openEHR-technical mailing list
openEHR-technical at lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org


How to start

2013-08-08 Thread Ing. Pablo Pazos
Look for oenEHR xml schemas.

Sent from my LG Mobile

Lexis Nexis lexisnexis5490 at gmail.com wrote:

Is RM-objects only used for data interchanges between different EHR system?

Does a way to serialize your RM-objects to that database means that I
have to create my own tables to store medical data?

Where can I get a whole picture about how to retrieve data and save data?
As I understand OpenEHR is used to model medical data. Am I right?

Thanks,

David


On Wed, Aug 7, 2013 at 3:33 AM, Bert Verhees bert.verhees at rosa.nl wrote:

  On 08/07/2013 03:21 AM, Lexis Nexis wrote:

   Is there a tutorial book I can purchase or some examples? Step-by-step
 tutorial is best.

  I found ArchetypeSaveLoadExample.java, but I missed a lot of imported
 libraries. How do I find the source code for this example?


 David, you have to build your own kernel. There is no fully functional
 kernel in Java available.
 There are some wheels you have to reinvent.

 Be careful with advices in the past, they are always/often based on
 limited experiences, or have some company-politically background.

 Think for your own, that is the most important advice I can give you.

 You must think about:
 - Database-layer, you have to consider the type of database, and then a
 way to serialize your RM-objects to that database.
 - You also must consider your infrastructure, how to handle archetypes,
 how to validate data against the archetypes, how to communicate with GUI's,
 etc.
 - How to have a query-engine which is able to query ADL-paths. (AQL)

 All this is not available in open source, even good ideas how to do so are
 not available.

 There is quite a lot you have to do before you have a working
 OpenEHR-kernel.

 So, thinking in terms of displaying data on a website, is something you do
 not need to do coming months.
 In fact, that is more or less, the last step.

 A first step:
 A good study point to start with is read the Reference Model, and look at
 the archetypes at:
 http://www.openehr.org/ckm/
 Try to match them, and when you have understood that, than it will become
 time to think about how to design your kernel.
 There are many good ways to do so.

 This list is a good place for advice, especially when you have more
 specific questions

 good luck
 Bert Verhees




  Thanks,

  David


 On Tue, Aug 6, 2013 at 8:59 PM, pablo pazos pazospablo at hotmail.comwrote:

  Hi Lexis, you can grab the demographic Person archetype here:
 http://www.openehr.org/ckm/

 Then use the ADL Workbench to extract paths, and map those paths with
 your fields. We call that mapping a binding between archetype nodes and
 software elements/artifacts.

 --
 Kind regards,
 Eng. Pablo Pazos Guti?rrez
 http://cabolabs.com http://cabolabs.com/es/home

  --
 Date: Tue, 6 Aug 2013 20:50:29 -0400
 Subject: How to start
 From: lexisnexis5490 at gmail.com
 To: openehr-technical at lists.openehr.org


  I am a Java developer. I am assigned to develop EHR based on
 OpenEHR. I read some specifications and they seem very complex to me. For
 instance, I want to create a web page like:

  Last Name:
  First Name:
  Date of Birth Date:
  Gender:
  Phone:
  Email:
  Emergency Contact Person:

  How do I map this object to Archetype?


  David

  ___ openEHR-technical
 mailing list openEHR-technical at lists.openehr.org
 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org

 ___
 openEHR-technical mailing list
 openEHR-technical at lists.openehr.org

 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org




 ___
 openEHR-technical mailing listopenEHR-technical at 
 lists.openehr.orghttp://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org



 ___
 openEHR-technical mailing list
 openEHR-technical at lists.openehr.org

 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org


___
openEHR-technical mailing list
openEHR-technical at lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org


How to start

2013-08-08 Thread Ing. Pablo Pazos
Please specify what kind of examples do you need. For the software part I 
believe you can do it. The binding is just a mapping of the elements I 
mentioned on my previous messages, in a simple text file.

Sent from my LG Mobile

Lexis Nexis lexisnexis5490 at gmail.com wrote:

May I have some examples? I am starting to understand OpenEHR a little bit.

Thanks,

David


On Wed, Aug 7, 2013 at 10:41 PM, Ing. Pablo Pazos pazospablo at 
hotmail.comwrote:

 Create tables, saves and retrieves the.same way you do with any other
 system. This is not black magic, is just data :)

 But you need to create the bindings.

 In 2012 I created bindings and give them to developers of a mobile app for
 a company in Netherlands (Bert works in that project). The developers only
 had to understand the bindings, not the whole openEHR paradigm.

 Sent from my LG Mobile

 Lexis Nexis lexisnexis5490 at gmail.com wrote:

 Should I create a new database table to store these fields:
 
 Last Name:
 First Name:
 Date of Birth Date:
 Gender:
 Phone:
 Email:
 Emergency Contact Person:
 
 I get confused about how to save and retrieve data and where data are
 saved?
 
 Thanks,
 
 David
 
 
 On Tue, Aug 6, 2013 at 8:59 PM, pablo pazos pazospablo at hotmail.com
 wrote:
 
  Hi Lexis, you can grab the demographic Person archetype here:
  http://www.openehr.org/ckm/
 
  Then use the ADL Workbench to extract paths, and map those paths with
 your
  fields. We call that mapping a binding between archetype nodes and
  software elements/artifacts.
 
  --
  Kind regards,
  Eng. Pablo Pazos Guti?rrez
  http://cabolabs.com http://cabolabs.com/es/home
 http://twitter.com/ppazos
 
  --
  Date: Tue, 6 Aug 2013 20:50:29 -0400
  Subject: How to start
  From: lexisnexis5490 at gmail.com
  To: openehr-technical at lists.openehr.org
 
 
  I am a Java developer. I am assigned to develop EHR based on OpenEHR. I
  read some specifications and they seem very complex to me. For
 instance, I
  want to create a web page like:
 
  Last Name:
  First Name:
  Date of Birth Date:
  Gender:
  Phone:
  Email:
  Emergency Contact Person:
 
  How do I map this object to Archetype?
 
 
  David
 
  ___ openEHR-technical
 mailing
  list openEHR-technical at lists.openehr.org
 
 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org
 
  ___
  openEHR-technical mailing list
  openEHR-technical at lists.openehr.org
 
 
 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org
 
 
 ___
 openEHR-technical mailing list
 openEHR-technical at lists.openehr.org
 
 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org
 ___
 openEHR-technical mailing list
 openEHR-technical at lists.openehr.org

 http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org


___
openEHR-technical mailing list
openEHR-technical at lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org