Dear Bert, Those are very good questions, but I'm afraid that they are still open research questions. So just some educated guesses:
I think that occurrences and cardinality should easily be covered by an integrity constraint validator, while structure and illegal properties depend on how the OWL is modelled. By the way, when I read your question, I had to think of work that has been done to validate archetypes themselves, maybe you find that interesting, too: http://ceur-ws.org/Vol-674/Paper150.pdf I'm also not an expert on AQL queries, but from what I've seen so far they resemble SPARQL a lot, and there has been some work on translating XPath queries into SPARQL. However, I am not sure whether off-the-shelf tools exists, and if not how much work it would be to program it yourself. If you are completely new to the topic, there is also a short article by Tim Berners-Lee explaining " Why RDF model is different from the XML model": http://www.w3.org/DesignIssues/RDF-XML.html It might be a good starting point for understanding graph patterns! Best, Kathrin Op 8/8/13 4:00 PM, Bert Verhees schreef: > But I wonder, excuse me if it is an obvious question.... > (I must study it, it is a lot of information, and I will depending on > these questions) > > Is there a way to use the archetype-ADL-code as a source for > automagically to a validating source for validating datasets? > Not only the leaf values, that is the easiest part, but also the > structure, occurrences, cardinality, illegal properties, etc? > > And I have another question also, > I am not educated in graph-pattern, I should have been, but a day only > has 24 hours. > Can it be used for automagically translate AQL-queries, is that possible? > > Automagically means for me: can there be written software to do so. > ----- > I am interested, at this moment I am doing something similar, but > still completely different. > > I have the data in XML, very much like defined in the OpenEHR XSD's, > and I validate them with ADL translated to RelaxNG/Schematron > > XML offers XQuery to query the data on difficult queries, and the > software to query is on the shelf (many XML-databases supports xQuery, > commercially and opensource) > RelaxNG/Schematron offer a way for without any tricks, translate all > quirks of ADL, and validate XML with it (software is also on the shelf > available, also commercially and opensource) > > Thanks in advance for enlightening me. > Bert > > > > On 08/08/2013 03:39 PM, Kathrin Dentler wrote: >> Hi Bert, >> >> The idea is to validate the data by using an integrity constraint >> validator such as http://clarkparsia.com/pellet/icv/. I just >> implemented a little proof of concept so far (successfully, a blood >> pressure value that was out of range). Others have done something >> similar: http://www.biomedcentral.com/content/pdf/2041-1480-2-2.pdf >> >> Best, >> Kathrin >> >> >> >> Op 8/8/13 3:33 PM, Bert Verhees schreef: >>> That is very interesting, Kathrin, >>> >>> Do you also have a way to validate the data? >>> >>> Thanks >>> Bert >>> >>> >>> >>> On 08/08/2013 12:46 PM, Kathrin Dentler wrote: >>>> Dear David, >>>> >>>> Just because the proposed options both don't seem ideal at first >>>> sight, I would like to mention that I made good experiences working >>>> with an OWL representation of archetypes [1]. It took around two >>>> weeks until I could query my self-generated archetyped patient >>>> data. OWL can be queried with SPARQL based on graph patterns. >>>> >>>> The example archetypes, patient data and queries are online: >>>> http://www.few.vu.nl/~kdr250/archetypes/index.html >>>> >>>> However, there are some issues: >>>> >>>> 1) I stored the data as instances of archetypes, not as instances >>>> of the reference model. This seems most intuitive to me, but there >>>> might be some implications that I'm unaware of. >>>> >>>> 2) The ADL2OWL translator (originally developed by Leonardo >>>> Lezcano) is not feature-complete yet. For example, terminology >>>> bindings are not implemented yet. But Leonardo and me would be >>>> happy to share what we have so far, based on an appropriate open >>>> source license. It's written in Java. >>>> >>>> Best, >>>> Kathrin >>>> >>>> >>>> [1] >>>> http://www.few.vu.nl/~kdr250/publications/KR4HC2012-Semantic-Integration-Archetypes.pdf >>>> >>>> >>>> >>>>> What you need to store are instances of the reference model. That >>>>> is generic, it does not have fields like you mention. Those fields >>>>> are defined in archetypes. >>>>> That is why I advised you yesterday, take a good look at the >>>>> reference model. There is a good Java-version of it, written by >>>>> Rong Chen. >>>>> Then take a good look at the archetypes at the CKM: >>>>> http://www.openehr.org/ckm/ >>>>> You need to understand the match between them, the documentation >>>>> must help you. You must understand the documentation also. >>>>> >>>>> However, the documentation is more about the medical meaning of >>>>> the generic reference model. >>>>> But for you, when developing most important is to understand the >>>>> technical match, that is why the Java-code <--> archetypes match >>>>> is good for you to understand.. >>>>> >>>>> Don't do anything else before you understand this part completely. >>>>> You don't need to memorize it all, just understand. Memorizing >>>>> comes automatically when working with it. >>>>> Take your time, give yourself a week or more to do so. That is >>>>> quite normal amount of time. >>>>> >>>>> When you have good understanding of the match between the >>>>> Java-reference-model code, the documentation and the archetypes on >>>>> CKM. >>>>> >>>>> Then come back to this list, and we can discuss how to proceed. >>>>> >>>>> Seref advises against building a kernel on your own, except when >>>>> you do it for academic exercise. >>>>> I disagree with him. I think it is quite doable, but it is not a >>>>> small thing to do. >>>>> But with good help and not being afraid to ask, it can be done, >>>>> and quite good. But it will take a year or more. >>>>> Do you have so much time? You will really need it. >>>>> >>>>> Pablo advises you to use a relational database. >>>>> I don't think that is suitable for a good working kernel, because >>>>> you cannot run path-based queries against it, but for a start it >>>>> might work. >>>> >>> >>> >>> _______________________________________________ >>> 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 > -- Kathrin Dentler AI Department | Department of Medical Informatics Faculty of Sciences | Academic Medical Center Vrije Universiteit | Universiteit van Amsterdam k.dentler at vu.nl | k.dentler at amc.uva.nl http://www.few.vu.nl/~kdr250/ -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.openehr.org/pipermail/openehr-technical_lists.openehr.org/attachments/20130808/d4e43293/attachment-0001.html>