HCLSIG/Drug Safety and Efficacy/SDTM/Example N3

From W3C Wiki

Example in N3 of SDTM Model with context extensions

The following examples are work in progress (collaborative whiteboard) of how to define and organize clinical data ala the SDTM model using an RDF approach.

N3 is being used here to make editing and comprehension easier. Some basic syntactical rules are reviewed here:

  • a == rdf:type
  • Blank Nodes: :subj :prop1 [ :prop2 :obj ; ... ] => blank node have no URI!
  • Lists: ( :john :sue :kim ) => [ :first :john ; [ :first :sue ; [ :first :kim ]]]


@prefix cdisc: <http://www.cdisc.org/sdtm/vocab> . 
@prefix dse: <http://www.w3.org/2001/sw/hcls/dse> . 
@prefix nci: <http://nci.nih.gov/cadsr/vocabulary> . 
@prefix nist: <http://nist.gov/units> . 
@prefix time <http://www.w3.org/2006/time> . 

//  Sex Text Code: 'MALE', 'FEMALE', 'UNKNOWN', 'Intersex'

<http://clinic.com/study/T2271>   
	    a cdisc:Study ;
	    cdisc:subject <http://clinic.com/study/T2271/subject/S83221> ;
	    cdisc:subject <http://clinic.com/study/T2271/subject/S74343> ;
	...   .

<http://clinic.com/study/T2271/subject/S83221> 
	    a cdisc:Subject ;
	    nci:sex_code   nci:Female ;
     //  here I assume cdisc:Diastolic_BP is a subproperty of cdisc:VSTest --
            cdisc:observation <http://clinic.com/study/T2271/subject/S83221/observation/O6622> ;
            cdisc:observation <http://clinic.com/study/T2271/subject/S83221/observation/O6561> ;
    ...   .

<http://clinic.com/study/T2271/subject/S83221/observation/O6622>
        a cdisc:Diastolic_BP ;  
        cdisc:obs_context  cdisc:patient_lying ;
        cdisc:obs_value  "98" ;
        cdisc:obs_units  nist:mmHg .
          
<http://clinic.com/study/T2271/subject/S83221/observation/O6561>
        a cdisc:Pulse ;         
        cdisc:obs_context  cdisc:patient_lying ;
        cdisc:obs_value  "64";
        cdisc:obs_units  nist:bpm . 


Bundling Diastolic_BP, Systolic_BP, and Pulse together under one observation could be done in the following way...

<http://clinic.com/study/T2271/subject/S83221/observation/O6622>
        a cdisc:Vital_sign ;   // cdisc:Vital_sign is a subclass of cdisc:Observation
        cdisc:obs_context  [ cdisc:position cdisc:patient_lying ; cdisc:note cdisc:patient_fainted ; cdisc:patient_status cdisc:non_critical . ] ;

        cdisc:diastolic [ a cdisc:Diastolic_BP ;  
           cdisc:obs_value  "98" ;
           cdisc:obs_units  nist:mmHg .
        ] ;   
        cdisc:systolic [ a cdisc:Systolic_BP ;  
           cdisc:obs_value  "152" ;
           cdisc:obs_units  nist:mmHg .
        ] ;   
        cdisc:pulse [ a cdisc:Pulse ;         
           cdisc:obs_value  "64";
           cdisc:obs_units  nist:bpm . 
        ] .


Example Based on simulated Clinical Data from Stephen Dobson

  • Treatment
  • Vital Sign
  • Adverse Event
<http://clinic.com/study/T2271/subject/4183542663506> 
	    a cdisc:Subject ;
	    nci:sex_code   nci:Female ;
            cdisc:treatment <http://clinic.com/study/T2271/subject/4183542663506/observation/O2241> ;
            cdisc:vitalSigns <http://clinic.com/study/T2271/subject/4183542663506/observation/O6561> ;
            cdisc:adverseEvent <http://clinic.com/study/T2271/subject/4183542663506/observation/O6622> ;


// ROUTE	DRGGROUP	DOSE	pid	treatment	tpfday tptday
// IV	B	7 MG	4183542663506	7mg then 14mg SEMWEB 6/11/84 7/11/84
<http://clinic.com/study/T2271/subject/S83221/observation/O2241 >
        a cdisc:Treatment ;   // cdisc:Treatment is a subclass of cdisc:Observation
        cdisc:design_arm  <http://clinic.com/study/T2271/treated_B/double_dose> ;
        dse:route cdisc:IV_route ;
        dse:drug_group "B" ;
        cdisc:dose "7" ;
        cdisc:dose_units nist:mg ;
        cdisc:treatment "7mg then 14mg SEMWEB" ;
        cdisc:first_date "6/11/84" ;
        cdisc:term_date "7/11/84" ;

... // How best to define Treatments and Experimental Design ? using cdisc:design_arm to link back to design graph?


// VTLTEXT	VTLRES	VISIT_ID	pid	collday	related
// Standing Diastolic BP (mmHg)	75	BASELINE 4183542663506 6/11/84 1
<http://clinic.com/study/T2271/subject/S83221/observation/O6561 >
        a cdisc:Vital_sign ;   // cdisc:Vital_sign is a subclass of cdisc:Observation
        cdisc:visit_id cdisc:BASELINE ;
        cdisc:visit_date "6/11/84" ;
        dse:obs_context  [ cdisc:position cdisc:patient_standing  . ] ;

        cdisc:diastolic [ a cdisc:StandingDiastolic_BP ;  
           dse:vtltext  "Standing Diastolic BP (mmHg)" ;
           dse:related_measure  "1" ;
           dsecdisc:obs_value  "75" ;
           dse:obs_units  nist:mmHg .
        ] .   


// pid	AEFDAY	AETDAY	AESEV	AESEVT	AESER	AESERT PREFTEXT BODYTEXT
// 4183542663506	6	9	2	MODERATE	2	NO ABDOMEN ENLARGED BODY AS A WHOLE
<http://clinic.com/study/T2271/subject/S83221/observation/O6622 >
        a cdisc:Adverse_Event ;   // cdisc:Adverse_Event is a subclass of cdisc:Observation
        cdisc:visit_id cdisc:BASELINE ;
        time:first_date "6" ;
        time:term_date "9" ;
        time:duration_days "2" ;
        dse:severity AE:MODERATE ;
        dse:rating "2" ;
        dse:RT "NO" ;
        dse:prefText "NO ABDOMEN ENLARGED" ;
        dse:bodyText "BODY AS A WHOLE" ;
        dse:obs_context  [ cdisc:position cdisc:patient_standing  . ] .