Everybody, We have been spending a lot of time discussing strategies on how we are going to proceed about this project. Initially, we were going to produce a CCD, and we didn't have quite a plan on how we are going to extract the data except as piecemeal. With the advent of the U of Minn on the project, and with Emory's discussions, we are going to extract a CCR (and I am infinitely happy; the CCD spec belongs to the garbage can; I willingly send my abominations to the HL7 committee), and we are going to use Mumps Routines called by CPRS for most of the data extraction. There has been a lot of bantering around, and I wish for us to settle this by deciding a general strategy and the steps needed to produce it, as well as a timeline and expected deliverables. May I propose that the initial CCR be generated completely from Mumps without us having to do any GUI programming. Why? At this point we have not even defined the requirements that any of the steps are going to satisfy (at least that is the way it seems to me); developing the stuff in Mumps will at least help us define the requirements; plus, it is always my belief in anything Vista that the functionality must be available using the roll-and-scroll interface. Does that mean we don't need Java programmers? Absolutely not! I would like them to work in tandem with the Mumps development process to produce the GUI. Here is my plan, sketched on the plane... 0. Read the CCR Spec from beginning to end 1. Enumerate the sections of the CCR, defining what data is needed for each section. (This step is almost done for us by the spec.) 2. Define the needs of the end user on how they are to use the CCR functionality (this is very important and has not been done) 3. Define a Mumps strategy on how to extract the data (more on that below) 5. Define where the data is going to be extracted from (this is being carried out by George right now) 6. Document Data Output from M/CPRS (RPC's etc.) 7. Match data from CPRS with CCR sections 8. Define routines that need to be written/modified in order to allow us to fill in the missing info for CCR that's not in CPRS (e.g. LOINC codes for Labs; they are not in the RPC) 9. Write the M code to extract the data from each of the sections 10. Write a Mumps XML Writer 11. Write the CCR writer that utilizes the XML Writer for output 12. Write the CCR user interface that does the user interaction, initially in MUMPS, then in a GUI. 13. Write a CCR viewer, initially in Mumps, then in a GUI. I am most concerned with step #2. We need to do mock-ups and present them for ideas. Deliverables (#'s refer to above): 1. Spreadsheet 2. Needs document; roll-and-scroll and GUI mock-ups. 3. Document 5. Document 6. Series of Documents for each RPC 7. Spreadsheet from #1, modified 8. Document; work assignments for completion 9. Working Code - unit tested 10. Working Code 11. Working Code 12. Working Code 13. Working Code Each of the steps may take a loooooooooong time... Witness George's analysis of the RPCs. We need to take advantage as much as possible of parallelism; while George is analyzing the RPCs, somebody can be writing the Mumps XML output routine, and others can be defining user needs, and others can be constructing CCR/Vista data spreadsheets. The other thing I thought about is how are we going to write the Mumps Routines to extract the data. This is all tenative: 0. CCRCOMP () - Routine to ask user about patient, purpose of CCR, receipient, transmission method, sections, date range 1. CCRPROC (DFN, ARRAY1, DUZ, DOCTYPE, BEGDATE, ENDDATE) - Routine to process CCRCOMP choices that calls the next routine 2. CCRSECTIONS - Outputs data into ^TMP($J,"CCR",Section,Name,Value,SubValues,ActorID) a. Demograhics (DFN) b. Purpose c. Payers (DFN, DT) d. Meds (DFN, DT1, DT2, DetailFlag) e. Labs (DFN, DT1, DT2, DetailFlag) etc etc. 3. MXMLWRIT (Name, ATTRIBUTE array, Value) - Writes XML from Mumps 4. CCRWRITE (^TMP array) - Write data from ^TMP to the file system using MXMLWRIT -- Sam PS: George has been kind enough to host me at his NY apartment for hammering out the details of our implementation and show me his progress thus far.