Hi Bert,

Bert Verhees wrote:

> Please correct me if I am wrong,
>
> Please take it as a request for information, or if I am wrong and need 
> to be corrected, as a discussion.
>
> I will do a few statements about what I have seen around the 
> openehr-website
>
> - The folder in the RC 1 for ITS is a bit empty. No 
> database-definitions, no languages specific information, no 
> distribution-formalism.
> As the roadmap-document explains, this will be taken care of, but has 
> not yet happened.

there is a Java ITS guide, which will be included here. The 
documentitself is available at 
http://svn.openehr.org/specification/BRANCHES/Release-1.0-candidate/publishing/its/Java/openEHR-JavaITS.pdf

>
> - Although there is a lot of Java-code, but it represents a previous 
> version, and there is no guaranteed effort that it will be up to date 
> with the official Openehr-Eiffel-code.
> It can be used as is, but for own risk for missing the project 
> developments.

this is correct, it is not up to date. The intention is that it will be 
brought up to date very soon after the Feb 1 publishing of Release 1.0, 
probably by my group at UCL in London.

>
> - One can say, the Eiffel-code, as Thomas states somewhere, is the 
> case-tool, it represents the formal state of work/definitions.
> One can create dotnet-libraries with it, which is already done. I can 
> load them in my Visual Studio and Delphi.NET. But I have no way of 
> checking if there is something happening behind the 
> interface-properties, or if they are just there as placeholders for 
> later use. My knowledge of Eiffel is really not enough for judging the 
> source-files.

are you talking about the ref_impl_eiffel repository? You don't have to 
use that if you are not interested in Eiffel. But I don't know what you 
mean by "interface properties" above...

> This is a confusing and maybe conflicting situation.
> Because the code is at the same time case-tool storage, it serves two 
> purposes, which can for an outsider be confusing.
> In a case-tool there is no need to write code behind the properties of 
> a class, one does not want to do that because code-writing is another 
> kind of job then software-architecture. A case-tool is a tool for an 
> architect, a designer, not for a programmer, although those two 
> professions can come together in one person, an outsider can never be 
> sure who was talking here behid this particular property or method.

 From my point of view, it is very simple. We express the openEHR models 
in Eiffel, which is a nearly pure OO environment, and we compile the 
model to get code. If you write code into the routines, then it is the 
same as programming. That's the whole idea seamless software 
development. We then build executables on Windows (.exe or .Net 
assembly), Linux (we're not doing this yet, but you just recompile on 
Linux to get an executable) and on the Mac (we have done some initial 
recompiles of the ADL workbench on the Mac, but there are some GUI 
anomalies to be solved). But all this is only relevant if you want to 
have any contact with Eiffel.

In Java-land I suggest that the best thing to do is to work with the 
Java classes, and in .Net-land, the Ocean Informatics kernel will be 
open-sourced at some point.

Not all these things are ready yet - the major delivery milestone at the 
moment is Release 1.0 of the specifications.

>
> - There are no example implementations of a complete openehr-system on 
> this website, does this mean that there are no open source 
> implementations?
> Only parts can be found, which are interesting pieces of work, but the 
> things do not come together now.

that's is true. To my knowledge, there are no complete open source 
implementations. That will take time.

>
> - Are there any known closed source implementations which run fine?

You can see the list of (some) openEHR projects at 
http://www.openehr.org/projects/t_projects.htm

> - Can the experienced programmers be hired?
> - why is the ITS and knowledge coming from the closed source-projects 
> not returned to the project? "Give and Take" is the idea of open 
> source which I like.

well, that is always up to the individual projects. Official openEHR.org 
projects (i.e. the ones you see under the website "project" link) are 
all completely open source.

>
> This are very important things for me to realize, because it means, if 
> I am right, there is no way now to implement openehr in a live 
> application open source or commercial for low cost..

well, that is probably literally true today. However, implementation 
efforts will accelerate markedly after 1 Feb, so I would expect that you 
will be able to re-use large parts of up-to-date code in a few months time.

We have to realise that a lot of time has been expended in a) staying 
connected with the standards community b) writing good-quality 
specifications and testing them and c) developing the underlying theory 
in the first place, which has been quite challenging. So openEHR is not 
like mot of the other open source projects that are far more advanced in 
implementation, but have no standards connection, no published models 
(you would generally have to read the code; Corbamed applications are an 
exception), and generally no theory-based solution for quite a lot of 
the more difficult problems that remain to be solved.

> Building an implementation at this stage means one has to rebuild the 
> complete system, and in this way contribute to the ITS-part of the specs.
> Maybe a tool can be build which generates C# and Java from 
> Eiffel-code, but for now, that is not the case. Keeping up with the 
> formal definitions is a matter of re-typing the sources and guarding 
> the developments very well. When this is true, it is, sadly, not 
> suitable for the project I am thinking of. There is not a lot of money 
> to help build a system on a uncertain and lengthly time-schedule.
> In this way, if I am right the promise of a low maintenance EPD is not 
> yet forfilled.

well, even nice low-maintenance, open source things still cost a of lot 
of money to actually build;-)

>
> But the possibilty exist then I am really missing important parts 
> which prove that I am very (or a bit) wrong, and it is very well 
> possible at this moment to build a low cost implementation for a 
> project which has to be up and running in a few months. If this is the 
> case, I can donate my thinkings and workings back to the project. Code 
> written in other languages, db-schema's, interface-schemas, etc.

I would expect that you can use an up-to-date Java kernel within 3 
months. We are testing the current kernel with hibernate right now. The 
open-source .Net kernel will be somewhat longer.

You may choose to go another route - using software in a more advanced 
stage of development, but in most cases I think you will find that the 
data and components will only interoperate amongst themselves and won't 
support archetypes or templates.

 - thomas beale


Reply via email to