Data_Extraction_2a_OPEN_CONF_20080917

Download Report

Transcript Data_Extraction_2a_OPEN_CONF_20080917

Clinical and Meta Data Extraction
Tasks 2a and 2b
OPEN Development Conference
September 17, 2008
Phoebe Whitefield
Senior Systems Analyst
Set up for exercises
OpenPortalProxy
OpenPortalProxy
RequestObjects
Response Objects
RandoNode
NSABP
Jboss
MetaData
.xml
RegistrationNSABPB42
.java
OpenRequest
Objects.xml
•
No database connection
•
Everything works within the local desktop
•
Metadata.xml and OpenrequestObjects.xml are available in appropriate
directories
•
Implementation methods are in RegistrationNSABPB42.java
9/17/08
Data Extraction – Task 2
2
OPENPortalProxy
• Simple file that acts as proxy for OPEN Portal
• Reads the OpenRequestObjects.xml from
\EclipseWorkspace3.3\RandoNode directory
• Serializes the data from the OpenRequestObjects.xml
into three objects openRequest, openRegistration and
odmData
• Invokes the RandoNodeNSABP’s doRegister method
using these three objects
• Gets the response object registrationResponse back
from the RandoNodeNSABP
9/17/08
Data Extraction – Task 2
3
Task -2
• Open the OpenRequestObjects.xml from
c:\openconference\java\task2. Make sure that the file
contains data for three objects.
• Copy the OpenRequestObjects.xml to
\EclipseWorkspace3.3\RandoNode directory
• Copy the metadata file NSABP-B42_2494275_080410_step0_meta.xml from
c:\openconference\java\task2 to
C:\CTSU\Applications\RandoNode\meta
• Set up the run environment in Eclipse
• Run the OpenPortalproxy.java in Eclipse
9/17/08
Data Extraction – Task 2
4
Source Metadata file
9/17/08
Data Extraction – Task 2
5
Copy Metadata to Target directory
Target folder
9/17/08
Data Extraction – Task 2
6
OpenRequestObjects file
9/17/08
Data Extraction – Task 2
7
Target location for Open requestObjects
Target
folder
9/17/08
Data Extraction – Task 2
8
Setup for OpenPortalProxy
9/17/08
Data Extraction – Task 2
9
Setup for OpenPortalProxy
Cont’d
9/17/08
Data Extraction – Task 2
10
Setup for OpenPortalProxy
Cont’d
9/17/08
Data Extraction – Task 2
11
Setup for OpenPortalProxy
Cont’d
9/17/08
Data Extraction – Task 2
12
Run OpenPortalProxy
9/17/08
Data Extraction – Task 2
13
Results from OpenPortalProxy
9/17/08
Data Extraction – Task 2
14
Data Extraction
End of Task 2a
9/17/08
Data Extraction – Task 2
15
Application.xml
• Main properties are set outside of the application
• Easy to configure for any group
9/17/08
Data Extraction – Task 2
16
Example Code To Read Application.xml
KAppConfig kAppConfig =
KAppConfig.getInstance("RandoNode");
String groupRandoClass =
kAppConfig.get("GroupRandoNodeApp",
"RandoNodeECOG");
String groupRandoPackage =
kAppConfig.get("GroupRandoNodePackage",
"com.ECOG.ctsu.open.node");
9/17/08
Data Extraction – Task 2
17
MetaDatautil
• Utility class to extract metadata from ODM objects
• Get all the questions within a form
– MetaDataUtil.itemMap
• Get question based on question’s CDE public
– MetaDataUtil.getItem(String cdePublicId)
• Get all modules within a form
– MetaDataUtil.itemGroupMap
• Get question’s valid value
– Item.codeListMap
• Get all the valid values within a form
– MetaDataUtil. codeListMap
9/17/08
Data Extraction – Task 2
18
ClinicalDataUtil
• Get administrative users
– ClinicalDataUtil.userMap
– ClinicalDataUtil.getUser(String userCtepId)
• Get administrative locations
– ClinicalDataUtil.locationMap
– ClinicalDataUtil.getLocation(String locationCtepId)
• Get all the form response data
– ClinicalDataUtil.itemDataMap
• Get response data based on question’s cde public id
– ClinicalDataUtil.getItemData(String cdePublicId)
• Get response data based on question’s long name
– ClinicalDataUtil.getItemDataByName(String longName)
• Get the override approval list
– ClinicalDataUtil.overrideApprovalList
9/17/08
Data Extraction – Task 2
19
Steps for Task 2b
• Open RegistrationNSABPB42.java
• Review the code that extracts data for simple questions
• Modify the code to extract data for
– Ethnicity
– Date of Most Recent Mammogram
– Did this patient receive any tamoxifen?
•
Set the OpenResponse.status, OpenResponse.statusText,
OpenRegistration.patientId, OpenRegistration.eligibility,
OpenRegistration.status, OpenRegistration.statusText,
OpenRegistration.statusDetailText,
OpenRegistration.statusDetailText
• Add code to output result to the console
• Run OPENPortalProxy.java to verify the data extracted correctly
9/17/08
Data Extraction – Task 2
20
Data Extraction
End of Task 2b
9/17/08
Data Extraction – Task 2
21