Presentation is loading. Please wait.

Presentation is loading. Please wait.

XML in Biomedical Informatics Jonathan Borden, M.D. Assistant Professor of Neurosurgery, Tufts University, New England Medical Center, Boston Chair, ASTM.

Similar presentations


Presentation on theme: "XML in Biomedical Informatics Jonathan Borden, M.D. Assistant Professor of Neurosurgery, Tufts University, New England Medical Center, Boston Chair, ASTM."— Presentation transcript:

1 XML in Biomedical Informatics Jonathan Borden, M.D. Assistant Professor of Neurosurgery, Tufts University, New England Medical Center, Boston Chair, ASTM E31 Electronic Healthcare Records

2 The Goal zAnswer questions like: z“Of all the patient’s I operated on for brain tumors between 1996-2000, matching severity of pathology and matching clinical status and who have the “P53” mutation, did PCV chemotherapy improve the cure rate at five years?”

3 Healthcare: The current situation zA disaster: 1.1 Trillion $/year in the USA z30-40 % overhead zmostly paper based zhighly proprietary commercial systems ztens of thousands of Americans die each year due to poor information/errors zMost of the information is rendered useless

4 Strategies zDefine open standards zCapture information in an electronic form zReduce errors related to information zDefine distributed, web enabled, query models

5 Tactics zXML, schemas, query model zSemantic Web/URI graphs zData analysis based on actual population rather than small, potentially biased, samples zGoogle for biomedical information

6 Why XML? zWidely implemented with excellent open source tools zLife of data is longer than life of application zData driven, Platform independent zFormal schema and query models

7 Reinventing medical informatics zGet the data format right and the rest will follow zStructured information has been the holy grail of medical informatics for the last 30+ years zXML is the culmination of 30+ years of work in structured information zTime to do something

8 XML Briefly zSimplification of SGML … markup language for the web z content z y z

9 ASTM E31.25 zXML DTDs for Healthcare zEmphasize Human Readability zFlexibility zOpenhealth reference implementation http://www.openhealth.org/ASTM zCompatible with HL7 CDA

10 ASTM Healthcare DTDs zclinical.header ycompatible with HL7 CDA zclinical.body yspecific to document type yoperative.report yradiology.report ydischarge.summary etc.

11 Healthcare Schema

12 Healthcare datatypes z y x Ms. x Susan x Samantha x Jones y y 000-11-2233

13 Healthcare datatypes z y … y 000112233 z y Dr. Amanda Smith z

14 Encounter z y … z

15 Capturing encounters zEncounters are billable units of work zU.S Govt pays ~50% of the bills zPayors often require associated clinical information prior to paying bill z-This information should be aggregated for statistical purposes-

16 Leveraging HIPAA: attachments are key! Collect attachments

17 Integrating binary formats zMIME XMTP zHL7 V2 zX12 EDI zDICOM

18 Internet Telemedicine zThe OceanMed project, 1998 zMerchant vessel, e-mail access via satellite gateway zDigital camera zWeb based physician access

19 XMTP Ship Gateway XMTP MIME -> XML -> XSLT -> HTML SMTP HTML

20 XMTP Consult 36 year old male has itchy rash for 6 days Hydrocortisone cream 1% to affected area t.i.d.| reply

21 How it works zMessages arrive in MIME format zMIME SAX parser ‘converts’ to XML by SAX events zXMTP employs XML object model *not necessarily* serialization format -> zgrove processing

22 XMTP zFrom: joe.patient@home.com zTo: sue.doctor@openhealth.org zContent-type: multipart/related; charset=iso-8859-1 z--------- zstartDocument() ystartElement(“MIME”) xstartElement(“From”) characters(“joe.patient@home.com”) xendElement(“From”) xstartElement(“Content-Type”, attribute(“charset”,”iso-8859-1”)) characters(“multipart/related”) xendElement(“Content-Type”)

23 The XMTP/MIME grove Content-type: text/plain From: joe@whereever.org To: sue@example.com Hi Sue! See you in Boston, Joe text/plain joe@whereever.org Hi Sue! See you in Seattle, Joe

24 Healthcare Groves z y x James Steven x Smith 3rd y zstartElement(“patient”) ystartElement(“person.name”) xstartElement(“given”);characters(“James”);...

25 The HL7 Grove zMSH|PAT|Jones^James^Stephen^3rd| zstartElement(“patient”) ystartElement(“person.name”) ystartElement(“family”) xcharacters(“Jones”); yendElement(“family”)

26 Regular Expressions zPattern matching z“*TATA*” zbp ::= ‘G’ | ‘T’ | ‘A’ | ‘C’ ztata ::= bp*, ‘T’, ‘A’, ‘T’, ‘A’, bp*

27 XML DTD z

28 Tree Regular Expressions foo[ bar[ @bop[int] baz[‘xxx’] ] xxx

29 Tree Regular Expressions zRELAXNG http://www.relaxng.org z y x – – xxx

30 Simple building blocks zXML parsers zXSLT transform engines zHTTP clients and servers

31 The shape of information “…..TATA…..” gene tata snp Pattern matching transform

32 How it works Browser Apache XSLT Servlet engine xml:db RDF

33 Form generation Form.xml Defaults.xml Formgen.xsl XML + XSLT => XHTML

34 Workflow zForm created zTransform into ASTM XML format zXHTML editing (opnote-edit.xsl) zSign finished product zRender as XHTML for viewing, printing zemail to Medical Records and Billing

35 Workflow generate edit sign Billing repository

36 Document analysis zLike gene sequences, it turns out that … zMedical documentation is highly repetitive zWith ‘hot spots’ of unique information zSchema defines template filled with values zEasily expanded into HTML for human consumption zEasily analyzed by software

37 Document analysis

38 RDF in Healthcare positive 100 The brain demonstrates areas of PML including viral inclusion bodies

39 RDF is... A standard syntax to represent (edge labeled) directed graphs in XML

40 Edge Labeled Directed Graphs foo bar baz bop bing isa has wants plays (isa, foo, bar) (has, bar, baz) (plays, baz, bop) (wants, baz, bing)

41 Semantic Networks zA way to represent natural language circa 1970s zA format for organizing statements in a way that can be queries by computers

42 Semantic Networks vertebrate mammal bird canaryostrich heart spine hair fly wings walk doesn’t fly yellow isa has can freddiehugo

43 Semantic Networks z“Can freddy fly?” z“Does hugo have wings?” z“Does freddy have a spine?” z“Of all the canaries, how many live in cages?”

44 XML form Jonathan Borden <provider...

45 RDF Graph Person12345 Jonathan Borden person.name given family value PersonName Literal Person

46 Semantic analysis repository instance Class Property domain type subClass Class type

47 Semantic analysis z“Of all the patient’s I operated on for brain tumors between 1996-2000, matching severity of pathology and matching clinical status and who have the “P53” mutation, did PCV chemotherapy improve the cure rate at five years?”

48 First Order Predicate Logic (for-all ?pat (exists ?surgeon (last-name ?surgeon “Borden”)) (exists ?procedure (craniotomy ?procedure) (patient ?procedure ?pat) (surgeon ?procedure ?surgeon) (between (date ?procedure) “1996” “2000”) (sequence ?procedure “p53”)...

49 DAML+OIL zDARPA Agent Markup Language zOntology Inferencing Language zAdds description logic capabilities to RDF zAn extension of RDF Schema zW3C WebOnt z“Semantic networks on the web using c. 2001 technology”

50 Simplified Healthcare Schema

51 Simplified Healthcare Schema

52 Healthcare Schema

53 XML Namespaces zNamespace name is a URI “http://…” zNamespace name may/should identify a resource directory (RDDL) zRDDL resource directory contains various schemata, descriptions, code etc. associated with namespace

54 Resource Directory Description Language (RDDL) zProposed as a solution to what a namespace name URI ought reference zBoth human and machine readable zXHTML Basic + XLink resources zParsers available two weeks after initial proposal zAn XML-DEV project

55 RDDL zProposed January 2001 zAdopted by namespaces such as XML Schema, Schematron, RSS, Examplotron, XSLT Extension framework, SWAG zhttp://www.rddl.org/

56 DAML Schema resource z<rddl:resource yid=“DAML” yxl:role=“ http://www.daml.org/2001/04” -- Nature yxl:arcrole =“http://www.rddl.org/purposes#schema -validation” -- Purpose yxl:title =“My DAML Ontology” y> y This is my DAML z

57 XSLT resource z<rddl:resource yxl:role= “http://www.w3.org/1999/XSL/Transform” yxl:arcrole=“http://purl.org/rss/1.0” yxl:href=“toRSS.xsl” y>

58 Java resources z<rddl:resource yxl:role= “…application/java-archive” yxl:arcrole= “…purposes/software#xslt-extension” yxl:href=“thisNS-xslt-extension.jar” y> The xslt extensions bound to this namespace are packaged in a JAR y

59 Putting it all together zBiomedical information has many vocabularies - each in its own namespace zgenetics “Bio ML” zpathology “SNOMED” zsurgery “CPT” zmedicine “ICD” zradiology “DICOM”

60 Putting it all together Electronic medical record genes diagnoses drugs procedures

61 genetics MRI Path-specimen person Gene: p53 Left temporal tumor SNOMED: gliomblastoma DAML across schemas

62 The shape of ontologies glioblastoma p53... Ring enhancing enhancing astrocytoma p53

63 Queries zQuery as universal/existential quantification zDAML/RDF subgraph matching zXML Query model zRegular expression pattern matching

64 Future directions zThe technology is here … zDefine schemas and ontologies zStandardize data formats zCollect data zjust do it! zjonathan@openhealth.org

65 Contact Information Jonathan Borden, M.D. Department of Neurosurgery New England Medical Center 750 Washington Street Boston, MA 02111 617-636-5859 www.openhealth.org/ASTM www.openhealth.org/opnote (demo) www.openhealth.org/RDF jonathan@openhealth.org


Download ppt "XML in Biomedical Informatics Jonathan Borden, M.D. Assistant Professor of Neurosurgery, Tufts University, New England Medical Center, Boston Chair, ASTM."

Similar presentations


Ads by Google