From f49186b63888caedd5e0dad4a52a680fb28834a4 Mon Sep 17 00:00:00 2001 From: deva Date: Mon, 3 Sep 2007 09:14:09 +0000 Subject: Added new XML format. --- design/database.fig | 85 +++++++++++++++++++++++++++ design/database.tex | 25 ++++++++ design/preamble.tex | 1 + design/xmlformat.tex | 159 ++++++++++++++++++++++++++++++++++++--------------- 4 files changed, 223 insertions(+), 47 deletions(-) create mode 100644 design/database.fig create mode 100644 design/database.tex diff --git a/design/database.fig b/design/database.fig new file mode 100644 index 0000000..f158ad6 --- /dev/null +++ b/design/database.fig @@ -0,0 +1,85 @@ +#FIG 3.2 Produced by xfig version 3.2.5 +Landscape +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 3300 5250 3300 5475 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5250 5250 5250 5475 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5100 4875 5100 5025 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 4050 4875 4050 5025 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 4050 3450 4050 3600 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5100 3450 5100 3600 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5250 8925 5250 9150 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5100 8550 5100 8700 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 4050 8550 4050 8700 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 4050 7125 4050 7275 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5100 7125 5100 7275 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 2850 2025 5700 2025 5700 5700 2850 5700 2850 2025 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3300 2400 5250 2400 5250 3825 3300 3825 3300 2400 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 2700 5100 2700 5100 3075 4050 3075 4050 2700 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 3075 5100 3075 5100 3450 4050 3450 4050 3075 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3300 3825 5250 3825 5250 5250 3300 5250 3300 3825 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 4125 5100 4125 5100 4500 4050 4500 4050 4125 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 4500 5100 4500 5100 4875 4050 4875 4050 4500 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 2850 5700 5700 5700 5700 9375 2850 9375 2850 5700 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3300 6075 5250 6075 5250 7500 3300 7500 3300 6075 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 6375 5100 6375 5100 6750 4050 6750 4050 6375 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 6750 5100 6750 5100 7125 4050 7125 4050 6750 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3300 7500 5250 7500 5250 8925 3300 8925 3300 7500 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 7800 5100 7800 5100 8175 4050 8175 4050 7800 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 4050 8175 5100 8175 5100 8550 4050 8550 4050 8175 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 5700 9375 5700 9675 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 2850 9375 2850 9675 +2 1 2 1 0 7 50 -1 -1 3.000 0 0 -1 0 0 2 + 3300 8925 3300 9150 +4 0 0 50 -1 0 12 0.0000 4 150 405 3000 2325 CPR\001 +4 0 0 50 -1 0 12 0.0000 4 150 1035 3450 2625 Transaktion\001 +4 0 0 50 -1 0 12 0.0000 4 150 1035 3450 4050 Transaktion\001 +4 0 0 50 -1 0 12 0.0000 4 150 405 3000 6000 CPR\001 +4 0 0 50 -1 0 12 0.0000 4 150 1035 3450 6300 Transaktion\001 +4 0 0 50 -1 0 12 0.0000 4 150 1035 3450 7725 Transaktion\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 2925 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 3300 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 4350 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 4725 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 6600 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 6975 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 8025 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 420 4125 8400 Field\001 +4 0 0 50 -1 0 12 0.0000 4 150 660 6000 2325 Table1:\001 +4 0 0 50 -1 0 12 0.0000 4 150 660 6000 3090 Table2:\001 +4 0 0 50 -1 0 12 0.0000 4 195 3015 6000 3345 (TransactionID, Fieldname, Value)\001 +4 0 0 50 -1 0 12 0.0000 4 150 660 6000 3855 Table3:\001 +4 0 0 50 -1 0 12 0.0000 4 195 4980 6000 2580 (CPR, TransaktionID, Makro, Version, Timestamp, User)\001 +4 0 0 50 -1 0 12 0.0000 4 195 1935 6000 4110 (Fieldname, Type, ... )\001 diff --git a/design/database.tex b/design/database.tex new file mode 100644 index 0000000..0375202 --- /dev/null +++ b/design/database.tex @@ -0,0 +1,25 @@ +\section{Database layout} +\begin{figure} +\begin{center} +\includegraphics[width=120mm]{database.eps}\\ +\end{center} +\label{database} +\caption{Databasens indhold og et foreslået tabel design.} +\end{figure} +\begin{verbatim} +Database designformål: +- Hurtig skrivning af en transaktion. +- Hurtig genfinding af en tidligere skrevet transaktion. +- Robusthed overfor ændringer i makroers layout. +- Gode muligheder for at lave statistik udtræk. + +Estimat af datastørrelser: +200 patienter pr. dag. +10 fields pr. patient. +---- +2000 fields + 200 headere = 2200 entries i databasen pr. dag. + +Hvis en entry i gennemsnit består af 200 tegn er det +2200 * 200 = 440000 bytes/dag. +eller 153.16Mbytes/år +\end{verbatim} diff --git a/design/preamble.tex b/design/preamble.tex index b916ab7..0ac00c4 100644 --- a/design/preamble.tex +++ b/design/preamble.tex @@ -134,6 +134,7 @@ \include{xmlformat} \include{transmission} \include{client} +\include{database} \end{document} %********************************************* diff --git a/design/xmlformat.tex b/design/xmlformat.tex index 781bb24..17a80d2 100644 --- a/design/xmlformat.tex +++ b/design/xmlformat.tex @@ -1,33 +1,80 @@ \section{XML Formatet} +Al kommunikation mellem serveren og klienten (og vice versa) +foregår ved hjælp af XML.\\ +Dokumenterne skal starte med en header som specificerer hvilken +XML verison som benyttes, efterfulgt af rodknuden som skal være af +typen \texttt{pracro}.\\ +\begin{verbatim} + + + . + . + . + +\end{verbatim} +Det er vigtigt at pointere at alt data i xml dokumentet skal være i +UTF-8 formatering. + +\subsection{\texttt{pracro} elementet} +Pracro elementet bruges som indpakning til hele dokumentet. Den +identificerer blandt andet dokumentversionen og kan indeholde alle +typer data forbundet med Pracro systemet.\\ +Pracro elementet har flg. attributter: +\begin{itemize} +\item \textit{cpr} - CPR nummeret på den patient som dataene i filen + er knyttet til. Det bruges blandt andet ved genfinding af data og + den afsluttende lagring af data.\\ + Dette felt må ikke undlades. +\item \textit{version} - Dette felt fortæller hvilken dokument + version der er benyttet.\\ + Denne variabel skal matche den version klienten forventer.\\ + Dette felt må ikke udelades. +\end{itemize} + +\subsection{Request} +En request sektion sendt til serveren skal bevirke at serveren inlæser og +sender den angivne makro til klienten.\\ +Hvis klienten modtager en request sektion skal den blot ignorere den. +\begin{verbatim} + + + + +\end{verbatim} + +\subsection{Makro} +En makro definerer en makro som grafisk viser og eller indsamler data.\\ +En makro sektion sendt til klienten skal bevirke at den beskrevne +grafisk makro vises på skærmen.\\ +Hvis serveren modtager en makro sektion skal den blot ignorere den. Vi starter med et eksempel: \begin{verbatim} - - - - -