Cyclic datatypes: OpenEHR virus
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
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
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
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