DICOM Data Dictionary tag registry.
Maps {group, element} tags to their name, VR, and VM (Value Multiplicity).
Generated from the DICOM PS3.6 standard data dictionary via mix dicom.gen_dictionary.
Contains 5035 entries covering the full standard data dictionary. Repeating group tags (50XX curve, 60XX overlay, 7FXX waveform) are handled via pattern matching.
Reference: DICOM PS3.6.
Summary
Functions
Finds a tag by its DICOM keyword (e.g., "PatientName").
Looks up a tag in the dictionary.
Returns true if the tag is marked as retired in the DICOM standard.
Returns the number of entries in the registry (excluding repeating groups).
Types
@type entry() :: {String.t(), Dicom.VR.t(), String.t()}
Functions
@spec find_by_keyword(String.t()) :: {:ok, Dicom.Tag.t(), Dicom.VR.t(), String.t()} | :error
Finds a tag by its DICOM keyword (e.g., "PatientName").
Returns {:ok, tag, vr, vm} or :error.
@spec lookup(Dicom.Tag.t()) :: {:ok, String.t(), Dicom.VR.t(), String.t()} | :error
Looks up a tag in the dictionary.
Returns {:ok, name, vr, vm} or :error if not found.
@spec retired?(Dicom.Tag.t()) :: boolean()
Returns true if the tag is marked as retired in the DICOM standard.
@spec size() :: non_neg_integer()
Returns the number of entries in the registry (excluding repeating groups).