Program Class

DICOM Connectivity Framework V3.4

This example demonstrates how to customize the default tag dictionary.

When DCF needs to look up a value representation (VR) in the implicit transfer syntax, it uses the
TagLookup singleton.
If no dictionary is configured for the application, the default dictionary is loaded from a resource in the libary.

The default dictionary may also be extended via the use of the custom_tags file, where users may automatically load
custom tag extensions upon construction of the default DataDictionary. This facility is used to support the tags
and naming conventions for DICONDE.

Extending the data dictionary is useful in several scenarios:

Adding to tags in the standard dictionary for items newly added by the DICOM standard.

Adding definitions of private tags for vendor specific private tags.

Poorly encoded elements may be able to be better processed by changing the VR of a tag in the dictionary.

Overriding a tag allows you to change the name or description of an element in the log output.

This version of DCF uses a new dictionary format which adds capabilities that were not available in previous versions of DCF.
The new dictionary format uses the leading '#' as a comment character, and has one Tag Entry per line with fields delimited by '|' (pipe) characters.
Some examples of tag entries in this new format are as follows:

# Tag|Name|Keyword|VR|VM|Status|RetFlag

A comment that describes the fields in a tag entry line.

(0000,0002)|Affected SOP Class UID|AffectedSOPClassUID|UI|1|

The tag entry for the Affected SOP Class UID element, whose VR is UI, and whose VM is 1.

(0000,51B0)|Overlays|Overlays|US|1-n|RET

The tag entry for the retired Overlays element, whose VR is US, and whose VM is 1-n.

(0028,3006)|LUT Data|LUTData|OW or US|1 or 1-n|

The tag entry for the Lut Data element, whose VR is OW or US, and whose VM is 1-n.

(60xx,0010)|Overlay Rows|OverlayRows|US|1|

The combo tag entry for Overlay Rows, whose VR is US, and whose VM is 1. The 'xx' in the group specification
matches groups between 6000-60FF.

The private tag entry for private tag (0019,xx03) whose creator id is 'PRIVATE CREATOR', and whose VR is PN
and whose VM is 1. The 'xx' in the element specification matches the last two hex digits of the private creator id whic is
defined by the element at tag (0019,00xx), and whose value is 'PRIVATE CREATOR'.

A session based TagLookup custom tags dictionary extension is also supported via the use of DicomSessionSettings.TagLookup.

The DCF33 legacy CFGGroup style format and semantics are also supported, although additional features available
with the new DCF34 dictionary format are not.