Alvin Marcelo wrote:
> 
> > > 1. Is it possible to extract a subset of your model enough to build a
> > > primary care record?
> >
> > yes ... but, how much you want to cut out is hard to say. How does
> > a "primary care record" differ from any other EMR? I don't think there
> > is any big difference?
> 
> You're right. It's hard to set delineations, but if the HL7 USAM is one
> big map, then what I am asking for is that we draw a circle (with fuzzy
> borders) around the critical parts.

have you downloaded and looked at it yet? It is not one big map, it fits
on 2/3 of a letter pager in portrait orientation. So, no need to create
a subset here. However, as I sid earlier, the administrative section has
been cut off so as to allow simpler models to plug in.  The HL7 RIM model
is quite huge and instable in that area.

> Necessarily, this would contain
> patient information, provider information, diagnosis, procedure,
> medication -- at least. OSHA projects can then opt to extend beyond
> this circle if they wish. Then I would ask you for rules on how to build
> the SQL tables. It maybe straightforward to some, Gunther, but if you
> could write it down and document it, we will avoid "optionalities". You
> are the HL7 expert so you have to hold our hands on this.

Rule 1: a UML class becomes an SQL TABLE


Rule 2: a UML data type (is a class) is implemented in one of the
following alternatives

a) mapped to a data base data type (e.g. SQL data type)
   in PostgreSQL one can define new primitive data types at the
   server side.

b) mapped to a SQL TABLE, for composite data types. In PostgreSQL
   this table can behave as a built-in composite data type.

c) as a character string literal that represents a value of the
   data type. This can be used to implement the high level data
   type on top of a non-Postgres SQL server.


Rule 3: a UML attribute

a) either a table field for server side data types or PostgreSQL 
   composite data types (options a and c above)

b) or an association to another table (forreigh key, only for option b
   w/o PostgreSQL.)


Rule 4: a UML instance association becomes a standard forreign key
linking structure in SQL (you know what I mean, don't you?)

Rule 5: a UML generalization relationship becomes:

a) a generalization in PostgreSQL (which allows inheritance)

b) a shared primary key structure in standard SQL


These are pretty much the rules.
 

> After that, we can call in the CORBA guys and help us build the wrappers.

always distinguish between CORBA and CORBAmed. CORBA wrappers are 
built in a similarly straight forward way from UML models. CORBAmed
has it's own (many) information models and thus one needs to map
between models (which is not easy, despite what has been said here
before.) 

Again: CORBA wrappers are relatively easy (although you
deal with some tricky things as a persistent object cache.)

CORBAmed is like any other interface standard, you need to twist
you internal model and build a mapping to CORBAmed's model.
 
regards
-Gunther

-- 
Gunther_Schadow-------------------------------http://aurora.rg.iupui.edu
Regenstrief Institute for Health Care
1050 Wishard Blvd., Indianapolis IN 46202, Phone: (317) 630 7960
[EMAIL PROTECTED]#include <usual/disclaimer>
begin:vcard 
n:Schadow;Gunther
tel;fax:+1 317 630 6962
tel;home:+1 317 816 0516
tel;work:+1 317 630 7960
x-mozilla-html:FALSE
url:http://aurora.rg.iupui.edu
org:Regenstrief Institute
adr:;;1050 Wishard Blvd;Indianapolis;Indiana;46202;USA
version:2.1
email;internet:[EMAIL PROTECTED]
title:M.D.
fn:Gunther Schadow
end:vcard

Reply via email to