FAQs

Logica Developer FAQs

General

What is the mission of Logica?

Improve health by creating a vibrant, open ecosystem of interoperable platforms, apps, and knowledge assets. 

What type of app I can develop using Logica?

A: Logica supports the three styles of EHR interaction of the SMART on FHIR specification.  The first type is apps that are launched from the EHR (for example, a patient vitals display).  The second type is apps that are run stand-alone and connect to an EHR (for example, an iPhone app).  The third type is an app that advises an EHR through a decision support mechanism.  Each of these styles of interaction can be written in the language and technology of choice.  

What is the Logica Sandbox? 

An Logica Sandbox is your very own instance of an SMART on FHIR platform in the cloud stacked full of tools and utilities to help you build and test your health apps.

What is an Logica Platform?

An Logica Platform is a standardized way to interact with a medical system such as an EHR, Hospital, Clinic, HIE, PHR, Lab, Insurer, etc. In our current reference implementation, we accomplish that through utilizing SMART on FHIR and HL7 FHIR.

How much does an Logica Sandbox cost?

The Logica Sandbox is free to use thanks to the generous donations of our members.

What SDKs and libraries exist to help me build an app?

Logica has a Java client library available.  SMART on FHIR has JavaScript, Swift iOS, and Python client libraries available.

Do you have starter projects, samples, or tutorials to help me get started?

Logica provides several Quick Start projects that are available for use as starter projects.  Logica also provides tutorials (interactive lessons) and samples (working code snippets).

How does Logica differ from SMART on FHIR? 

Logica's mission is to create a vibrant, open ecosystem of interoperable platforms, apps, and knowledge assets. There is strong alignment with SMART's goals (and solutions). Logica is not competing with SMART. In fact, it's supporting its adoption. The Logica Sandbox is a SMART on FHIR compliant platform designed to help app developers create and test SMART on FHIR apps.

Does the Logica Sandbox support FHIR Profiles? NEEDED

Which vendors support SMART on FHIR? NEEDED

Are the Logica SMART on FHIR Reference Implementation, Sandbox, and other artifacts open source? 

Yes, the Logica is a not-for-profit consortium of healthcare providers, software vendors, researchers, educators (and more). Everything we build is designed in line with our mission: Improve health by creating a vibrant, open ecosystem of interoperable platforms, apps, and knowledge assets. To that end, all of our stuff is open source. You can find it all at our Bitbucket project here: https://bitbucket.org/hspconsortium/.

How can I become a contributor to Logica's open source projects?

Our tools are only possible because of the generous contributions of our members and the community. To join our growing community contributors at the Logica Developer Forum or at developer@logicahealth.org.

Using the Logica Sandbox

What is the Logica Sandbox?

The Logica Sandbox is a site where users can create sandbox instances.  A sandbox instance is a personal instance of the Logica Technology Stack including the Logica Reference Implementation, a FHIR database, and a registry for the user's apps.  A developer or team of developers can use the Logica Sandbox to build, launch, and test apps as well as create interesting real-world data scenarios.

What's the difference between the Logica Sandbox and the Logica Reference Implementation of the SMART on FHIR specification. 

An Logica Sandbox is deployment of the Logica Reference Implementation of the SMART on FHIR specification for the purpose of providing app developers an environment to build, launch, and test their apps.  The Logica Reference Implementation of the SMART on FHIR specification consists of software artifacts that provide the functionality of the SMART on FHIR specification.  Please see the Glossary of Terms for more information.

What version of FHIR does the Logica Sandbox support?

The Logica Sandbox supports the current version of FHIR DSTU 2.

Does the Logica Sandbox implement SMART on FHIR?

Yes, the Logica Sandbox is a SMART on FHIR compliant platform.

Does the Logica Sandbox support CDS Hooks?

The Logica Sandbox does not support CDS Hooks at this time. If this feature would be of interest to you or if you'd like to help implement it, let us know here: developer@logicahealth.org.

How do I create an Logica Sandbox?

You can create an Logica Sandbox Instance by creating an account at http://sandbox.logicahealth.org.  After creating an account, you can create a sandbox instance.

Can I run Logica's Sandbox locally?

It is not intended for you to run the Logica Sandbox locally.  You should instead create an account at http://sandbox.logicahealth.org and create an instance there.  However, the Logica Sandbox artifacts are all open source.

When should I host my own instance of the Logica platform or use the LogicaSandbox?

Most app developers should use the Logica Sandbox by creating a personal sandbox instance.  If you are a platform developer and are needing to modify the Logica Reference Implementation components, then you should host your own instance of the Logica Platform using your modified components.

How do I launch my app running on localhost against my Logica Sandbox?

When an app is launched from the Logica Sandbox, the Logica Sandbox needs to have the URL of the app in order to send a launch request.  If you are hosting your app locally, you will need to provide the IP address or hostname of your app to the Logica Sandbox.

How do I register an app inside my sandbox?

You can register an app inside your sandbox by following the Register the Application with the Logica Sandbox guide.

How do I connect a mobile app to my sandbox? NEEDED

How do I connect a stand-alone or backend service to my sandbox?

You can connect a standalone Java app to your sandbox by following the tutorial Java Client Tutorial: Standalone Clinician Confidential Client.  You can connect a backend service to your app by following the Quick Start Spring IOC App for a Backend System guide.

What is a Launch Scenario?

A launch scenario is a mechanism of the Logica Sandbox allowing an app to be repeatably launched using the same conditions.  Please see the Glossary of Terms for more information.

How do I add a practitioner record to my sandbox?

A Practitioner Resource can be added to your sandbox by choosing the practitioners side menu and clicking "Create new practitioner".

How to create a new patient record in my sandbox?

A Patient Resource can be added to your sandbox by choosing the patients side menu and clicking "Create new patient".

What is the Patient Data Manager?

The Patient Data Manager is an app that allows a user to manage the clinical and demographic information for a Patient Resource.

What is FRED?

FRED (FHIR Resource EDitor) is a tool written by the SMART on FHIR team that allows detailed authoring of a resource, including extensions and profiles.

Is there a patient that has a lot of data defined?

You can see the amount of clinical resources for a patient in the Logica Sandbox by choosing the Patients side menu, selecting a patient, and referring Data Summary graph.  To gain additional insight into the resources for a patient, select "Open Patient Data Manager".

How can I test my app using real-world data?

Using the Logica Sandbox you can test your app using real-world data by using an existing dataset that meets your needs or you can create your own dataset.  You can create your own dataset by creating patient resources, then adding records to that patient using the Patient Data Manager.  The Patient Data Manager can also be used to simulate record changes over time by manually controlling when a record is modified.

Is there an installer for the Logica Platform?

There is no installer for the Logica Platform.  Each component can be installed separately in a Servlet container.

Tools and Development Resources

What are Logica FHIR Profiles?

Logica FHIR Profiles are FHIR Profiles that are produced by Logica for the intent of achieving semantic interoperability between healthcare platforms and apps.  The Modeling and Terminology Initiatives of Logica authors and publishes the Logica FHIR Profiles.  Logica FHIR Profiles are promoted to the HL7 FHIR Profile website after they have completed the Logica FHIR Profile development process.

Building an App

How can I know who the "current user" is?

To find the current user, you must follow the OpenID Connect specification by requesting the openid and profile scopes.  See the  How to Get the Current User sample.

FHIR Questions

How can I find all of the labs for a patient?

In FHIR, labs are a subset of Observation resources.  To find all labs, see the How to query for Observations sample and apply a search parameter where Observation.category=laboratory.

How can I find the birthday for a patient?

In FHIR, a Patient Resource has a birthDate property that is of type date.  A date does not contain any time componet.  If you need a birth time, use a Profile extension that specifies birth time.  For example, the http://www.hl7.org/fhir/patient-extensions.html profile adds a patient-birthTime property.

Logica in general

How does Logica differ from FHIR?

Logica is an industry consortium that uses the HL7 FHIR specification as an interoperability protocol to fulfill the mission of Logica.  See the Glossary of Terms for additional information.