haau3 FHIR Implementation Guide (HFIG)
1.0.0 - ci-build United States of America flag

haau3 FHIR Implementation Guide (HFIG) - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

OperationDefinition: Structure dosage

Official URL: https://haau3.com/fhir/OperationDefinition/structure-dosage Version: 1.0.0
Active as of 2026-10-30 Computable Name: StructureDosage

Structures one prescription's free-text directions, such as "Take 1 tablet by mouth twice daily", as a haau3 Structured Dosage: the dose and its unit, the route, the method, the timing and whether it is taken as needed, each coded where the words support it, and the directions kept verbatim in Dosage.text. Nothing is invented: an element the directions do not support is absent, and anything a person should check is a review flag on the Dosage. Software computes the answer; no person reviews it.

One call

POST a Parameters resource to [base]/$structure-dosage with one text part, the prescription's directions as written, and optionally one medication part, the medication's codings as a CodeableConcept. The answer is a Parameters resource with one dosage part, a haau3 Structured Dosage. Send the directions and the medication's codings only, never a patient's name or identifiers.

The daily tablet request and its answer show both ends of a call with nothing to review. The ear drops request and its answer show a review flag, and so do the inhaler request and its answer. To structure many directions, send one request per entry of a FHIR batch to the base.

What it refuses

The request is refused, with an OperationOutcome that names the part at fault, when the body is not a Parameters resource, when it carries any parameter but text and medication, when text is missing, repeated, empty or over 1,000 characters, when medication is repeated, is not a CodeableConcept or carries over 20 codings, or when the body is over 64 KiB. When the medication carries an RxNorm code that cannot be read, the request is turned down as retryable rather than answered without the medication.

What comes back

A Dosage whose text is the directions exactly as sent. Each element the words support is coded: the dose and its unit, the route, the method, the timing and whether it is taken as needed. An element the directions do not support is absent, and nothing is invented. Anything a person should check is a review flag on the Dosage, with the words it is about where it is about words: words not placed in any element, a unit or route added from the medication, a written unit or route the medication disagrees with, an abbreviation on The Joint Commission's Do Not Use list, or directions given only as text because they change over time or give several doses at once.

Every Dosage names the engine version and the vocabulary version it was written under, and the RxNorm release when the medication's code was looked up. The same directions and medication, under the same versions and release, give the same Dosage.

Code systems and their licences

Codes come from SNOMED CT, NCIt, UCUM and HL7's own code systems, each sent with its publisher's code and term.

Structured Sig's answers carry SNOMED CT concepts only from the SNOMED CT Global Patient Set (GPS), release 2026-01-01, by SNOMED International, licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License (https://creativecommons.org/licenses/by-nd/4.0/). Each concept's identifier and term are sent unmodified. SNOMED CT is © and ® SNOMED International. SNOMED CT® was originally created by the College of American Pathologists. The GPS is provided as is, without warranty.

This material includes SNOMED Clinical Terms® (SNOMED CT®) which is used by permission of the International Health Terminology Standards Development Organisation (IHTSDO). All rights reserved. SNOMED CT®, was originally created by The College of American Pathologists. "SNOMED" and "SNOMED CT" are registered trademarks of the IHTSDO.

The SNOMED CT concepts were selected using the UMLS Metathesaurus from the U.S. National Library of Medicine, release 2026AA, which holds the US Edition of SNOMED CT of 2026-03-01. NLM does not endorse haau3 or its products.

Structured Sig's answers carry route codes from the NCI Thesaurus™, version 26.10d, produced by the Enterprise Vocabulary Services group of the Center for Biomedical Informatics and Information Technology, National Cancer Institute, Maryland, USA, and released under the Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/). Each code and its term are sent unmodified, and are provided as is, without warranty. The routes Structured Sig uses are a selection of its codes, not the NCI Thesaurus.

URL: [base]/$structure-dosage

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INtext1..1string

The prescription's directions as written, at most 1,000 characters. They come back verbatim in Dosage.text.

INmedication0..1CodeableConcept

The medication the directions are for, as its codings: RxNorm, or an NDC. With an RxNorm code, the product's dose form checks the dose's unit and the route, and supplies either when the directions name none. An NDC, or a code system that is not read, is flagged and nothing about the product is used.

OUTdosage1..*Dosage

The structured directions: a Dosage conforming to haau3 Structured Dosage, with its review flags and the engine and vocabulary versions on it. One today; directions that give several doses or schedules at once come back as text with a flag.

POST a Parameters resource with one text part and, optionally, one medication part. Send the directions and the medication's codings only, never a patient. A request is refused, with an OperationOutcome that names the part at fault, for any other parameter, a missing or repeated text, directions over 1,000 characters, a repeated medication, a medication that is not a CodeableConcept or carries over 20 codings, or a body over 64 KiB. When the medication carries an RxNorm code, its dose form checks the dose's unit and the route, and supplies either when the directions name none, each flagged; when RxNorm cannot be read, the request is turned down as retryable rather than answered without it. The answer is a Parameters resource with one dosage part. The operation may be sent inside a batch, one request per entry.