On Sun, 12 Nov 2000 19:11:58   Thomas Beale wrote:
>Real question is what is the object model being used? I.e., CORBA and the rest expose 
>an object-oriented interface of a server to the network. This interface is defined by 
>an oo model; so a choice has to be made here. For example, CORBAmed's PIDS interface 
>specification is effectively a model for demographic
>information.

I am sure the object model is sufficiently flexible.  For example, if we don't have 
the social security number, I am sure it will still work.

>> > Especially, if each does it a little differently?
>>
>> Now, you know very well there is no magic bullet for this (except CORBA?).  The 
>solution must include some type of metadata standard.  This has nothing to do with 
>whether the implementation is done with Eiffel, Zope, C++, etc.
>
>Well.... not quite. Back to the GEHR kernel: the interesting thing about it is not 
>really that it's done in Eiffel, it's that it processes archetypes, (i.e. knowledge 
>definitions, or if you like, meta-data definitions) written XML-schema. It is 
>completely data driven by these definitions, and the development and operational 
>context for
>archetypes is what turns it into a different class of system. (I did not invent this 
>kind of concept of course - there is a great deal of literature on data-driven and 
>meta-modelled systems).

Sounds exactly like the OIO-forms!


>So archetypes provide a kind of meta-data standard to drive systems with. They are 
>designed to be edited standalone, managed and QA'd by clinicians, and used to drive 
>installed systems. Most of all, they are designed so that standardisation processes 
>can be built around them, without reference to any software technologies whatsoever.

Right!  Systems that can "render" OIO-forms will be mutually compatible at the 
"metadata"="business logic" level and therefore be able to interchange both metadata 
and data.

>GEHR archetypes as they stand today are not the last word on this approach, on the 
>contrary, they are just a beginning. But all the same, the approach is already 
>bearing fruit. For some time now, we have been able to perform the process mentioned 
>above (write an XML-schema archetype, parse it via Java & Eiffel, load it into a GEHR
>database, retrieve it, and finally, build EHR content compliant with the archetype, 
>and save that as an EHR transaction).

We have also been using it in OIO.  We can export an OIO-form as XML from one server, 
load it into another OIO-server, and fillout the form in the second server.  We even 
have an online OIO Forms Library running at www.TxOutcome.Org that allows 
upload/download/browsing/preview of forms.

>Whether or not you like Eiffel is irrelevant; you could write a homologous system in 
>Java if you wanted.

Exactly!  It may be good to make OIO-forms and GEHR-archetypes interchangeable.  That 
way, OIO immediately becomes a GEHR kernel and GEHR becomes an OIO kernel.

...
>Well, as per my other post, the core problem in designing systems is doing the 
>business logic, or middleware model and software. Database and front-end are really 
>predicated on this. And Zope is not suited for developing such a model or software at 
>all; however, it seems that it could provide a nice back and front-end "sandwich"
>environment to do the core development in/with.

>From my experience, Zope is adequate for the link between the front and backends.  
>Hence, it is usable as the *static* component of the middleware.  The "business 
>logic"="forms" is the part that I would consider the *dynamic* component of the 
>middleware.

I look forward to your critique of the actual OIO implementation.

... section on "kernel-like" functions skipped.

>> >If I have a Java application, how do I use Zope as an application server for that 
>application?
>>
>> Zope does not have a built-in JVM and thus does not run Java.  Thus, server-side 
>Java is not supported.  However, it can serve Java Applets just fine.
>
>Which is what you would write your GUI in. 

Not necessarily.  The GUI can also be written in HTML/Javascript.

>But the question about the server side relates to business logic.

One can use DTML and any other language (Python, C, SQL, etc) through "external 
methods" - perhaps even Java if a JVM is installed on the system.  I wrote the OIO 
kernel entirely in DTML. (I know, I know, *real programmers* don't develop with DTML.)

The real story is that I planned to use Python if necessary - but it has just not been 
necessary.  Why use 2 languages when one is sufficient?

...
>> Currently, OIO exports
>> metadata in XML format.  This means compatible systems are defined by
>> their ability to use that metadata.  
...
>They need more than the same format - they need to agree to a common meta-data model.

Precisely!  That's what OIO provides. (and perhaps GEHR also does.)

>I think we're getting somewhere with this!

I encourage you to go to the OIO Forms Library and preview the forms and browse their 
items / itemtype attributes.  Download a form from there and look at the XML file.  
You will get a sense of how easy/hard it will be to transform the OIO into a GEHR 
kernel.

Andrew
---
Andrew P. Ho, M.D.
OIO: Open Infrastructure for Outcomes
www.TxOutcome.Org
Assistant Clinical Professor
Department of Psychiatry, Harbor-UCLA Medical Center
University of California, Los Angeles


Join 18 million Eudora users by signing up for a free Eudora Web-Mail account at 
http://www.eudoramail.com

Reply via email to