160 likes | 252 Vues
DBP binary risk classification. A. SELECT ?patientrecord ?val ?riskgrade FROM <http ://cardio-soroush.rhcloud.com/patients.rdf > WHERE { ?patientrecord rdf:type cardio:HighRiskDBPRecord . ?patientrecord cardio:ExpertDiastolicGrade ?riskgrade .
E N D
DBP binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskDBPRecord . ?patientrecord cardio:ExpertDiastolicGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:DiastolicBloodPressure . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-meter-of-mercury-column . } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskDBPRecord . ?patientrecord cardio:ExpertDiastolicGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:DiastolicBloodPressure . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-meter-of-mercury-column . }
Chol binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskCholesterolRecord . ?patientrecord cardio::ExpertCholesterolGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumCholesterolConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskCholesterolRecord . ?patientrecord cardio::ExpertCholesterolGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumCholesterolConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter }
HDL binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskHDLRecord . ?patientrecord cardio:ExpertHDLGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumHDLConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskHDLRecord . ?patientrecord cardio::ExpertHDLGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumHDLConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter }
TG binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskTriglycerideRecord . ?patientrecord cardio::ExpertTriglycerideGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumTriglycerideConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskTriglycerideRecord . ?patientrecord cardio::ExpertTriglycerideGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumTriglycerideConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . ?msr cardio:hasUnit cardio:milli-mol-per-liter }
BMI binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskBMIRecord . ?patientrecord cardio:ExpertBMIGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:BodyMassIndex . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskBMIRecord . ?patientrecord cardio:ExpertBMIGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:BodyMassIndex . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . }
LDL binary risk classification A SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:HighRiskLDLRecord ?patientrecord cardio::ExpertLDLGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumLDLConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . } B SELECT ?patientrecord ?val ?riskgrade FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { ?patientrecord rdf:type cardio:LowRiskLDLRecord ?patientrecord cardio::ExpertLDLGrade ?riskgrade . ?patientrecord cardio:hasAttribute ?attr . ?attr rdf:type cardio:SereumLDLConcentration . ?attr cardio:hasMeasurement ?msr . ?msr cardio:hasValue ?val . }
Framingham risk classification A • SELECT ?patientrecord ?val ?riskgrade • FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { • ?patientrecord rdf:type cardio:HighRiskFraminghamScoreRecord . • ?patientrecord cardio:ExpertFraminghamGrade ?riskgrade . • ?patientrecord cardio:hasAttribute ?attr . • ?attr rdf:type cardio:GeneralCVD10YearFraminghamRiskScore. • ?attr cardio:hasValue ?calculatedrisk • } B • SELECT ?patientrecord ?val ?riskgrade • FROM <http://cardio-soroush.rhcloud.com/patients.rdf> WHERE { • ?patientrecord rdf:type cardio:LowRiskFraminghamScoreRecord . • ?patientrecord cardio:ExpertFraminghamGrade ?riskgrade . • ?patientrecord cardio:hasAttribute ?attr . • ?attr rdf:type cardio:GeneralCVD10YearFraminghamRiskScore. • ?attr cardio:hasValue ?calculatedrisk • }
Summary of Binary and Framingham Risk Classification for 100 patients randomly selected. Number of False Positives(FP) and False Negatives(FN) are calculated with respect to manual annotations as the reference classes. Note that the total number may slightly vary for individual cases due to missing values. For the case of SBP, DBP, and LDL no adjustment for the guidelines were required. For other cases the original and modified guidelines are presented in OWL following each table .
Original AHA guideline in OWL: HighRiskCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[>= 5.0])))) LowRiskCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[< 5.0])))) ______________________________________________ Modified guideline in OWL: HighRiskCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[>= 5.0])))) LowRiskCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[< 5.0]))))
Original AHA guideline in OWL: HighRiskHDLCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumHDLCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[<= 1.03])))) LowRiskHDLCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[> 1.55])))) _______________________________________________ Modified guideline HighRiskHDLCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumHDLCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[<= 0.89])))) LowRiskHDLCholesterolRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[> 0.89]))))
Original AHA guideline in OWL: HighRiskTriglycerideRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumTriglycerideCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[>=2.26])))) LowRiskTriglycerideRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumTriglycerideConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[<1.69 ])))) ________________________________________________ Modified guideline in OWL: HighRiskTriglycerideRecord= PatientRecordand (sio:hasAttributesome (cardio:SerumTriglycerideCholesterolConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[>=2.63])))) LowRiskTriglycerideRecord= PatientRecordand (sio:hasAttributesome (cardio: SerumTriglycerideConcentrationand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:mili-mole-per-liter) and (sio:hasValuesome double[<2.63 ]))))
Original AHA guideline in OWL: HighRiskBMIRecord= PatientRecordand (sio:hasAttributesome (cardio:BodyMassIndexand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:kilogram-per-meter-squared) and (sio:hasValuesome double[>= 25.0])))) LowRiskBMIRecord= PatientRecordand (sio:hasAttributesome (cardio:BodyMassIndexand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:kilogram-per-meter-squared) and (sio:hasValuesome double[< 25.0])))) ___________________________________________________________ Modified guideline: HighRiskBMIRecord= PatientRecordand (sio:hasAttributesome (cardio:BodyMassIndexand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:kilogram-per-meter-squared) and (sio:hasValuesome double[>= 26.0])))) LowRiskBMIRecord= PatientRecordand (sio:hasAttributesome (cardio:BodyMassIndexand sio:hasMeasurementsome ( sio:Measurement and (sio:hasUnitvaluecardio:kilogram-per-meter-squared) and (sio:hasValuesome double[< 26.0]))))
The original representation of two rows of dataset in excel. The green color risk grades are the one where manual and automatic annotations were consistent and the red color risk grades shows where the manual and automatic classifications disagree. As can be seen for the second record, there is a great deal of discrepancies existing between manual and automatic classifications. This is due to the fact that the numerical values for measurement lie between the “gray areas” of classification. For instance the BMI value is greater than 25 but less than 26 and so on. All but the Framingham risk grade(last column) above can be “fixed” by tweaking the thresholds to a slightly different values. The FRS is complicated by several other factors that may not be present in the data (see discussion). The RDF representation of the file is attached in a the next. Sample Patient Data in RDF (10 patients selected randomly): http://cardio-soroush.rhcloud.com/patientx.rdf
Sample data and the instruction for BMI SADI service Test Input RDF for BMI Service: http://cardio-soroush.rhcloud.com/inputbmi.rdf Output RDF for BMI Service: http://cardio-soroush.rhcloud.com/outputbmi.rdf SADI Service URI: http://cardio-soroush.rhcloud.com/BMICalculator The output of the BMI service above is generated using Poster Plugin in Mozilla Internet Explorer (Please see the instructions next page)
In order to test the BMI service using Poster Plugin, you need to have Mozilla installed on your machine. Once you installed Mozilla Firefox igo to page (https://addons.mozilla.org/en-US/firefox/addon/poster/ ) to install the plugin. It will require that you restart the Firefox. Subsequently, go to tools->poster. You should see a snapshot similar to the one shown below.
In the URL tab, place the url of the service (http://cardio-soroush.rhcloud.com/BMICalculator), and in the file tab browse the content of the inputbmi.rdf (http://cardio-soroush.rhcloud.com/inputbmi.rdf) Stored locally on your machine since the poster plugin needs the input file to be stored in a file as opposed to a url. Click on post and a pop-up window appears with the output file (should be equal to outputbmi.rdf).