SlideShare a Scribd company logo
1 of 23
Intelligent Health Lab




                     Indivo X:
          Progress and Updates
                         Daniel Haas

                 Harvard Medical School
         Children’s Hospital Informatics Program

                         18 June, 2012
Intelligent Health Lab



                  Project Updates
• v2.0 Release!
  http://github.com/chb/indivo_[ui_]server
• Public Sandbox:
  http://sandbox.indivohealth.org
  With sample data
  Don’t put real data in there!
• Hackathon Tomorrow!
  Bring your laptops
  Bring your ideas, and tell us now (@indivohealth)
Intelligent Health Lab



         Development Updates
• Pluggable Data models (and schemas and
  transforms)
• Data model validation
• Sample Data (and demo mode)
• New app loading mechanism (using SMART
  manifests)
• New Python Client (with documentation)
• More support for JSON/RDF
• New authentication modes for apps
• SMART integration
Intelligent Health Lab



Pluggable Document Processing
Intelligent Health Lab



      Pluggable Validation
Intelligent Health Lab



              Pluggable Validation




•   Still accepting data as XML
•   Still validating with XSDs
•   …But now they are drag-and-drop!
•   Tutorials tomorrow at the hackathon
Intelligent Health Lab



     Pluggable Transforms
Intelligent Health Lab



           Pluggable Transforms




• Goal of a Transform: get from an XML document
  to an Indivo Fact
• Formats: XSLT or Python code
• …And now they are drag-and-drop!
• Tutorials tomorrow at the hackathon
Intelligent Health Lab



   Pluggable Data Models
Intelligent Health Lab



         Pluggable Data Models




• SDML: a simple descriptive language for data-
  models.
• Define your data models: SDML or Django
• …And add them (you guessed it: drag-and-drop!)
• Tutorials tomorrow at the hackathon
Intelligent Health Lab



        Pluggable Retrieval
Intelligent Health Lab



                  Pluggable Retrieval




• Automatic reporting call which retrieves your data as SDML: no
  work required.
• Python plug-ins:
    Custom serialization (what does your model look like in JSON? XML?)
    Custom reports (want an API call to return multiple data models at
     once?)
• Drag-and-drop serializers (not custom reports, sorry)
• Tutorials tomorrow at the hackathon
Intelligent Health Lab


   Pluggable Document Processing:
              Summary
• With zero python code, you can:
  Add a new recognized schema to Indivo
  Map that schema to current data models, or
  Add your own new data model
  Make API calls to add and retrieve data
   corresponding to your new types.
Intelligent Health Lab



                      Sample Data
• It’s hard to write an app against nothing!
• We’ve added two mechanisms for loading
  sample data into records:
  Demo Mode
  Fixed sample accounts
Intelligent Health Lab



            Sample Data: Format
• “Sample data” is a directory of data profiles.
• A “data profile” is a directory of documents
  containing data (for one patient).
• A “data profile” should have a
  Demographics.xml file.
• A “patient” is identified by the name of the
  directory
• And that’s it!
Intelligent Health Lab



                       Demo Mode
• When you create a new account, it is auto-
  populated with a configurable set of records
  containing sample data

DEMO_MODE =True
DEMO_PROFILES = {
  ‘John Doe’: ‘patient_239852’,
  ‘Jane Doe’: ‘patient_665677’,
  ‘Timmy Doe’: ‘patient_736230’,
  }
Intelligent Health Lab



             Fixed Sample Accounts
• When resetting Indivo, you can configure accounts to be auto-created with
  specific sets of records and data


<account email='test@test.org'>
<full_name>Test User</full_name>
<username>test</username>
<password>test</password>
<records>
<record label='Test Testerson' data_profile='patient_967332'/>
<record label='Mary Testerson' data_profile='patient_897185'/>
<record label='Fred Testerson' data_profile='patient_880378'/>
</records>
</account>
Intelligent Health Lab



Updating and Adding Registered Apps
• Previously: had to reset the whole Indivo
  database
• Now: drag-and-drop into the filesystem
• We think this is nicer.
Intelligent Health Lab



    Registering an App: Manifest
• SMART manifest: simple JSON describing an
  app.
• Extra Indivo options (has_ui, oauth_callback)
  also supported.
Intelligent Health Lab



Registering an App: OAuth Credentials

• ‘Offline exchange’ of app tokens
• Again, simple JSON
Intelligent Health Lab



Registering an App: The Filesystem
• Directory Structure:
   1 dir per app
   2 files per dir
Intelligent Health Lab



            Pulling it all together
• Write (or update) a manifest file
• Write (or update) a credentials file
• Drop the new files into a directory for your
  app, and place it under
indivo_server/registered_apps/user/
• Run one command:
  $ python manage.pysync_apps
• And you’re done!
Intelligent Health Lab



        SMART Integration




     • I’ll be back to discuss soon!

More Related Content

What's hot

data mining with weka application
data mining with weka applicationdata mining with weka application
data mining with weka applicationRezapourabbas
 
openEHR Developers Workshop at #MedInfo2015
openEHR Developers Workshop at #MedInfo2015openEHR Developers Workshop at #MedInfo2015
openEHR Developers Workshop at #MedInfo2015Pablo Pazos
 
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...Concordia University
 
WEKA Tutorial
WEKA TutorialWEKA Tutorial
WEKA Tutorialbutest
 
Developing openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesDeveloping openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesPablo Pazos
 
Rescuing Data from Decaying and Moribund Clinical Information Systems
Rescuing Data from Decaying and Moribund Clinical Information SystemsRescuing Data from Decaying and Moribund Clinical Information Systems
Rescuing Data from Decaying and Moribund Clinical Information SystemsHealth Informatics New Zealand
 
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...Concordia University
 
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...Concordia University
 
Classification and Clustering Analysis using Weka
Classification and Clustering Analysis using Weka Classification and Clustering Analysis using Weka
Classification and Clustering Analysis using Weka Ishan Awadhesh
 
Machine Learning with WEKA
Machine Learning with WEKAMachine Learning with WEKA
Machine Learning with WEKAbutest
 
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsCSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsConcordia University
 
Weka toolkit introduction
Weka toolkit introductionWeka toolkit introduction
Weka toolkit introductionbutest
 
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...Concordia University
 

What's hot (20)

data mining with weka application
data mining with weka applicationdata mining with weka application
data mining with weka application
 
openEHR Developers Workshop at #MedInfo2015
openEHR Developers Workshop at #MedInfo2015openEHR Developers Workshop at #MedInfo2015
openEHR Developers Workshop at #MedInfo2015
 
Weka
WekaWeka
Weka
 
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
 
WEKA Tutorial
WEKA TutorialWEKA Tutorial
WEKA Tutorial
 
Developing openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesDeveloping openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalities
 
Rescuing Data from Decaying and Moribund Clinical Information Systems
Rescuing Data from Decaying and Moribund Clinical Information SystemsRescuing Data from Decaying and Moribund Clinical Information Systems
Rescuing Data from Decaying and Moribund Clinical Information Systems
 
Weka library, JAVA
Weka library, JAVAWeka library, JAVA
Weka library, JAVA
 
Wek1
Wek1Wek1
Wek1
 
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
 
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
 
Weka
WekaWeka
Weka
 
Classification and Clustering Analysis using Weka
Classification and Clustering Analysis using Weka Classification and Clustering Analysis using Weka
Classification and Clustering Analysis using Weka
 
Machine Learning with WEKA
Machine Learning with WEKAMachine Learning with WEKA
Machine Learning with WEKA
 
An Introduction To Weka
An Introduction To WekaAn Introduction To Weka
An Introduction To Weka
 
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsCSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
 
Pivoting approach-eav-data-dinu-2006
Pivoting approach-eav-data-dinu-2006Pivoting approach-eav-data-dinu-2006
Pivoting approach-eav-data-dinu-2006
 
Weka toolkit introduction
Weka toolkit introductionWeka toolkit introduction
Weka toolkit introduction
 
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
 
Weka
WekaWeka
Weka
 

Viewers also liked (7)

2012 User's Conference SMART-Indivo Integration
2012 User's Conference SMART-Indivo Integration2012 User's Conference SMART-Indivo Integration
2012 User's Conference SMART-Indivo Integration
 
SMART Architecture and Application Development Overview
SMART Architecture and Application Development OverviewSMART Architecture and Application Development Overview
SMART Architecture and Application Development Overview
 
Intro: Indivo X 2012 Users' Conference
Intro: Indivo X 2012 Users' ConferenceIntro: Indivo X 2012 Users' Conference
Intro: Indivo X 2012 Users' Conference
 
Indivo as a Personally-Controlled Research Platform for Chronic Disease Regis...
Indivo as a Personally-Controlled Research Platform for Chronic Disease Regis...Indivo as a Personally-Controlled Research Platform for Chronic Disease Regis...
Indivo as a Personally-Controlled Research Platform for Chronic Disease Regis...
 
the Indivo X iOS Framework
the Indivo X iOS Frameworkthe Indivo X iOS Framework
the Indivo X iOS Framework
 
Secondary Use of Healthcare Data for Translational Research
Secondary Use of Healthcare Data for Translational ResearchSecondary Use of Healthcare Data for Translational Research
Secondary Use of Healthcare Data for Translational Research
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 

Similar to 2012 User's Conference Indivo Updates

Machine Learning in Modern Medicine with Erin LeDell at Stanford Med
Machine Learning in Modern Medicine with Erin LeDell at Stanford MedMachine Learning in Modern Medicine with Erin LeDell at Stanford Med
Machine Learning in Modern Medicine with Erin LeDell at Stanford MedSri Ambati
 
Health vault intro for developers
Health vault intro for developersHealth vault intro for developers
Health vault intro for developersaliemami
 
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...Alexandre Riazanov
 
Intro to Data Science for Non-Data Scientists
Intro to Data Science for Non-Data ScientistsIntro to Data Science for Non-Data Scientists
Intro to Data Science for Non-Data ScientistsSri Ambati
 
Using The Hadoop Ecosystem to Drive Healthcare Innovation
Using The Hadoop Ecosystem to Drive Healthcare InnovationUsing The Hadoop Ecosystem to Drive Healthcare Innovation
Using The Hadoop Ecosystem to Drive Healthcare InnovationDan Wellisch
 
Tag.bio aws public jun 08 2021
Tag.bio aws public jun 08 2021 Tag.bio aws public jun 08 2021
Tag.bio aws public jun 08 2021 Sanjay Padhi, Ph.D
 
Smart-Indivo App Challenge Webinar
Smart-Indivo App Challenge WebinarSmart-Indivo App Challenge Webinar
Smart-Indivo App Challenge Webinarhealth2dev
 
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...Bonnie Hurwitz
 
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne Ulitmatum
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne UlitmatumElsevier‘s RDM Program: Habits of Effective Data and the Bourne Ulitmatum
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne UlitmatumAnita de Waard
 
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...Kevin Mader
 
Predicting Patient Outcomes in Real-Time at HCA
Predicting Patient Outcomes in Real-Time at HCAPredicting Patient Outcomes in Real-Time at HCA
Predicting Patient Outcomes in Real-Time at HCASri Ambati
 
Databases, Web Services and Tools For Systems Immunology
Databases, Web Services and Tools For Systems ImmunologyDatabases, Web Services and Tools For Systems Immunology
Databases, Web Services and Tools For Systems ImmunologyYannick Pouliot
 
FHIR for Hackers
FHIR for HackersFHIR for Hackers
FHIR for HackersJames Agnew
 
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...Alexandre Riazanov
 
big data and machine learning ppt.pptx
big data and machine learning ppt.pptxbig data and machine learning ppt.pptx
big data and machine learning ppt.pptxNATASHABANO
 

Similar to 2012 User's Conference Indivo Updates (20)

Machine Learning in Modern Medicine with Erin LeDell at Stanford Med
Machine Learning in Modern Medicine with Erin LeDell at Stanford MedMachine Learning in Modern Medicine with Erin LeDell at Stanford Med
Machine Learning in Modern Medicine with Erin LeDell at Stanford Med
 
Health vault intro for developers
Health vault intro for developersHealth vault intro for developers
Health vault intro for developers
 
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...
Comprehensive Self-Service Lif Science Data Federation with SADI semantic Web...
 
Intro to Data Science for Non-Data Scientists
Intro to Data Science for Non-Data ScientistsIntro to Data Science for Non-Data Scientists
Intro to Data Science for Non-Data Scientists
 
Using The Hadoop Ecosystem to Drive Healthcare Innovation
Using The Hadoop Ecosystem to Drive Healthcare InnovationUsing The Hadoop Ecosystem to Drive Healthcare Innovation
Using The Hadoop Ecosystem to Drive Healthcare Innovation
 
Tag.bio aws public jun 08 2021
Tag.bio aws public jun 08 2021 Tag.bio aws public jun 08 2021
Tag.bio aws public jun 08 2021
 
Smart-Indivo App Challenge Webinar
Smart-Indivo App Challenge WebinarSmart-Indivo App Challenge Webinar
Smart-Indivo App Challenge Webinar
 
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...
iMicrobe and iVirus: Extending the iPlant cyberinfrastructure from plants to ...
 
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne Ulitmatum
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne UlitmatumElsevier‘s RDM Program: Habits of Effective Data and the Bourne Ulitmatum
Elsevier‘s RDM Program: Habits of Effective Data and the Bourne Ulitmatum
 
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...
Leveraging Machine Learning Techniques Predictive Analytics for Knowledge Dis...
 
Predicting Patient Outcomes in Real-Time at HCA
Predicting Patient Outcomes in Real-Time at HCAPredicting Patient Outcomes in Real-Time at HCA
Predicting Patient Outcomes in Real-Time at HCA
 
Ethical solutions services
Ethical solutions servicesEthical solutions services
Ethical solutions services
 
The Genopolis Microarray database
The Genopolis Microarray databaseThe Genopolis Microarray database
The Genopolis Microarray database
 
Databases, Web Services and Tools For Systems Immunology
Databases, Web Services and Tools For Systems ImmunologyDatabases, Web Services and Tools For Systems Immunology
Databases, Web Services and Tools For Systems Immunology
 
FHIR for Hackers
FHIR for HackersFHIR for Hackers
FHIR for Hackers
 
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...
Towards Clinical Intelligence with SADI Semantic Web Services: a Case Study w...
 
big data and machine learning ppt.pptx
big data and machine learning ppt.pptxbig data and machine learning ppt.pptx
big data and machine learning ppt.pptx
 
Vayacondios: Divine into Complex Systems
Vayacondios: Divine into Complex SystemsVayacondios: Divine into Complex Systems
Vayacondios: Divine into Complex Systems
 
Hsc 2008 Day 2
Hsc 2008   Day 2Hsc 2008   Day 2
Hsc 2008 Day 2
 
Test data generation
Test data generationTest data generation
Test data generation
 

Recently uploaded

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Recently uploaded (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

2012 User's Conference Indivo Updates

  • 1. Intelligent Health Lab Indivo X: Progress and Updates Daniel Haas Harvard Medical School Children’s Hospital Informatics Program 18 June, 2012
  • 2. Intelligent Health Lab Project Updates • v2.0 Release! http://github.com/chb/indivo_[ui_]server • Public Sandbox: http://sandbox.indivohealth.org With sample data Don’t put real data in there! • Hackathon Tomorrow! Bring your laptops Bring your ideas, and tell us now (@indivohealth)
  • 3. Intelligent Health Lab Development Updates • Pluggable Data models (and schemas and transforms) • Data model validation • Sample Data (and demo mode) • New app loading mechanism (using SMART manifests) • New Python Client (with documentation) • More support for JSON/RDF • New authentication modes for apps • SMART integration
  • 4. Intelligent Health Lab Pluggable Document Processing
  • 5. Intelligent Health Lab Pluggable Validation
  • 6. Intelligent Health Lab Pluggable Validation • Still accepting data as XML • Still validating with XSDs • …But now they are drag-and-drop! • Tutorials tomorrow at the hackathon
  • 7. Intelligent Health Lab Pluggable Transforms
  • 8. Intelligent Health Lab Pluggable Transforms • Goal of a Transform: get from an XML document to an Indivo Fact • Formats: XSLT or Python code • …And now they are drag-and-drop! • Tutorials tomorrow at the hackathon
  • 9. Intelligent Health Lab Pluggable Data Models
  • 10. Intelligent Health Lab Pluggable Data Models • SDML: a simple descriptive language for data- models. • Define your data models: SDML or Django • …And add them (you guessed it: drag-and-drop!) • Tutorials tomorrow at the hackathon
  • 11. Intelligent Health Lab Pluggable Retrieval
  • 12. Intelligent Health Lab Pluggable Retrieval • Automatic reporting call which retrieves your data as SDML: no work required. • Python plug-ins:  Custom serialization (what does your model look like in JSON? XML?)  Custom reports (want an API call to return multiple data models at once?) • Drag-and-drop serializers (not custom reports, sorry) • Tutorials tomorrow at the hackathon
  • 13. Intelligent Health Lab Pluggable Document Processing: Summary • With zero python code, you can: Add a new recognized schema to Indivo Map that schema to current data models, or Add your own new data model Make API calls to add and retrieve data corresponding to your new types.
  • 14. Intelligent Health Lab Sample Data • It’s hard to write an app against nothing! • We’ve added two mechanisms for loading sample data into records: Demo Mode Fixed sample accounts
  • 15. Intelligent Health Lab Sample Data: Format • “Sample data” is a directory of data profiles. • A “data profile” is a directory of documents containing data (for one patient). • A “data profile” should have a Demographics.xml file. • A “patient” is identified by the name of the directory • And that’s it!
  • 16. Intelligent Health Lab Demo Mode • When you create a new account, it is auto- populated with a configurable set of records containing sample data DEMO_MODE =True DEMO_PROFILES = { ‘John Doe’: ‘patient_239852’, ‘Jane Doe’: ‘patient_665677’, ‘Timmy Doe’: ‘patient_736230’, }
  • 17. Intelligent Health Lab Fixed Sample Accounts • When resetting Indivo, you can configure accounts to be auto-created with specific sets of records and data <account email='test@test.org'> <full_name>Test User</full_name> <username>test</username> <password>test</password> <records> <record label='Test Testerson' data_profile='patient_967332'/> <record label='Mary Testerson' data_profile='patient_897185'/> <record label='Fred Testerson' data_profile='patient_880378'/> </records> </account>
  • 18. Intelligent Health Lab Updating and Adding Registered Apps • Previously: had to reset the whole Indivo database • Now: drag-and-drop into the filesystem • We think this is nicer.
  • 19. Intelligent Health Lab Registering an App: Manifest • SMART manifest: simple JSON describing an app. • Extra Indivo options (has_ui, oauth_callback) also supported.
  • 20. Intelligent Health Lab Registering an App: OAuth Credentials • ‘Offline exchange’ of app tokens • Again, simple JSON
  • 21. Intelligent Health Lab Registering an App: The Filesystem • Directory Structure:  1 dir per app  2 files per dir
  • 22. Intelligent Health Lab Pulling it all together • Write (or update) a manifest file • Write (or update) a credentials file • Drop the new files into a directory for your app, and place it under indivo_server/registered_apps/user/ • Run one command: $ python manage.pysync_apps • And you’re done!
  • 23. Intelligent Health Lab SMART Integration • I’ll be back to discuss soon!

Editor's Notes

  1. Describe the pipeline: * Documents enter, Serialized objects exit: but you can still grab the original document. * goal: be able to add to every step of the pipeline without having to write python code.
  2. SDM: JSON or XML –based, low-level (String, Number, Date) and high-level (Coded-Value, ValueAndUnit, Address) data-types
  3. * Auto reports have access to the full query API