a project of the tides center
DESCRIPTION
Open Architecture for Data Interchange. A project of the Tides Center. data driven feedback loops. 2. open architecture for mobile health. open APIs. mood assessment. reusable modules. graphing continuous data over time (e.g., glucose). data source and storage (e.g., PHR). - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/1.jpg)
A project of the Tides Center
Open Architecture for Data Interchange
![Page 2: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/2.jpg)
![Page 3: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/3.jpg)
data driven feedback loops
![Page 4: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/4.jpg)
2
![Page 5: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/5.jpg)
mood assessment
graphing continuous data over time (e.g., glucose)
data source and storage (e.g., PHR)
open architecture for mobile health
a small set of common principles/practices by which reusable modules are described and interface to one another
open APIs
reusable modules
![Page 6: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/6.jpg)
enabling reuse, integration, and innovation
more integrated and connected solutions
graphing continuous data over time (e.g., glucose)
Entra glucometer
RunKeeper
![Page 7: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/7.jpg)
how to interoperate "glucose" data from the Entra glucometer?
graphing continuous data over time (e.g., glucose)
Entra glucometer
RunKeeper
![Page 8: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/8.jpg)
philosophical approachwe believe that imposed standards are difficult to get adopted
we are for use-case driven usage leading to emergent best practices and de facto standards • our architecture and community is designed to
enable these best practices to emerge and to become transparent to the community
![Page 9: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/9.jpg)
Addressing Data not System Interoperation
Open mHealth ecosystem
AgaMatrix
2Net
Entra
mobile integrated therapiesdata
users
data providers EHR
Ginger,io
visualization
processing
storage
data interoperation, e.g., from clouds
![Page 10: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/10.jpg)
syntactic data interoperation
in Open mHealthAPI calls are in JSON using the Concordia schema language that defines strongly typed JSON
Data should be divided into "payloads." A payload is a set of data that conforms to a set of definitions specified by a schema ID
Schema IDs are similar in definition to URNs, i.e., they are colon delimited strings
http://developer.openmhealth.org/developer/
![Page 11: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/11.jpg)
schema ID
omh:mydomain:Glucose
first section must be "omh"
2nd section is the domain that will handle this API call
3rd section is a label for the payload
![Page 12: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/12.jpg)
example schema
{ "type":"object", "fields":[ { "name":"glucose", "type":"number" } ]}
schema ID: omh:mydomain:Glucose
![Page 13: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/13.jpg)
semantic data interoperation
in Open mHealthuse-case driven semantic commitment• app producers are best positioned to know how specific and
standardized their semantics need to be
late binding• "binding" a data element to shared semantics should happen
only when needed (e.g., not within the app itself, but only later when data is being exchanged)
multiple binding• can bind to one or more shared semantics (terminologies,
ontologies, etc) to meet multiple needs
![Page 14: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/14.jpg)
{ "type":"object", "fields":[ { "external_id": ["http://purl.bioontology.org/ontology/LNC/1558-6"] ,"name":"fasting_glucose" ,"type":"number" } ]}
binding to a standard terminologyschema ID: omh:mydomain:FastingGlucose
*Metadata fields such as time and location stamps are omitted from these examples for clarity. Schemas can be extended with custom metadata fields.
![Page 15: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/15.jpg)
{ "type":"object", "fields":[ { "external_id":[ "http://purl.bioontology.org/ontology/LNC/1558-6", "http://purl.bioontology.org/ontology/RCD/XE2mq" ], "name":"fasting_glucose", "type":"number” } ]}
multiple binding schema ID: omh:mydomain:FastingGlucose
![Page 16: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/16.jpg)
{ "type":"object", "fields":[ { "external_id":[ "http://purl.bioontology.org/ontology/LNC/1558-6", ], "name":"fasting_glucose", "type":"number” } ]}
preferred schemas schema ID: omh:preferred:FastingGlucose
preferred schemas are shared across the whole Open mHealth ecosystem
the community will define which schema-IDs are preferred
data elements in preferred schemas should bind to a standard terminology if at all possible
![Page 17: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/17.jpg)
registry.openmhealth.org(coming May 1, 2013)
a catalog of schema IDs, APIs, and modules • will be living documentation about the state of the
Open mHealth ecosystem where you can see who is using which standards for what and where the community is most active
• together, the Open mHealth community will evolve a de facto common practice towards standardized data interchange (e.g., through preferred schema IDs)
![Page 18: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/18.jpg)
data model interoperation
we believe that imposed standards are difficult to get adopted
we are for use-case driven usage leading to emergent best practices and de facto standards • our architecture and community is designed to
enable these best practices to emerge and to become transparent to the community
![Page 19: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/19.jpg)
polymorphic data models{ "type":"object", "fields":[ { "external-id": ... "name":"fasting_glucose", "type":"number", "doc":"if units are missing then assume mg/dl" }, { "name":"units" "allowed_values":[ "mg/dl", "mmol/L" ], "optional":true } ]}
{ … "data":{ "fasting_glucose":105, "units":"mg/dl" }}
or
{ … "data":{ "fasting_glucose":105 }}
schema ID: omh:mydomain:FastingGlucose
schemas can extend other schemas through inheritance
![Page 20: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/20.jpg)
basic unit schema{ "type":"object", "fields":[ { "name":"value", "doc":"The value of the element.", "type":"number" }, { "name":"unit", "doc":"The unit of the element.", "type":"string" }]}
Will pass schema validation:
[ { "value":90, "unit":"meter" }]
[ { "value":90, "unit":"any string" }]
Will fail schema validation:
[ { "value":"sixteen", "unit":"gram" }]
schema ID: omh:omh:valAndUnit
![Page 21: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/21.jpg)
basic multiple-unit schema{ "type":"object", "fields": [ { "$ref":"http://example.com/ omh:omh:valAndUnit",
"allowed_values":[ "miles", "yards", "inches" ] }]}
Will not fail schema validation:
[ { "value":90, "unit":"yards" }]
Will fail schema validation:
[ { "value":90, "unit":"meters" }]
schema ID: omh:omh:valAndUnit:distance
![Page 22: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/22.jpg)
preferred stepLength schema
{ "type":"object", "fields": [ { "$ref":"http://example.com/ omh:omh:valAndUnit:distance", }, { "external_id":[ http://purl.bioontology.org/ontology/SNOMEDCT/250000008, ], "name":"timestamp", "type":"string", "dateFormat":"dateTime" "doc":"W3C ISO 8601 timestamp"}]}
[ { "timestamp":"2013-03-19T12:52:01Z", "value":87.6, "unit":"centimeter" }, { "timestamp":"2013-03-19T12:52:02Z", "value":91.4, "unit":"centimeter" }]
schema ID: omh:preferred:stepLength
![Page 23: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/23.jpg)
daily step distance{ "type":"object", "fields": [ { "name":"total_steps", "type":"number" }, { "name":"total_step_distance", "$ref":"http://example.com/ omh:omh:valAndUnit:distance" } ]}
[ { "total_steps":11951, "total_step_distance": { "value":5.38, "unit":"miles" } }]
schema ID: omh:omh:dailyStepDistance
![Page 24: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/24.jpg)
semantic data sharingsemantics handled via external references to URNs at terminology servers (e.g., BioPortal, HDD Access)• servers can also offer web services for computing
subsumption, transitive closure, etc.
reusable Open mHealth-compliant Data Processing Units (DPUs) can be mixed and matched for performing data alignment• community will define common context metadata
![Page 25: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/25.jpg)
interoperation with the EHR
data from the EHR to mHealth• focusing on a few highest-value atomic EHR data
elements to get out of EHRs for self care of health and disease (e.g., meds, allergies, demographics, some labs)
data into the EHR from mHealth• greatest value for clinicians is tools for making sense of
multiple sources of mHealth data to inform decision making– sometimes this needs to be part of the EHR, sometimes not– defer getting variables (e.g., 6 minute walk, PHQ-9, etc.) back into
the EHR
![Page 26: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/26.jpg)
data from the EHR
EHRExported DocumentCCDA, CCD,
CCR, hData, etc.
Atomic data elements in Open mHealth compliant form
e.g., FHIR, SafeIX fragments
e.g., SMART
![Page 27: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/27.jpg)
data into the EHR
EHR
Data from multiple sources made
meaningful and
actionable
???
e.g., GreenDot visualization
![Page 28: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/28.jpg)
connect with us• Web: www.openmhealth.org • Data Interchange Working Group
• http://wiki.openmhealth.org/Data+Interchange
• coordinator: [email protected]
![Page 29: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/29.jpg)
![Page 30: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/30.jpg)
daily activity summary{ "type":"object","fields": [ { "name":"date", "type":"string", "dateFormat":"date" }, { "name":"activity_group", "type":"array", "fields":{ "type":"object", "schema":[ { "name":"minutes_of_activity", "$ref":"http://example.com/ omh:omh:valAndUnit" }, { "name":"activity_level", "type":"string", "allowed_values": ["sedentary","light","moderate", "vigorous"]}]}}]}
[ { "date":"2013-03-25", "activity_group": [ { "activity_level":"sedentary", "minutes_of_activity":{ "value":1129.8, "units":"minutes" } }, { "activity_level":"light", "minutes_of_activity":{ "value":120, "units":"minutes" } }, ... ] }, ...]
schema ID: omh:omh:dailyActivity
![Page 31: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/31.jpg)
daily chunked activity{ "type":"object","fields": [ { "name":"date", "type":"string", "dateFormat":"date" }, { "name":"activity_group", "type":"array", "fields":{ "type":"object", "schema":[ { "name":"time_start", "type":"string" "dateFormat":"time" }, { "name":"time_end", "type":"string" "dateFormat":"time" }, { "name":"activity_level", "type":"string", "allowed_values": ["sedentary","light","moderate", "vigorous"]}]}}]}
[ { "date":"2013-03-25", "activity_group": [ { "activity_level":"sedentary", "time_start":"00:00", "time_end":"07:00" }, { "activity_level":"light", "time_start":"07:01", "time_end":"08:00" }, ... ] }, ...]
schema ID: omh:omh:dailyChunkedActivity
![Page 32: A project of the Tides Center](https://reader035.vdocuments.site/reader035/viewer/2022062501/56816269550346895dd2d827/html5/thumbnails/32.jpg)
daily activity (non-sedentary)
{ "type":"object", "fields": [ { "name":"date", "type":"string", "dateFormat":"date" }, { "name":"minutes_non-sedentary", "$ref":"http://example.com/ omh:omh:valAndUnit", } ]}
[ { "date":"2013-03-25", "minutes_non_sedentary": { "value":120, "units":"minutes" } }, { "date":"2013-03-26", "minutes_non_sedentary": { "value":108, "units":"minutes" } }, ...]
schema ID: omh:omh:dailyNonSedentaryActivity