Skip to content

open-ortho/terminology

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

open-ortho terminology

A collection of codes and terms from various terminologies, specifically tailored for software development within the orthodontic domain.
Explore the docs »

View Demo · Report Bug · Request Feature

About The Project

This project serves as a centralized repository for orthodontic software developers, offering a curated collection of essential codes required for implementing healthcare standards like DICOM or HL7. Navigating through various terminologies to find the right codes can be challenging. Our project aims to simplify this process by providing a go-to source for these codes, readily available in JSON and CSV formats. Users can access these directly through GitHub releases or utilize them as a Python package on PyPI.

The primary aim of this project is to implement in FHIR Terminology the views and view sets defined in AMERICAN NATIONAL STANDARD INSTITUTE/AMERICAN DENTAL ASSOCIATION STANDARD NO. 1100 – 2D and 3D Orthodontic/Craniofacial/Forensic Photographic Views and View Sets. By adhering to the ADA1100 standard, we ensure that the codes and terminologies used in orthodontic software are consistent, accurate, and interoperable across different systems. This is not an official FHIR CodeSystem. The purpose for this site is to provide developers codes necessary to move forward with their development, while the codes get added and approved in official nomenclatures (like SNOMED-CT).

Historically, many of the photographic view codes defined by ADA-1100 were submitted to and added in SNOMED CT at the request of the American Dental Association to enable standards-compliant implementations. Those SNOMED concepts are clinically precise, but they do not include the concise, developer-friendly keywords used in ADA-1100 workflows. Open Ortho collected the ADA-1100 terminology, published it in these FHIR CodeSystems and ValueSets, and provides ConceptMaps to translate between the ADA-1100 identifiers and SNOMED CT codes. This keeps software-friendly keywords available while maintaining interoperability with SNOMED CT.

Using The Codes

The code systems and code values are built by the Makefile and deployed in docs/, where GitHub Pages can serve them as static FHIR artifacts.

The code systems, concept maps and value sets are listed in the autogenerated index:

Local Development

To test the generated site locally before pushing, you can spin up a web server that simulates GitHub Pages:

make serve

This serves the docs/ directory on http://localhost:8000. You can then test FHIR resource URLs such as:

  • http://localhost:8000/fhir/scheduled-protocol/ — base ValueSet resource
  • http://localhost:8000/fhir/scheduled-protocol/$expand — FHIR expansion response
  • http://localhost:8000/fhir/OrthodonticPhotographViews/$expand — expansion for Orthodontic Photograph Views

Press Ctrl+C to stop the server.

To see all available make targets:

make help

Python

If you want to use the codes directly in your Python project:

pip install open-ortho-terminology

Then:

from terminology.resources.code_systems.extraoral_3d_visible_light_scheduled_protocol import (
    EV3D01,
    EV3D02,
    EV3D03,
)

print(EV3D01.code)
print(EV3D01.display)
print(EV3D01.definition)

Convert codes to JSON:

print(EV3D01.model_dump())

Import the entire code system:

from terminology.resources.code_systems.extraoral_3d_visible_light_scheduled_protocol import (
    Extraoral3DVisibleLightScheduledProtocolCodeSystem,
)

ev = Extraoral3DVisibleLightScheduledProtocolCodeSystem()
print(ev.model_dump())
print(ev.concept[0].model_dump())
print(ev.concept)

Releases

  • Each new release must be git tagged with v*... This triggers the Github actions to publish to PyPi and release in GitHub releases.
  • Project version should only be stored in the pyproject.toml file in project.version, and imported accordingly when needed.
  • Each CodeSystem and CodeValue has its own version which depends on changes to that: remember to bump those individually.
  • No need for Github actions: just build with make build, which will build in docs/ and is configured by GitHub Pages to serve to http://terminology.open-ortho.org and http://open-ortho.org/terminology.

About

A list of codes and terms from various terminologies used for development of software pertaining the orthodontic domain.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors