An open-source software widget that creates data input forms based on LOINC's rich content model
LHC-Forms (formerly LForms) is a completely free widget toolkit that leverages LOINC's rich content model for panels, forms, and survey instruments. It can be integrated into electronic health records (EHRs), personal health records (PHRs), and mobile health apps.
Developed by NLM's Lister Hill National Center for Biomedical Communications (LHNCBC) in collaboration with Regenstrief Institute, LHC-Forms can read any of the 1,700+ panels defined in LOINC and render a powerful data entry form. It works across all of the domains (laboratory panels, survey instruments, etc.) included in LOINC.
LHC-Forms' power comes through its support of detailed form attributes, including: data type, cardinality, default value, units of measure (if numeric), answer lists (if multiple choice), ability to make multiple choice answer lists function as "select one" or "select all that apply" relationship (in a nested hierarchy) to other questions, default value settings, validation checks, skip logic and help messages.
See for yourself. Explore the LHC-Forms demo website.
We've built integration of LHC-Forms into RELMA and search.loinc.org
You can now get quickly from a LOINC panel term to an example data entry form that's hosted here on the loinc.org website from all of these places:
- Panels, Forms & Surveys screen
- Search result grids and details pages in RELMA
- Search result grids and details pages in search.loinc.org
LHC-Forms has been deployed as a SMART-on-FHIR app that outputs data collected from LHC-Forms as a FHIR Diagnostic Report resource.
Use LHC-Forms in your application
The LHC-Forms code is available for free on GitHub. You can also find more information on features, installation, and usage on the project page.
Out of the box, LHC-Forms does not include a mechanism to actually store data in a system like and EHR or PHR, but it would not be very difficult for an experienced developer. Likewise, authentication and user control are pieces you would need to add your custom solution.