[med-svn] [dcmtkpp] 01/01: Imported Upstream version 0.3.1
Julien Lamy
lamy-guest at moszumanska.debian.org
Thu Oct 8 14:47:16 UTC 2015
This is an automated email from the git hooks/post-receive script.
lamy-guest pushed a commit to branch upstream
in repository dcmtkpp.
commit 1cbccc6fb69a693830775e6e011c956b3f446b66
Author: Julien Lamy <lamy at unistra.fr>
Date: Thu Oct 8 11:49:10 2015 +0200
Imported Upstream version 0.3.1
---
.travis.yml | 20 +-
CMakeLists.txt | 6 +
README.md | 12 +-
examples/CMakeLists.txt | 7 +-
examples/dicomdir.cpp | 23 +
examples/dump.cpp | 91 +
examples/find.cpp | 13 +-
examples/get.cpp | 17 +-
examples/move.cpp | 14 +-
examples/store.cpp | 15 +-
generate_registry | 148 +-
registry.cpp.tmpl | 95 +
registry.h.tmpl | 36 +
src/CMakeLists.txt | 13 +-
src/dcmtkpp/BasicDirectoryCreator.cpp | 472 ++
src/dcmtkpp/BasicDirectoryCreator.h | 113 +
src/dcmtkpp/CStoreRequest.h | 3 -
src/dcmtkpp/DataSet.cpp | 5 -
src/dcmtkpp/ElementsDictionary.cpp | 25 +
src/dcmtkpp/ElementsDictionary.h | 39 +
src/dcmtkpp/Reader.cpp | 601 +++
src/dcmtkpp/Reader.h | 105 +
src/dcmtkpp/SCU.cpp | 3 +-
src/dcmtkpp/ServiceRole.cpp | 346 +-
src/dcmtkpp/ServiceRole.h | 9 +-
src/dcmtkpp/ServiceRole.txx | 1 -
src/dcmtkpp/StoreSCU.cpp | 128 +-
src/dcmtkpp/Tag.cpp | 34 +-
src/dcmtkpp/UIDsDictionary.cpp | 26 +
src/dcmtkpp/UIDsDictionary.h | 36 +
src/dcmtkpp/VR.cpp | 15 +-
src/dcmtkpp/VRFinder.cpp | 198 +
src/dcmtkpp/VRFinder.h | 78 +
src/dcmtkpp/Value.cpp | 7 +
src/dcmtkpp/Value.h | 10 +
src/dcmtkpp/Value.txx | 34 +
src/dcmtkpp/Writer.cpp | 547 +++
src/dcmtkpp/Writer.h | 112 +
src/dcmtkpp/conversion.cpp | 58 +-
src/dcmtkpp/conversion.h | 9 +-
src/dcmtkpp/registry.cpp | 8174 +++++++++++++++++++++++++++++++++
src/dcmtkpp/registry.h | 8086 ++++++++++++++++----------------
src/dcmtkpp/uid.cpp | 88 +
src/dcmtkpp/uid.h | 34 +
src/dcmtkpp/xml_converter.cpp | 597 +++
src/dcmtkpp/xml_converter.h | 27 +
tests/CMakeLists.txt | 1 +
tests/code/Association.cpp | 9 +-
tests/code/CEchoRequest.cpp | 8 +-
tests/code/CEchoResponse.cpp | 8 +-
tests/code/CFindRequest.cpp | 8 +-
tests/code/CFindResponse.cpp | 8 +-
tests/code/CGetRequest.cpp | 6 +-
tests/code/CGetResponse.cpp | 7 +-
tests/code/CMoveRequest.cpp | 8 +-
tests/code/CMoveResponse.cpp | 8 +-
tests/code/CStoreRequest.cpp | 8 +-
tests/code/CStoreResponse.cpp | 8 +-
tests/code/DataSet.cpp | 2 +
tests/code/FindSCU.cpp | 9 +-
tests/code/GetSCU.cpp | 11 +-
tests/code/MoveSCU.cpp | 11 +-
tests/code/Reader.cpp | 328 ++
tests/code/SCU.cpp | 5 +-
tests/code/StoreSCU.cpp | 11 +-
tests/code/Writer.cpp | 327 ++
tests/code/conversion.cpp | 3 +-
tests/code/registry.cpp | 28 +
tests/code/uid.cpp | 14 +
tests/code/xml_converter.cpp | 1114 +++++
70 files changed, 18032 insertions(+), 4448 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index b91eb36..3741652 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,11 +1,23 @@
+sudo: false
language: cpp
compiler:
- gcc
- clang
+addons:
+ apt:
+ packages:
+ - libdcmtk2-dev
+ - libwrap0-dev
+ - libjsoncpp-dev
+ - libicu-dev
+ - uuid-dev
+ - zlib1g-dev
+ - libboost-dev
+ - libboost-filesystem-dev
+ - libboost-test-dev
+ - dcmtk
before_install:
- - sudo apt-get update -qq
- - sudo apt-get install -y libdcmtk2-dev libwrap0-dev libjsoncpp-dev libicu-dev zlib1g-dev libboost-test-dev dcmtk
- - sudo pip install cpp-coveralls
+ - pip install --user cpp-coveralls
before_script:
- export SRC_DIR=$PWD
- mkdir build
@@ -18,4 +30,4 @@ script:
- make -j $(nproc)
- ../tests/run.sh
after_success:
- - if [ "${CC}" = "gcc" ]; then coveralls --exclude examples --exclude tests --exclude-pattern '.*CMake[^/]+\.c(?:pp)?' --exclude-pattern "/usr/.*" --root=${SRC_DIR} --build-root ${BIN_DIR} | grep -vP "^File '.*'$" | grep -vP ":creating '.*'$" | grep -vP "^Lines executed:.*" | sed '/^$/d'; fi
+ - if [ "${CC}" = "gcc" ]; then ${HOME}/.local/bin/coveralls --exclude examples --exclude tests --exclude-pattern '.*CMake[^/]+\.c(?:pp)?' --exclude-pattern "/usr/.*" --root=${SRC_DIR} --build-root ${BIN_DIR} | grep -vP "^File '.*'$" | grep -vP ":creating '.*'$" | grep -vP "^Lines executed:.*" | sed '/^$/d'; fi
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 844a5fc..0cc8bea 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,11 @@
cmake_minimum_required(VERSION 2.8)
+
project("dcmtkpp")
+set(dcmtkpp_MAJOR_VERSION 0)
+set(dcmtkpp_MINOR_VERSION 3)
+set(dcmtkpp_PATCH_VERSION 1)
+set(dcmtkpp_VERSION
+ ${dcmtkpp_MAJOR_VERSION}.${dcmtkpp_MINOR_VERSION}.${dcmtkpp_PATCH_VERSION})
option(BUILD_EXAMPLES "Build the examples directory." ON)
diff --git a/README.md b/README.md
index c4fb856..086f9e0 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,16 @@
DCMTK++
=======
-DCMTK++ is a set of wrappers around [DCMTK](http://dicom.offis.de/dcmtk.php.en)
-to have an easier API, notably for the networking part.
+DCMTK++ is a C++ wrapper library for the [DCMTK](http://dicom.offis.de/dcmtk.php.en)
+DICOM toolkit.
+
+DCMTK++ is a C++ wrapper library for [DCMTK](http://dicom.offis.de/dcmtk.php.en),
+a C++ toolkit handling the DICOM medical imaging standard. DCMTK++
+leverages C++ constructs to provide a more user-friendly API, notably
+for the networking part. Included in DCMTK++ are exception-based error
+handling, generic access to datasets elements, standard JSON
+representation of datasets, and generic implementation of messages,
+clients and servers for the various DICOM protocols.
[![Build Status](https://travis-ci.org/lamyj/dcmtkpp.svg?branch=master)](https://travis-ci.org/lamyj/dcmtkpp)
[![Coverage Status](https://coveralls.io/repos/lamyj/dcmtkpp/badge.svg)](https://coveralls.io/r/lamyj/dcmtkpp)
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 0764cb3..fa27216 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -2,9 +2,10 @@ add_definitions("-D HAVE_CONFIG_H")
include_directories(${CMAKE_SOURCE_DIR}/src)
-set(examples find get move store)
+file(GLOB_RECURSE examples *.cpp)
-foreach(example ${examples})
- add_executable(${example} ${example}.cpp)
+foreach(example_file ${examples})
+ get_filename_component(example ${example_file} NAME_WE)
+ add_executable(${example} ${example_file})
target_link_libraries(${example} dcmtkpp dcmdata)
endforeach()
diff --git a/examples/dicomdir.cpp b/examples/dicomdir.cpp
new file mode 100644
index 0000000..426a488
--- /dev/null
+++ b/examples/dicomdir.cpp
@@ -0,0 +1,23 @@
+#include <string>
+#include <vector>
+
+#include <dcmtkpp/BasicDirectoryCreator.h>
+#include <dcmtkpp/registry.h>
+
+int main(int argc, char** argv)
+{
+ std::string const root(argv[1]);
+ std::vector<std::string> const files(argv+2, argv+argc);
+
+ dcmtkpp::BasicDirectoryCreator creator(root, files,
+ {
+ {"PATIENT", { {dcmtkpp::registry::PatientBirthDate, 3} }},
+ {"STUDY", { {dcmtkpp::registry::PatientAge, 3} }},
+ {"SERIES", { {dcmtkpp::registry::SeriesDescription, 3} }},
+ {"IMAGE", { {dcmtkpp::registry::ImageType, 3} }},
+ });
+
+ creator();
+
+ return 0;
+}
diff --git a/examples/dump.cpp b/examples/dump.cpp
new file mode 100644
index 0000000..86200ce
--- /dev/null
+++ b/examples/dump.cpp
@@ -0,0 +1,91 @@
+#include <fstream>
+#include <iostream>
+#include <ostream>
+#include <string>
+#include <utility>
+
+#include <dcmtkpp/DataSet.h>
+#include <dcmtkpp/Reader.h>
+#include <dcmtkpp/Value.h>
+
+struct Printer
+{
+ typedef void result_type;
+
+ std::ostream & stream;
+ std::string indent;
+
+ Printer(std::ostream & stream, std::string const & indent="")
+ : stream(stream), indent(indent)
+ {
+ // Nothing else
+ }
+
+ template<typename T>
+ void operator()(T const & value) const
+ {
+ for(auto const & item: value)
+ {
+ this->stream << item << " ";
+ }
+ }
+
+ void operator()(dcmtkpp::Value::DataSets const & value) const
+ {
+ this->stream << "\n";
+
+ auto const last_it = --value.end();
+ for(auto it=value.begin(); it!= value.end(); ++it)
+ {
+ Printer const printer(this->stream, this->indent+" ");
+ printer(*it);
+ if(it != last_it)
+ {
+ this->stream << "----\n";
+ }
+ }
+ }
+
+ void operator()(dcmtkpp::Value::Binary const & value) const
+ {
+ this->stream << this->indent << "(binary)";
+ }
+
+ void operator()(dcmtkpp::DataSet const & data_set) const
+ {
+ for(auto const & item: data_set)
+ {
+ this->stream << this->indent << item.first << " " << as_string(item.second.vr) << " ";
+ dcmtkpp::apply_visitor(*this, item.second.get_value());
+ this->stream << "\n";
+ }
+ }
+};
+
+int main(int argc, char** argv)
+{
+ for(int i=1; i<argc; ++i)
+ {
+ std::ifstream stream(argv[i], std::ios::in | std::ios::binary);
+
+ std::pair<dcmtkpp::DataSet, dcmtkpp::DataSet> file;
+ try
+ {
+ file = dcmtkpp::Reader::read_file(stream);
+ }
+ catch(std::exception & e)
+ {
+ std::cout << "Could not read " << argv[i] << ": " << e.what() << "\n";
+ }
+
+ auto const & meta_information = file.first;
+ auto const & data_set = file.second;
+
+ Printer printer(std::cout);
+ printer(meta_information);
+ std::cout << "\n";
+ printer(data_set);
+ }
+
+ return 0;
+}
diff --git a/examples/find.cpp b/examples/find.cpp
index 321b15c..9acb22a 100644
--- a/examples/find.cpp
+++ b/examples/find.cpp
@@ -1,8 +1,5 @@
#include <iostream>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dctk.h>
-
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/FindSCU.h"
#include "dcmtkpp/registry.h"
@@ -29,12 +26,12 @@ int main()
association.set_peer_ae_title("pacs");
association.add_presentation_context(
- UID_FINDStudyRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelFIND,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.add_presentation_context(
- UID_VerificationSOPClass,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::VerificationSOPClass,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.associate(network);
@@ -51,7 +48,7 @@ int main()
query.add(dcmtkpp::registry::NumberOfStudyRelatedSeries);
query.add("StudyDate");
- scu.set_affected_sop_class(UID_FINDStudyRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::StudyRootQueryRetrieveInformationModelFIND);
std::cout << "--------\n";
std::cout << "Callback\n";
diff --git a/examples/get.cpp b/examples/get.cpp
index f50690e..19ea720 100644
--- a/examples/get.cpp
+++ b/examples/get.cpp
@@ -1,8 +1,5 @@
#include <iostream>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dctk.h>
-
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/GetSCU.h"
#include "dcmtkpp/registry.h"
@@ -34,17 +31,17 @@ int main()
association.set_peer_ae_title("pacs");
association.add_presentation_context(
- UID_GETStudyRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelGET,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.add_presentation_context(
- UID_MRImageStorage,
- { UID_LittleEndianImplicitTransferSyntax },
+ dcmtkpp::registry::MRImageStorage,
+ { dcmtkpp::registry::ImplicitVRLittleEndian },
ASC_SC_ROLE_SCP);
association.add_presentation_context(
- UID_VerificationSOPClass,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::VerificationSOPClass,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.associate(network);
@@ -60,7 +57,7 @@ int main()
query.add("StudyInstanceUID", { "1.2.3.4.5" });
query.add("SeriesInstanceUID", { "1.2.3.4.5.1" });
- scu.set_affected_sop_class(UID_GETStudyRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::StudyRootQueryRetrieveInformationModelGET);
std::cout << "--------\n";
std::cout << "Callback\n";
diff --git a/examples/move.cpp b/examples/move.cpp
index fb8b12d..589ce1d 100644
--- a/examples/move.cpp
+++ b/examples/move.cpp
@@ -35,17 +35,17 @@ int main()
association.set_peer_ae_title("pacs");
association.add_presentation_context(
- UID_MOVEStudyRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelMOVE,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.add_presentation_context(
- UID_MRImageStorage,
- { UID_LittleEndianImplicitTransferSyntax },
+ dcmtkpp::registry::MRImageStorage,
+ { dcmtkpp::registry::ImplicitVRLittleEndian },
ASC_SC_ROLE_SCP);
association.add_presentation_context(
- UID_VerificationSOPClass,
- { UID_LittleEndianImplicitTransferSyntax });
+ dcmtkpp::registry::VerificationSOPClass,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.associate(network);
@@ -62,7 +62,7 @@ int main()
query.add("StudyInstanceUID", { "1.2.3.4.5" });
query.add("SeriesInstanceUID", { "1.2.3.4.5.1" });
- scu.set_affected_sop_class(UID_MOVEStudyRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::StudyRootQueryRetrieveInformationModelMOVE);
std::cout << "--------\n";
std::cout << "Callback\n";
diff --git a/examples/store.cpp b/examples/store.cpp
index 184da07..515821c 100644
--- a/examples/store.cpp
+++ b/examples/store.cpp
@@ -24,14 +24,17 @@ int main(int argc, char** argv)
association.set_peer_port(11112);
association.set_peer_ae_title("pacs");
- association.add_presentation_context(UID_MRImageStorage,
- { UID_LittleEndianImplicitTransferSyntax });
+ association.add_presentation_context(
+ dcmtkpp::registry::MRImageStorage,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
- association.add_presentation_context(UID_EnhancedMRImageStorage,
- { UID_LittleEndianImplicitTransferSyntax });
+ association.add_presentation_context(
+ dcmtkpp::registry::EnhancedMRImageStorage,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
- association.add_presentation_context(UID_VerificationSOPClass,
- { UID_LittleEndianImplicitTransferSyntax });
+ association.add_presentation_context(
+ dcmtkpp::registry::VerificationSOPClass,
+ { dcmtkpp::registry::ImplicitVRLittleEndian });
association.associate(network);
diff --git a/generate_registry b/generate_registry
index e0a3f16..3ed077f 100755
--- a/generate_registry
+++ b/generate_registry
@@ -1,57 +1,62 @@
#! /usr/bin/env python
+import argparse
+import os
import re
import urllib
import sys
import xml.etree.ElementTree
-def main():
- sources = [
- ("http://medical.nema.org/medical/dicom/current/source/docbook/part07/part07.xml", "table_E.1-1"),
- ("http://medical.nema.org/medical/dicom/current/source/docbook/part06/part06.xml", "table_7-1"),
- ("http://medical.nema.org/medical/dicom/current/source/docbook/part06/part06.xml", "table_8-1"),
- ("http://medical.nema.org/medical/dicom/current/source/docbook/part06/part06.xml", "table_6-1"),
+import jinja2
- ]
+def main():
+ parser = argparse.ArgumentParser("Generate registry files")
+ parser.add_argument(
+ "root", nargs="?",
+ default="http://medical.nema.org/medical/dicom/current/source/docbook",
+ help="Root URL or path to the Docbook version of the DICOM standard")
+
+ arguments = parser.parse_args()
+
+ jinja_environment = jinja2.Environment(
+ loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
+ trim_blocks=True)
+
+ templates = {
+ "src/dcmtkpp/registry.h": jinja_environment.get_template("registry.h.tmpl"),
+ "src/dcmtkpp/registry.cpp": jinja_environment.get_template("registry.cpp.tmpl"),
+ }
- header = [
- "/*************************************************************************",
- "* dcmtkpp - Copyright (C) Universite de Strasbourg",
- "* Distributed under the terms of the CeCILL-B license, as published by",
- "* the CEA-CNRS-INRIA. Refer to the LICENSE file or to",
- "* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html",
- "* for details.",
- "************************************************************************/",
- "",
- "#ifndef _afc7b2d7_0869_4fea_9a9b_7fe6228baca9",
- "#define _afc7b2d7_0869_4fea_9a9b_7fe6228baca9",
- "",
- "#include \"dcmtkpp/Tag.h\"",
- "",
- "namespace dcmtkpp",
- "{",
- "",
- "namespace registry",
- "{",
+ sources = [
+ ("part07/part07.xml", "table_E.1-1"),
+ ("part06/part06.xml", "table_7-1"),
+ ("part06/part06.xml", "table_8-1"),
+ ("part06/part06.xml", "table_6-1"),
]
- declarations = []
+ elements_dictionary = []
for url, id_ in sources:
- declarations.extend(generate_registry(url, id_))
-
- footer = [
- "}",
- "",
- "}",
- "",
- "#endif // _afc7b2d7_0869_4fea_9a9b_7fe6228baca9",
+ url = os.path.join(arguments.root, url)
+ entries = parse_elements_dictionaries(url, id_)
+ elements_dictionary.extend(entries)
+
+ sources = [
+ ("part06/part06.xml", "table_A-1"),
]
-
- print "\n".join(header+declarations+footer)
-
+
+ uids = []
+ for url, id_ in sources:
+ uids.extend(parse_uids(os.path.join(arguments.root, url), id_))
+
+ for path, template in templates.items():
+ with open(path, "w") as fd:
+ fd.write(template.render(
+ elements_dictionary=elements_dictionary,
+ uids=uids))
+
return 0
-def generate_registry(url, id_):
+def parse_elements_dictionaries(url, id_):
fd = urllib.urlopen(url)
document = xml.etree.ElementTree.parse(fd)
fd.close()
@@ -67,7 +72,9 @@ def generate_registry(url, id_):
for row in table.iterfind("./docbook:tbody/docbook:tr", namespaces):
entry = row.findall("./docbook:td/docbook:para", namespaces)
- tag = entry[0]
+
+ tag, name, keyword, vr, vm = entry[:5]
+
if tag.getchildren():
tag = tag.find("./docbook:emphasis", namespaces)
tag = tag.text
@@ -78,17 +85,66 @@ def generate_registry(url, id_):
tag = [int(x, 16) for x in match.groups()]
- keyword = entry[2]
- if keyword.getchildren():
- keyword = keyword.find("./docbook:emphasis", namespaces)
- keyword = keyword.text or ""
- keyword = keyword.replace(u"\u200b", "").decode("ascii")
+ keyword = get_value(keyword, "ascii", namespaces)
if not keyword:
continue
+
+ name = get_value(name, "utf-8", namespaces)
+ vr = get_value(vr, "ascii", namespaces)
+ vm = get_value(vm, "ascii", namespaces)
+
+ entries.append((tag, name, keyword, vr, vm))
+
+ return entries
+
+def parse_uids(url, id_):
+ fd = urllib.urlopen(url)
+ document = xml.etree.ElementTree.parse(fd)
+ fd.close()
- entries.append(" Tag const {}(0x{:04x}, 0x{:04x});".format(keyword, *tag))
+ namespaces = {
+ "xml": "http://www.w3.org/XML/1998/namespace",
+ "docbook": "http://docbook.org/ns/docbook"
+ }
+ table = document.find(".//*[@xml:id=\"{}\"]".format(id_), namespaces)
+
+ keywords_map = {
+ "12leadECGWaveformStorage": "TwelveleadECGWaveformStorage",
+ }
+
+ entries = []
+
+ for row in table.iterfind("./docbook:tbody/docbook:tr", namespaces):
+ entry = row.findall("./docbook:td/docbook:para", namespaces)
+ uid, name, type_ = entry[:3]
+
+ uid = get_value(uid, "ascii", namespaces)
+ name = get_value(name, "ascii", namespaces)
+ type_ = get_value(type_, "ascii", namespaces)
+
+ retired = name.endswith(" (Retired)")
+ keyword = name.replace(" (Retired)", "")
+ keyword = re.sub(":.*", "", keyword)
+ keyword = re.sub("\W", " ", keyword).strip().replace(" ", "")
+ if retired:
+ keyword += "_Retired"
+
+ keyword = keywords_map.get(keyword, keyword)
+
+ entries.append((uid, name, keyword, type_))
+
return entries
+
+
+def get_value(element, encoding, namespaces):
+ emphasis = element.find("./docbook:emphasis", namespaces)
+ if emphasis is not None:
+ element = emphasis
+
+ element = element.text or ""
+ element = element.replace(u"\u200b", "").replace(u"\u00b5", "u").encode(encoding)
+ return element
if __name__ == "__main__":
sys.exit(main())
diff --git a/registry.cpp.tmpl b/registry.cpp.tmpl
new file mode 100644
index 0000000..0169112
--- /dev/null
+++ b/registry.cpp.tmpl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include <stdint.h>
+
+#include "dcmtkpp/registry.h"
+
+#include "dcmtkpp/ElementsDictionary.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/VR.h"
+#include "dcmtkpp/UIDsDictionary.h"
+
+namespace dcmtkpp
+{
+
+namespace registry
+{
+
+struct RawElementsDictionaryEntry
+{
+ uint16_t group;
+ uint16_t element;
+ char const * name;
+ char const * keyword;
+ char const * vr;
+ char const * vm;
+};
+
+ElementsDictionary create_public_dictionary()
+{
+
+ RawElementsDictionaryEntry raw_entries[] = {
+{% for entry in elements_dictionary %}
+ { {{ "0x%04x"|format(entry[0][0]) }}, {{ "0x%04x"|format(entry[0][1]) }},
+ "{{ entry[1] }}", "{{ entry[2] }}", "{{ entry[3] }}", "{{ entry[4] }}" },
+{% endfor %}
+ };
+
+ ElementsDictionary public_dictionary;
+
+ unsigned long const count = sizeof(raw_entries)/sizeof(RawElementsDictionaryEntry);
+ for(unsigned long i=0; i<count; ++i)
+ {
+ RawElementsDictionaryEntry const & raw_entry = raw_entries[i];
+ Tag const tag(raw_entry.group, raw_entry.element);
+ ElementsDictionaryEntry const entry(
+ raw_entry.name, raw_entry.keyword, raw_entry.vr, raw_entry.vm);
+ public_dictionary.insert(std::pair<Tag, ElementsDictionaryEntry>(tag, entry));
+ }
+
+ return public_dictionary;
+}
+
+struct RawUIDsDictionaryEntry
+{
+ char const * uid;
+ char const * name;
+ char const * keyword;
+ char const * type;
+};
+
+UIDsDictionary create_uids_dictionary()
+{
+
+ RawUIDsDictionaryEntry raw_entries[] = {
+{% for entry in uids %}
+ { "{{ entry[0] }}", "{{ entry[1] }}", "{{ entry[2] }}", "{{ entry[3] }}" },
+{% endfor %}
+ };
+
+ UIDsDictionary uids_dictionary;
+
+ unsigned long const count = sizeof(raw_entries)/sizeof(RawUIDsDictionaryEntry);
+ for(unsigned long i=0; i<count; ++i)
+ {
+ RawUIDsDictionaryEntry const & raw_entry = raw_entries[i];
+ UIDsDictionaryEntry const entry(
+ raw_entry.name, raw_entry.keyword, raw_entry.type);
+ uids_dictionary.insert(std::pair<std::string, UIDsDictionaryEntry>(raw_entry.uid, entry));
+ }
+
+ return uids_dictionary;
+}
+
+}
+
+}
+
+dcmtkpp::ElementsDictionary dcmtkpp::registry::public_dictionary=dcmtkpp::registry::create_public_dictionary();
+dcmtkpp::UIDsDictionary dcmtkpp::registry::uids_dictionary=dcmtkpp::registry::create_uids_dictionary();
diff --git a/registry.h.tmpl b/registry.h.tmpl
new file mode 100644
index 0000000..9a5a216
--- /dev/null
+++ b/registry.h.tmpl
@@ -0,0 +1,36 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _afc7b2d7_0869_4fea_9a9b_7fe6228baca9
+#define _afc7b2d7_0869_4fea_9a9b_7fe6228baca9
+
+#include "dcmtkpp/ElementsDictionary.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/UIDsDictionary.h"
+
+namespace dcmtkpp
+{
+
+namespace registry
+{
+{% for entry in elements_dictionary %}
+Tag const {{ entry[2] }}({{ "0x%04x, 0x%04x"|format(*entry[0]) }});
+{% endfor %}
+
+{% for entry in uids %}
+std::string const {{ entry[2] }}("{{ entry[0] }}");
+{% endfor %}
+
+extern ElementsDictionary public_dictionary;
+extern UIDsDictionary uids_dictionary;
+}
+
+}
+
+#endif // _afc7b2d7_0869_4fea_9a9b_7fe6228baca9
+
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 92306ef..e3ae50c 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,3 +1,4 @@
+find_package(Boost REQUIRED COMPONENTS filesystem system)
find_package(ICU REQUIRED)
set(DCMTK_LIBRARIES dcmnet dcmdata oflog ofstd pthread z)
@@ -9,13 +10,19 @@ endif()
file(GLOB_RECURSE headers "*.h")
file(GLOB_RECURSE templates "*.txx")
file(GLOB_RECURSE files "*.cpp")
-include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${ICU_INCLUDE_DIR})
+include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR} ${Boost_INCLUDE_DIRS} ${ICU_INCLUDE_DIR})
add_definitions("-D HAVE_CONFIG_H")
+add_definitions("-D DCMTKPP_MAJOR_VERSION=${dcmtkpp_MAJOR_VERSION}")
+link_directories(${Boost_LIBRARY_DIRS})
add_library(dcmtkpp SHARED ${files})
install(TARGETS dcmtkpp LIBRARY DESTINATION lib)
install(FILES ${headers} ${templates} DESTINATION include/dcmtkpp)
-target_link_libraries(dcmtkpp ${DCMTK_LIBRARIES} jsoncpp ${ICU_LIBRARIES})
-
+target_link_libraries(dcmtkpp
+ ${Boost_LIBRARIES} ${DCMTK_LIBRARIES} jsoncpp ${ICU_LIBRARIES} uuid)
+set_target_properties(dcmtkpp PROPERTIES
+ VERSION ${dcmtkpp_VERSION}
+ SOVERSION ${dcmtkpp_MAJOR_VERSION})
diff --git a/src/dcmtkpp/BasicDirectoryCreator.cpp b/src/dcmtkpp/BasicDirectoryCreator.cpp
new file mode 100644
index 0000000..3730b81
--- /dev/null
+++ b/src/dcmtkpp/BasicDirectoryCreator.cpp
@@ -0,0 +1,472 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/BasicDirectoryCreator.h"
+
+#include <algorithm>
+#include <fstream>
+#include <iterator>
+#include <map>
+#include <memory>
+#include <stack>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/Reader.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/uid.h"
+
+namespace dcmtkpp
+{
+
+std::map<std::string, std::vector<BasicDirectoryCreator::RecordKey>> const
+BasicDirectoryCreator
+::default_record_keys = {
+ { "PATIENT", {
+ { registry::PatientName, 2},
+ { registry::PatientID, 1 } } },
+ { "STUDY", {
+ { registry::StudyDate, 1 },
+ { registry::StudyTime, 1 },
+ { registry::StudyDescription, 2 },
+ { registry::StudyInstanceUID, 1 }, // only if (0004,1511) is absent (see Note)
+ { registry::StudyID, 1 },
+ { registry::AccessionNumber, 2 } } },
+ { "SERIES", {
+ { registry::Modality, 1 },
+ { registry::SeriesInstanceUID, 1 },
+ { registry::SeriesNumber, 1 },
+ //registry::IconImageSequence
+ } },
+ { "IMAGE", {
+ { registry::InstanceNumber, 1 },
+ //registry::IconImageSequence
+ } },
+};
+
+BasicDirectoryCreator
+::BasicDirectoryCreator(
+ std::string const & root, std::vector<std::string> const & files,
+ std::map<std::string, std::vector<RecordKey>> const & extra_record_keys,
+ Writer::ItemEncoding item_encoding)
+: root(root), files(files), extra_record_keys(extra_record_keys),
+ item_encoding(item_encoding)
+{
+ // Nothing else.
+}
+
+void
+BasicDirectoryCreator
+::operator()() const
+{
+ auto const record_tree = this->_create_records();
+ auto linearized_tree = this->_linearize_records(record_tree);
+ auto const relative_offsets = this->_get_relative_offsets(
+ linearized_tree.records);
+ this->_write(linearized_tree, relative_offsets);
+}
+
+BasicDirectoryCreator::RecordMap
+BasicDirectoryCreator
+::_create_records() const
+{
+ RecordMap patients;
+
+ for(auto const & file: files)
+ {
+ auto const absolute_path = boost::filesystem::path(this->root)/file;
+ if(!boost::filesystem::is_regular_file(absolute_path))
+ {
+ throw Exception("No such file: "+absolute_path.string());
+ }
+
+ boost::filesystem::ifstream stream(
+ absolute_path, std::ifstream::in | std::ifstream::binary);
+ auto const meta_info_and_data_set = Reader::read_file(stream);
+ auto const & data_set = meta_info_and_data_set.second;
+
+ auto const & patient_id = data_set.as_string(
+ registry::PatientID)[0];
+ auto & patient = this->_find_record(patients, patient_id);
+ if(patient.data_set.empty())
+ {
+ this->_fill_record(data_set, patient, "PATIENT");
+ }
+
+ auto const & study_instance_uid = data_set.as_string(
+ registry::StudyInstanceUID)[0];
+ auto & study = this->_find_record(patient.children, study_instance_uid);
+ if(study.data_set.empty())
+ {
+ this->_fill_record(data_set, study, "STUDY");
+ }
+
+ auto const & series_instance_uid = data_set.as_string(
+ registry::SeriesInstanceUID)[0];
+ auto & series = this->_find_record(study.children, series_instance_uid);
+ if(series.data_set.empty())
+ {
+ this->_fill_record(data_set, series, "SERIES");
+ }
+
+ auto const & sop_instance_uid = data_set.as_string(
+ registry::SOPInstanceUID)[0];
+ auto & image = this->_find_record(series.children, sop_instance_uid);
+ if(image.data_set.empty())
+ {
+ this->_fill_record(data_set, image, "IMAGE");
+
+ Value::Strings file_id;
+ int begin = 0;
+ while(begin != std::string::npos)
+ {
+ auto const end = file.find('/', begin);
+ auto const size =
+ (end==std::string::npos)?std::string::npos:(end-begin);
+ std::string const item = file.substr(begin, size);
+ file_id.push_back(item);
+ if(end == std::string::npos)
+ {
+ begin = end;
+ }
+ else
+ {
+ begin = end+1;
+ }
+ }
+
+ // Required if the Directory Record references a SOP Instance (PS3.3 F.3.2.2)
+ image.data_set.add(registry::ReferencedFileID, file_id);
+ image.data_set.add(
+ registry::ReferencedSOPClassUIDInFile,
+ data_set[registry::SOPClassUID]);
+ image.data_set.add(
+ registry::ReferencedSOPInstanceUIDInFile,
+ data_set[registry::SOPInstanceUID]);
+
+ auto const & meta_info = meta_info_and_data_set.first;
+ image.data_set.add(
+ registry::ReferencedTransferSyntaxUIDInFile,
+ meta_info[registry::TransferSyntaxUID]);
+ }
+ }
+
+ return patients;
+}
+
+BasicDirectoryCreator::Record &
+BasicDirectoryCreator
+::_find_record(RecordMap & records, std::string const & key) const
+{
+ auto iterator = records.find(key);
+ if(iterator == records.end())
+ {
+ iterator = records.insert({key, Record::Pointer(new Record())}).first;
+ }
+ return *(iterator->second);
+}
+
+void
+BasicDirectoryCreator
+::_fill_record(
+ DataSet const & data_set, Record & record, std::string const & type) const
+{
+ record.data_set.add(registry::DirectoryRecordType, {type});
+ record.data_set.add(registry::OffsetOfTheNextDirectoryRecord, {0});
+ record.data_set.add(registry::RecordInUseFlag, {0xffff});
+ record.data_set.add(
+ registry::OffsetOfReferencedLowerLevelDirectoryEntity, {0});
+
+ this->_update_record(data_set, record, this->default_record_keys.at(type));
+
+ auto const extra_record_keys_it = this->extra_record_keys.find(type);
+ if(extra_record_keys_it != this->extra_record_keys.end())
+ {
+ this->_update_record(data_set, record, extra_record_keys_it->second);
+ }
+}
+
+void
+BasicDirectoryCreator
+::_update_record(
+ DataSet const & data_set, Record & record,
+ std::vector<RecordKey> const & keys) const
+{
+ for(auto const & key: keys)
+ {
+ auto const & tag = key.first;
+ auto const & type = key.second;
+
+ if(data_set.has(tag))
+ {
+ record.data_set.add(tag, data_set[tag]);
+ }
+ else
+ {
+ if(type == 1)
+ {
+ throw Exception("Type 1 tag missing from data set: "+std::string(tag));
+ }
+ else if(type == 2)
+ {
+ record.data_set.add(tag);
+ }
+ // Otherwise do nothing.
+ }
+ }
+
+ registry::RecordInUseFlag;
+}
+
+BasicDirectoryCreator::LinearizedTree
+BasicDirectoryCreator
+::_linearize_records(RecordMap const & record_tree) const
+{
+ LinearizedTree linearized_tree;
+
+ // Prime the stack with all top-level records.
+ std::stack<Record::Pointer> stack;
+ for(auto const & record: record_tree)
+ {
+ stack.push(record.second);
+ }
+
+ // Create a depth-first list of records and a sibling map.
+ std::map<Record const *, long> location_map;
+ std::map<Record const *, Record const *> sibling_map;
+ while(!stack.empty())
+ {
+ auto const & record = stack.top();
+ stack.pop();
+
+ linearized_tree.records.push_back(record);
+ location_map[record.get()] = linearized_tree.records.size()-1;
+
+ auto const & children = record->children;
+
+ for(auto child_it=children.begin(); child_it!=children.end(); ++child_it)
+ {
+ auto const & child_record = child_it->second;
+ auto const sibling_it = std::next(child_it);
+ if(sibling_it != children.end())
+ {
+ auto const & sibling = sibling_it->second;
+ sibling_map[child_record.get()] = sibling.get();
+ }
+ }
+
+ // Use reverse iterators to keep the relative order of children during
+ // the depth-first search.
+ std::for_each(
+ children.rbegin(), children.rend(),
+ [&] (RecordMap::value_type const & child) { stack.push(child.second); });
+ }
+
+ // Update the topological information.
+
+ linearized_tree.child.resize(location_map.size());
+ std::fill(linearized_tree.child.begin(), linearized_tree.child.end(), -1);
+
+ linearized_tree.sibling.resize(location_map.size());
+ std::fill(linearized_tree.sibling.begin(), linearized_tree.sibling.end(), -1);
+
+ for(auto const & location_it: location_map)
+ {
+ auto const & record = location_it.first;
+ auto const & location = location_it.second;
+ if(!record->children.empty())
+ {
+ linearized_tree.child[location] =
+ location_map.at(record->children.begin()->second.get());
+ }
+ else
+ {
+ linearized_tree.child[location] = -1;
+ }
+
+ auto const sibling_it = sibling_map.find(record);
+ if(sibling_it != sibling_map.end())
+ {
+ linearized_tree.sibling[location] =
+ location_map.at(sibling_it->second);
+ }
+ else
+ {
+ linearized_tree.sibling[location] = -1;
+ }
+ }
+
+ return linearized_tree;
+}
+
+std::vector<std::streampos>
+BasicDirectoryCreator
+::_get_relative_offsets(std::vector<Record::Pointer> const & records) const
+{
+ // Create an in-memory stream to compute the position of the start of the
+ // records
+ std::ostringstream stream;
+
+ // PS3.10, 8.6: The DICOMDIR File shall use the Explicit VR Little Endian
+ // Transfer Syntax
+ Writer const writer(
+ stream, registry::ExplicitVRLittleEndian, this->item_encoding);
+
+ std::vector<std::streampos> relative_offsets;
+
+ std::streampos offset = 0;
+
+ for(auto const & record: records)
+ {
+ relative_offsets.push_back(stream.tellp()+offset);
+
+ // Item tag: 4 bytes
+ // Item length: 4 bytes
+ offset += 8;
+
+ writer.write_data_set(record->data_set);
+
+ if(this->item_encoding == Writer::ItemEncoding::UndefinedLength)
+ {
+ // Item Delimitation Item tag: 4 bytes
+ // Item Delimitation Item length: 4 bytes
+ offset += 8;
+ }
+ }
+
+ return relative_offsets;
+}
+
+void
+BasicDirectoryCreator
+::_write(
+ LinearizedTree const & linearized_tree,
+ std::vector<std::streampos> const & relative_offsets) const
+{
+ DataSet meta_information;
+ meta_information.add(
+ registry::FileMetaInformationVersion, Value::Binary({0x00, 0x01}));
+ meta_information.add(
+ registry::MediaStorageSOPClassUID,
+ { registry::MediaStorageDirectoryStorage });
+ meta_information.add(
+ registry::MediaStorageSOPInstanceUID, { generate_uid() });
+ meta_information.add(
+ registry::TransferSyntaxUID, { registry::ExplicitVRLittleEndian });
+ meta_information.add(
+ registry::ImplementationClassUID, { implementation_class_uid });
+ meta_information.add(
+ registry::ImplementationVersionName,
+ { "DCMTK++ " DCMTKPP_STRINGIFY(DCMTKPP_MAJOR_VERSION) });
+
+ DataSet basic_directory;
+
+ // File-Set Identification Module (PS3.3 F.3.2.1)
+ basic_directory.add(registry::FileSetID, { "" });
+ // Don't include user comments yet.
+ // registry::FileSetDescriptorFileID;
+ // registry::SpecificCharacterSetOfFileSetDescriptorFile;
+ // Directory Information Module (PS3.3 F.3.2.2)
+ basic_directory.add(
+ registry::OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity,
+ { 0 });
+ basic_directory.add(
+ registry::OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity,
+ { 0 });
+ basic_directory.add(registry::FileSetConsistencyFlag, { 0 });
+
+ std::ostringstream buffer;
+ Writer buffer_writer(
+ buffer, meta_information.as_string(registry::TransferSyntaxUID)[0],
+ this->item_encoding);
+ buffer_writer.write_data_set(meta_information);
+ buffer_writer.write_data_set(basic_directory);
+
+ // Preamble + prefix + data + Directory Record Sequence (tag + VR + reserved + VL)
+ auto const start_of_directory_records = 128+4+buffer.tellp()+4+2+2+4;
+ std::vector<std::streampos> absolute_offsets(relative_offsets.size());
+ std::transform(
+ relative_offsets.begin(), relative_offsets.end(), absolute_offsets.begin(),
+ [&](std::streampos offset) { return offset+start_of_directory_records; });
+
+ basic_directory.as_int(
+ registry::OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity)[0] =
+ *(absolute_offsets.begin());
+
+ int last_top_level = 0;
+ while(linearized_tree.sibling[last_top_level] != -1)
+ {
+ last_top_level = linearized_tree.sibling[last_top_level];
+ }
+ basic_directory.as_int(
+ registry::OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity)[0] =
+ absolute_offsets[last_top_level];
+
+ Value::DataSets record_sequence;
+ for(int record_index=0; record_index<linearized_tree.records.size(); ++record_index)
+ {
+ auto & record = linearized_tree.records[record_index];
+ auto & item = record->data_set;
+
+ auto const sibling = linearized_tree.sibling[record_index];
+ if(sibling != -1)
+ {
+ item.as_int(
+ registry::OffsetOfTheNextDirectoryRecord)[0] =
+ absolute_offsets[sibling];
+ }
+
+ auto const child = linearized_tree.child[record_index];
+ if(child != -1)
+ {
+ item.as_int(
+ registry::OffsetOfReferencedLowerLevelDirectoryEntity)[0] =
+ absolute_offsets[child];
+ }
+
+ record_sequence.push_back(item);
+ }
+ basic_directory.add(registry::DirectoryRecordSequence, record_sequence);
+
+ boost::filesystem::ofstream file(
+ boost::filesystem::path(root)/"DICOMDIR",
+ std::ofstream::out | std::ofstream::binary);
+ Writer file_writer(
+ file, buffer_writer.byte_ordering, buffer_writer.explicit_vr,
+ buffer_writer.item_encoding, buffer_writer.use_group_length);
+
+ // File preamble
+ for(unsigned int i=0; i<128; ++i)
+ {
+ file.put(0);
+ if(!file)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+
+ // DICOM prefix
+ std::string const prefix("DICM");
+ file.write(&prefix[0], prefix.size());
+ if(!file)
+ {
+ throw Exception("Could not write to stream");
+ }
+
+ file_writer.write_data_set(meta_information);
+ file_writer.write_data_set(basic_directory);
+}
+
+}
diff --git a/src/dcmtkpp/BasicDirectoryCreator.h b/src/dcmtkpp/BasicDirectoryCreator.h
new file mode 100644
index 0000000..c441665
--- /dev/null
+++ b/src/dcmtkpp/BasicDirectoryCreator.h
@@ -0,0 +1,113 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _8836a563_24f6_4afb_89ba_377d49ce9f5d
+#define _8836a563_24f6_4afb_89ba_377d49ce9f5d
+
+#include <map>
+#include <memory>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/Writer.h"
+
+namespace dcmtkpp
+{
+
+/// @brief Write a Basic Directory (i.e. DICOMDIR) object to the disk.
+class BasicDirectoryCreator
+{
+public:
+ typedef std::pair<Tag, int> RecordKey;
+
+ /// @brief Default record keys, classified by record type.
+ static std::map<std::string, std::vector<RecordKey>> const default_record_keys;
+
+ /**
+ * @brief Root of the DICOM files and location of the output DICOMDIR file.
+ *
+ * The concatenation of root and each file, as well as of root and
+ * "DICOMDIR" must be a valid path.
+ */
+ std::string root;
+
+ /**
+ * @brief Path to the DICOM files, relative to root.
+ *
+ * The concatenation of root and each file must be a valid path.
+ */
+ std::vector<std::string> files;
+
+ /// @brief User-defined record keys, classified by record type.
+ std::map<std::string, std::vector<RecordKey>> extra_record_keys;
+
+ /// @brief Encoding of sequence items, defaults to Writer::ItemEncoding::ExplicitLength.
+ Writer::ItemEncoding item_encoding;
+
+ BasicDirectoryCreator(
+ std::string const & root="",
+ std::vector<std::string> const & files=std::vector<std::string>(),
+ std::map<std::string, std::vector<RecordKey>> const & extra_record_keys=
+ std::map<std::string, std::vector<RecordKey>>(),
+ Writer::ItemEncoding item_encoding=Writer::ItemEncoding::ExplicitLength
+ );
+
+ void operator()() const;
+
+private:
+ struct Record
+ {
+ typedef std::shared_ptr<Record> Pointer;
+ DataSet data_set;
+ std::map<std::string, Record::Pointer> children;
+ };
+
+ struct LinearizedTree
+ {
+ std::vector<Record::Pointer> records;
+ std::vector<long> sibling;
+ std::vector<long> child;
+ };
+
+ typedef std::map<std::string, Record::Pointer> RecordMap;
+
+ /// @brief Create a hierarchy of records from the files.
+ std::map<std::string, Record::Pointer> _create_records() const;
+
+ /// @brief Find a given record or insert a new one and return it.
+ Record & _find_record(RecordMap & records, std::string const & key) const;
+
+ /// @brief Create a default record.
+ void _fill_record(
+ DataSet const & data_set, Record & record,
+ std::string const & type) const;
+
+ /// @brief Update the record content from a data set.
+ void _update_record(
+ DataSet const & data_set, Record & record,
+ std::vector<RecordKey> const & keys) const;
+
+ /// @brief Return a linearized version of the record hierarchy.
+ LinearizedTree _linearize_records(RecordMap const & record_tree) const;
+
+ /// @brief Compute the offsets of the records relative to the first record.
+ std::vector<std::streampos> _get_relative_offsets(
+ std::vector<Record::Pointer> const & records) const;
+
+ /// @brief Write the DICOMDIR.
+ void _write(
+ LinearizedTree const & linearized_tree,
+ std::vector<std::streampos> const & relative_offsets) const;
+};
+
+}
+
+#endif // _8836a563_24f6_4afb_89ba_377d49ce9f5d
diff --git a/src/dcmtkpp/CStoreRequest.h b/src/dcmtkpp/CStoreRequest.h
index 169e126..e0dacc3 100644
--- a/src/dcmtkpp/CStoreRequest.h
+++ b/src/dcmtkpp/CStoreRequest.h
@@ -11,9 +11,6 @@
#include <string>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/ofstd/oftypes.h>
-
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/registry.h"
#include "dcmtkpp/Request.h"
diff --git a/src/dcmtkpp/DataSet.cpp b/src/dcmtkpp/DataSet.cpp
index 120462e..82f70f8 100644
--- a/src/dcmtkpp/DataSet.cpp
+++ b/src/dcmtkpp/DataSet.cpp
@@ -14,11 +14,6 @@
#include <string>
#include <vector>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdicent.h>
-#include <dcmtk/dcmdata/dcdict.h>
-#include <dcmtk/dcmdata/dctagkey.h>
-
#include "dcmtkpp/Exception.h"
#include "dcmtkpp/Tag.h"
#include "dcmtkpp/VR.h"
diff --git a/src/dcmtkpp/ElementsDictionary.cpp b/src/dcmtkpp/ElementsDictionary.cpp
new file mode 100644
index 0000000..6ee89c5
--- /dev/null
+++ b/src/dcmtkpp/ElementsDictionary.cpp
@@ -0,0 +1,25 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/ElementsDictionary.h"
+
+#include <string>
+
+namespace dcmtkpp
+{
+
+ElementsDictionaryEntry
+::ElementsDictionaryEntry(
+ std::string const & name, std::string const & keyword,
+ std::string const & vr, std::string const & vm)
+: name(name), keyword(keyword), vr(vr), vm(vm)
+{
+ // Nothing else
+}
+
+}
diff --git a/src/dcmtkpp/ElementsDictionary.h b/src/dcmtkpp/ElementsDictionary.h
new file mode 100644
index 0000000..0589f14
--- /dev/null
+++ b/src/dcmtkpp/ElementsDictionary.h
@@ -0,0 +1,39 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _f4b88e07_d515_41be_ad1b_37899ec6451e
+#define _f4b88e07_d515_41be_ad1b_37899ec6451e
+
+#include <map>
+#include <string>
+
+#include <dcmtkpp/Tag.h>
+
+namespace dcmtkpp
+{
+
+/**
+ * @brief Entry in a dictionary of DICOM elements.
+ */
+struct ElementsDictionaryEntry
+{
+ std::string name;
+ std::string keyword;
+ std::string vr;
+ std::string vm;
+
+ ElementsDictionaryEntry(
+ std::string const & name, std::string const & keyword,
+ std::string const & vr, std::string const & vm);
+};
+
+typedef std::map<Tag, ElementsDictionaryEntry> ElementsDictionary;
+
+}
+
+#endif // _f4b88e07_d515_41be_ad1b_37899ec6451e
diff --git a/src/dcmtkpp/Reader.cpp b/src/dcmtkpp/Reader.cpp
new file mode 100644
index 0000000..836c928
--- /dev/null
+++ b/src/dcmtkpp/Reader.cpp
@@ -0,0 +1,601 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/Reader.h"
+
+#include <algorithm>
+#include <cstdint>
+#include <endian.h>
+#include <functional>
+#include <istream>
+#include <sstream>
+#include <string>
+#include <utility>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/Value.h"
+#include "dcmtkpp/VR.h"
+#include "dcmtkpp/VRFinder.h"
+
+#define dcmtkpp_read_binary(type, value, stream, byte_ordering, size) \
+type value; \
+{ \
+ uint##size##_t raw; \
+ stream.read(reinterpret_cast<char*>(&raw), sizeof(raw)); \
+ if(!stream) \
+ { \
+ throw Exception("Could not read from stream"); \
+ } \
+ if(byte_ordering == LITTLE_ENDIAN) \
+ { \
+ raw = le##size##toh(raw); \
+ } \
+ else if(byte_ordering == BIG_ENDIAN) \
+ { \
+ raw = be##size##toh(raw); \
+ } \
+ else \
+ { \
+ throw Exception("Unknown endianness"); \
+ } \
+ value = *reinterpret_cast<type*>(&raw);\
+}
+
+std::string read_string(std::istream & stream, unsigned int size)
+{
+ std::string value(size, '\0');
+ stream.read(&value[0], value.size());
+ if(!stream)
+ {
+ throw dcmtkpp::Exception("Cannot read string");
+ }
+ return value;
+}
+
+namespace dcmtkpp
+{
+
+Reader
+::Reader(
+ std::istream & stream, std::string const & transfer_syntax,
+ bool keep_group_length)
+: stream(stream), transfer_syntax(transfer_syntax),
+ byte_ordering(
+ (transfer_syntax==registry::ExplicitVRBigEndian_Retired)?
+ BIG_ENDIAN:LITTLE_ENDIAN),
+ explicit_vr(transfer_syntax!=registry::ImplicitVRLittleEndian),
+ keep_group_length(keep_group_length)
+{
+ // Nothing else
+}
+
+DataSet
+Reader
+::read_data_set(std::function<bool(Tag const &)> halt_condition) const
+{
+ DataSet data_set;
+
+ bool done = (this->stream.peek() == EOF);
+ while(!done)
+ {
+ Tag const tag = this->read_tag();
+
+ if(halt_condition(tag))
+ {
+ done = true;
+ this->stream.seekg(-4, std::ios::cur);
+ break;
+ }
+ else
+ {
+ Element element = this->read_element(tag, data_set);
+
+ if(this->keep_group_length || tag.element != 0)
+ {
+ data_set.add(tag, element);
+ }
+ }
+
+ done = (this->stream.peek() == EOF);
+ }
+
+ return data_set;
+}
+
+Tag
+Reader
+::read_tag() const
+{
+ dcmtkpp_read_binary(uint16_t, group, this->stream, this->byte_ordering, 16);
+ dcmtkpp_read_binary(uint16_t, element, this->stream, this->byte_ordering, 16);
+ return Tag(group, element);
+}
+
+Element
+Reader
+::read_element(Tag const & tag, DataSet const & data_set) const
+{
+ VR vr;
+ if(this->explicit_vr)
+ {
+ vr = as_vr(read_string(this->stream, 2));
+ }
+ else
+ {
+ VRFinder const vr_finder;
+ vr = vr_finder(tag, data_set, this->transfer_syntax);
+ }
+
+ Value value;
+
+ if(vr == VR::IS || vr == VR::SL || vr == VR::SS ||
+ vr == VR::UL || vr == VR::US)
+ {
+ value = Value(Value::Integers());
+ }
+ else if(vr == VR::DS || vr == VR::FD || vr == VR::FL)
+ {
+ value = Value(Value::Reals());
+ }
+ else if(vr == VR::AE || vr == VR::AS || vr == VR::AT || vr == VR::CS ||
+ vr == VR::DA || vr == VR::DS || vr == VR::DT || vr == VR::LO ||
+ vr == VR::LT || vr == VR::PN || vr == VR::SH || vr == VR::ST ||
+ vr == VR::TM || vr == VR::UC || vr == VR::UI || vr == VR::UR ||
+ vr == VR::UT)
+ {
+ value = Value(Value::Strings());
+ }
+ else if(vr == VR::SQ)
+ {
+ value = Value(Value::DataSets());
+ }
+ else if(vr == VR::OB || vr == VR::OF || vr == VR::OW || vr == VR::UN)
+ {
+ value = Value(Value::Binary());
+ }
+ else
+ {
+ throw Exception("Cannot create value for VR " + as_string(vr));
+ }
+
+ Visitor visitor(
+ this->stream, vr, this->transfer_syntax, this->byte_ordering,
+ this->explicit_vr, this->keep_group_length);
+ apply_visitor(visitor, value);
+
+ return Element(value, vr);
+}
+
+std::pair<DataSet, DataSet>
+Reader
+::read_file(std::istream & stream, bool keep_group_length)
+{
+ // File preamble
+ stream.ignore(128);
+ if(!stream)
+ {
+ throw Exception("Cannot read preamble");
+ }
+
+ // DICOM prefix
+ std::string const prefix = read_string(stream, 4);
+ if(prefix != "DICM")
+ {
+ throw Exception("Unexpected prefix: \""+prefix+"\"");
+ }
+
+ // Read meta information
+ Reader meta_information_reader(
+ stream, registry::ExplicitVRLittleEndian, keep_group_length);
+ auto const meta_information = meta_information_reader.read_data_set(
+ [](Tag const & tag) { return (tag.group != 0x0002); });
+
+ if(!meta_information.has(registry::TransferSyntaxUID))
+ {
+ throw Exception("Missing Transfer Syntax UID");
+ }
+ if(!meta_information.is_string(registry::TransferSyntaxUID))
+ {
+ throw Exception("Transfer Syntax UID is not a string");
+ }
+ if(meta_information.as_string(registry::TransferSyntaxUID).size()<1)
+ {
+ throw Exception("Empty Transfer Syntax UID");
+ }
+
+ Reader data_set_reader(
+ stream, meta_information.as_string(registry::TransferSyntaxUID)[0],
+ keep_group_length);
+ auto const data_set = data_set_reader.read_data_set();
+
+ return std::pair<DataSet, DataSet>(meta_information, data_set);
+}
+
+Reader::Visitor
+::Visitor(
+ std::istream & stream, VR vr, std::string const & transfer_syntax,
+ int byte_ordering, bool explicit_vr, bool keep_group_length)
+: stream(stream), vr(vr), transfer_syntax(transfer_syntax),
+ byte_ordering(byte_ordering), explicit_vr(explicit_vr),
+ keep_group_length(keep_group_length)
+{
+ // Nothing else
+}
+
+Reader::Visitor::result_type
+Reader::Visitor
+::operator()(Value::Integers & value) const
+{
+ auto const vl = this->read_length();
+
+ if(this->vr == VR::IS)
+ {
+ auto const string = read_string(this->stream, vl);
+ if(!string.empty())
+ {
+ auto const strings = this->split_strings(string);
+
+ value.resize(strings.size());
+ std::transform(
+ strings.begin(), strings.end(), value.begin(),
+ [](std::string const & s) { return std::stoll(s); });
+ }
+ }
+ else
+ {
+ uint32_t items = 0;
+ if(this->vr == VR::SL || this->vr == VR::UL)
+ {
+ items = vl/4;
+ }
+ else if(this->vr == VR::AT || this->vr == VR::SS || this->vr == VR::US)
+ {
+ items = vl/2;
+ }
+ else
+ {
+ throw Exception("Cannot read integers from "+as_string(this->vr));
+ }
+
+ value.resize(items);
+ for(unsigned int i=0; i<items; ++i)
+ {
+ if(this->vr == VR::SL)
+ {
+ dcmtkpp_read_binary(
+ int32_t, item, this->stream, this->byte_ordering, 32);
+ value[i] = item;
+ }
+ else if(this->vr == VR::SS)
+ {
+ dcmtkpp_read_binary(
+ int16_t, item, this->stream, this->byte_ordering, 16);
+ value[i] = item;
+ }
+ else if(this->vr == VR::UL)
+ {
+ dcmtkpp_read_binary(
+ uint32_t, item, this->stream, this->byte_ordering, 32);
+ value[i] = item;
+ }
+ else if(this->vr == VR::AT || this->vr == VR::US)
+ {
+ dcmtkpp_read_binary(
+ uint16_t, item, this->stream, this->byte_ordering, 16);
+ value[i] = item;
+ }
+ }
+ }
+}
+
+Reader::Visitor::result_type
+Reader::Visitor
+::operator()(Value::Reals & value) const
+{
+ auto const vl = this->read_length();
+
+ if(this->vr == VR::DS)
+ {
+ auto const string = read_string(this->stream, vl);
+ if(!string.empty())
+ {
+ auto const strings = this->split_strings(string);
+ value.resize(strings.size());
+ std::transform(
+ strings.begin(), strings.end(), value.begin(),
+ [](std::string const & s) { return std::stod(s); });
+ }
+ }
+ else
+ {
+ uint32_t items = 0;
+ if(this->vr == VR::FD)
+ {
+ items = vl/8;
+ }
+ else if(this->vr == VR::FL)
+ {
+ items = vl/4;
+ }
+ else
+ {
+ throw Exception("Cannot read reals from "+as_string(this->vr));
+ }
+
+ value.resize(items);
+ for(unsigned int i=0; i<items; ++i)
+ {
+ if(this->vr == VR::FD)
+ {
+ dcmtkpp_read_binary(
+ double, item, this->stream, this->byte_ordering, 64);
+ value[i] = item;
+ }
+ else if(this->vr == VR::FL)
+ {
+ dcmtkpp_read_binary(
+ float, item, this->stream, this->byte_ordering, 32);
+ value[i] = item;
+ }
+ }
+ }
+}
+
+Reader::Visitor::result_type
+Reader::Visitor
+::operator()(Value::Strings & value) const
+{
+ if(this->vr == VR::AT)
+ {
+ Value::Integers integers;
+ this->operator()(integers);
+
+ if(integers.size()%2 != 0)
+ {
+ throw Exception("Cannot read AT from odd-sized array");
+ }
+ for(unsigned int i=0; i<integers.size(); i+=2)
+ {
+ Tag const tag(integers[i], integers[i+1]);
+ value.push_back(std::string(tag));
+ }
+ }
+ else
+ {
+ auto const vl = this->read_length();
+ auto const string = read_string(this->stream, vl);
+ if(this->vr == VR::LT || this->vr == VR::ST || this->vr == VR::UT)
+ {
+ value = { string };
+ }
+ else
+ {
+ value = this->split_strings(string);
+ }
+ }
+}
+
+Reader::Visitor::result_type
+Reader::Visitor
+::operator()(Value::DataSets & value) const
+{
+ auto const vl = this->read_length();
+
+ if(vl != 0xffffffff)
+ {
+ // Explicit length sequence
+ std::string const data = read_string(this->stream, vl);
+ std::istringstream sequence_stream(data);
+ Reader const sequence_reader(
+ sequence_stream, this->transfer_syntax, this->keep_group_length);
+
+ bool done = (sequence_stream.peek() == EOF);
+ while(!done)
+ {
+ auto const tag = sequence_reader.read_tag();
+ if(tag == registry::Item)
+ {
+ value.push_back(this->read_item(sequence_stream));
+ }
+ else
+ {
+ throw Exception("Expected Item, got: "+std::string(tag));
+ }
+
+ done = (sequence_stream.peek() == EOF);
+ }
+ }
+ else
+ {
+ // Undefined length sequence
+ Reader const sequence_reader(
+ this->stream, this->transfer_syntax, this->keep_group_length);
+
+ bool done = false;
+ while(!done)
+ {
+ auto const tag = sequence_reader.read_tag();
+ if(tag == registry::Item)
+ {
+ value.push_back(this->read_item(this->stream));
+ }
+ else if(tag == registry::SequenceDelimitationItem)
+ {
+ done = true;
+ dcmtkpp_read_binary(
+ uint32_t, unused, this->stream, this->byte_ordering, 32);
+ }
+ else
+ {
+ throw Exception("Expected SequenceDelimitationItem, got: "+std::string(tag));
+ }
+ }
+ }
+}
+
+Reader::Visitor::result_type
+Reader::Visitor
+::operator()(Value::Binary & value) const
+{
+ auto const vl = this->read_length();
+
+ if(this->vr == VR::OB)
+ {
+ value.resize(vl);
+ this->stream.read(reinterpret_cast<char*>(&value[0]), value.size());
+ }
+ else if(this->vr == VR::OF)
+ {
+ if(vl%4 != 0)
+ {
+ throw Exception("Cannot read OF for odd-sized array");
+ }
+
+ value.resize(vl);
+ for(unsigned int i=0; i<value.size(); i+=4)
+ {
+ dcmtkpp_read_binary(
+ float, item, this->stream, this->byte_ordering, 32);
+ *reinterpret_cast<float*>(&value[i]) = item;
+ }
+ }
+ else if(this->vr == VR::OW)
+ {
+ if(vl%2 != 0)
+ {
+ throw Exception("Cannot read OW for odd-sized array");
+ }
+
+ value.resize(vl);
+ for(unsigned int i=0; i<value.size(); i+=2)
+ {
+ dcmtkpp_read_binary(
+ uint16_t, item, this->stream, this->byte_ordering, 16);
+ *reinterpret_cast<uint16_t*>(&value[i]) = item;
+ }
+ }
+ else
+ {
+ throw Exception("Cannot read "+as_string(this->vr)+" as binary");
+ }
+}
+
+uint32_t
+Reader::Visitor
+::read_length() const
+{
+ uint32_t length;
+ if(this->explicit_vr)
+ {
+ if(vr == VR::OB || vr == VR::OW || vr == VR::OF || vr == VR::SQ ||
+ vr == VR::UC || vr == VR::UR || vr == VR::UT || vr == VR::UN)
+ {
+ dcmtkpp_read_binary(
+ uint16_t, reserved, this->stream, this->byte_ordering, 16);
+ dcmtkpp_read_binary(
+ uint32_t, vl, this->stream, this->byte_ordering, 32);
+ length = vl;
+ }
+ else
+ {
+ dcmtkpp_read_binary(
+ uint16_t, vl, this->stream, this->byte_ordering, 16);
+ length = vl;
+ }
+ }
+ else
+ {
+ dcmtkpp_read_binary(
+ uint32_t, vl, this->stream, this->byte_ordering, 32);
+ length = vl;
+ }
+
+ return length;
+}
+
+Value::Strings
+Reader::Visitor
+::split_strings(std::string const & string) const
+{
+ unsigned int const items_count =
+ 1+std::count(string.begin(), string.end(), '\\');
+ std::vector<std::string> value(items_count);
+
+ std::string::size_type begin = 0;
+ unsigned int index=0;
+ while(begin != string.size())
+ {
+ auto const end = string.find('\\', begin);
+ auto const item = string.substr(
+ begin, (end==std::string::npos)?end:(end-begin));
+
+ value[index] = item;
+ ++index;
+
+ begin = (end==std::string::npos)?string.size():(end+1);
+ }
+
+ if(!value.empty())
+ {
+ // Remove padding
+ static std::string const padding={ '\0', ' ' };
+ auto & last_item = value[value.size()-1];
+ auto const last_char = last_item.find_last_not_of(padding);
+ if(last_char != std::string::npos)
+ {
+ last_item = last_item.substr(0, last_char+1);
+ }
+ }
+
+ return value;
+}
+
+DataSet
+Reader::Visitor
+::read_item(std::istream & specific_stream) const
+{
+ dcmtkpp_read_binary(
+ uint32_t, item_length, specific_stream, this->byte_ordering, 32);
+
+ DataSet item;
+ if(item_length != 0xffffffff)
+ {
+ // Explicit length item
+ std::string const data = read_string(specific_stream, item_length);
+ std::istringstream item_stream(data);
+ Reader const item_reader(
+ item_stream, this->transfer_syntax, this->keep_group_length);
+ item = item_reader.read_data_set();
+ }
+ else
+ {
+ // Undefined length item
+ Reader const item_reader(
+ specific_stream, this->transfer_syntax, this->keep_group_length);
+ item = item_reader.read_data_set(
+ [](Tag const & tag) { return tag == registry::ItemDelimitationItem; });
+
+ auto const tag = item_reader.read_tag();
+ if(tag != registry::ItemDelimitationItem)
+ {
+ throw Exception("Unexpected tag: "+std::string(tag));
+ }
+ dcmtkpp_read_binary(
+ uint32_t, unused, specific_stream, this->byte_ordering, 32);
+ }
+
+ return item;
+}
+
+}
+
+#undef dcmtkpp_read_binary
diff --git a/src/dcmtkpp/Reader.h b/src/dcmtkpp/Reader.h
new file mode 100644
index 0000000..7a47275
--- /dev/null
+++ b/src/dcmtkpp/Reader.h
@@ -0,0 +1,105 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _aa2965aa_e891_4713_9c90_e8eacd2944ea
+#define _aa2965aa_e891_4713_9c90_e8eacd2944ea
+
+#include <functional>
+#include <istream>
+#include <string>
+#include <utility>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/Value.h"
+#include "dcmtkpp/VR.h"
+
+namespace dcmtkpp
+{
+
+/// @brief Read DICOM objects from a stream.
+class Reader
+{
+public:
+ /// @brief Input stream.
+ std::istream & stream;
+
+ /// @brief Transfer syntax used to read the file.
+ std::string transfer_syntax;
+
+ /// @brief Endianness (LITTLE_ENDIAN or BIG_ENDIAN).
+ int byte_ordering;
+
+ /// @brief Explicit-ness of the Value Representations.
+ bool explicit_vr;
+
+ /// @brief Flag to keep or discard group length tags.
+ bool keep_group_length;
+
+ /**
+ * @brief Build a reader, derive byte ordering and explicit-ness of VR
+ * from transfer syntax.
+ */
+ Reader(
+ std::istream & stream, std::string const & transfer_syntax,
+ bool keep_group_length=false);
+
+ /// @brief Read a data set.
+ DataSet read_data_set(
+ std::function<bool(Tag const &)> halt_condition = [](Tag const &) { return false;}) const;
+
+ /// @brief Read a tag.
+ Tag read_tag() const;
+
+ /**
+ * @brief Read an element (VR and value), try to guess the VR from the tag,
+ * partially read data set, and transfer syntax for implicit VR transfer
+ * syntaxes.
+ */
+ Element read_element(
+ Tag const & tag=Tag(0xffff,0xffff),
+ DataSet const & data_set=DataSet()) const;
+
+ static std::pair<DataSet, DataSet> read_file(
+ std::istream & stream,
+ bool keep_group_length=false);
+
+private:
+ struct Visitor
+ {
+ typedef void result_type;
+
+ std::istream & stream;
+ VR vr;
+
+ std::string transfer_syntax;
+ int byte_ordering;
+ bool explicit_vr;
+ bool keep_group_length;
+
+ Visitor(
+ std::istream & stream, VR vr, std::string const & transfer_syntax,
+ int byte_ordering, bool explicit_vr, bool keep_group_length);
+
+ result_type operator()(Value::Integers & value) const;
+ result_type operator()(Value::Reals & value) const;
+ result_type operator()(Value::Strings & value) const;
+ result_type operator()(Value::DataSets & value) const;
+ result_type operator()(Value::Binary & value) const;
+
+ uint32_t read_length() const;
+
+ Value::Strings split_strings(std::string const & string) const;
+ DataSet read_item(std::istream & specific_stream) const;
+ };
+};
+
+}
+
+#endif // _aa2965aa_e891_4713_9c90_e8eacd2944ea
diff --git a/src/dcmtkpp/SCU.cpp b/src/dcmtkpp/SCU.cpp
index f455768..9110c2e 100644
--- a/src/dcmtkpp/SCU.cpp
+++ b/src/dcmtkpp/SCU.cpp
@@ -16,6 +16,7 @@
#include "dcmtkpp/CEchoRequest.h"
#include "dcmtkpp/CEchoResponse.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
namespace dcmtkpp
{
@@ -53,7 +54,7 @@ SCU
{
Uint16 const message_id = this->_association->get_association()->nextMsgID++;
- CEchoRequest const request(message_id, UID_VerificationSOPClass);
+ CEchoRequest const request(message_id, registry::VerificationSOPClass);
this->_send(request, request.get_affected_sop_class_uid());
CEchoResponse const response = this->_receive<CEchoResponse>();
diff --git a/src/dcmtkpp/ServiceRole.cpp b/src/dcmtkpp/ServiceRole.cpp
index 41cc102..d2a076b 100644
--- a/src/dcmtkpp/ServiceRole.cpp
+++ b/src/dcmtkpp/ServiceRole.cpp
@@ -11,20 +11,14 @@
#include <unistd.h>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdatset.h>
-#include <dcmtk/dcmdata/dcistrmb.h>
-#include <dcmtk/dcmdata/dcostrmb.h>
-#include <dcmtk/dcmdata/dctagkey.h>
-#include <dcmtk/dcmdata/dcwcache.h>
-#include <dcmtk/dcmdata/dcxfer.h>
#include <dcmtk/dcmnet/assoc.h>
#include <dcmtk/dcmnet/dimse.h>
-#include "dcmtkpp/conversion.h"
#include "dcmtkpp/DataSet.h"
-#include "dcmtkpp/ElementAccessor.h"
#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/Reader.h"
#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Writer.h"
namespace dcmtkpp
{
@@ -122,27 +116,19 @@ ServiceRole
{
T_ASC_PresentationContextID const presentation_context =
this->_find_presentation_context(abstract_syntax);
-
- DcmDataset * command_set = dynamic_cast<DcmDataset*>(
- convert(message.get_command_set()));
this->_send(
- command_set,
- presentation_context, EXS_LittleEndianImplicit,
+ message.get_command_set(),
+ presentation_context, registry::ImplicitVRLittleEndian,
DUL_COMMANDPDV, NULL, NULL);
if(message.has_data_set() && !message.get_data_set().empty())
{
- DcmDataset * data_set = dynamic_cast<DcmDataset*>(
- convert(message.get_data_set()));
// FIXME: transfer syntax
this->_send(
- data_set,
- presentation_context, EXS_LittleEndianImplicit,
+ message.get_data_set(),
+ presentation_context, registry::ImplicitVRLittleEndian,
DUL_DATASETPDV, callback, callback_data);
- delete data_set;
}
-
- delete command_set;
}
Message
@@ -150,26 +136,24 @@ ServiceRole
::_receive(ProgressCallback callback, void* callback_data) const
{
// Receive command set
- std::pair<DcmDataset, DUL_DATAPDV> const command =
- this->_receive_dataset(callback, callback_data);
+ auto const command = this->_receive_dataset(callback, callback_data);
if(command.second != DUL_COMMANDPDV)
{
throw Exception("Did not receive command set");
}
- DataSet const command_set = convert(const_cast<DcmDataset*>(&command.first));
+ DataSet const & command_set = command.first;
// Receive potential data set
DataSet data_set;
bool has_data_set;
if(command_set.as_int(registry::CommandDataSetType, 0) != DIMSE_DATASET_NULL)
{
- std::pair<DcmDataset, DUL_DATAPDV> const data =
- this->_receive_dataset(callback, callback_data);
+ auto const data = this->_receive_dataset(callback, callback_data);
if(data.second != DUL_DATASETPDV)
{
throw Exception("Did not receive data set");
}
- data_set = convert(const_cast<DcmDataset*>(&data.first));
+ data_set = data.first;
has_data_set = true;
}
else
@@ -180,11 +164,11 @@ ServiceRole
return has_data_set?Message(command_set, data_set):Message(command_set);
}
-OFCondition
+void
ServiceRole
::_send(
- DcmDataset *obj, T_ASC_PresentationContextID presID,
- E_TransferSyntax xferSyntax, DUL_DATAPDV pdvType,
+ DataSet const & obj, T_ASC_PresentationContextID presID,
+ std::string const & transfer_syntax, DUL_DATAPDV pdvType,
ProgressCallback callback, void *callbackContext) const
/*
* This function sends all information which is included in a DcmDataset object over
@@ -201,8 +185,13 @@ ServiceRole
* callbackContext - []
*/
{
- OFBool written = OFFalse;
- DcmWriteCache wcache;
+ bool const use_group_length = (pdvType == DUL_COMMANDPDV);
+ std::stringstream stream;
+ Writer writer(
+ stream, transfer_syntax, Writer::ItemEncoding::ExplicitLength,
+ use_group_length);
+ writer.write_data_set(obj);
+ std::string const data = stream.str();
/* we may wish to restrict output PDU size */
/* max PDV size is max PDU size minus 12 bytes PDU/PDV header */
@@ -212,153 +201,57 @@ ServiceRole
bufLen = dcmMaxOutgoingPDUSize.get() - 12;
}
- /* on the basis of the association's buffer, create a buffer variable that we can write to */
- DcmOutputBufferStream outBuf(
- this->_association->get_association()->sendPDVBuffer, bufLen);
-
- /* prepare all elements in the DcmDataset variable for transfer */
- obj->transferInit();
-
- /* groupLength_encoding specifies what will be done concerning
- * group length tags
- */
- E_GrpLenEncoding groupLength_encoding = g_dimse_send_groupLength_encoding;
- /* Mind that commands must always include group length (0000,0000) and */
- /* that commands do not contain sequences, yet */
- if (pdvType == DUL_COMMANDPDV)
- {
- groupLength_encoding = EGL_withGL;
- }
-
- /* sequenceType_encoding specifies how sequences will be handled */
- E_EncodingType const sequenceType_encoding = g_dimse_send_sequenceType_encoding;
-
- /* start a loop: in each iteration information from the DcmDataset object (i.e. infor- */
- /* mation which shall be sent) will be set in the buffer (we need more than one itera- */
- /* tion if there is more information than the buffer can take at a time), a PDV object */
- /* with the buffer's data will be created and assigned to a list, and finally the */
- /* list's information will be sent over the network to the other DICOM application. */
- OFBool last = OFFalse;
- Uint32 bytesTransmitted = 0;
- while (!last)
+ bool done = false;
+ unsigned long bytesTransmitted=0;
+ while(!done)
{
- /* write data values which are contained in the DcmDataSet variable to the above created */
- /* buffer. Mind the transfer syntax, the sequence type encoding, the group length encoding */
- /* and remove all padding data elements. Depending on whether all information has been written */
- /* to the buffer, update the variable that determines the end of the while loop. (Note that */
- /* DcmDataset stores information about what of its content has already been sent to the buffer.) */
- if (! written)
- {
- OFCondition const econd =
- obj->write(outBuf, xferSyntax, sequenceType_encoding, &wcache,
- groupLength_encoding, EPD_withoutPadding);
- if (econd == EC_Normal) /* all contents have been written to the buffer */
- {
- written = OFTrue;
- }
- else if (econd == EC_StreamNotifyClient) /* no more space in buffer, _not_ all elements have been written to it */
- {
- // nothing to do
- }
- else /* some error has occurred */
- {
- //DCMNET_WARN(DIMSE_warn_str(assoc) << "writeBlock Failed (" << econd.text() << ")");
- return DIMSE_SENDFAILED;
- }
- }
-
- if (written)
+ std::string const buffer = data.substr(bytesTransmitted, bufLen);
+
+ /* count the bytes and the amount of PDVs which were transmitted */
+ bytesTransmitted += buffer.size();
+ done = (bytesTransmitted>=data.size());
+
+ /* initialize a DUL_PDV variable with the buffer's data */
+ DUL_PDV pdv;
+ pdv.fragmentLength = buffer.size();
+ pdv.presentationContextID = presID;
+ pdv.pdvType = pdvType;
+ pdv.lastPDV = done;
+ pdv.data = reinterpret_cast<void*>(const_cast<char*>(&buffer[0]));
+
+ /* append this PDV to a PDV list structure, set the counter variable */
+ /* to 1 since this structure contains only 1 element */
+ DUL_PDVLIST pdvList;
+ pdvList.count = 1;
+ pdvList.pdv = &pdv;
+
+ /* send information over the network to the other DICOM application */
+ OFCondition const dulCond = DUL_WritePDVs(
+ &this->_association->get_association()->DULassociation, &pdvList);
+ if (dulCond.bad())
{
- outBuf.flush(); // flush stream including embedded compression codec.
+ throw Exception(
+ makeDcmnetSubCondition(
+ DIMSEC_SENDFAILED, OF_error, "DIMSE Failed to send message",
+ dulCond));
}
- /* get buffer and its length, assign to local variable */
- void *fullBuf = NULL;
- offile_off_t rtnLength;
- outBuf.flushBuffer(fullBuf, rtnLength);
-
- last = written && outBuf.isFlushed();
-
- /* if the buffer is not empty, do something with its contents */
- if (rtnLength > 0)
+ /* execute callback function to indicate progress */
+ if(callback)
{
- /* rtnLength could be odd */
- if (rtnLength & 1)
- {
- /* this should only happen if we use a stream compressed transfer
- * syntax and then only at the very end of the stream. Everything
- * else is a failure.
- */
- if (!last)
- {
- return makeDcmnetCondition(
- DIMSEC_SENDFAILED, OF_error,
- "DIMSE Failed to send message: odd block length encountered");
- }
-
- /* since the block size is always even, block size must be larger
- * than rtnLength, so we can safely add a pad byte (and hope that
- * the pad byte will not confuse the receiver's decompressor).
- */
- unsigned char *cbuf = (unsigned char *)fullBuf;
- cbuf[rtnLength++] = 0; // add zero pad byte
- }
-
- /* initialize a DUL_PDV variable with the buffer's data */
- DUL_PDV pdv;
- pdv.fragmentLength = OFstatic_cast(unsigned long, rtnLength);
- pdv.presentationContextID = presID;
- pdv.pdvType = pdvType;
- pdv.lastPDV = last;
- pdv.data = fullBuf;
-
- /* append this PDV to a PDV list structure, set the counter variable */
- /* to 1 since this structure contains only 1 element */
- DUL_PDVLIST pdvList;
- pdvList.count = 1;
- pdvList.pdv = &pdv;
-
- /* send information over the network to the other DICOM application */
- OFCondition const dulCond = DUL_WritePDVs(
- &this->_association->get_association()->DULassociation,
- &pdvList);
- if (dulCond.bad())
- {
- return makeDcmnetSubCondition(DIMSEC_SENDFAILED, OF_error, "DIMSE Failed to send message", dulCond);
- }
-
- /* count the bytes and the amount of PDVs which were transmitted */
- bytesTransmitted += OFstatic_cast(Uint32, rtnLength);
-
- /* execute callback function to indicate progress */
- if(callback)
- {
- callback(callbackContext, bytesTransmitted);
- }
+ callback(callbackContext, bytesTransmitted);
}
}
-
- /* indicate the end of the transfer */
- obj->transferEnd();
-
- return EC_Normal;
}
-std::pair<DcmDataset, DUL_DATAPDV>
+std::pair<DataSet, DUL_DATAPDV>
ServiceRole::_receive_dataset(
ProgressCallback callback, void *callbackContext) const
{
- DcmDataset dataset;
- dataset.transferInit();
- DcmInputBufferStream buffer;
- if(!buffer.good())
- {
- throw Exception(
- makeDcmnetCondition(
- DIMSEC_PARSEFAILED, OF_error,
- "DIMSE: receiveCommand: Failed to initialize cmdBuf"));
- }
+ DataSet data_set;
+
+ std::stringstream stream;
/* start a loop in which we want to read a DIMSE command from the incoming socket stream. */
/* Since the command could stretch over more than one PDU, the use of a loop is mandatory. */
@@ -368,9 +261,6 @@ ServiceRole::_receive_dataset(
T_ASC_PresentationContextID pid = 0;
while(!last)
{
- /* make the stream remember any unread bytes */
- buffer.releaseBuffer();
-
DUL_PDV const pdv = this->_read_next_pdv();
/* if this is the first loop iteration, get the presentation context ID
@@ -384,13 +274,10 @@ ServiceRole::_receive_dataset(
}
else if (pdv.presentationContextID != pid)
{
- char buf1[256];
- sprintf(buf1, "DIMSE: Different PresIDs inside Command Set: %d != %d", pid, pdv.presentationContextID);
- OFCondition subCond = makeDcmnetCondition(DIMSEC_INVALIDPRESENTATIONCONTEXTID, OF_error, buf1);
- throw Exception(
- makeDcmnetSubCondition(
- DIMSEC_RECEIVEFAILED, OF_error,
- "DIMSE Failed to receive message", subCond));
+ std::ostringstream message;
+ message << "Different presentation IDs inside Command Set: "
+ << pid << " != " << pdv.presentationContextID;
+ throw Exception(message.str());
}
/* check if the fragment length of the current PDV is odd. This should */
@@ -399,38 +286,26 @@ ServiceRole::_receive_dataset(
if ((pdv.fragmentLength % 2) != 0)
{
/* This should NEVER happen. See Part 7, Annex F. */
- char buf2[256];
- sprintf(buf2, "DIMSE: Odd Fragment Length: %lu", pdv.fragmentLength);
- throw Exception(
- makeDcmnetCondition(DIMSEC_RECEIVEFAILED, OF_error, buf2));
+ std::ostringstream message;
+ message << "Odd fragment length: " << pdv.fragmentLength;
+ throw Exception(message.str());
}
/* if information is contained the PDVs fragment, we want to insert
* this information into the buffer
*/
- if (pdv.fragmentLength > 0)
- {
- buffer.setBuffer(pdv.data, pdv.fragmentLength);
- }
-
- /* if this fragment contains the last fragment of the DIMSE command,
- * set the end of the stream
- */
- if (pdv.lastPDV)
- {
- buffer.setEos();
- }
+ stream.write(reinterpret_cast<char *>(pdv.data), pdv.fragmentLength);
- E_TransferSyntax transfer_syntax;
- E_GrpLenEncoding group_length_encoding;
+ std::string transfer_syntax;
+ bool keep_group_length;
if(pdv.pdvType == DUL_COMMANDPDV)
{
/* DIMSE commands are always specified in the little endian implicit
* transfer syntax. Additionally, we want to remove group length
* tags.
*/
- transfer_syntax = EXS_LittleEndianImplicit;
- group_length_encoding = EGL_withoutGL;
+ transfer_syntax = registry::ImplicitVRLittleEndian;
+ keep_group_length = false;
}
else if(pdv.pdvType == DUL_DATASETPDV)
{
@@ -441,87 +316,20 @@ ServiceRole::_receive_dataset(
this->_association->get_association()->params, pid, &pc);
if (cond.bad())
{
- throw Exception(makeDcmnetSubCondition(
- DIMSEC_RECEIVEFAILED, OF_error,
- "DIMSE Failed to receive message", cond));
+ throw Exception("No valid presentation context");
}
/* determine the transfer syntax which is specified in the presentation context */
- std::string const ts = pc.acceptedTransferSyntax;
-
- /* create a DcmXfer object on the basis of the transfer syntax which was determined above */
- DcmXfer xfer(ts.c_str());
-
- /* check if the transfer syntax is supported by dcmtk */
- transfer_syntax = xfer.getXfer();
- switch (transfer_syntax)
- {
- case EXS_LittleEndianImplicit:
- case EXS_LittleEndianExplicit:
- case EXS_BigEndianExplicit:
- case EXS_JPEGProcess1TransferSyntax:
- case EXS_JPEGProcess2_4TransferSyntax:
- case EXS_JPEGProcess3_5TransferSyntax:
- case EXS_JPEGProcess6_8TransferSyntax:
- case EXS_JPEGProcess7_9TransferSyntax:
- case EXS_JPEGProcess10_12TransferSyntax:
- case EXS_JPEGProcess11_13TransferSyntax:
- case EXS_JPEGProcess14TransferSyntax:
- case EXS_JPEGProcess15TransferSyntax:
- case EXS_JPEGProcess16_18TransferSyntax:
- case EXS_JPEGProcess17_19TransferSyntax:
- case EXS_JPEGProcess20_22TransferSyntax:
- case EXS_JPEGProcess21_23TransferSyntax:
- case EXS_JPEGProcess24_26TransferSyntax:
- case EXS_JPEGProcess25_27TransferSyntax:
- case EXS_JPEGProcess28TransferSyntax:
- case EXS_JPEGProcess29TransferSyntax:
- case EXS_JPEGProcess14SV1TransferSyntax:
- case EXS_RLELossless:
- case EXS_JPEGLSLossless:
- case EXS_JPEGLSLossy:
- case EXS_JPEG2000LosslessOnly:
- case EXS_JPEG2000:
- case EXS_MPEG2MainProfileAtMainLevel:
- case EXS_MPEG2MainProfileAtHighLevel:
- case EXS_JPEG2000MulticomponentLosslessOnly:
- case EXS_JPEG2000Multicomponent:
- #ifdef WITH_ZLIB
- case EXS_DeflatedLittleEndianExplicit:
- #endif
- /* OK, these can be supported */
- break;
- default:
- /* all other transfer syntaxes are not supported; hence, set the error indicator variable */
- {
- char buf[256];
- sprintf(
- buf, "DIMSE Unsupported transfer syntax: %s",
- ts.c_str());
- OFCondition subCond = makeDcmnetCondition(
- DIMSEC_UNSUPPORTEDTRANSFERSYNTAX, OF_error, buf);
- throw Exception(makeDcmnetSubCondition(
- DIMSEC_RECEIVEFAILED, OF_error,
- "DIMSE Failed to receive message", subCond));
- }
- break;
- }
- group_length_encoding = EGL_noChange;
+ transfer_syntax = pc.acceptedTransferSyntax;
+ keep_group_length = true;
}
else
{
throw Exception("Unkown PDV type");
}
- OFCondition const econd = dataset.read(
- buffer, transfer_syntax, group_length_encoding);
- if (econd != EC_Normal && econd != EC_StreamNotifyClient)
- {
- throw Exception(
- makeDcmnetSubCondition(
- DIMSEC_RECEIVEFAILED, OF_error,
- "DIMSE: receiveCommand: cmdSet->read() Failed", econd));
- }
+ Reader reader(stream, transfer_syntax, keep_group_length);
+ data_set = reader.read_data_set();
/* update the following variables which will be evaluated at the beginning of each loop iteration. */
last = pdv.lastPDV;
@@ -533,9 +341,7 @@ ServiceRole::_receive_dataset(
pdvCount++;
}
- dataset.transferEnd();
-
- return std::make_pair(dataset, type);
+ return std::make_pair(data_set, type);
}
DUL_PDV
diff --git a/src/dcmtkpp/ServiceRole.h b/src/dcmtkpp/ServiceRole.h
index ec4fc93..0c9b25b 100644
--- a/src/dcmtkpp/ServiceRole.h
+++ b/src/dcmtkpp/ServiceRole.h
@@ -13,7 +13,6 @@
#include <utility>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdatset.h>
#include <dcmtk/dcmnet/assoc.h>
#include "dcmtkpp/Association.h"
@@ -94,12 +93,12 @@ protected:
TMessage _receive(ProgressCallback callback=NULL, void* callback_data=NULL) const;
private:
- OFCondition _send(
- DcmDataset *obj, T_ASC_PresentationContextID presID,
- E_TransferSyntax xferSyntax, DUL_DATAPDV pdvType,
+ void _send(
+ DataSet const & obj, T_ASC_PresentationContextID presID,
+ std::string const & transfer_syntax, DUL_DATAPDV pdvType,
ProgressCallback callback, void *callbackContext) const;
- std::pair<DcmDataset, DUL_DATAPDV> _receive_dataset(
+ std::pair<DataSet, DUL_DATAPDV> _receive_dataset(
ProgressCallback callback, void *callbackContext) const;
DUL_PDV _read_next_pdv() const;
diff --git a/src/dcmtkpp/ServiceRole.txx b/src/dcmtkpp/ServiceRole.txx
index 8e8ccca..32dc73f 100644
--- a/src/dcmtkpp/ServiceRole.txx
+++ b/src/dcmtkpp/ServiceRole.txx
@@ -15,7 +15,6 @@
#include <utility>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdatset.h>
#include <dcmtk/dcmnet/assoc.h>
#include "dcmtkpp/Association.h"
diff --git a/src/dcmtkpp/StoreSCU.cpp b/src/dcmtkpp/StoreSCU.cpp
index 3df3abe..b086831 100644
--- a/src/dcmtkpp/StoreSCU.cpp
+++ b/src/dcmtkpp/StoreSCU.cpp
@@ -13,9 +13,6 @@
#include <string>
#include <vector>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
-
#include "dcmtkpp/CStoreRequest.h"
#include "dcmtkpp/CStoreResponse.h"
#include "dcmtkpp/Exception.h"
@@ -36,122 +33,15 @@ StoreSCU
{
auto const & sop_class_uid = dataset.as_string(registry::SOPClassUID, 0);
- // From dcuid.h
- std::vector<std::string> const storage = {
- UID_RETIRED_StoredPrintStorage,
- UID_RETIRED_HardcopyGrayscaleImageStorage,
- UID_RETIRED_HardcopyColorImageStorage,
- UID_ComputedRadiographyImageStorage,
- UID_DigitalXRayImageStorageForPresentation,
- UID_DigitalXRayImageStorageForProcessing,
- UID_DigitalMammographyXRayImageStorageForPresentation,
- UID_DigitalMammographyXRayImageStorageForProcessing,
- UID_DigitalIntraOralXRayImageStorageForPresentation,
- UID_DigitalIntraOralXRayImageStorageForProcessing,
- UID_CTImageStorage,
- UID_EnhancedCTImageStorage,
- UID_RETIRED_UltrasoundMultiframeImageStorage,
- UID_UltrasoundMultiframeImageStorage,
- UID_MRImageStorage,
- UID_EnhancedMRImageStorage,
- UID_MRSpectroscopyStorage,
- UID_EnhancedMRColorImageStorage,
- UID_RETIRED_NuclearMedicineImageStorage,
- UID_RETIRED_UltrasoundImageStorage,
- UID_UltrasoundImageStorage,
- UID_EnhancedUSVolumeStorage,
- UID_SecondaryCaptureImageStorage,
- UID_MultiframeSingleBitSecondaryCaptureImageStorage,
- UID_MultiframeGrayscaleByteSecondaryCaptureImageStorage,
- UID_MultiframeGrayscaleWordSecondaryCaptureImageStorage,
- UID_MultiframeTrueColorSecondaryCaptureImageStorage,
- UID_RETIRED_StandaloneOverlayStorage,
- UID_RETIRED_StandaloneCurveStorage,
- UID_TwelveLeadECGWaveformStorage,
- UID_GeneralECGWaveformStorage,
- UID_AmbulatoryECGWaveformStorage,
- UID_HemodynamicWaveformStorage,
- UID_CardiacElectrophysiologyWaveformStorage,
- UID_BasicVoiceAudioWaveformStorage,
- UID_GeneralAudioWaveformStorage,
- UID_ArterialPulseWaveformStorage,
- UID_RespiratoryWaveformStorage,
- UID_RETIRED_StandaloneModalityLUTStorage,
- UID_RETIRED_StandaloneVOILUTStorage,
- UID_GrayscaleSoftcopyPresentationStateStorage,
- UID_ColorSoftcopyPresentationStateStorage,
- UID_PseudoColorSoftcopyPresentationStateStorage,
- UID_BlendingSoftcopyPresentationStateStorage,
- UID_XAXRFGrayscaleSoftcopyPresentationStateStorage,
- UID_XRayAngiographicImageStorage,
- UID_EnhancedXAImageStorage,
- UID_XRayRadiofluoroscopicImageStorage,
- UID_EnhancedXRFImageStorage,
- UID_XRay3DAngiographicImageStorage,
- UID_XRay3DCraniofacialImageStorage,
- UID_BreastTomosynthesisImageStorage,
- UID_RETIRED_XRayAngiographicBiPlaneImageStorage,
- UID_NuclearMedicineImageStorage,
- UID_RawDataStorage,
- UID_SpatialRegistrationStorage,
- UID_SpatialFiducialsStorage,
- UID_DeformableSpatialRegistrationStorage,
- UID_SegmentationStorage,
- UID_SurfaceSegmentationStorage,
- UID_RealWorldValueMappingStorage,
- UID_RETIRED_VLImageStorage,
- UID_VLEndoscopicImageStorage,
- UID_VideoEndoscopicImageStorage,
- UID_VLMicroscopicImageStorage,
- UID_VideoMicroscopicImageStorage,
- UID_VLSlideCoordinatesMicroscopicImageStorage,
- UID_VLPhotographicImageStorage,
- UID_VideoPhotographicImageStorage,
- UID_OphthalmicPhotography8BitImageStorage,
- UID_OphthalmicPhotography16BitImageStorage,
- UID_StereometricRelationshipStorage,
- UID_OphthalmicTomographyImageStorage,
- UID_VLWholeSlideMicroscopyImageStorage,
- UID_RETIRED_VLMultiFrameImageStorage,
- UID_LensometryMeasurementsStorage,
- UID_AutorefractionMeasurementsStorage,
- UID_KeratometryMeasurementsStorage,
- UID_SubjectiveRefractionMeasurementsStorage,
- UID_VisualAcuityMeasurementsStorage,
- UID_SpectaclePrescriptionReportStorage,
- UID_OphthalmicAxialMeasurementsStorage,
- UID_IntraocularLensCalculationsStorage,
- UID_MacularGridThicknessAndVolumeReportStorage,
- UID_OphthalmicVisualFieldStaticPerimetryMeasurementsStorage,
- UID_BasicTextSRStorage,
- UID_EnhancedSRStorage,
- UID_ComprehensiveSRStorage,
- UID_ProcedureLogStorage,
- UID_MammographyCADSRStorage,
- UID_KeyObjectSelectionDocumentStorage,
- UID_ChestCADSRStorage,
- UID_XRayRadiationDoseSRStorage,
- UID_ColonCADSRStorage,
- UID_ImplantationPlanSRDocumentStorage,
- UID_EncapsulatedPDFStorage,
- UID_EncapsulatedCDAStorage,
- UID_PositronEmissionTomographyImageStorage,
- UID_RETIRED_StandalonePETCurveStorage,
- UID_EnhancedPETImageStorage,
- UID_BasicStructuredDisplayStorage,
- UID_RTImageStorage,
- UID_RTDoseStorage,
- UID_RTStructureSetStorage,
- UID_RTBeamsTreatmentRecordStorage,
- UID_RTPlanStorage,
- UID_RTBrachyTreatmentRecordStorage,
- UID_RTTreatmentSummaryRecordStorage,
- UID_RTIonPlanStorage,
- UID_RTIonBeamsTreatmentRecordStorage,
- UID_GenericImplantTemplateStorage,
- UID_ImplantAssemblyTemplateStorage,
- UID_ImplantTemplateGroupStorage
- };
+ std::vector<std::string> storage;
+ for(auto const & uids_it: registry::uids_dictionary)
+ {
+ auto const & name = uids_it.second.name;
+ if(name.find("Storage") != std::string::npos)
+ {
+ storage.push_back(uids_it.first);
+ }
+ }
if(std::find(storage.begin(), storage.end(), sop_class_uid) != storage.end())
{
diff --git a/src/dcmtkpp/Tag.cpp b/src/dcmtkpp/Tag.cpp
index c142a52..8211fb5 100644
--- a/src/dcmtkpp/Tag.cpp
+++ b/src/dcmtkpp/Tag.cpp
@@ -13,12 +13,8 @@
#include <sstream>
#include <string>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdicent.h>
-#include <dcmtk/dcmdata/dcdict.h>
-#include <dcmtk/dcmdata/dctagkey.h>
-
#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
namespace dcmtkpp
{
@@ -60,14 +56,13 @@ std::string
Tag
::get_name() const
{
- DcmTagKey const tag(this->group, this->element);
- DcmDictEntry const * entry = dcmDataDict.rdlock().findEntry(tag, NULL);
- if(entry == NULL)
+ auto const dictionary_it = registry::public_dictionary.find(*this);
+ if(dictionary_it == registry::public_dictionary.end())
{
- throw Exception("No such element");
+ throw Exception("No such element: "+std::string(*this));
}
- return entry->getTagName();
+ return dictionary_it->second.keyword;
}
bool
@@ -120,8 +115,17 @@ void
Tag
::_from_string(std::string const & string)
{
- DcmDictEntry const * entry = dcmDataDict.rdlock().findEntry(string.c_str());
- if(entry == NULL)
+ ElementsDictionary::const_iterator it = registry::public_dictionary.begin();
+ while(it != registry::public_dictionary.end())
+ {
+ if(it->second.keyword == string)
+ {
+ break;
+ }
+ ++it;
+ }
+
+ if(it == registry::public_dictionary.end())
{
// Try with string form of numeric tag
uint16_t group;
@@ -164,9 +168,9 @@ Tag
}
else
{
- DcmTagKey const tag = entry->getKey();
- this->group = tag.getGroup();
- this->element = tag.getElement();
+ auto const & tag = it->first;
+ this->group = tag.group;
+ this->element = tag.element;
}
}
diff --git a/src/dcmtkpp/UIDsDictionary.cpp b/src/dcmtkpp/UIDsDictionary.cpp
new file mode 100644
index 0000000..35f4559
--- /dev/null
+++ b/src/dcmtkpp/UIDsDictionary.cpp
@@ -0,0 +1,26 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/UIDsDictionary.h"
+
+#include <map>
+#include <string>
+
+namespace dcmtkpp
+{
+
+UIDsDictionaryEntry
+::UIDsDictionaryEntry(
+ std::string const & name, std::string const & keyword,
+ std::string const & type)
+: name(name), keyword(keyword), type(type)
+{
+ // Nothing else.
+}
+
+}
diff --git a/src/dcmtkpp/UIDsDictionary.h b/src/dcmtkpp/UIDsDictionary.h
new file mode 100644
index 0000000..2ffe188
--- /dev/null
+++ b/src/dcmtkpp/UIDsDictionary.h
@@ -0,0 +1,36 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _7b126e41_bd4d_443f_8873_d2fec52b1019
+#define _7b126e41_bd4d_443f_8873_d2fec52b1019
+
+#include <map>
+#include <string>
+
+namespace dcmtkpp
+{
+
+/**
+ * @brief Entry in a dictionary of DICOM UIDs.
+ */
+struct UIDsDictionaryEntry
+{
+ std::string name;
+ std::string keyword;
+ std::string type;
+
+ UIDsDictionaryEntry(
+ std::string const & name, std::string const & keyword,
+ std::string const & type);
+};
+
+typedef std::map<std::string, UIDsDictionaryEntry> UIDsDictionary;
+
+}
+
+#endif // _7b126e41_bd4d_443f_8873_d2fec52b1019
diff --git a/src/dcmtkpp/VR.cpp b/src/dcmtkpp/VR.cpp
index 05b2a7f..69bd5dd 100644
--- a/src/dcmtkpp/VR.cpp
+++ b/src/dcmtkpp/VR.cpp
@@ -4,12 +4,8 @@
#include <stdexcept>
#include <string>
-#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcdicent.h>
-#include <dcmtk/dcmdata/dcdict.h>
-#include <dcmtk/dcmdata/dctagkey.h>
-
#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
#include "dcmtkpp/Tag.h"
// Anonymous namespace, should not be publicly accessed
@@ -109,14 +105,13 @@ VR as_vr(std::string const vr)
VR as_vr(Tag const & tag)
{
- DcmTagKey const dcmtk_tag(tag.group, tag.element);
- DcmDictEntry const * entry = dcmDataDict.rdlock().findEntry(dcmtk_tag, NULL);
- if(entry == NULL)
+ auto const dictionary_it = registry::public_dictionary.find(tag);
+ if(dictionary_it == registry::public_dictionary.end())
{
- throw Exception("No such element");
+ throw Exception("No such element: "+std::string(tag));
}
- VR const vr(as_vr(std::string(entry->getVR().getValidVRName())));
+ VR const vr(as_vr(std::string(dictionary_it->second.vr)));
return vr;
}
diff --git a/src/dcmtkpp/VRFinder.cpp b/src/dcmtkpp/VRFinder.cpp
new file mode 100644
index 0000000..060a7fa
--- /dev/null
+++ b/src/dcmtkpp/VRFinder.cpp
@@ -0,0 +1,198 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/VRFinder.h"
+
+#include <functional>
+#include <string>
+#include <vector>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/VR.h"
+
+namespace dcmtkpp
+{
+
+std::vector<VRFinder::Finder> const
+VRFinder
+::default_finders=VRFinder::_get_default_finders();
+
+VRFinder
+::VRFinder()
+: finders()
+{
+ // Nothing else
+}
+
+VR
+VRFinder::operator()(
+ Tag const & tag, DataSet const & data_set,
+ std::string const & transfer_syntax) const
+{
+ VR vr = VR::UNKNOWN;
+
+ for(auto const & finder: this->finders)
+ {
+ try
+ {
+ vr = finder(tag, data_set, transfer_syntax);
+ break;
+ }
+ catch(Exception &)
+ {
+ // Ignore the error, try the next one
+ }
+ }
+
+ if(vr == VR::UNKNOWN)
+ {
+ for(auto const & finder: VRFinder::default_finders)
+ {
+ try
+ {
+ vr = finder(tag, data_set, transfer_syntax);
+ break;
+ }
+ catch(Exception &)
+ {
+ // Ignore the error, try the next one
+ }
+ }
+ }
+
+ if(vr == VR::UNKNOWN)
+ {
+ throw Exception("Could not find a VR for "+std::string(tag));
+ }
+
+ return vr;
+}
+
+VR
+VRFinder
+::public_dictionary(
+ Tag const & tag, DataSet const &, std::string const &)
+{
+ auto const it = registry::public_dictionary.find(tag);
+ if(it == registry::public_dictionary.end())
+ {
+ throw Exception("Element " + std::string(tag) + " is not in the public dictionary");
+ }
+ return as_vr(it->second.vr);
+}
+
+VR
+VRFinder
+::group_length(
+ Tag const & tag, DataSet const &, std::string const &)
+{
+ if(tag.element == 0)
+ {
+ return VR::UL;
+ }
+ else
+ {
+ throw Exception("Not a group length tag");
+ }
+}
+
+VR
+VRFinder
+::private_tag(
+ Tag const & tag, DataSet const &, std::string const &)
+{
+ if(tag.group %2 == 1)
+ {
+ return VR::UN;
+ }
+ else
+ {
+ throw Exception("Not a private tag");
+ }
+}
+
+VR
+VRFinder
+::implicit_vr_little_endian(
+ Tag const & tag, DataSet const & data_set,
+ std::string const & transfer_syntax)
+{
+ if(transfer_syntax == registry::ImplicitVRLittleEndian)
+ {
+ // PS3.5, A.1 (c)
+ if(tag == registry::PixelData)
+ {
+ return VR::OW;
+ }
+ else if((tag.group<<8) == 0x60 and tag.element == 0x3000)
+ {
+ return VR::OW;
+ }
+ else if(tag == registry::WaveformData)
+ {
+ return VR::OW;
+ }
+ else if(tag == registry::RedPaletteColorLookupTableData ||
+ tag == registry::GreenPaletteColorLookupTableData ||
+ tag == registry::BluePaletteColorLookupTableData ||
+ tag == registry::AlphaPaletteColorLookupTableData)
+ {
+ return VR::OW;
+ }
+ // {Red,Green,Blue,Alpha}PaletteColorLookupTableDescriptor
+ else if(tag == registry::SegmentedRedPaletteColorLookupTableData ||
+ tag == registry::SegmentedGreenPaletteColorLookupTableData ||
+ tag == registry::SegmentedBluePaletteColorLookupTableData)
+ {
+ return VR::OW;
+ }
+ // LUTData
+ // LUTDescriptor
+ else if(tag == registry::BlendingLookupTableData)
+ {
+ return VR::OW;
+ }
+ else if(tag == registry::VertexPointIndexList ||
+ tag == registry::EdgePointIndexList ||
+ tag == registry::TrianglePointIndexList ||
+ tag == registry::PrimitivePointIndexList)
+ {
+ return VR::OW;
+ }
+ else if(tag == registry::SmallestImagePixelValue ||
+ tag == registry::LargestImagePixelValue ||
+ tag == registry::SmallestPixelValueInSeries ||
+ tag == registry::LargestPixelValueInSeries ||
+ tag == registry::PixelPaddingValue)
+ {
+ return VR::US;
+ }
+ else
+ {
+ throw Exception("Unknown tag");
+ }
+ }
+ else
+ {
+ throw Exception("Unknown transfer syntax");
+ }
+}
+
+std::vector<VRFinder::Finder>
+VRFinder
+::_get_default_finders()
+{
+ return {
+ group_length, private_tag, implicit_vr_little_endian,
+ public_dictionary };
+}
+
+}
diff --git a/src/dcmtkpp/VRFinder.h b/src/dcmtkpp/VRFinder.h
new file mode 100644
index 0000000..ebaa3d7
--- /dev/null
+++ b/src/dcmtkpp/VRFinder.h
@@ -0,0 +1,78 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _b7afd80f_327e_4d9a_b0fa_88c565add7b3
+#define _b7afd80f_327e_4d9a_b0fa_88c565add7b3
+
+#include <functional>
+#include <string>
+#include <vector>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/VR.h"
+
+namespace dcmtkpp
+{
+
+/// @brief Find the VR of elements in an implicit VR data set.
+class VRFinder
+{
+public:
+ /**
+ * @brief Prototype of finder functions.
+ *
+ * Finder functions must raise an exception if they are not applicable.
+ */
+ typedef
+ std::function<VR(Tag const &, DataSet const &, std::string const &)>
+ Finder;
+
+ /// @brief Default finder functions.
+ static std::vector<Finder> const default_finders;
+
+ /// @brief User-defined finder functions, empty by default.
+ std::vector<Finder> finders;
+
+ /// @brief Constructor.
+ VRFinder();
+
+ /**
+ * @brief Return a VR for the given tag, partially-constructed data set and
+ * transfer-syntax. If no VR can be found, raise an exception.
+ *
+ * The user-defined finders are tried first, then the default_finders.
+ */
+ VR operator()(
+ Tag const & tag, DataSet const & data_set,
+ std::string const & transfer_syntax) const;
+
+ /// @brief Return the VR from the public dictionary.
+ static VR public_dictionary(
+ Tag const & tag, DataSet const &, std::string const &);
+
+ /// @brief Return the VR of group-length (gggg,0000) elements.
+ static VR group_length(
+ Tag const & tag, DataSet const &, std::string const &);
+
+ /// @brief Return a default VR (UN) for private tags.
+ static VR private_tag(
+ Tag const & tag, DataSet const &, std::string const &);
+
+ /// @brief Return the VR of elements defined in PS3.5, A.1 (c).
+ static VR implicit_vr_little_endian(
+ Tag const & tag, DataSet const & data_set,
+ std::string const & transfer_syntax);
+
+private:
+ static std::vector<Finder> _get_default_finders();
+};
+
+}
+
+#endif // _b7afd80f_327e_4d9a_b0fa_88c565add7b3
diff --git a/src/dcmtkpp/Value.cpp b/src/dcmtkpp/Value.cpp
index 6bac089..725b219 100644
--- a/src/dcmtkpp/Value.cpp
+++ b/src/dcmtkpp/Value.cpp
@@ -104,6 +104,13 @@ Value
return this->_type;
}
+bool
+Value
+::empty() const
+{
+ return (this->_type == Type::Empty);
+}
+
#define DECLARE_CONST_ACCESSOR(type, name) \
Value::type const & \
Value \
diff --git a/src/dcmtkpp/Value.h b/src/dcmtkpp/Value.h
index 5e7c1ed..40964cc 100644
--- a/src/dcmtkpp/Value.h
+++ b/src/dcmtkpp/Value.h
@@ -93,6 +93,9 @@ public:
/// @brief Return the type store in the value.
Type get_type() const;
+ /// @brief Test whether the value is empty.
+ bool empty() const;
+
/**
* @brief Return the integers contained in the value.
*
@@ -186,6 +189,13 @@ template<typename TVisitor>
typename TVisitor::result_type
apply_visitor(TVisitor const & visitor, Value const & value);
+/**
+ * @brief Visitor of values.
+ */
+template<typename TVisitor>
+typename TVisitor::result_type
+apply_visitor(TVisitor const & visitor, Value & value);
+
}
#include "dcmtkpp/Value.txx"
diff --git a/src/dcmtkpp/Value.txx b/src/dcmtkpp/Value.txx
index 55745c8..c1a7bcd 100644
--- a/src/dcmtkpp/Value.txx
+++ b/src/dcmtkpp/Value.txx
@@ -49,6 +49,40 @@ apply_visitor(TVisitor const & visitor, Value const & value)
}
}
+template<typename TVisitor>
+typename TVisitor::result_type
+apply_visitor(TVisitor const & visitor, Value & value)
+{
+ if(value.get_type() == Value::Type::Empty)
+ {
+ throw Exception("Empty value");
+ }
+ else if(value.get_type() == Value::Type::Integers)
+ {
+ return visitor(value.as_integers());
+ }
+ else if(value.get_type() == Value::Type::Reals)
+ {
+ return visitor(value.as_reals());
+ }
+ else if(value.get_type() == Value::Type::Strings)
+ {
+ return visitor(value.as_strings());
+ }
+ else if(value.get_type() == Value::Type::DataSets)
+ {
+ return visitor(value.as_data_sets());
+ }
+ else if(value.get_type() == Value::Type::Binary)
+ {
+ return visitor(value.as_binary());
+ }
+ else
+ {
+ throw Exception("Unknown value type");
+ }
+}
+
}
#endif // _de64b8e1_4116_41f8_a085_dabfdc6c63c3
diff --git a/src/dcmtkpp/Writer.cpp b/src/dcmtkpp/Writer.cpp
new file mode 100644
index 0000000..9e70ad6
--- /dev/null
+++ b/src/dcmtkpp/Writer.cpp
@@ -0,0 +1,547 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/Writer.h"
+
+#include <cstdint>
+#include <endian.h>
+#include <map>
+#include <ostream>
+#include <sstream>
+#include <string>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/uid.h"
+#include "dcmtkpp/VR.h"
+
+#define dcmtkpp_write_binary(value, stream, byte_ordering, size) \
+{ \
+ auto const copy = value; \
+ uint##size##_t raw = *reinterpret_cast<uint##size##_t const *>(©); \
+ if(byte_ordering == LITTLE_ENDIAN) \
+ { \
+ raw = htole##size(raw); \
+ } \
+ else if(byte_ordering == BIG_ENDIAN) \
+ { \
+ raw = htobe##size(raw); \
+ } \
+ else \
+ { \
+ throw Exception("Unknown endianness"); \
+ } \
+ stream.write(reinterpret_cast<char const*>(&raw), sizeof(raw)); \
+ if(!stream) \
+ { \
+ throw Exception("Could not write to stream"); \
+ } \
+}
+
+namespace dcmtkpp
+{
+
+Writer
+::Writer(
+ std::ostream & stream,
+ int byte_ordering, bool explicit_vr, ItemEncoding item_encoding,
+ bool use_group_length)
+: stream(stream), byte_ordering(byte_ordering), explicit_vr(explicit_vr),
+ item_encoding(item_encoding), use_group_length(use_group_length)
+{
+ // Nothing else
+}
+
+Writer
+::Writer(
+ std::ostream & stream,
+ std::string const & transfer_syntax,
+ ItemEncoding item_encoding, bool use_group_length)
+: stream(stream),
+ byte_ordering(
+ (transfer_syntax==registry::ExplicitVRBigEndian_Retired)?
+ BIG_ENDIAN:LITTLE_ENDIAN),
+ explicit_vr(transfer_syntax!=registry::ImplicitVRLittleEndian),
+ item_encoding(item_encoding), use_group_length(use_group_length)
+{
+ // Nothing else
+}
+
+void
+Writer
+::write_data_set(DataSet const & data_set) const
+{
+ // Build a map of the different group in order to handle
+ // Group Length elements
+ std::map<uint16_t, std::vector<Tag>> groups;
+ for(auto const & item: data_set)
+ {
+ auto const & tag = item.first;
+ groups[tag.group].push_back(tag);
+ }
+
+ for(auto const & groups_it: groups)
+ {
+ std::ostringstream group_stream;
+ Writer group_writer(
+ group_stream, this->byte_ordering, this->explicit_vr,
+ this->item_encoding, this->use_group_length);
+
+ for(auto const & tag: groups_it.second)
+ {
+ group_writer.write_tag(tag);
+ group_writer.write_element(data_set[tag]);
+ }
+
+ // Write group length if necessary
+ // Mandatory for group 0: PS3.7, 9.3, 10.3, and E.1
+ // Mandatory for group 2: PS3.10, 7.1
+ // Forbidden for groups 4 and 6?
+ auto const write_group_length = (
+ groups_it.first == 0 || groups_it.first == 2 ||
+ (this->use_group_length && groups_it.first != 4 && groups_it.first != 6));
+ if(write_group_length)
+ {
+ // Group length: (gggg,0000) UL Type=3 VM=1
+ this->write_tag(Tag(groups_it.first, 0));
+ this->write_element(
+ Element(Value::Integers({group_stream.tellp()}), VR::UL));
+ }
+
+ // Write group data to main stream
+ std::string const group_data = group_stream.str();
+ this->stream.write(&group_data[0], group_data.size());
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+}
+
+void
+Writer
+::write_tag(Tag const & tag) const
+{
+ dcmtkpp_write_binary(tag.group, this->stream, this->byte_ordering, 16);
+ dcmtkpp_write_binary(tag.element, this->stream, this->byte_ordering, 16);
+}
+
+void
+Writer
+::write_element(Element const & element) const
+{
+ auto const vr = element.vr;
+
+ // Write VR
+ if(this->explicit_vr)
+ {
+ this->stream << as_string(vr);
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+
+ // Write value to a sub-stream
+ std::ostringstream value_stream;
+ if(!element.get_value().empty())
+ {
+ Visitor const visitor(
+ value_stream, vr, this->byte_ordering, this->explicit_vr,
+ this->item_encoding, this->use_group_length);
+ apply_visitor(visitor, element.get_value());
+ }
+
+ // Write VL
+ if(this->explicit_vr)
+ {
+ if(vr == VR::OB || vr == VR::OW || vr == VR::OF || vr == VR::SQ ||
+ vr == VR::UC || vr == VR::UR || vr == VR::UT || vr == VR::UN)
+ {
+ dcmtkpp_write_binary(uint16_t(0), this->stream, this->byte_ordering, 16);
+
+ uint32_t vl;
+ if(vr == VR::SQ &&
+ this->item_encoding == ItemEncoding::UndefinedLength)
+ {
+ vl = 0xffffffff;
+ }
+ else
+ {
+ vl = value_stream.tellp();
+ }
+ dcmtkpp_write_binary(vl, this->stream, this->byte_ordering, 32);
+ }
+ else
+ {
+ dcmtkpp_write_binary(uint16_t(value_stream.tellp()), this->stream, this->byte_ordering, 16);
+ }
+ }
+ else
+ {
+ dcmtkpp_write_binary(uint32_t(value_stream.tellp()), this->stream, this->byte_ordering, 32);
+ }
+
+ this->stream.write(value_stream.str().c_str(), value_stream.tellp());
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+}
+
+void
+Writer
+::write_file(
+ DataSet const &data_set , std::ostream & stream,
+ std::string const & transfer_syntax, ItemEncoding item_encoding,
+ bool use_group_length)
+{
+ // Build File Meta Information, PS3.10, 7.1
+ DataSet meta_information;
+ meta_information.add(
+ registry::FileMetaInformationVersion, Value::Binary({0x00, 0x01}));
+
+ if(!data_set.has(registry::SOPClassUID))
+ {
+ throw Exception("Missing SOP Class UID");
+ }
+ if(!data_set.is_string(registry::SOPClassUID))
+ {
+ throw Exception("SOP Class UID is not a string");
+ }
+ if(data_set.as_string(registry::SOPClassUID).size()<1)
+ {
+ throw Exception("Empty SOP Class UID");
+ }
+
+ meta_information.add(
+ registry::MediaStorageSOPClassUID,
+ data_set.as_string(registry::SOPClassUID));
+
+ if(!data_set.has(registry::SOPInstanceUID))
+ {
+ throw Exception("Missing SOP Instance UID");
+ }
+ if(!data_set.is_string(registry::SOPInstanceUID))
+ {
+ throw Exception("SOP Instance UID is not a string");
+ }
+ if(data_set.as_string(registry::SOPInstanceUID).size()<1)
+ {
+ throw Exception("Empty SOP Instance UID");
+ }
+
+ meta_information.add(registry::MediaStorageSOPInstanceUID,
+ data_set.as_string(registry::SOPInstanceUID));
+
+ meta_information.add(registry::TransferSyntaxUID, {transfer_syntax});
+ meta_information.add(
+ registry::ImplementationClassUID, {implementation_class_uid});
+ meta_information.add(
+ registry::ImplementationVersionName,
+ { "DCMTK++ " DCMTKPP_STRINGIFY(DCMTKPP_MAJOR_VERSION) });
+
+ // SourceApplicationEntityTitle
+ // SendingApplicationEntityTitle
+ // ReceivingApplicationEntityTitle
+
+ // File preamble
+ for(unsigned int i=0; i<128; ++i)
+ {
+ stream.put(0);
+ if(!stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+
+ // DICOM prefix
+ std::string const prefix("DICM");
+ stream.write(&prefix[0], prefix.size());
+ if(!stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+
+ // File Meta Information
+ // PS3.10, 7.1: Except for the 128 byte preamble and the 4 byte prefix, the
+ // File Meta Information shall be encoded using the Explicit VR
+ // Little Endian Transfer Syntax
+ Writer meta_information_writer(
+ stream, registry::ExplicitVRLittleEndian, item_encoding, use_group_length);
+ meta_information_writer.write_data_set(meta_information);
+
+ // Data Set
+ Writer data_set_writer(
+ stream, transfer_syntax, item_encoding, use_group_length);
+ data_set_writer.write_data_set(data_set);
+}
+
+Writer::Visitor
+::Visitor(
+ std::ostream & stream, VR vr,
+ int byte_ordering, bool explicit_vr, Writer::ItemEncoding item_encoding,
+ bool use_group_length)
+: stream(stream), vr(vr), byte_ordering(byte_ordering), explicit_vr(explicit_vr),
+ item_encoding(item_encoding), use_group_length(use_group_length)
+{
+ // Nothing else
+}
+
+Writer::Visitor::result_type
+Writer::Visitor
+::operator()(Value::Integers const & value) const
+{
+ if(this->vr == VR::IS)
+ {
+ this->write_strings(value, ' ');
+ }
+ else if(this->vr == VR::SL)
+ {
+ for(auto item: value)
+ {
+ dcmtkpp_write_binary(
+ int32_t(item), this->stream, this->byte_ordering, 32);
+ }
+ }
+ else if(this->vr == VR::SS)
+ {
+ for(auto item: value)
+ {
+ dcmtkpp_write_binary(
+ int16_t(item), this->stream, this->byte_ordering, 16);
+ }
+ }
+ else if(this->vr == VR::UL)
+ {
+ for(auto item: value)
+ {
+ dcmtkpp_write_binary(
+ uint32_t(item), this->stream, this->byte_ordering, 32);
+ }
+ }
+ else if(this->vr == VR::AT || this->vr == VR::US)
+ {
+ for(auto item: value)
+ {
+ dcmtkpp_write_binary(
+ uint16_t(item), this->stream, this->byte_ordering, 16);
+ }
+ }
+ else
+ {
+ throw Exception("Cannot write " + as_string(this->vr) + " as integers");
+ }
+}
+
+Writer::Visitor::result_type
+Writer::Visitor
+::operator()(Value::Reals const & value) const
+{
+ if(this->vr == VR::DS)
+ {
+ this->write_strings(value, ' ');
+ }
+ else if(this->vr == VR::FD)
+ {
+ for(auto const & item: value)
+ {
+ dcmtkpp_write_binary(
+ double(item), this->stream, this->byte_ordering, 64);
+ }
+ }
+ else if(this->vr == VR::FL)
+ {
+ for(auto const & item: value)
+ {
+ dcmtkpp_write_binary(
+ float(item), this->stream, this->byte_ordering, 32);
+ }
+ }
+ else
+ {
+ throw Exception("Cannot write " + as_string(this->vr) + " as reals");
+ }
+}
+
+Writer::Visitor::result_type
+Writer::Visitor
+::operator()(Value::Strings const & value) const
+{
+ if(this->vr == VR::AT)
+ {
+ Value::Integers integers;
+ for(auto const & string: value)
+ {
+ Tag const tag(string);
+ integers.push_back(tag.group);
+ integers.push_back(tag.element);
+ }
+ this->operator()(integers);
+ }
+ else
+ {
+ this->write_strings(value, (this->vr == VR::UI)?'\0':' ');
+ }
+}
+
+Writer::Visitor::result_type
+Writer::Visitor
+::operator()(Value::DataSets const & value) const
+{
+ // Write all items to a sub-stream
+ std::ostringstream sequence_stream;
+ Writer sequence_writer(
+ sequence_stream, this->byte_ordering, this->explicit_vr,
+ this->item_encoding, this->use_group_length);
+
+ for(auto const & item: value)
+ {
+ // Write item to a sub-stream
+ std::ostringstream item_stream;
+ Writer item_writer(
+ item_stream, this->byte_ordering, this->explicit_vr,
+ this->item_encoding, this->use_group_length);
+ item_writer.write_data_set(item);
+
+ // Beginning of item
+ sequence_writer.write_tag(registry::Item);
+
+ // Item length
+ uint32_t item_length;
+ if(this->item_encoding == ItemEncoding::ExplicitLength)
+ {
+ item_length = item_stream.tellp();
+ }
+ else
+ {
+ item_length = 0xffffffff;
+ }
+ dcmtkpp_write_binary(item_length, sequence_stream, this->byte_ordering, 32);
+
+ // Data set
+ sequence_stream.write(item_stream.str().c_str(), item_stream.tellp());
+ if(!sequence_stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+
+ // End of item
+ if(this->item_encoding == ItemEncoding::UndefinedLength)
+ {
+ sequence_writer.write_tag(registry::ItemDelimitationItem);
+ dcmtkpp_write_binary(uint32_t(0), sequence_stream, this->byte_ordering, 32);
+ }
+ }
+
+ // End of sequence
+ if(this->item_encoding == ItemEncoding::UndefinedLength)
+ {
+ sequence_writer.write_tag(registry::SequenceDelimitationItem);
+ dcmtkpp_write_binary(uint32_t(0), sequence_stream, this->byte_ordering, 32);
+ }
+
+ this->stream.write(sequence_stream.str().c_str(), sequence_stream.tellp());
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+}
+
+Writer::Visitor::result_type
+Writer::Visitor
+::operator()(Value::Binary const & value) const
+{
+ if(this->vr == VR::OB || this->vr == VR::UN)
+ {
+ this->stream.write(reinterpret_cast<char const*>(&value[0]), value.size());
+ }
+ else if(this->vr == VR::OW)
+ {
+ if(value.size()%2 != 0)
+ {
+ throw Exception("Value cannot be written as OW");
+ }
+ for(int i=0; i<value.size(); i+=2)
+ {
+ uint16_t item = *reinterpret_cast<uint16_t const *>(&value[i]);
+ dcmtkpp_write_binary(item, this->stream, this->byte_ordering, 16);
+ }
+ }
+ else if(this->vr == VR::OF)
+ {
+ if(value.size()%4 != 0)
+ {
+ throw Exception("Value cannot be written as OF");
+ }
+ for(int i=0; i<value.size(); i+=4)
+ {
+ uint32_t item = *reinterpret_cast<uint32_t const *>(&value[i]);
+ dcmtkpp_write_binary(item, this->stream, this->byte_ordering, 32);
+ }
+ }
+ else
+ {
+ throw Exception("Cannot write "+as_string(this->vr)+" as binary");
+ }
+
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+
+ if(value.size()%2 == 1)
+ {
+ this->stream.put('\0');
+ }
+}
+
+template<typename T>
+void
+Writer::Visitor
+::write_strings(T const & sequence, char padding) const
+{
+ auto const stream_begin = this->stream.tellp();
+
+ auto last_element_it = --sequence.end();
+ for(auto it = sequence.begin(); it!= sequence.end(); ++it)
+ {
+ this->stream << *it;
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+
+ if(it != last_element_it)
+ {
+ this->stream << "\\";
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+ }
+
+ auto const stream_end = this->stream.tellp();
+
+ if((stream_end-stream_begin)%2 == 1)
+ {
+ this->stream.put(padding);
+ if(!this->stream)
+ {
+ throw Exception("Could not write to stream");
+ }
+ }
+}
+
+}
+
+#undef dcmtkpp_write_binary
diff --git a/src/dcmtkpp/Writer.h b/src/dcmtkpp/Writer.h
new file mode 100644
index 0000000..09fee4f
--- /dev/null
+++ b/src/dcmtkpp/Writer.h
@@ -0,0 +1,112 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _ca5c06d2_04f9_4009_9e98_5607e1060379
+#define _ca5c06d2_04f9_4009_9e98_5607e1060379
+
+#include <ostream>
+#include <string>
+
+#include "dcmtkpp/DataSet.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/Value.h"
+#include "dcmtkpp/VR.h"
+
+namespace dcmtkpp
+{
+
+/// @brief Write DICOM objects to a stream.
+class Writer
+{
+public:
+ /// @brief Encodings of sequence items.
+ enum class ItemEncoding
+ {
+ ExplicitLength,
+ UndefinedLength
+ };
+
+ /// @brief Output stream.
+ std::ostream & stream;
+
+ /// @brief Endianness (LITTLE_ENDIAN or BIG_ENDIAN).
+ int byte_ordering;
+ /// @brief Explicit-ness of the Value Representations.
+ bool explicit_vr;
+ /// @brief Encoding of sequence items.
+ ItemEncoding item_encoding;
+ /// @brief Presence of group length elements.
+ bool use_group_length;
+
+ /// @brief Build a writer.
+ Writer(
+ std::ostream & stream,
+ int byte_ordering, bool explicit_vr,
+ ItemEncoding item_encoding=ItemEncoding::ExplicitLength,
+ bool use_group_length=false);
+
+ /**
+ * @brief Build a writer, derive byte ordering and explicit-ness of VR
+ * from transfer syntax.
+ */
+ Writer(
+ std::ostream & stream,
+ std::string const & transfer_syntax,
+ ItemEncoding item_encoding=ItemEncoding::ExplicitLength,
+ bool use_group_length=false);
+
+ /// @brief Write a data set.
+ void write_data_set(DataSet const & data_set) const;
+
+ /// @brief Write a tag.
+ void write_tag(Tag const & tag) const;
+
+ /// @brief Write an element (VR, VL and value).
+ void write_element(Element const & element) const;
+
+ /// @brief Write a file (meta-information and data set).
+ static void write_file(
+ DataSet const &data_set, std::ostream & stream,
+ std::string const & transfer_syntax,
+ ItemEncoding item_encoding=ItemEncoding::ExplicitLength,
+ bool use_group_length=false);
+
+private:
+
+ struct Visitor
+ {
+ typedef void result_type;
+
+ std::ostream & stream;
+ VR vr;
+
+ int byte_ordering;
+ bool explicit_vr;
+ ItemEncoding item_encoding;
+ bool use_group_length;
+
+ Visitor(
+ std::ostream & stream, VR vr,
+ int byte_ordering, bool explicit_vr, ItemEncoding item_encoding,
+ bool use_group_length);
+
+ result_type operator()(Value::Integers const & value) const;
+ result_type operator()(Value::Reals const & value) const;
+ result_type operator()(Value::Strings const & value) const;
+ result_type operator()(Value::DataSets const & value) const;
+ result_type operator()(Value::Binary const & value) const;
+
+ template<typename T>
+ void write_strings(T const & sequence, char padding) const;
+ };
+};
+
+}
+
+#endif // _ca5c06d2_04f9_4009_9e98_5607e1060379
diff --git a/src/dcmtkpp/conversion.cpp b/src/dcmtkpp/conversion.cpp
index d1da178..bd57e4e 100644
--- a/src/dcmtkpp/conversion.cpp
+++ b/src/dcmtkpp/conversion.cpp
@@ -51,7 +51,7 @@ DcmEVR convert(VR vr)
else if(vr == VR::UT) { return EVR_UT; }
else
{
- throw Exception("Unknown VR");
+ throw Exception("Unknown VR: "+as_string(vr));
}
}
@@ -86,7 +86,7 @@ VR convert(DcmEVR evr)
else if(evr == EVR_UT) { return VR::UT; }
else
{
- throw Exception("Unknown VR");
+ throw Exception("Unknown VR: "+std::string(DcmVR(evr).getVRName()));
}
}
@@ -214,7 +214,14 @@ DcmElement * convert(const Tag & tag, Element const & source)
convert(source, static_cast<DcmOtherByteOtherWord*>(destination));
}
}
- // OF
+ else if(source.vr == VR::OF)
+ {
+ destination = new DcmOtherFloat(destination_tag);
+ if(!source.empty())
+ {
+ convert(source, static_cast<DcmOtherFloat*>(destination));
+ }
+ }
else if (source.vr == VR::PN)
{
destination = new DcmPersonName(destination_tag);
@@ -246,7 +253,7 @@ DcmElement * convert(const Tag & tag, Element const & source)
{
for(auto const & source_item: source.as_data_set())
{
- DcmItem * destination_item = convert(source_item);
+ DcmItem * destination_item = convert(source_item, false);
sequence->append(destination_item);
}
}
@@ -311,7 +318,7 @@ DcmElement * convert(const Tag & tag, Element const & source)
}
else
{
- throw Exception("Unknown VR");
+ throw Exception("Unknown VR: "+as_string(source.vr));
}
return destination;
@@ -416,7 +423,7 @@ Element convert(DcmElement * source)
}
else
{
- throw Exception("Unknown VR");
+ throw Exception("Unknown VR: "+std::string(DcmVR(source_vr).getVRName()));
}
return destination;
@@ -450,17 +457,46 @@ void convert(Element const & source, DcmOtherByteOtherWord * destination)
void convert(Element const & source, DcmOtherFloat * destination)
{
auto const & value = source.as_binary();
+
+ if(value.size()%4 != 0)
+ {
+ throw Exception("Cannot convert OF from odd-sized array");
+ }
+
+ for(unsigned int i=0; i<value.size()/4; ++i)
+ {
+ float const f = *reinterpret_cast<float const *>(&value[i*4]);
+ destination->putFloat32(f, i);
+ }
}
-DcmItem * convert(DataSet const & source)
+DcmItem * convert(DataSet const & source, bool as_data_set)
{
- DcmDataset * destination = new DcmDataset();
+ DcmItem * destination = as_data_set?(new DcmDataset()):(new DcmItem());
for(auto const & iterator: source)
{
- auto const destination_element = convert(
- iterator.first, iterator.second);
- destination->insert(destination_element);
+ if(iterator.second.vr == VR::SQ)
+ {
+ if(iterator.second.empty())
+ {
+ destination->insertEmptyElement(DcmTag(convert(iterator.first), convert(iterator.second.vr)));
+ }
+ else
+ {
+ for(auto const & source_item: iterator.second.as_data_set())
+ {
+ DcmItem* item = convert(source_item, false);
+ destination->insertSequenceItem(DcmTag(convert(iterator.first), convert(iterator.second.vr)), item);
+ }
+ }
+ }
+ else
+ {
+ auto const destination_element = convert(
+ iterator.first, iterator.second);
+ destination->insert(destination_element);
+ }
}
return destination;
diff --git a/src/dcmtkpp/conversion.h b/src/dcmtkpp/conversion.h
index b39bf9a..e10e485 100644
--- a/src/dcmtkpp/conversion.h
+++ b/src/dcmtkpp/conversion.h
@@ -50,17 +50,20 @@ void convert(
Element const & source, DcmElement * destination,
TSourceType const & (Element::*getter)() const);
-/// @brief Low-level element converver.
+/// @brief Low-level element converter.
void convert(Element const & source, DcmOtherByteOtherWord * destination);
/// @brief Low-level element converter.
+void convert(Element const & source, DcmOtherFloat * destination);
+
+/// @brief Low-level element converter.
template<typename TSourceType, typename TDestinationType>
void convert(
DcmElement * source, Element & destination,
TDestinationType & (Element::*getter)());
-/// @brief Convert a dcmtkpp::DataSet to a DcmDataset.
-DcmItem * convert(DataSet const & source);
+/// @brief Convert a dcmtkpp::DataSet to a DcmDataset or a DcmItem.
+DcmItem * convert(DataSet const & source, bool as_data_set=true);
/// @brief Convert a DcmDataset to a dcmtkpp::DataSet.
DataSet convert(DcmItem * source);
diff --git a/src/dcmtkpp/registry.cpp b/src/dcmtkpp/registry.cpp
new file mode 100644
index 0000000..ee40214
--- /dev/null
+++ b/src/dcmtkpp/registry.cpp
@@ -0,0 +1,8174 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include <stdint.h>
+
+#include "dcmtkpp/registry.h"
+
+#include "dcmtkpp/ElementsDictionary.h"
+#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/VR.h"
+#include "dcmtkpp/UIDsDictionary.h"
+
+namespace dcmtkpp
+{
+
+namespace registry
+{
+
+struct RawElementsDictionaryEntry
+{
+ uint16_t group;
+ uint16_t element;
+ char const * name;
+ char const * keyword;
+ char const * vr;
+ char const * vm;
+};
+
+ElementsDictionary create_public_dictionary()
+{
+
+ RawElementsDictionaryEntry raw_entries[] = {
+ { 0x0000, 0x0000,
+ "Command Group Length", "CommandGroupLength", "UL", "1" },
+ { 0x0000, 0x0002,
+ "Affected SOP Class UID", "AffectedSOPClassUID", "UI", "1" },
+ { 0x0000, 0x0003,
+ "Requested SOP Class UID", "RequestedSOPClassUID", "UI", "1" },
+ { 0x0000, 0x0100,
+ "Command Field", "CommandField", "US", "1" },
+ { 0x0000, 0x0110,
+ "Message ID", "MessageID", "US", "1" },
+ { 0x0000, 0x0120,
+ "Message ID Being Responded To", "MessageIDBeingRespondedTo", "US", "1" },
+ { 0x0000, 0x0600,
+ "Move Destination", "MoveDestination", "AE", "1" },
+ { 0x0000, 0x0700,
+ "Priority", "Priority", "US", "1" },
+ { 0x0000, 0x0800,
+ "Command Data Set Type", "CommandDataSetType", "US", "1" },
+ { 0x0000, 0x0900,
+ "Status", "Status", "US", "1" },
+ { 0x0000, 0x0901,
+ "Offending Element", "OffendingElement", "AT", "1-n" },
+ { 0x0000, 0x0902,
+ "Error Comment", "ErrorComment", "LO", "1" },
+ { 0x0000, 0x0903,
+ "Error ID", "ErrorID", "US", "1" },
+ { 0x0000, 0x1000,
+ "Affected SOP Instance UID", "AffectedSOPInstanceUID", "UI", "1" },
+ { 0x0000, 0x1001,
+ "Requested SOP Instance UID", "RequestedSOPInstanceUID", "UI", "1" },
+ { 0x0000, 0x1002,
+ "Event Type ID", "EventTypeID", "US", "1" },
+ { 0x0000, 0x1005,
+ "Attribute Identifier List", "AttributeIdentifierList", "AT", "1-n" },
+ { 0x0000, 0x1008,
+ "Action Type ID", "ActionTypeID", "US", "1" },
+ { 0x0000, 0x1020,
+ "Number of Remaining Sub-operations", "NumberOfRemainingSuboperations", "US", "1" },
+ { 0x0000, 0x1021,
+ "Number of Completed Sub-operations", "NumberOfCompletedSuboperations", "US", "1" },
+ { 0x0000, 0x1022,
+ "Number of Failed Sub-operations", "NumberOfFailedSuboperations", "US", "1" },
+ { 0x0000, 0x1023,
+ "Number of Warning Sub-operations", "NumberOfWarningSuboperations", "US", "1" },
+ { 0x0000, 0x1030,
+ "Move Originator Application Entity Title", "MoveOriginatorApplicationEntityTitle", "AE", "1" },
+ { 0x0000, 0x1031,
+ "Move Originator Message ID", "MoveOriginatorMessageID", "US", "1" },
+ { 0x0002, 0x0000,
+ "File Meta Information Group Length", "FileMetaInformationGroupLength", "UL", "1" },
+ { 0x0002, 0x0001,
+ "File Meta Information Version", "FileMetaInformationVersion", "OB", "1" },
+ { 0x0002, 0x0002,
+ "Media Storage SOP Class UID", "MediaStorageSOPClassUID", "UI", "1" },
+ { 0x0002, 0x0003,
+ "Media Storage SOP Instance UID", "MediaStorageSOPInstanceUID", "UI", "1" },
+ { 0x0002, 0x0010,
+ "Transfer Syntax UID", "TransferSyntaxUID", "UI", "1" },
+ { 0x0002, 0x0012,
+ "Implementation Class UID", "ImplementationClassUID", "UI", "1" },
+ { 0x0002, 0x0013,
+ "Implementation Version Name", "ImplementationVersionName", "SH", "1" },
+ { 0x0002, 0x0016,
+ "Source Application Entity Title", "SourceApplicationEntityTitle", "AE", "1" },
+ { 0x0002, 0x0017,
+ "Sending Application Entity Title", "SendingApplicationEntityTitle", "AE", "1" },
+ { 0x0002, 0x0018,
+ "Receiving Application Entity Title", "ReceivingApplicationEntityTitle", "AE", "1" },
+ { 0x0002, 0x0100,
+ "Private Information Creator UID", "PrivateInformationCreatorUID", "UI", "1" },
+ { 0x0002, 0x0102,
+ "Private Information", "PrivateInformation", "OB", "1" },
+ { 0x0004, 0x1130,
+ "File-set ID", "FileSetID", "CS", "1" },
+ { 0x0004, 0x1141,
+ "File-set Descriptor File ID", "FileSetDescriptorFileID", "CS", "1-8" },
+ { 0x0004, 0x1142,
+ "Specific Character Set of File-set Descriptor File", "SpecificCharacterSetOfFileSetDescriptorFile", "CS", "1" },
+ { 0x0004, 0x1200,
+ "Offset of the First Directory Record of the Root Directory Entity", "OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity", "UL", "1" },
+ { 0x0004, 0x1202,
+ "Offset of the Last Directory Record of the Root Directory Entity", "OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity", "UL", "1" },
+ { 0x0004, 0x1212,
+ "File-set Consistency Flag", "FileSetConsistencyFlag", "US", "1" },
+ { 0x0004, 0x1220,
+ "Directory Record Sequence", "DirectoryRecordSequence", "SQ", "1" },
+ { 0x0004, 0x1400,
+ "Offset of the Next Directory Record", "OffsetOfTheNextDirectoryRecord", "UL", "1" },
+ { 0x0004, 0x1410,
+ "Record In-use Flag", "RecordInUseFlag", "US", "1" },
+ { 0x0004, 0x1420,
+ "Offset of Referenced Lower-Level Directory Entity", "OffsetOfReferencedLowerLevelDirectoryEntity", "UL", "1" },
+ { 0x0004, 0x1430,
+ "Directory Record Type", "DirectoryRecordType", "CS", "1" },
+ { 0x0004, 0x1432,
+ "Private Record UID", "PrivateRecordUID", "UI", "1" },
+ { 0x0004, 0x1500,
+ "Referenced File ID", "ReferencedFileID", "CS", "1-8" },
+ { 0x0004, 0x1504,
+ "MRDR Directory Record Offset", "MRDRDirectoryRecordOffset", "UL", "1" },
+ { 0x0004, 0x1510,
+ "Referenced SOP Class UID in File", "ReferencedSOPClassUIDInFile", "UI", "1" },
+ { 0x0004, 0x1511,
+ "Referenced SOP Instance UID in File", "ReferencedSOPInstanceUIDInFile", "UI", "1" },
+ { 0x0004, 0x1512,
+ "Referenced Transfer Syntax UID in File", "ReferencedTransferSyntaxUIDInFile", "UI", "1" },
+ { 0x0004, 0x151a,
+ "Referenced Related General SOP Class UID in File", "ReferencedRelatedGeneralSOPClassUIDInFile", "UI", "1-n" },
+ { 0x0004, 0x1600,
+ "Number of References", "NumberOfReferences", "UL", "1" },
+ { 0x0008, 0x0001,
+ "Length to End", "LengthToEnd", "UL", "1" },
+ { 0x0008, 0x0005,
+ "Specific Character Set", "SpecificCharacterSet", "CS", "1-n" },
+ { 0x0008, 0x0006,
+ "Language Code Sequence", "LanguageCodeSequence", "SQ", "1" },
+ { 0x0008, 0x0008,
+ "Image Type", "ImageType", "CS", "2-n" },
+ { 0x0008, 0x0010,
+ "Recognition Code", "RecognitionCode", "SH", "1" },
+ { 0x0008, 0x0012,
+ "Instance Creation Date", "InstanceCreationDate", "DA", "1" },
+ { 0x0008, 0x0013,
+ "Instance Creation Time", "InstanceCreationTime", "TM", "1" },
+ { 0x0008, 0x0014,
+ "Instance Creator UID", "InstanceCreatorUID", "UI", "1" },
+ { 0x0008, 0x0015,
+ "Instance Coercion DateTime", "InstanceCoercionDateTime", "DT", "1" },
+ { 0x0008, 0x0016,
+ "SOP Class UID", "SOPClassUID", "UI", "1" },
+ { 0x0008, 0x0018,
+ "SOP Instance UID", "SOPInstanceUID", "UI", "1" },
+ { 0x0008, 0x001a,
+ "Related General SOP Class UID", "RelatedGeneralSOPClassUID", "UI", "1-n" },
+ { 0x0008, 0x001b,
+ "Original Specialized SOP Class UID", "OriginalSpecializedSOPClassUID", "UI", "1" },
+ { 0x0008, 0x0020,
+ "Study Date", "StudyDate", "DA", "1" },
+ { 0x0008, 0x0021,
+ "Series Date", "SeriesDate", "DA", "1" },
+ { 0x0008, 0x0022,
+ "Acquisition Date", "AcquisitionDate", "DA", "1" },
+ { 0x0008, 0x0023,
+ "Content Date", "ContentDate", "DA", "1" },
+ { 0x0008, 0x0024,
+ "Overlay Date", "OverlayDate", "DA", "1" },
+ { 0x0008, 0x0025,
+ "Curve Date", "CurveDate", "DA", "1" },
+ { 0x0008, 0x002a,
+ "Acquisition DateTime", "AcquisitionDateTime", "DT", "1" },
+ { 0x0008, 0x0030,
+ "Study Time", "StudyTime", "TM", "1" },
+ { 0x0008, 0x0031,
+ "Series Time", "SeriesTime", "TM", "1" },
+ { 0x0008, 0x0032,
+ "Acquisition Time", "AcquisitionTime", "TM", "1" },
+ { 0x0008, 0x0033,
+ "Content Time", "ContentTime", "TM", "1" },
+ { 0x0008, 0x0034,
+ "Overlay Time", "OverlayTime", "TM", "1" },
+ { 0x0008, 0x0035,
+ "Curve Time", "CurveTime", "TM", "1" },
+ { 0x0008, 0x0040,
+ "Data Set Type", "DataSetType", "US", "1" },
+ { 0x0008, 0x0041,
+ "Data Set Subtype", "DataSetSubtype", "LO", "1" },
+ { 0x0008, 0x0042,
+ "Nuclear Medicine Series Type", "NuclearMedicineSeriesType", "CS", "1" },
+ { 0x0008, 0x0050,
+ "Accession Number", "AccessionNumber", "SH", "1" },
+ { 0x0008, 0x0051,
+ "Issuer of Accession Number Sequence", "IssuerOfAccessionNumberSequence", "SQ", "1" },
+ { 0x0008, 0x0052,
+ "Query/Retrieve Level", "QueryRetrieveLevel", "CS", "1" },
+ { 0x0008, 0x0053,
+ "Query/Retrieve View", "QueryRetrieveView", "CS", "1" },
+ { 0x0008, 0x0054,
+ "Retrieve AE Title", "RetrieveAETitle", "AE", "1-n" },
+ { 0x0008, 0x0056,
+ "Instance Availability", "InstanceAvailability", "CS", "1" },
+ { 0x0008, 0x0058,
+ "Failed SOP Instance UID List", "FailedSOPInstanceUIDList", "UI", "1-n" },
+ { 0x0008, 0x0060,
+ "Modality", "Modality", "CS", "1" },
+ { 0x0008, 0x0061,
+ "Modalities in Study", "ModalitiesInStudy", "CS", "1-n" },
+ { 0x0008, 0x0062,
+ "SOP Classes in Study", "SOPClassesInStudy", "UI", "1-n" },
+ { 0x0008, 0x0064,
+ "Conversion Type", "ConversionType", "CS", "1" },
+ { 0x0008, 0x0068,
+ "Presentation Intent Type", "PresentationIntentType", "CS", "1" },
+ { 0x0008, 0x0070,
+ "Manufacturer", "Manufacturer", "LO", "1" },
+ { 0x0008, 0x0080,
+ "Institution Name", "InstitutionName", "LO", "1" },
+ { 0x0008, 0x0081,
+ "Institution Address", "InstitutionAddress", "ST", "1" },
+ { 0x0008, 0x0082,
+ "Institution Code Sequence", "InstitutionCodeSequence", "SQ", "1" },
+ { 0x0008, 0x0090,
+ "Referring Physician's Name", "ReferringPhysicianName", "PN", "1" },
+ { 0x0008, 0x0092,
+ "Referring Physician's Address", "ReferringPhysicianAddress", "ST", "1" },
+ { 0x0008, 0x0094,
+ "Referring Physician's Telephone Numbers", "ReferringPhysicianTelephoneNumbers", "SH", "1-n" },
+ { 0x0008, 0x0096,
+ "Referring Physician Identification Sequence", "ReferringPhysicianIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x009c,
+ "Consulting Physician's Name", "ConsultingPhysicianName", "PN", "1-n" },
+ { 0x0008, 0x009d,
+ "Consulting Physician Identification Sequence", "ConsultingPhysicianIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x0100,
+ "Code Value", "CodeValue", "SH", "1" },
+ { 0x0008, 0x0101,
+ "Extended Code Value", "ExtendedCodeValue", "LO", "1" },
+ { 0x0008, 0x0102,
+ "Coding Scheme Designator", "CodingSchemeDesignator", "SH", "1" },
+ { 0x0008, 0x0103,
+ "Coding Scheme Version", "CodingSchemeVersion", "SH", "1" },
+ { 0x0008, 0x0104,
+ "Code Meaning", "CodeMeaning", "LO", "1" },
+ { 0x0008, 0x0105,
+ "Mapping Resource", "MappingResource", "CS", "1" },
+ { 0x0008, 0x0106,
+ "Context Group Version", "ContextGroupVersion", "DT", "1" },
+ { 0x0008, 0x0107,
+ "Context Group Local Version", "ContextGroupLocalVersion", "DT", "1" },
+ { 0x0008, 0x0108,
+ "Extended Code Meaning", "ExtendedCodeMeaning", "LT", "1" },
+ { 0x0008, 0x010b,
+ "Context Group Extension Flag", "ContextGroupExtensionFlag", "CS", "1" },
+ { 0x0008, 0x010c,
+ "Coding Scheme UID", "CodingSchemeUID", "UI", "1" },
+ { 0x0008, 0x010d,
+ "Context Group Extension Creator UID", "ContextGroupExtensionCreatorUID", "UI", "1" },
+ { 0x0008, 0x010f,
+ "Context Identifier", "ContextIdentifier", "CS", "1" },
+ { 0x0008, 0x0110,
+ "Coding Scheme Identification Sequence", "CodingSchemeIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x0112,
+ "Coding Scheme Registry", "CodingSchemeRegistry", "LO", "1" },
+ { 0x0008, 0x0114,
+ "Coding Scheme External ID", "CodingSchemeExternalID", "ST", "1" },
+ { 0x0008, 0x0115,
+ "Coding Scheme Name", "CodingSchemeName", "ST", "1" },
+ { 0x0008, 0x0116,
+ "Coding Scheme Responsible Organization", "CodingSchemeResponsibleOrganization", "ST", "1" },
+ { 0x0008, 0x0117,
+ "Context UID", "ContextUID", "UI", "1" },
+ { 0x0008, 0x0118,
+ "Mapping Resource UID", "MappingResourceUID", "UI", "1" },
+ { 0x0008, 0x0119,
+ "Long Code Value", "LongCodeValue", "UC", "1" },
+ { 0x0008, 0x0120,
+ "URN Code Value", "URNCodeValue", "UR", "1" },
+ { 0x0008, 0x0121,
+ "Equivalent Code Sequence", "EquivalentCodeSequence", "SQ", "1" },
+ { 0x0008, 0x0201,
+ "Timezone Offset From UTC", "TimezoneOffsetFromUTC", "SH", "1" },
+ { 0x0008, 0x0300,
+ "Private Data Element Characteristics Sequence", "PrivateDataElementCharacteristicsSequence", "SQ", "1" },
+ { 0x0008, 0x0301,
+ "Private Group Reference", "PrivateGroupReference", "US", "1" },
+ { 0x0008, 0x0302,
+ "Private Creator Reference", "PrivateCreatorReference", "LO", "1" },
+ { 0x0008, 0x0303,
+ "Block Identifying Information Status", "BlockIdentifyingInformationStatus", "CS", "1" },
+ { 0x0008, 0x0304,
+ "Nonidentifying Private Elements", "NonidentifyingPrivateElements", "US", "1-n" },
+ { 0x0008, 0x0306,
+ "Identifying Private Elements", "IdentifyingPrivateElements", "US", "1-n" },
+ { 0x0008, 0x0305,
+ "Deidentification Action Sequence", "DeidentificationActionSequence", "SQ", "1" },
+ { 0x0008, 0x0307,
+ "Deidentification Action", "DeidentificationAction", "CS", "1" },
+ { 0x0008, 0x1000,
+ "Network ID", "NetworkID", "AE", "1" },
+ { 0x0008, 0x1010,
+ "Station Name", "StationName", "SH", "1" },
+ { 0x0008, 0x1030,
+ "Study Description", "StudyDescription", "LO", "1" },
+ { 0x0008, 0x1032,
+ "Procedure Code Sequence", "ProcedureCodeSequence", "SQ", "1" },
+ { 0x0008, 0x103e,
+ "Series Description", "SeriesDescription", "LO", "1" },
+ { 0x0008, 0x103f,
+ "Series Description Code Sequence", "SeriesDescriptionCodeSequence", "SQ", "1" },
+ { 0x0008, 0x1040,
+ "Institutional Department Name", "InstitutionalDepartmentName", "LO", "1" },
+ { 0x0008, 0x1048,
+ "Physician(s) of Record", "PhysiciansOfRecord", "PN", "1-n" },
+ { 0x0008, 0x1049,
+ "Physician(s) of Record Identification Sequence", "PhysiciansOfRecordIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x1050,
+ "Performing Physician's Name", "PerformingPhysicianName", "PN", "1-n" },
+ { 0x0008, 0x1052,
+ "Performing Physician Identification Sequence", "PerformingPhysicianIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x1060,
+ "Name of Physician(s) Reading Study", "NameOfPhysiciansReadingStudy", "PN", "1-n" },
+ { 0x0008, 0x1062,
+ "Physician(s) Reading Study Identification Sequence", "PhysiciansReadingStudyIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x1070,
+ "Operators' Name", "OperatorsName", "PN", "1-n" },
+ { 0x0008, 0x1072,
+ "Operator Identification Sequence", "OperatorIdentificationSequence", "SQ", "1" },
+ { 0x0008, 0x1080,
+ "Admitting Diagnoses Description", "AdmittingDiagnosesDescription", "LO", "1-n" },
+ { 0x0008, 0x1084,
+ "Admitting Diagnoses Code Sequence", "AdmittingDiagnosesCodeSequence", "SQ", "1" },
+ { 0x0008, 0x1090,
+ "Manufacturer's Model Name", "ManufacturerModelName", "LO", "1" },
+ { 0x0008, 0x1100,
+ "Referenced Results Sequence", "ReferencedResultsSequence", "SQ", "1" },
+ { 0x0008, 0x1110,
+ "Referenced Study Sequence", "ReferencedStudySequence", "SQ", "1" },
+ { 0x0008, 0x1111,
+ "Referenced Performed Procedure Step Sequence", "ReferencedPerformedProcedureStepSequence", "SQ", "1" },
+ { 0x0008, 0x1115,
+ "Referenced Series Sequence", "ReferencedSeriesSequence", "SQ", "1" },
+ { 0x0008, 0x1120,
+ "Referenced Patient Sequence", "ReferencedPatientSequence", "SQ", "1" },
+ { 0x0008, 0x1125,
+ "Referenced Visit Sequence", "ReferencedVisitSequence", "SQ", "1" },
+ { 0x0008, 0x1130,
+ "Referenced Overlay Sequence", "ReferencedOverlaySequence", "SQ", "1" },
+ { 0x0008, 0x1134,
+ "Referenced Stereometric Instance Sequence", "ReferencedStereometricInstanceSequence", "SQ", "1" },
+ { 0x0008, 0x113a,
+ "Referenced Waveform Sequence", "ReferencedWaveformSequence", "SQ", "1" },
+ { 0x0008, 0x1140,
+ "Referenced Image Sequence", "ReferencedImageSequence", "SQ", "1" },
+ { 0x0008, 0x1145,
+ "Referenced Curve Sequence", "ReferencedCurveSequence", "SQ", "1" },
+ { 0x0008, 0x114a,
+ "Referenced Instance Sequence", "ReferencedInstanceSequence", "SQ", "1" },
+ { 0x0008, 0x114b,
+ "Referenced Real World Value Mapping Instance Sequence", "ReferencedRealWorldValueMappingInstanceSequence", "SQ", "1" },
+ { 0x0008, 0x1150,
+ "Referenced SOP Class UID", "ReferencedSOPClassUID", "UI", "1" },
+ { 0x0008, 0x1155,
+ "Referenced SOP Instance UID", "ReferencedSOPInstanceUID", "UI", "1" },
+ { 0x0008, 0x115a,
+ "SOP Classes Supported", "SOPClassesSupported", "UI", "1-n" },
+ { 0x0008, 0x1160,
+ "Referenced Frame Number", "ReferencedFrameNumber", "IS", "1-n" },
+ { 0x0008, 0x1161,
+ "Simple Frame List", "SimpleFrameList", "UL", "1-n" },
+ { 0x0008, 0x1162,
+ "Calculated Frame List", "CalculatedFrameList", "UL", "3-3n" },
+ { 0x0008, 0x1163,
+ "Time Range", "TimeRange", "FD", "2" },
+ { 0x0008, 0x1164,
+ "Frame Extraction Sequence", "FrameExtractionSequence", "SQ", "1" },
+ { 0x0008, 0x1167,
+ "Multi-frame Source SOP Instance UID", "MultiFrameSourceSOPInstanceUID", "UI", "1" },
+ { 0x0008, 0x1190,
+ "Retrieve URL", "RetrieveURL", "UR", "1" },
+ { 0x0008, 0x1195,
+ "Transaction UID", "TransactionUID", "UI", "1" },
+ { 0x0008, 0x1196,
+ "Warning Reason", "WarningReason", "US", "1" },
+ { 0x0008, 0x1197,
+ "Failure Reason", "FailureReason", "US", "1" },
+ { 0x0008, 0x1198,
+ "Failed SOP Sequence", "FailedSOPSequence", "SQ", "1" },
+ { 0x0008, 0x1199,
+ "Referenced SOP Sequence", "ReferencedSOPSequence", "SQ", "1" },
+ { 0x0008, 0x1200,
+ "Studies Containing Other Referenced Instances Sequence", "StudiesContainingOtherReferencedInstancesSequence", "SQ", "1" },
+ { 0x0008, 0x1250,
+ "Related Series Sequence", "RelatedSeriesSequence", "SQ", "1" },
+ { 0x0008, 0x2110,
+ "Lossy Image Compression (Retired)", "LossyImageCompressionRetired", "CS", "1" },
+ { 0x0008, 0x2111,
+ "Derivation Description", "DerivationDescription", "ST", "1" },
+ { 0x0008, 0x2112,
+ "Source Image Sequence", "SourceImageSequence", "SQ", "1" },
+ { 0x0008, 0x2120,
+ "Stage Name", "StageName", "SH", "1" },
+ { 0x0008, 0x2122,
+ "Stage Number", "StageNumber", "IS", "1" },
+ { 0x0008, 0x2124,
+ "Number of Stages", "NumberOfStages", "IS", "1" },
+ { 0x0008, 0x2127,
+ "View Name", "ViewName", "SH", "1" },
+ { 0x0008, 0x2128,
+ "View Number", "ViewNumber", "IS", "1" },
+ { 0x0008, 0x2129,
+ "Number of Event Timers", "NumberOfEventTimers", "IS", "1" },
+ { 0x0008, 0x212a,
+ "Number of Views in Stage", "NumberOfViewsInStage", "IS", "1" },
+ { 0x0008, 0x2130,
+ "Event Elapsed Time(s)", "EventElapsedTimes", "DS", "1-n" },
+ { 0x0008, 0x2132,
+ "Event Timer Name(s)", "EventTimerNames", "LO", "1-n" },
+ { 0x0008, 0x2133,
+ "Event Timer Sequence", "EventTimerSequence", "SQ", "1" },
+ { 0x0008, 0x2134,
+ "Event Time Offset", "EventTimeOffset", "FD", "1" },
+ { 0x0008, 0x2135,
+ "Event Code Sequence", "EventCodeSequence", "SQ", "1" },
+ { 0x0008, 0x2142,
+ "Start Trim", "StartTrim", "IS", "1" },
+ { 0x0008, 0x2143,
+ "Stop Trim", "StopTrim", "IS", "1" },
+ { 0x0008, 0x2144,
+ "Recommended Display Frame Rate", "RecommendedDisplayFrameRate", "IS", "1" },
+ { 0x0008, 0x2200,
+ "Transducer Position", "TransducerPosition", "CS", "1" },
+ { 0x0008, 0x2204,
+ "Transducer Orientation", "TransducerOrientation", "CS", "1" },
+ { 0x0008, 0x2208,
+ "Anatomic Structure", "AnatomicStructure", "CS", "1" },
+ { 0x0008, 0x2218,
+ "Anatomic Region Sequence", "AnatomicRegionSequence", "SQ", "1" },
+ { 0x0008, 0x2220,
+ "Anatomic Region Modifier Sequence", "AnatomicRegionModifierSequence", "SQ", "1" },
+ { 0x0008, 0x2228,
+ "Primary Anatomic Structure Sequence", "PrimaryAnatomicStructureSequence", "SQ", "1" },
+ { 0x0008, 0x2229,
+ "Anatomic Structure, Space or Region Sequence", "AnatomicStructureSpaceOrRegionSequence", "SQ", "1" },
+ { 0x0008, 0x2230,
+ "Primary Anatomic Structure Modifier Sequence", "PrimaryAnatomicStructureModifierSequence", "SQ", "1" },
+ { 0x0008, 0x2240,
+ "Transducer Position Sequence", "TransducerPositionSequence", "SQ", "1" },
+ { 0x0008, 0x2242,
+ "Transducer Position Modifier Sequence", "TransducerPositionModifierSequence", "SQ", "1" },
+ { 0x0008, 0x2244,
+ "Transducer Orientation Sequence", "TransducerOrientationSequence", "SQ", "1" },
+ { 0x0008, 0x2246,
+ "Transducer Orientation Modifier Sequence", "TransducerOrientationModifierSequence", "SQ", "1" },
+ { 0x0008, 0x2251,
+ "Anatomic Structure Space Or Region Code Sequence (Trial)", "AnatomicStructureSpaceOrRegionCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x2253,
+ "Anatomic Portal Of Entrance Code Sequence (Trial)", "AnatomicPortalOfEntranceCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x2255,
+ "Anatomic Approach Direction Code Sequence (Trial)", "AnatomicApproachDirectionCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x2256,
+ "Anatomic Perspective Description (Trial)", "AnatomicPerspectiveDescriptionTrial", "ST", "1" },
+ { 0x0008, 0x2257,
+ "Anatomic Perspective Code Sequence (Trial)", "AnatomicPerspectiveCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x2258,
+ "Anatomic Location Of Examining Instrument Description (Trial)", "AnatomicLocationOfExaminingInstrumentDescriptionTrial", "ST", "1" },
+ { 0x0008, 0x2259,
+ "Anatomic Location Of Examining Instrument Code Sequence (Trial)", "AnatomicLocationOfExaminingInstrumentCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x225a,
+ "Anatomic Structure Space Or Region Modifier Code Sequence (Trial)", "AnatomicStructureSpaceOrRegionModifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x225c,
+ "On Axis Background Anatomic Structure Code Sequence (Trial)", "OnAxisBackgroundAnatomicStructureCodeSequenceTrial", "SQ", "1" },
+ { 0x0008, 0x3001,
+ "Alternate Representation Sequence", "AlternateRepresentationSequence", "SQ", "1" },
+ { 0x0008, 0x3010,
+ "Irradiation Event UID", "IrradiationEventUID", "UI", "1-n" },
+ { 0x0008, 0x3011,
+ "Source Irradiation Event Sequence", "SourceIrradiationEventSequence", "SQ", "1" },
+ { 0x0008, 0x3012,
+ "Radiopharmaceutical Administration Event UID", "RadiopharmaceuticalAdministrationEventUID", "UI", "1" },
+ { 0x0008, 0x4000,
+ "Identifying Comments", "IdentifyingComments", "LT", "1" },
+ { 0x0008, 0x9007,
+ "Frame Type", "FrameType", "CS", "4" },
+ { 0x0008, 0x9092,
+ "Referenced Image Evidence Sequence", "ReferencedImageEvidenceSequence", "SQ", "1" },
+ { 0x0008, 0x9121,
+ "Referenced Raw Data Sequence", "ReferencedRawDataSequence", "SQ", "1" },
+ { 0x0008, 0x9123,
+ "Creator-Version UID", "CreatorVersionUID", "UI", "1" },
+ { 0x0008, 0x9124,
+ "Derivation Image Sequence", "DerivationImageSequence", "SQ", "1" },
+ { 0x0008, 0x9154,
+ "Source Image Evidence Sequence", "SourceImageEvidenceSequence", "SQ", "1" },
+ { 0x0008, 0x9205,
+ "Pixel Presentation", "PixelPresentation", "CS", "1" },
+ { 0x0008, 0x9206,
+ "Volumetric Properties", "VolumetricProperties", "CS", "1" },
+ { 0x0008, 0x9207,
+ "Volume Based Calculation Technique", "VolumeBasedCalculationTechnique", "CS", "1" },
+ { 0x0008, 0x9208,
+ "Complex Image Component", "ComplexImageComponent", "CS", "1" },
+ { 0x0008, 0x9209,
+ "Acquisition Contrast", "AcquisitionContrast", "CS", "1" },
+ { 0x0008, 0x9215,
+ "Derivation Code Sequence", "DerivationCodeSequence", "SQ", "1" },
+ { 0x0008, 0x9237,
+ "Referenced Presentation State Sequence", "ReferencedPresentationStateSequence", "SQ", "1" },
+ { 0x0008, 0x9410,
+ "Referenced Other Plane Sequence", "ReferencedOtherPlaneSequence", "SQ", "1" },
+ { 0x0008, 0x9458,
+ "Frame Display Sequence", "FrameDisplaySequence", "SQ", "1" },
+ { 0x0008, 0x9459,
+ "Recommended Display Frame Rate in Float", "RecommendedDisplayFrameRateInFloat", "FL", "1" },
+ { 0x0008, 0x9460,
+ "Skip Frame Range Flag", "SkipFrameRangeFlag", "CS", "1" },
+ { 0x0010, 0x0010,
+ "Patient's Name", "PatientName", "PN", "1" },
+ { 0x0010, 0x0020,
+ "Patient ID", "PatientID", "LO", "1" },
+ { 0x0010, 0x0021,
+ "Issuer of Patient ID", "IssuerOfPatientID", "LO", "1" },
+ { 0x0010, 0x0022,
+ "Type of Patient ID", "TypeOfPatientID", "CS", "1" },
+ { 0x0010, 0x0024,
+ "Issuer of Patient ID Qualifiers Sequence", "IssuerOfPatientIDQualifiersSequence", "SQ", "1" },
+ { 0x0010, 0x0030,
+ "Patient's Birth Date", "PatientBirthDate", "DA", "1" },
+ { 0x0010, 0x0032,
+ "Patient's Birth Time", "PatientBirthTime", "TM", "1" },
+ { 0x0010, 0x0040,
+ "Patient's Sex", "PatientSex", "CS", "1" },
+ { 0x0010, 0x0050,
+ "Patient's Insurance Plan Code Sequence", "PatientInsurancePlanCodeSequence", "SQ", "1" },
+ { 0x0010, 0x0101,
+ "Patient's Primary Language Code Sequence", "PatientPrimaryLanguageCodeSequence", "SQ", "1" },
+ { 0x0010, 0x0102,
+ "Patient's Primary Language Modifier Code Sequence", "PatientPrimaryLanguageModifierCodeSequence", "SQ", "1" },
+ { 0x0010, 0x0200,
+ "Quality Control Subject", "QualityControlSubject", "CS", "1" },
+ { 0x0010, 0x0201,
+ "Quality Control Subject Type Code Sequence", "QualityControlSubjectTypeCodeSequence", "SQ", "1" },
+ { 0x0010, 0x1000,
+ "Other Patient IDs", "OtherPatientIDs", "LO", "1-n" },
+ { 0x0010, 0x1001,
+ "Other Patient Names", "OtherPatientNames", "PN", "1-n" },
+ { 0x0010, 0x1002,
+ "Other Patient IDs Sequence", "OtherPatientIDsSequence", "SQ", "1" },
+ { 0x0010, 0x1005,
+ "Patient's Birth Name", "PatientBirthName", "PN", "1" },
+ { 0x0010, 0x1010,
+ "Patient's Age", "PatientAge", "AS", "1" },
+ { 0x0010, 0x1020,
+ "Patient's Size", "PatientSize", "DS", "1" },
+ { 0x0010, 0x1021,
+ "Patient's Size Code Sequence", "PatientSizeCodeSequence", "SQ", "1" },
+ { 0x0010, 0x1030,
+ "Patient's Weight", "PatientWeight", "DS", "1" },
+ { 0x0010, 0x1040,
+ "Patient's Address", "PatientAddress", "LO", "1" },
+ { 0x0010, 0x1050,
+ "Insurance Plan Identification", "InsurancePlanIdentification", "LO", "1-n" },
+ { 0x0010, 0x1060,
+ "Patient's Mother's Birth Name", "PatientMotherBirthName", "PN", "1" },
+ { 0x0010, 0x1080,
+ "Military Rank", "MilitaryRank", "LO", "1" },
+ { 0x0010, 0x1081,
+ "Branch of Service", "BranchOfService", "LO", "1" },
+ { 0x0010, 0x1090,
+ "Medical Record Locator", "MedicalRecordLocator", "LO", "1" },
+ { 0x0010, 0x1100,
+ "Referenced Patient Photo Sequence", "ReferencedPatientPhotoSequence", "SQ", "1" },
+ { 0x0010, 0x2000,
+ "Medical Alerts", "MedicalAlerts", "LO", "1-n" },
+ { 0x0010, 0x2110,
+ "Allergies", "Allergies", "LO", "1-n" },
+ { 0x0010, 0x2150,
+ "Country of Residence", "CountryOfResidence", "LO", "1" },
+ { 0x0010, 0x2152,
+ "Region of Residence", "RegionOfResidence", "LO", "1" },
+ { 0x0010, 0x2154,
+ "Patient's Telephone Numbers", "PatientTelephoneNumbers", "SH", "1-n" },
+ { 0x0010, 0x2155,
+ "Patient's Telecom Information", "PatientTelecomInformation", "LT", "1" },
+ { 0x0010, 0x2160,
+ "Ethnic Group", "EthnicGroup", "SH", "1" },
+ { 0x0010, 0x2180,
+ "Occupation", "Occupation", "SH", "1" },
+ { 0x0010, 0x21a0,
+ "Smoking Status", "SmokingStatus", "CS", "1" },
+ { 0x0010, 0x21b0,
+ "Additional Patient History", "AdditionalPatientHistory", "LT", "1" },
+ { 0x0010, 0x21c0,
+ "Pregnancy Status", "PregnancyStatus", "US", "1" },
+ { 0x0010, 0x21d0,
+ "Last Menstrual Date", "LastMenstrualDate", "DA", "1" },
+ { 0x0010, 0x21f0,
+ "Patient's Religious Preference", "PatientReligiousPreference", "LO", "1" },
+ { 0x0010, 0x2201,
+ "Patient Species Description", "PatientSpeciesDescription", "LO", "1" },
+ { 0x0010, 0x2202,
+ "Patient Species Code Sequence", "PatientSpeciesCodeSequence", "SQ", "1" },
+ { 0x0010, 0x2203,
+ "Patient's Sex Neutered", "PatientSexNeutered", "CS", "1" },
+ { 0x0010, 0x2210,
+ "Anatomical Orientation Type", "AnatomicalOrientationType", "CS", "1" },
+ { 0x0010, 0x2292,
+ "Patient Breed Description", "PatientBreedDescription", "LO", "1" },
+ { 0x0010, 0x2293,
+ "Patient Breed Code Sequence", "PatientBreedCodeSequence", "SQ", "1" },
+ { 0x0010, 0x2294,
+ "Breed Registration Sequence", "BreedRegistrationSequence", "SQ", "1" },
+ { 0x0010, 0x2295,
+ "Breed Registration Number", "BreedRegistrationNumber", "LO", "1" },
+ { 0x0010, 0x2296,
+ "Breed Registry Code Sequence", "BreedRegistryCodeSequence", "SQ", "1" },
+ { 0x0010, 0x2297,
+ "Responsible Person", "ResponsiblePerson", "PN", "1" },
+ { 0x0010, 0x2298,
+ "Responsible Person Role", "ResponsiblePersonRole", "CS", "1" },
+ { 0x0010, 0x2299,
+ "Responsible Organization", "ResponsibleOrganization", "LO", "1" },
+ { 0x0010, 0x4000,
+ "Patient Comments", "PatientComments", "LT", "1" },
+ { 0x0010, 0x9431,
+ "Examined Body Thickness", "ExaminedBodyThickness", "FL", "1" },
+ { 0x0012, 0x0010,
+ "Clinical Trial Sponsor Name", "ClinicalTrialSponsorName", "LO", "1" },
+ { 0x0012, 0x0020,
+ "Clinical Trial Protocol ID", "ClinicalTrialProtocolID", "LO", "1" },
+ { 0x0012, 0x0021,
+ "Clinical Trial Protocol Name", "ClinicalTrialProtocolName", "LO", "1" },
+ { 0x0012, 0x0030,
+ "Clinical Trial Site ID", "ClinicalTrialSiteID", "LO", "1" },
+ { 0x0012, 0x0031,
+ "Clinical Trial Site Name", "ClinicalTrialSiteName", "LO", "1" },
+ { 0x0012, 0x0040,
+ "Clinical Trial Subject ID", "ClinicalTrialSubjectID", "LO", "1" },
+ { 0x0012, 0x0042,
+ "Clinical Trial Subject Reading ID", "ClinicalTrialSubjectReadingID", "LO", "1" },
+ { 0x0012, 0x0050,
+ "Clinical Trial Time Point ID", "ClinicalTrialTimePointID", "LO", "1" },
+ { 0x0012, 0x0051,
+ "Clinical Trial Time Point Description", "ClinicalTrialTimePointDescription", "ST", "1" },
+ { 0x0012, 0x0060,
+ "Clinical Trial Coordinating Center Name", "ClinicalTrialCoordinatingCenterName", "LO", "1" },
+ { 0x0012, 0x0062,
+ "Patient Identity Removed", "PatientIdentityRemoved", "CS", "1" },
+ { 0x0012, 0x0063,
+ "De-identification Method", "DeidentificationMethod", "LO", "1-n" },
+ { 0x0012, 0x0064,
+ "De-identification Method Code Sequence", "DeidentificationMethodCodeSequence", "SQ", "1" },
+ { 0x0012, 0x0071,
+ "Clinical Trial Series ID", "ClinicalTrialSeriesID", "LO", "1" },
+ { 0x0012, 0x0072,
+ "Clinical Trial Series Description", "ClinicalTrialSeriesDescription", "LO", "1" },
+ { 0x0012, 0x0081,
+ "Clinical Trial Protocol Ethics Committee Name", "ClinicalTrialProtocolEthicsCommitteeName", "LO", "1" },
+ { 0x0012, 0x0082,
+ "Clinical Trial Protocol Ethics Committee Approval Number", "ClinicalTrialProtocolEthicsCommitteeApprovalNumber", "LO", "1" },
+ { 0x0012, 0x0083,
+ "Consent for Clinical Trial Use Sequence", "ConsentForClinicalTrialUseSequence", "SQ", "1" },
+ { 0x0012, 0x0084,
+ "Distribution Type", "DistributionType", "CS", "1" },
+ { 0x0012, 0x0085,
+ "Consent for Distribution Flag", "ConsentForDistributionFlag", "CS", "1" },
+ { 0x0014, 0x0023,
+ "CAD File Format", "CADFileFormat", "ST", "1-n" },
+ { 0x0014, 0x0024,
+ "Component Reference System", "ComponentReferenceSystem", "ST", "1-n" },
+ { 0x0014, 0x0025,
+ "Component Manufacturing Procedure", "ComponentManufacturingProcedure", "ST", "1-n" },
+ { 0x0014, 0x0028,
+ "Component Manufacturer", "ComponentManufacturer", "ST", "1-n" },
+ { 0x0014, 0x0030,
+ "Material Thickness", "MaterialThickness", "DS", "1-n" },
+ { 0x0014, 0x0032,
+ "Material Pipe Diameter", "MaterialPipeDiameter", "DS", "1-n" },
+ { 0x0014, 0x0034,
+ "Material Isolation Diameter", "MaterialIsolationDiameter", "DS", "1-n" },
+ { 0x0014, 0x0042,
+ "Material Grade", "MaterialGrade", "ST", "1-n" },
+ { 0x0014, 0x0044,
+ "Material Properties Description", "MaterialPropertiesDescription", "ST", "1-n" },
+ { 0x0014, 0x0045,
+ "Material Properties File Format (Retired)", "MaterialPropertiesFileFormatRetired", "ST", "1-n" },
+ { 0x0014, 0x0046,
+ "Material Notes", "MaterialNotes", "LT", "1" },
+ { 0x0014, 0x0050,
+ "Component Shape", "ComponentShape", "CS", "1" },
+ { 0x0014, 0x0052,
+ "Curvature Type", "CurvatureType", "CS", "1" },
+ { 0x0014, 0x0054,
+ "Outer Diameter", "OuterDiameter", "DS", "1" },
+ { 0x0014, 0x0056,
+ "Inner Diameter", "InnerDiameter", "DS", "1" },
+ { 0x0014, 0x1010,
+ "Actual Environmental Conditions", "ActualEnvironmentalConditions", "ST", "1" },
+ { 0x0014, 0x1020,
+ "Expiry Date", "ExpiryDate", "DA", "1" },
+ { 0x0014, 0x1040,
+ "Environmental Conditions", "EnvironmentalConditions", "ST", "1" },
+ { 0x0014, 0x2002,
+ "Evaluator Sequence", "EvaluatorSequence", "SQ", "1" },
+ { 0x0014, 0x2004,
+ "Evaluator Number", "EvaluatorNumber", "IS", "1" },
+ { 0x0014, 0x2006,
+ "Evaluator Name", "EvaluatorName", "PN", "1" },
+ { 0x0014, 0x2008,
+ "Evaluation Attempt", "EvaluationAttempt", "IS", "1" },
+ { 0x0014, 0x2012,
+ "Indication Sequence", "IndicationSequence", "SQ", "1" },
+ { 0x0014, 0x2014,
+ "Indication Number", "IndicationNumber", "IS", "1" },
+ { 0x0014, 0x2016,
+ "Indication Label", "IndicationLabel", "SH", "1" },
+ { 0x0014, 0x2018,
+ "Indication Description", "IndicationDescription", "ST", "1" },
+ { 0x0014, 0x201a,
+ "Indication Type", "IndicationType", "CS", "1-n" },
+ { 0x0014, 0x201c,
+ "Indication Disposition", "IndicationDisposition", "CS", "1" },
+ { 0x0014, 0x201e,
+ "Indication ROI Sequence", "IndicationROISequence", "SQ", "1" },
+ { 0x0014, 0x2030,
+ "Indication Physical Property Sequence", "IndicationPhysicalPropertySequence", "SQ", "1" },
+ { 0x0014, 0x2032,
+ "Property Label", "PropertyLabel", "SH", "1" },
+ { 0x0014, 0x2202,
+ "Coordinate System Number of Axes", "CoordinateSystemNumberOfAxes", "IS", "1" },
+ { 0x0014, 0x2204,
+ "Coordinate System Axes Sequence", "CoordinateSystemAxesSequence", "SQ", "1" },
+ { 0x0014, 0x2206,
+ "Coordinate System Axis Description", "CoordinateSystemAxisDescription", "ST", "1" },
+ { 0x0014, 0x2208,
+ "Coordinate System Data Set Mapping", "CoordinateSystemDataSetMapping", "CS", "1" },
+ { 0x0014, 0x220a,
+ "Coordinate System Axis Number", "CoordinateSystemAxisNumber", "IS", "1" },
+ { 0x0014, 0x220c,
+ "Coordinate System Axis Type", "CoordinateSystemAxisType", "CS", "1" },
+ { 0x0014, 0x220e,
+ "Coordinate System Axis Units", "CoordinateSystemAxisUnits", "CS", "1" },
+ { 0x0014, 0x2210,
+ "Coordinate System Axis Values", "CoordinateSystemAxisValues", "OB", "1" },
+ { 0x0014, 0x2220,
+ "Coordinate System Transform Sequence", "CoordinateSystemTransformSequence", "SQ", "1" },
+ { 0x0014, 0x2222,
+ "Transform Description", "TransformDescription", "ST", "1" },
+ { 0x0014, 0x2224,
+ "Transform Number of Axes", "TransformNumberOfAxes", "IS", "1" },
+ { 0x0014, 0x2226,
+ "Transform Order of Axes", "TransformOrderOfAxes", "IS", "1-n" },
+ { 0x0014, 0x2228,
+ "Transformed Axis Units", "TransformedAxisUnits", "CS", "1" },
+ { 0x0014, 0x222a,
+ "Coordinate System Transform Rotation and Scale Matrix", "CoordinateSystemTransformRotationAndScaleMatrix", "DS", "1-n" },
+ { 0x0014, 0x222c,
+ "Coordinate System Transform Translation Matrix", "CoordinateSystemTransformTranslationMatrix", "DS", "1-n" },
+ { 0x0014, 0x3011,
+ "Internal Detector Frame Time", "InternalDetectorFrameTime", "DS", "1" },
+ { 0x0014, 0x3012,
+ "Number of Frames Integrated", "NumberOfFramesIntegrated", "DS", "1" },
+ { 0x0014, 0x3020,
+ "Detector Temperature Sequence", "DetectorTemperatureSequence", "SQ", "1" },
+ { 0x0014, 0x3022,
+ "Sensor Name", "SensorName", "ST", "1" },
+ { 0x0014, 0x3024,
+ "Horizontal Offset of Sensor", "HorizontalOffsetOfSensor", "DS", "1" },
+ { 0x0014, 0x3026,
+ "Vertical Offset of Sensor", "VerticalOffsetOfSensor", "DS", "1" },
+ { 0x0014, 0x3028,
+ "Sensor Temperature", "SensorTemperature", "DS", "1" },
+ { 0x0014, 0x3040,
+ "Dark Current Sequence", "DarkCurrentSequence", "SQ", "1" },
+ { 0x0014, 0x3050,
+ "Dark Current Counts", "DarkCurrentCounts", "OB or OW", "1" },
+ { 0x0014, 0x3060,
+ "Gain Correction Reference Sequence", "GainCorrectionReferenceSequence", "SQ", "1" },
+ { 0x0014, 0x3070,
+ "Air Counts", "AirCounts", "OB or OW", "1" },
+ { 0x0014, 0x3071,
+ "KV Used in Gain Calibration", "KVUsedInGainCalibration", "DS", "1" },
+ { 0x0014, 0x3072,
+ "MA Used in Gain Calibration", "MAUsedInGainCalibration", "DS", "1" },
+ { 0x0014, 0x3073,
+ "Number of Frames Used for Integration", "NumberOfFramesUsedForIntegration", "DS", "1" },
+ { 0x0014, 0x3074,
+ "Filter Material Used in Gain Calibration", "FilterMaterialUsedInGainCalibration", "LO", "1" },
+ { 0x0014, 0x3075,
+ "Filter Thickness Used in Gain Calibration", "FilterThicknessUsedInGainCalibration", "DS", "1" },
+ { 0x0014, 0x3076,
+ "Date of Gain Calibration", "DateOfGainCalibration", "DA", "1" },
+ { 0x0014, 0x3077,
+ "Time of Gain Calibration", "TimeOfGainCalibration", "TM", "1" },
+ { 0x0014, 0x3080,
+ "Bad Pixel Image", "BadPixelImage", "OB", "1" },
+ { 0x0014, 0x3099,
+ "Calibration Notes", "CalibrationNotes", "LT", "1" },
+ { 0x0014, 0x4002,
+ "Pulser Equipment Sequence", "PulserEquipmentSequence", "SQ", "1" },
+ { 0x0014, 0x4004,
+ "Pulser Type", "PulserType", "CS", "1" },
+ { 0x0014, 0x4006,
+ "Pulser Notes", "PulserNotes", "LT", "1" },
+ { 0x0014, 0x4008,
+ "Receiver Equipment Sequence", "ReceiverEquipmentSequence", "SQ", "1" },
+ { 0x0014, 0x400a,
+ "Amplifier Type", "AmplifierType", "CS", "1" },
+ { 0x0014, 0x400c,
+ "Receiver Notes", "ReceiverNotes", "LT", "1" },
+ { 0x0014, 0x400e,
+ "Pre-Amplifier Equipment Sequence", "PreAmplifierEquipmentSequence", "SQ", "1" },
+ { 0x0014, 0x400f,
+ "Pre-Amplifier Notes", "PreAmplifierNotes", "LT", "1" },
+ { 0x0014, 0x4010,
+ "Transmit Transducer Sequence", "TransmitTransducerSequence", "SQ", "1" },
+ { 0x0014, 0x4011,
+ "Receive Transducer Sequence", "ReceiveTransducerSequence", "SQ", "1" },
+ { 0x0014, 0x4012,
+ "Number of Elements", "NumberOfElements", "US", "1" },
+ { 0x0014, 0x4013,
+ "Element Shape", "ElementShape", "CS", "1" },
+ { 0x0014, 0x4014,
+ "Element Dimension A", "ElementDimensionA", "DS", "1" },
+ { 0x0014, 0x4015,
+ "Element Dimension B", "ElementDimensionB", "DS", "1" },
+ { 0x0014, 0x4016,
+ "Element Pitch A", "ElementPitchA", "DS", "1" },
+ { 0x0014, 0x4017,
+ "Measured Beam Dimension A", "MeasuredBeamDimensionA", "DS", "1" },
+ { 0x0014, 0x4018,
+ "Measured Beam Dimension B", "MeasuredBeamDimensionB", "DS", "1" },
+ { 0x0014, 0x4019,
+ "Location of Measured Beam Diameter", "LocationOfMeasuredBeamDiameter", "DS", "1" },
+ { 0x0014, 0x401a,
+ "Nominal Frequency", "NominalFrequency", "DS", "1" },
+ { 0x0014, 0x401b,
+ "Measured Center Frequency", "MeasuredCenterFrequency", "DS", "1" },
+ { 0x0014, 0x401c,
+ "Measured Bandwidth", "MeasuredBandwidth", "DS", "1" },
+ { 0x0014, 0x401d,
+ "Element Pitch B", "ElementPitchB", "DS", "1" },
+ { 0x0014, 0x4020,
+ "Pulser Settings Sequence", "PulserSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4022,
+ "Pulse Width", "PulseWidth", "DS", "1" },
+ { 0x0014, 0x4024,
+ "Excitation Frequency", "ExcitationFrequency", "DS", "1" },
+ { 0x0014, 0x4026,
+ "Modulation Type", "ModulationType", "CS", "1" },
+ { 0x0014, 0x4028,
+ "Damping", "Damping", "DS", "1" },
+ { 0x0014, 0x4030,
+ "Receiver Settings Sequence", "ReceiverSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4031,
+ "Acquired Soundpath Length", "AcquiredSoundpathLength", "DS", "1" },
+ { 0x0014, 0x4032,
+ "Acquisition Compression Type", "AcquisitionCompressionType", "CS", "1" },
+ { 0x0014, 0x4033,
+ "Acquisition Sample Size", "AcquisitionSampleSize", "IS", "1" },
+ { 0x0014, 0x4034,
+ "Rectifier Smoothing", "RectifierSmoothing", "DS", "1" },
+ { 0x0014, 0x4035,
+ "DAC Sequence", "DACSequence", "SQ", "1" },
+ { 0x0014, 0x4036,
+ "DAC Type", "DACType", "CS", "1" },
+ { 0x0014, 0x4038,
+ "DAC Gain Points", "DACGainPoints", "DS", "1-n" },
+ { 0x0014, 0x403a,
+ "DAC Time Points", "DACTimePoints", "DS", "1-n" },
+ { 0x0014, 0x403c,
+ "DAC Amplitude", "DACAmplitude", "DS", "1-n" },
+ { 0x0014, 0x4040,
+ "Pre-Amplifier Settings Sequence", "PreAmplifierSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4050,
+ "Transmit Transducer Settings Sequence", "TransmitTransducerSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4051,
+ "Receive Transducer Settings Sequence", "ReceiveTransducerSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4052,
+ "Incident Angle", "IncidentAngle", "DS", "1" },
+ { 0x0014, 0x4054,
+ "Coupling Technique", "CouplingTechnique", "ST", "1" },
+ { 0x0014, 0x4056,
+ "Coupling Medium", "CouplingMedium", "ST", "1" },
+ { 0x0014, 0x4057,
+ "Coupling Velocity", "CouplingVelocity", "DS", "1" },
+ { 0x0014, 0x4058,
+ "Probe Center Location X", "ProbeCenterLocationX", "DS", "1" },
+ { 0x0014, 0x4059,
+ "Probe Center Location Z", "ProbeCenterLocationZ", "DS", "1" },
+ { 0x0014, 0x405a,
+ "Sound Path Length", "SoundPathLength", "DS", "1" },
+ { 0x0014, 0x405c,
+ "Delay Law Identifier", "DelayLawIdentifier", "ST", "1" },
+ { 0x0014, 0x4060,
+ "Gate Settings Sequence", "GateSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4062,
+ "Gate Threshold", "GateThreshold", "DS", "1" },
+ { 0x0014, 0x4064,
+ "Velocity of Sound", "VelocityOfSound", "DS", "1" },
+ { 0x0014, 0x4070,
+ "Calibration Settings Sequence", "CalibrationSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4072,
+ "Calibration Procedure", "CalibrationProcedure", "ST", "1" },
+ { 0x0014, 0x4074,
+ "Procedure Version", "ProcedureVersion", "SH", "1" },
+ { 0x0014, 0x4076,
+ "Procedure Creation Date", "ProcedureCreationDate", "DA", "1" },
+ { 0x0014, 0x4078,
+ "Procedure Expiration Date", "ProcedureExpirationDate", "DA", "1" },
+ { 0x0014, 0x407a,
+ "Procedure Last Modified Date", "ProcedureLastModifiedDate", "DA", "1" },
+ { 0x0014, 0x407c,
+ "Calibration Time", "CalibrationTime", "TM", "1-n" },
+ { 0x0014, 0x407e,
+ "Calibration Date", "CalibrationDate", "DA", "1-n" },
+ { 0x0014, 0x4080,
+ "Probe Drive Equipment Sequence", "ProbeDriveEquipmentSequence", "SQ", "1" },
+ { 0x0014, 0x4081,
+ "Drive Type", "DriveType", "CS", "1" },
+ { 0x0014, 0x4082,
+ "Probe Drive Notes", "ProbeDriveNotes", "LT", "1" },
+ { 0x0014, 0x4083,
+ "Drive Probe Sequence", "DriveProbeSequence", "SQ", "1" },
+ { 0x0014, 0x4084,
+ "Probe Inductance", "ProbeInductance", "DS", "1" },
+ { 0x0014, 0x4085,
+ "Probe Resistance", "ProbeResistance", "DS", "1" },
+ { 0x0014, 0x4086,
+ "Receive Probe Sequence", "ReceiveProbeSequence", "SQ", "1" },
+ { 0x0014, 0x4087,
+ "Probe Drive Settings Sequence", "ProbeDriveSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4088,
+ "Bridge Resistors", "BridgeResistors", "DS", "1" },
+ { 0x0014, 0x4089,
+ "Probe Orientation Angle", "ProbeOrientationAngle", "DS", "1" },
+ { 0x0014, 0x408b,
+ "User Selected Gain Y", "UserSelectedGainY", "DS", "1" },
+ { 0x0014, 0x408c,
+ "User Selected Phase", "UserSelectedPhase", "DS", "1" },
+ { 0x0014, 0x408d,
+ "User Selected Offset X", "UserSelectedOffsetX", "DS", "1" },
+ { 0x0014, 0x408e,
+ "User Selected Offset Y", "UserSelectedOffsetY", "DS", "1" },
+ { 0x0014, 0x4091,
+ "Channel Settings Sequence", "ChannelSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x4092,
+ "Channel Threshold", "ChannelThreshold", "DS", "1" },
+ { 0x0014, 0x409a,
+ "Scanner Settings Sequence", "ScannerSettingsSequence", "SQ", "1" },
+ { 0x0014, 0x409b,
+ "Scan Procedure", "ScanProcedure", "ST", "1" },
+ { 0x0014, 0x409c,
+ "Translation Rate X", "TranslationRateX", "DS", "1" },
+ { 0x0014, 0x409d,
+ "Translation Rate Y", "TranslationRateY", "DS", "1" },
+ { 0x0014, 0x409f,
+ "Channel Overlap", "ChannelOverlap", "DS", "1" },
+ { 0x0014, 0x40a0,
+ "Image Quality Indicator Type", "ImageQualityIndicatorType", "LO", "1" },
+ { 0x0014, 0x40a1,
+ "Image Quality Indicator Material", "ImageQualityIndicatorMaterial", "LO", "1" },
+ { 0x0014, 0x40a2,
+ "Image Quality Indicator Size", "ImageQualityIndicatorSize", "LO", "1" },
+ { 0x0014, 0x5002,
+ "LINAC Energy", "LINACEnergy", "IS", "1" },
+ { 0x0014, 0x5004,
+ "LINAC Output", "LINACOutput", "IS", "1" },
+ { 0x0014, 0x5100,
+ "Active Aperture", "ActiveAperture", "US", "1" },
+ { 0x0014, 0x5101,
+ "Total Aperture", "TotalAperture", "DS", "1" },
+ { 0x0014, 0x5102,
+ "Aperture Elevation", "ApertureElevation", "DS", "1" },
+ { 0x0014, 0x5103,
+ "Main Lobe Angle", "MainLobeAngle", "DS", "1" },
+ { 0x0014, 0x5104,
+ "Main Roof Angle", "MainRoofAngle", "DS", "1" },
+ { 0x0014, 0x5105,
+ "Connector Type", "ConnectorType", "CS", "1" },
+ { 0x0014, 0x5106,
+ "Wedge Model Number", "WedgeModelNumber", "SH", "1" },
+ { 0x0014, 0x5107,
+ "Wedge Angle Float", "WedgeAngleFloat", "DS", "1" },
+ { 0x0014, 0x5108,
+ "Wedge Roof Angle", "WedgeRoofAngle", "DS", "1" },
+ { 0x0014, 0x5109,
+ "Wedge Element 1 Position", "WedgeElement1Position", "CS", "1" },
+ { 0x0014, 0x510a,
+ "Wedge Material Velocity", "WedgeMaterialVelocity", "DS", "1" },
+ { 0x0014, 0x510b,
+ "Wedge Material", "WedgeMaterial", "SH", "1" },
+ { 0x0014, 0x510c,
+ "Wedge Offset Z", "WedgeOffsetZ", "DS", "1" },
+ { 0x0014, 0x510d,
+ "Wedge Origin Offset X", "WedgeOriginOffsetX", "DS", "1" },
+ { 0x0014, 0x510e,
+ "Wedge Time Delay", "WedgeTimeDelay", "DS", "1" },
+ { 0x0014, 0x510f,
+ "Wedge Name", "WedgeName", "SH", "1" },
+ { 0x0014, 0x5110,
+ "Wedge Manufacturer Name", "WedgeManufacturerName", "SH", "1" },
+ { 0x0014, 0x5111,
+ "Wedge Description", "WedgeDescription", "LO", "1" },
+ { 0x0014, 0x5112,
+ "Nominal Beam Angle", "NominalBeamAngle", "DS", "1" },
+ { 0x0014, 0x5113,
+ "Wedge Offset X", "WedgeOffsetX", "DS", "1" },
+ { 0x0014, 0x5114,
+ "Wedge Offset Y", "WedgeOffsetY", "DS", "1" },
+ { 0x0014, 0x5115,
+ "Wedge Total Length", "WedgeTotalLength", "DS", "1" },
+ { 0x0014, 0x5116,
+ "Wedge In Contact Length", "WedgeInContactLength", "DS", "1" },
+ { 0x0014, 0x5117,
+ "Wedge Front Gap", "WedgeFrontGap", "DS", "1" },
+ { 0x0014, 0x5118,
+ "Wedge Total Height", "WedgeTotalHeight", "DS", "1" },
+ { 0x0014, 0x5119,
+ "Wedge Front Height", "WedgeFrontHeight", "DS", "1" },
+ { 0x0014, 0x511a,
+ "Wedge Rear Height", "WedgeRearHeight", "DS", "1" },
+ { 0x0014, 0x511b,
+ "Wedge Total Width", "WedgeTotalWidth", "DS", "1" },
+ { 0x0014, 0x511c,
+ "Wedge In Contact Width", "WedgeInContactWidth", "DS", "1" },
+ { 0x0014, 0x511d,
+ "Wedge Chamfer Height", "WedgeChamferHeight", "DS", "1" },
+ { 0x0014, 0x511e,
+ "Wedge Curve", "WedgeCurve", "CS", "1" },
+ { 0x0014, 0x511f,
+ "Radius Along the Wedge", "RadiusAlongWedge", "DS", "1" },
+ { 0x0018, 0x0010,
+ "Contrast/Bolus Agent", "ContrastBolusAgent", "LO", "1" },
+ { 0x0018, 0x0012,
+ "Contrast/Bolus Agent Sequence", "ContrastBolusAgentSequence", "SQ", "1" },
+ { 0x0018, 0x0013,
+ "Contrast/Bolus T1 Relaxivity", "ContrastBolusT1Relaxivity", "FL", "1" },
+ { 0x0018, 0x0014,
+ "Contrast/Bolus Administration Route Sequence", "ContrastBolusAdministrationRouteSequence", "SQ", "1" },
+ { 0x0018, 0x0015,
+ "Body Part Examined", "BodyPartExamined", "CS", "1" },
+ { 0x0018, 0x0020,
+ "Scanning Sequence", "ScanningSequence", "CS", "1-n" },
+ { 0x0018, 0x0021,
+ "Sequence Variant", "SequenceVariant", "CS", "1-n" },
+ { 0x0018, 0x0022,
+ "Scan Options", "ScanOptions", "CS", "1-n" },
+ { 0x0018, 0x0023,
+ "MR Acquisition Type", "MRAcquisitionType", "CS", "1" },
+ { 0x0018, 0x0024,
+ "Sequence Name", "SequenceName", "SH", "1" },
+ { 0x0018, 0x0025,
+ "Angio Flag", "AngioFlag", "CS", "1" },
+ { 0x0018, 0x0026,
+ "Intervention Drug Information Sequence", "InterventionDrugInformationSequence", "SQ", "1" },
+ { 0x0018, 0x0027,
+ "Intervention Drug Stop Time", "InterventionDrugStopTime", "TM", "1" },
+ { 0x0018, 0x0028,
+ "Intervention Drug Dose", "InterventionDrugDose", "DS", "1" },
+ { 0x0018, 0x0029,
+ "Intervention Drug Code Sequence", "InterventionDrugCodeSequence", "SQ", "1" },
+ { 0x0018, 0x002a,
+ "Additional Drug Sequence", "AdditionalDrugSequence", "SQ", "1" },
+ { 0x0018, 0x0030,
+ "Radionuclide", "Radionuclide", "LO", "1-n" },
+ { 0x0018, 0x0031,
+ "Radiopharmaceutical", "Radiopharmaceutical", "LO", "1" },
+ { 0x0018, 0x0032,
+ "Energy Window Centerline", "EnergyWindowCenterline", "DS", "1" },
+ { 0x0018, 0x0033,
+ "Energy Window Total Width", "EnergyWindowTotalWidth", "DS", "1-n" },
+ { 0x0018, 0x0034,
+ "Intervention Drug Name", "InterventionDrugName", "LO", "1" },
+ { 0x0018, 0x0035,
+ "Intervention Drug Start Time", "InterventionDrugStartTime", "TM", "1" },
+ { 0x0018, 0x0036,
+ "Intervention Sequence", "InterventionSequence", "SQ", "1" },
+ { 0x0018, 0x0037,
+ "Therapy Type", "TherapyType", "CS", "1" },
+ { 0x0018, 0x0038,
+ "Intervention Status", "InterventionStatus", "CS", "1" },
+ { 0x0018, 0x0039,
+ "Therapy Description", "TherapyDescription", "CS", "1" },
+ { 0x0018, 0x003a,
+ "Intervention Description", "InterventionDescription", "ST", "1" },
+ { 0x0018, 0x0040,
+ "Cine Rate", "CineRate", "IS", "1" },
+ { 0x0018, 0x0042,
+ "Initial Cine Run State", "InitialCineRunState", "CS", "1" },
+ { 0x0018, 0x0050,
+ "Slice Thickness", "SliceThickness", "DS", "1" },
+ { 0x0018, 0x0060,
+ "KVP", "KVP", "DS", "1" },
+ { 0x0018, 0x0070,
+ "Counts Accumulated", "CountsAccumulated", "IS", "1" },
+ { 0x0018, 0x0071,
+ "Acquisition Termination Condition", "AcquisitionTerminationCondition", "CS", "1" },
+ { 0x0018, 0x0072,
+ "Effective Duration", "EffectiveDuration", "DS", "1" },
+ { 0x0018, 0x0073,
+ "Acquisition Start Condition", "AcquisitionStartCondition", "CS", "1" },
+ { 0x0018, 0x0074,
+ "Acquisition Start Condition Data", "AcquisitionStartConditionData", "IS", "1" },
+ { 0x0018, 0x0075,
+ "Acquisition Termination Condition Data", "AcquisitionTerminationConditionData", "IS", "1" },
+ { 0x0018, 0x0080,
+ "Repetition Time", "RepetitionTime", "DS", "1" },
+ { 0x0018, 0x0081,
+ "Echo Time", "EchoTime", "DS", "1" },
+ { 0x0018, 0x0082,
+ "Inversion Time", "InversionTime", "DS", "1" },
+ { 0x0018, 0x0083,
+ "Number of Averages", "NumberOfAverages", "DS", "1" },
+ { 0x0018, 0x0084,
+ "Imaging Frequency", "ImagingFrequency", "DS", "1" },
+ { 0x0018, 0x0085,
+ "Imaged Nucleus", "ImagedNucleus", "SH", "1" },
+ { 0x0018, 0x0086,
+ "Echo Number(s)", "EchoNumbers", "IS", "1-n" },
+ { 0x0018, 0x0087,
+ "Magnetic Field Strength", "MagneticFieldStrength", "DS", "1" },
+ { 0x0018, 0x0088,
+ "Spacing Between Slices", "SpacingBetweenSlices", "DS", "1" },
+ { 0x0018, 0x0089,
+ "Number of Phase Encoding Steps", "NumberOfPhaseEncodingSteps", "IS", "1" },
+ { 0x0018, 0x0090,
+ "Data Collection Diameter", "DataCollectionDiameter", "DS", "1" },
+ { 0x0018, 0x0091,
+ "Echo Train Length", "EchoTrainLength", "IS", "1" },
+ { 0x0018, 0x0093,
+ "Percent Sampling", "PercentSampling", "DS", "1" },
+ { 0x0018, 0x0094,
+ "Percent Phase Field of View", "PercentPhaseFieldOfView", "DS", "1" },
+ { 0x0018, 0x0095,
+ "Pixel Bandwidth", "PixelBandwidth", "DS", "1" },
+ { 0x0018, 0x1000,
+ "Device Serial Number", "DeviceSerialNumber", "LO", "1" },
+ { 0x0018, 0x1002,
+ "Device UID", "DeviceUID", "UI", "1" },
+ { 0x0018, 0x1003,
+ "Device ID", "DeviceID", "LO", "1" },
+ { 0x0018, 0x1004,
+ "Plate ID", "PlateID", "LO", "1" },
+ { 0x0018, 0x1005,
+ "Generator ID", "GeneratorID", "LO", "1" },
+ { 0x0018, 0x1006,
+ "Grid ID", "GridID", "LO", "1" },
+ { 0x0018, 0x1007,
+ "Cassette ID", "CassetteID", "LO", "1" },
+ { 0x0018, 0x1008,
+ "Gantry ID", "GantryID", "LO", "1" },
+ { 0x0018, 0x1010,
+ "Secondary Capture Device ID", "SecondaryCaptureDeviceID", "LO", "1" },
+ { 0x0018, 0x1011,
+ "Hardcopy Creation Device ID", "HardcopyCreationDeviceID", "LO", "1" },
+ { 0x0018, 0x1012,
+ "Date of Secondary Capture", "DateOfSecondaryCapture", "DA", "1" },
+ { 0x0018, 0x1014,
+ "Time of Secondary Capture", "TimeOfSecondaryCapture", "TM", "1" },
+ { 0x0018, 0x1016,
+ "Secondary Capture Device Manufacturer", "SecondaryCaptureDeviceManufacturer", "LO", "1" },
+ { 0x0018, 0x1017,
+ "Hardcopy Device Manufacturer", "HardcopyDeviceManufacturer", "LO", "1" },
+ { 0x0018, 0x1018,
+ "Secondary Capture Device Manufacturer's Model Name", "SecondaryCaptureDeviceManufacturerModelName", "LO", "1" },
+ { 0x0018, 0x1019,
+ "Secondary Capture Device Software Versions", "SecondaryCaptureDeviceSoftwareVersions", "LO", "1-n" },
+ { 0x0018, 0x101a,
+ "Hardcopy Device Software Version", "HardcopyDeviceSoftwareVersion", "LO", "1-n" },
+ { 0x0018, 0x101b,
+ "Hardcopy Device Manufacturer's Model Name", "HardcopyDeviceManufacturerModelName", "LO", "1" },
+ { 0x0018, 0x1020,
+ "Software Version(s)", "SoftwareVersions", "LO", "1-n" },
+ { 0x0018, 0x1022,
+ "Video Image Format Acquired", "VideoImageFormatAcquired", "SH", "1" },
+ { 0x0018, 0x1023,
+ "Digital Image Format Acquired", "DigitalImageFormatAcquired", "LO", "1" },
+ { 0x0018, 0x1030,
+ "Protocol Name", "ProtocolName", "LO", "1" },
+ { 0x0018, 0x1040,
+ "Contrast/Bolus Route", "ContrastBolusRoute", "LO", "1" },
+ { 0x0018, 0x1041,
+ "Contrast/Bolus Volume", "ContrastBolusVolume", "DS", "1" },
+ { 0x0018, 0x1042,
+ "Contrast/Bolus Start Time", "ContrastBolusStartTime", "TM", "1" },
+ { 0x0018, 0x1043,
+ "Contrast/Bolus Stop Time", "ContrastBolusStopTime", "TM", "1" },
+ { 0x0018, 0x1044,
+ "Contrast/Bolus Total Dose", "ContrastBolusTotalDose", "DS", "1" },
+ { 0x0018, 0x1045,
+ "Syringe Counts", "SyringeCounts", "IS", "1" },
+ { 0x0018, 0x1046,
+ "Contrast Flow Rate", "ContrastFlowRate", "DS", "1-n" },
+ { 0x0018, 0x1047,
+ "Contrast Flow Duration", "ContrastFlowDuration", "DS", "1-n" },
+ { 0x0018, 0x1048,
+ "Contrast/Bolus Ingredient", "ContrastBolusIngredient", "CS", "1" },
+ { 0x0018, 0x1049,
+ "Contrast/Bolus Ingredient Concentration", "ContrastBolusIngredientConcentration", "DS", "1" },
+ { 0x0018, 0x1050,
+ "Spatial Resolution", "SpatialResolution", "DS", "1" },
+ { 0x0018, 0x1060,
+ "Trigger Time", "TriggerTime", "DS", "1" },
+ { 0x0018, 0x1061,
+ "Trigger Source or Type", "TriggerSourceOrType", "LO", "1" },
+ { 0x0018, 0x1062,
+ "Nominal Interval", "NominalInterval", "IS", "1" },
+ { 0x0018, 0x1063,
+ "Frame Time", "FrameTime", "DS", "1" },
+ { 0x0018, 0x1064,
+ "Cardiac Framing Type", "CardiacFramingType", "LO", "1" },
+ { 0x0018, 0x1065,
+ "Frame Time Vector", "FrameTimeVector", "DS", "1-n" },
+ { 0x0018, 0x1066,
+ "Frame Delay", "FrameDelay", "DS", "1" },
+ { 0x0018, 0x1067,
+ "Image Trigger Delay", "ImageTriggerDelay", "DS", "1" },
+ { 0x0018, 0x1068,
+ "Multiplex Group Time Offset", "MultiplexGroupTimeOffset", "DS", "1" },
+ { 0x0018, 0x1069,
+ "Trigger Time Offset", "TriggerTimeOffset", "DS", "1" },
+ { 0x0018, 0x106a,
+ "Synchronization Trigger", "SynchronizationTrigger", "CS", "1" },
+ { 0x0018, 0x106c,
+ "Synchronization Channel", "SynchronizationChannel", "US", "2" },
+ { 0x0018, 0x106e,
+ "Trigger Sample Position", "TriggerSamplePosition", "UL", "1" },
+ { 0x0018, 0x1070,
+ "Radiopharmaceutical Route", "RadiopharmaceuticalRoute", "LO", "1" },
+ { 0x0018, 0x1071,
+ "Radiopharmaceutical Volume", "RadiopharmaceuticalVolume", "DS", "1" },
+ { 0x0018, 0x1072,
+ "Radiopharmaceutical Start Time", "RadiopharmaceuticalStartTime", "TM", "1" },
+ { 0x0018, 0x1073,
+ "Radiopharmaceutical Stop Time", "RadiopharmaceuticalStopTime", "TM", "1" },
+ { 0x0018, 0x1074,
+ "Radionuclide Total Dose", "RadionuclideTotalDose", "DS", "1" },
+ { 0x0018, 0x1075,
+ "Radionuclide Half Life", "RadionuclideHalfLife", "DS", "1" },
+ { 0x0018, 0x1076,
+ "Radionuclide Positron Fraction", "RadionuclidePositronFraction", "DS", "1" },
+ { 0x0018, 0x1077,
+ "Radiopharmaceutical Specific Activity", "RadiopharmaceuticalSpecificActivity", "DS", "1" },
+ { 0x0018, 0x1078,
+ "Radiopharmaceutical Start DateTime", "RadiopharmaceuticalStartDateTime", "DT", "1" },
+ { 0x0018, 0x1079,
+ "Radiopharmaceutical Stop DateTime", "RadiopharmaceuticalStopDateTime", "DT", "1" },
+ { 0x0018, 0x1080,
+ "Beat Rejection Flag", "BeatRejectionFlag", "CS", "1" },
+ { 0x0018, 0x1081,
+ "Low R-R Value", "LowRRValue", "IS", "1" },
+ { 0x0018, 0x1082,
+ "High R-R Value", "HighRRValue", "IS", "1" },
+ { 0x0018, 0x1083,
+ "Intervals Acquired", "IntervalsAcquired", "IS", "1" },
+ { 0x0018, 0x1084,
+ "Intervals Rejected", "IntervalsRejected", "IS", "1" },
+ { 0x0018, 0x1085,
+ "PVC Rejection", "PVCRejection", "LO", "1" },
+ { 0x0018, 0x1086,
+ "Skip Beats", "SkipBeats", "IS", "1" },
+ { 0x0018, 0x1088,
+ "Heart Rate", "HeartRate", "IS", "1" },
+ { 0x0018, 0x1090,
+ "Cardiac Number of Images", "CardiacNumberOfImages", "IS", "1" },
+ { 0x0018, 0x1094,
+ "Trigger Window", "TriggerWindow", "IS", "1" },
+ { 0x0018, 0x1100,
+ "Reconstruction Diameter", "ReconstructionDiameter", "DS", "1" },
+ { 0x0018, 0x1110,
+ "Distance Source to Detector", "DistanceSourceToDetector", "DS", "1" },
+ { 0x0018, 0x1111,
+ "Distance Source to Patient", "DistanceSourceToPatient", "DS", "1" },
+ { 0x0018, 0x1114,
+ "Estimated Radiographic Magnification Factor", "EstimatedRadiographicMagnificationFactor", "DS", "1" },
+ { 0x0018, 0x1120,
+ "Gantry/Detector Tilt", "GantryDetectorTilt", "DS", "1" },
+ { 0x0018, 0x1121,
+ "Gantry/Detector Slew", "GantryDetectorSlew", "DS", "1" },
+ { 0x0018, 0x1130,
+ "Table Height", "TableHeight", "DS", "1" },
+ { 0x0018, 0x1131,
+ "Table Traverse", "TableTraverse", "DS", "1" },
+ { 0x0018, 0x1134,
+ "Table Motion", "TableMotion", "CS", "1" },
+ { 0x0018, 0x1135,
+ "Table Vertical Increment", "TableVerticalIncrement", "DS", "1-n" },
+ { 0x0018, 0x1136,
+ "Table Lateral Increment", "TableLateralIncrement", "DS", "1-n" },
+ { 0x0018, 0x1137,
+ "Table Longitudinal Increment", "TableLongitudinalIncrement", "DS", "1-n" },
+ { 0x0018, 0x1138,
+ "Table Angle", "TableAngle", "DS", "1" },
+ { 0x0018, 0x113a,
+ "Table Type", "TableType", "CS", "1" },
+ { 0x0018, 0x1140,
+ "Rotation Direction", "RotationDirection", "CS", "1" },
+ { 0x0018, 0x1141,
+ "Angular Position", "AngularPosition", "DS", "1" },
+ { 0x0018, 0x1142,
+ "Radial Position", "RadialPosition", "DS", "1-n" },
+ { 0x0018, 0x1143,
+ "Scan Arc", "ScanArc", "DS", "1" },
+ { 0x0018, 0x1144,
+ "Angular Step", "AngularStep", "DS", "1" },
+ { 0x0018, 0x1145,
+ "Center of Rotation Offset", "CenterOfRotationOffset", "DS", "1" },
+ { 0x0018, 0x1146,
+ "Rotation Offset", "RotationOffset", "DS", "1-n" },
+ { 0x0018, 0x1147,
+ "Field of View Shape", "FieldOfViewShape", "CS", "1" },
+ { 0x0018, 0x1149,
+ "Field of View Dimension(s)", "FieldOfViewDimensions", "IS", "1-2" },
+ { 0x0018, 0x1150,
+ "Exposure Time", "ExposureTime", "IS", "1" },
+ { 0x0018, 0x1151,
+ "X-Ray Tube Current", "XRayTubeCurrent", "IS", "1" },
+ { 0x0018, 0x1152,
+ "Exposure", "Exposure", "IS", "1" },
+ { 0x0018, 0x1153,
+ "Exposure in uAs", "ExposureInuAs", "IS", "1" },
+ { 0x0018, 0x1154,
+ "Average Pulse Width", "AveragePulseWidth", "DS", "1" },
+ { 0x0018, 0x1155,
+ "Radiation Setting", "RadiationSetting", "CS", "1" },
+ { 0x0018, 0x1156,
+ "Rectification Type", "RectificationType", "CS", "1" },
+ { 0x0018, 0x115a,
+ "Radiation Mode", "RadiationMode", "CS", "1" },
+ { 0x0018, 0x115e,
+ "Image and Fluoroscopy Area Dose Product", "ImageAndFluoroscopyAreaDoseProduct", "DS", "1" },
+ { 0x0018, 0x1160,
+ "Filter Type", "FilterType", "SH", "1" },
+ { 0x0018, 0x1161,
+ "Type of Filters", "TypeOfFilters", "LO", "1-n" },
+ { 0x0018, 0x1162,
+ "Intensifier Size", "IntensifierSize", "DS", "1" },
+ { 0x0018, 0x1164,
+ "Imager Pixel Spacing", "ImagerPixelSpacing", "DS", "2" },
+ { 0x0018, 0x1166,
+ "Grid", "Grid", "CS", "1-n" },
+ { 0x0018, 0x1170,
+ "Generator Power", "GeneratorPower", "IS", "1" },
+ { 0x0018, 0x1180,
+ "Collimator/grid Name", "CollimatorGridName", "SH", "1" },
+ { 0x0018, 0x1181,
+ "Collimator Type", "CollimatorType", "CS", "1" },
+ { 0x0018, 0x1182,
+ "Focal Distance", "FocalDistance", "IS", "1-2" },
+ { 0x0018, 0x1183,
+ "X Focus Center", "XFocusCenter", "DS", "1-2" },
+ { 0x0018, 0x1184,
+ "Y Focus Center", "YFocusCenter", "DS", "1-2" },
+ { 0x0018, 0x1190,
+ "Focal Spot(s)", "FocalSpots", "DS", "1-n" },
+ { 0x0018, 0x1191,
+ "Anode Target Material", "AnodeTargetMaterial", "CS", "1" },
+ { 0x0018, 0x11a0,
+ "Body Part Thickness", "BodyPartThickness", "DS", "1" },
+ { 0x0018, 0x11a2,
+ "Compression Force", "CompressionForce", "DS", "1" },
+ { 0x0018, 0x11a4,
+ "Paddle Description", "PaddleDescription", "LO", "1" },
+ { 0x0018, 0x1200,
+ "Date of Last Calibration", "DateOfLastCalibration", "DA", "1-n" },
+ { 0x0018, 0x1201,
+ "Time of Last Calibration", "TimeOfLastCalibration", "TM", "1-n" },
+ { 0x0018, 0x1202,
+ "DateTime of Last Calibration", "DateTimeOfLastCalibration", "DT", "1" },
+ { 0x0018, 0x1210,
+ "Convolution Kernel", "ConvolutionKernel", "SH", "1-n" },
+ { 0x0018, 0x1240,
+ "Upper/Lower Pixel Values", "UpperLowerPixelValues", "IS", "1-n" },
+ { 0x0018, 0x1242,
+ "Actual Frame Duration", "ActualFrameDuration", "IS", "1" },
+ { 0x0018, 0x1243,
+ "Count Rate", "CountRate", "IS", "1" },
+ { 0x0018, 0x1244,
+ "Preferred Playback Sequencing", "PreferredPlaybackSequencing", "US", "1" },
+ { 0x0018, 0x1250,
+ "Receive Coil Name", "ReceiveCoilName", "SH", "1" },
+ { 0x0018, 0x1251,
+ "Transmit Coil Name", "TransmitCoilName", "SH", "1" },
+ { 0x0018, 0x1260,
+ "Plate Type", "PlateType", "SH", "1" },
+ { 0x0018, 0x1261,
+ "Phosphor Type", "PhosphorType", "LO", "1" },
+ { 0x0018, 0x1300,
+ "Scan Velocity", "ScanVelocity", "DS", "1" },
+ { 0x0018, 0x1301,
+ "Whole Body Technique", "WholeBodyTechnique", "CS", "1-n" },
+ { 0x0018, 0x1302,
+ "Scan Length", "ScanLength", "IS", "1" },
+ { 0x0018, 0x1310,
+ "Acquisition Matrix", "AcquisitionMatrix", "US", "4" },
+ { 0x0018, 0x1312,
+ "In-plane Phase Encoding Direction", "InPlanePhaseEncodingDirection", "CS", "1" },
+ { 0x0018, 0x1314,
+ "Flip Angle", "FlipAngle", "DS", "1" },
+ { 0x0018, 0x1315,
+ "Variable Flip Angle Flag", "VariableFlipAngleFlag", "CS", "1" },
+ { 0x0018, 0x1316,
+ "SAR", "SAR", "DS", "1" },
+ { 0x0018, 0x1318,
+ "dB/dt", "dBdt", "DS", "1" },
+ { 0x0018, 0x1400,
+ "Acquisition Device Processing Description", "AcquisitionDeviceProcessingDescription", "LO", "1" },
+ { 0x0018, 0x1401,
+ "Acquisition Device Processing Code", "AcquisitionDeviceProcessingCode", "LO", "1" },
+ { 0x0018, 0x1402,
+ "Cassette Orientation", "CassetteOrientation", "CS", "1" },
+ { 0x0018, 0x1403,
+ "Cassette Size", "CassetteSize", "CS", "1" },
+ { 0x0018, 0x1404,
+ "Exposures on Plate", "ExposuresOnPlate", "US", "1" },
+ { 0x0018, 0x1405,
+ "Relative X-Ray Exposure", "RelativeXRayExposure", "IS", "1" },
+ { 0x0018, 0x1411,
+ "Exposure Index", "ExposureIndex", "DS", "1" },
+ { 0x0018, 0x1412,
+ "Target Exposure Index", "TargetExposureIndex", "DS", "1" },
+ { 0x0018, 0x1413,
+ "Deviation Index", "DeviationIndex", "DS", "1" },
+ { 0x0018, 0x1450,
+ "Column Angulation", "ColumnAngulation", "DS", "1" },
+ { 0x0018, 0x1460,
+ "Tomo Layer Height", "TomoLayerHeight", "DS", "1" },
+ { 0x0018, 0x1470,
+ "Tomo Angle", "TomoAngle", "DS", "1" },
+ { 0x0018, 0x1480,
+ "Tomo Time", "TomoTime", "DS", "1" },
+ { 0x0018, 0x1490,
+ "Tomo Type", "TomoType", "CS", "1" },
+ { 0x0018, 0x1491,
+ "Tomo Class", "TomoClass", "CS", "1" },
+ { 0x0018, 0x1495,
+ "Number of Tomosynthesis Source Images", "NumberOfTomosynthesisSourceImages", "IS", "1" },
+ { 0x0018, 0x1500,
+ "Positioner Motion", "PositionerMotion", "CS", "1" },
+ { 0x0018, 0x1508,
+ "Positioner Type", "PositionerType", "CS", "1" },
+ { 0x0018, 0x1510,
+ "Positioner Primary Angle", "PositionerPrimaryAngle", "DS", "1" },
+ { 0x0018, 0x1511,
+ "Positioner Secondary Angle", "PositionerSecondaryAngle", "DS", "1" },
+ { 0x0018, 0x1520,
+ "Positioner Primary Angle Increment", "PositionerPrimaryAngleIncrement", "DS", "1-n" },
+ { 0x0018, 0x1521,
+ "Positioner Secondary Angle Increment", "PositionerSecondaryAngleIncrement", "DS", "1-n" },
+ { 0x0018, 0x1530,
+ "Detector Primary Angle", "DetectorPrimaryAngle", "DS", "1" },
+ { 0x0018, 0x1531,
+ "Detector Secondary Angle", "DetectorSecondaryAngle", "DS", "1" },
+ { 0x0018, 0x1600,
+ "Shutter Shape", "ShutterShape", "CS", "1-3" },
+ { 0x0018, 0x1602,
+ "Shutter Left Vertical Edge", "ShutterLeftVerticalEdge", "IS", "1" },
+ { 0x0018, 0x1604,
+ "Shutter Right Vertical Edge", "ShutterRightVerticalEdge", "IS", "1" },
+ { 0x0018, 0x1606,
+ "Shutter Upper Horizontal Edge", "ShutterUpperHorizontalEdge", "IS", "1" },
+ { 0x0018, 0x1608,
+ "Shutter Lower Horizontal Edge", "ShutterLowerHorizontalEdge", "IS", "1" },
+ { 0x0018, 0x1610,
+ "Center of Circular Shutter", "CenterOfCircularShutter", "IS", "2" },
+ { 0x0018, 0x1612,
+ "Radius of Circular Shutter", "RadiusOfCircularShutter", "IS", "1" },
+ { 0x0018, 0x1620,
+ "Vertices of the Polygonal Shutter", "VerticesOfThePolygonalShutter", "IS", "2-2n" },
+ { 0x0018, 0x1622,
+ "Shutter Presentation Value", "ShutterPresentationValue", "US", "1" },
+ { 0x0018, 0x1623,
+ "Shutter Overlay Group", "ShutterOverlayGroup", "US", "1" },
+ { 0x0018, 0x1624,
+ "Shutter Presentation Color CIELab Value", "ShutterPresentationColorCIELabValue", "US", "3" },
+ { 0x0018, 0x1700,
+ "Collimator Shape", "CollimatorShape", "CS", "1-3" },
+ { 0x0018, 0x1702,
+ "Collimator Left Vertical Edge", "CollimatorLeftVerticalEdge", "IS", "1" },
+ { 0x0018, 0x1704,
+ "Collimator Right Vertical Edge", "CollimatorRightVerticalEdge", "IS", "1" },
+ { 0x0018, 0x1706,
+ "Collimator Upper Horizontal Edge", "CollimatorUpperHorizontalEdge", "IS", "1" },
+ { 0x0018, 0x1708,
+ "Collimator Lower Horizontal Edge", "CollimatorLowerHorizontalEdge", "IS", "1" },
+ { 0x0018, 0x1710,
+ "Center of Circular Collimator", "CenterOfCircularCollimator", "IS", "2" },
+ { 0x0018, 0x1712,
+ "Radius of Circular Collimator", "RadiusOfCircularCollimator", "IS", "1" },
+ { 0x0018, 0x1720,
+ "Vertices of the Polygonal Collimator", "VerticesOfThePolygonalCollimator", "IS", "2-2n" },
+ { 0x0018, 0x1800,
+ "Acquisition Time Synchronized", "AcquisitionTimeSynchronized", "CS", "1" },
+ { 0x0018, 0x1801,
+ "Time Source", "TimeSource", "SH", "1" },
+ { 0x0018, 0x1802,
+ "Time Distribution Protocol", "TimeDistributionProtocol", "CS", "1" },
+ { 0x0018, 0x1803,
+ "NTP Source Address", "NTPSourceAddress", "LO", "1" },
+ { 0x0018, 0x2001,
+ "Page Number Vector", "PageNumberVector", "IS", "1-n" },
+ { 0x0018, 0x2002,
+ "Frame Label Vector", "FrameLabelVector", "SH", "1-n" },
+ { 0x0018, 0x2003,
+ "Frame Primary Angle Vector", "FramePrimaryAngleVector", "DS", "1-n" },
+ { 0x0018, 0x2004,
+ "Frame Secondary Angle Vector", "FrameSecondaryAngleVector", "DS", "1-n" },
+ { 0x0018, 0x2005,
+ "Slice Location Vector", "SliceLocationVector", "DS", "1-n" },
+ { 0x0018, 0x2006,
+ "Display Window Label Vector", "DisplayWindowLabelVector", "SH", "1-n" },
+ { 0x0018, 0x2010,
+ "Nominal Scanned Pixel Spacing", "NominalScannedPixelSpacing", "DS", "2" },
+ { 0x0018, 0x2020,
+ "Digitizing Device Transport Direction", "DigitizingDeviceTransportDirection", "CS", "1" },
+ { 0x0018, 0x2030,
+ "Rotation of Scanned Film", "RotationOfScannedFilm", "DS", "1" },
+ { 0x0018, 0x2041,
+ "Biopsy Target Sequence", "BiopsyTargetSequence", "SQ", "1" },
+ { 0x0018, 0x2042,
+ "Target UID", "TargetUID", "UI", "1" },
+ { 0x0018, 0x2043,
+ "Localizing Cursor Position", "LocalizingCursorPosition", "FL", "2" },
+ { 0x0018, 0x2044,
+ "Calculated Target Position", "CalculatedTargetPosition", "FL", "3" },
+ { 0x0018, 0x2045,
+ "Target Label", "TargetLabel", "SH", "1" },
+ { 0x0018, 0x2046,
+ "Displayed Z Value", "DisplayedZValue", "FL", "1" },
+ { 0x0018, 0x3100,
+ "IVUS Acquisition", "IVUSAcquisition", "CS", "1" },
+ { 0x0018, 0x3101,
+ "IVUS Pullback Rate", "IVUSPullbackRate", "DS", "1" },
+ { 0x0018, 0x3102,
+ "IVUS Gated Rate", "IVUSGatedRate", "DS", "1" },
+ { 0x0018, 0x3103,
+ "IVUS Pullback Start Frame Number", "IVUSPullbackStartFrameNumber", "IS", "1" },
+ { 0x0018, 0x3104,
+ "IVUS Pullback Stop Frame Number", "IVUSPullbackStopFrameNumber", "IS", "1" },
+ { 0x0018, 0x3105,
+ "Lesion Number", "LesionNumber", "IS", "1-n" },
+ { 0x0018, 0x4000,
+ "Acquisition Comments", "AcquisitionComments", "LT", "1" },
+ { 0x0018, 0x5000,
+ "Output Power", "OutputPower", "SH", "1-n" },
+ { 0x0018, 0x5010,
+ "Transducer Data", "TransducerData", "LO", "1-n" },
+ { 0x0018, 0x5012,
+ "Focus Depth", "FocusDepth", "DS", "1" },
+ { 0x0018, 0x5020,
+ "Processing Function", "ProcessingFunction", "LO", "1" },
+ { 0x0018, 0x5021,
+ "Postprocessing Function", "PostprocessingFunction", "LO", "1" },
+ { 0x0018, 0x5022,
+ "Mechanical Index", "MechanicalIndex", "DS", "1" },
+ { 0x0018, 0x5024,
+ "Bone Thermal Index", "BoneThermalIndex", "DS", "1" },
+ { 0x0018, 0x5026,
+ "Cranial Thermal Index", "CranialThermalIndex", "DS", "1" },
+ { 0x0018, 0x5027,
+ "Soft Tissue Thermal Index", "SoftTissueThermalIndex", "DS", "1" },
+ { 0x0018, 0x5028,
+ "Soft Tissue-focus Thermal Index", "SoftTissueFocusThermalIndex", "DS", "1" },
+ { 0x0018, 0x5029,
+ "Soft Tissue-surface Thermal Index", "SoftTissueSurfaceThermalIndex", "DS", "1" },
+ { 0x0018, 0x5030,
+ "Dynamic Range", "DynamicRange", "DS", "1" },
+ { 0x0018, 0x5040,
+ "Total Gain", "TotalGain", "DS", "1" },
+ { 0x0018, 0x5050,
+ "Depth of Scan Field", "DepthOfScanField", "IS", "1" },
+ { 0x0018, 0x5100,
+ "Patient Position", "PatientPosition", "CS", "1" },
+ { 0x0018, 0x5101,
+ "View Position", "ViewPosition", "CS", "1" },
+ { 0x0018, 0x5104,
+ "Projection Eponymous Name Code Sequence", "ProjectionEponymousNameCodeSequence", "SQ", "1" },
+ { 0x0018, 0x5210,
+ "Image Transformation Matrix", "ImageTransformationMatrix", "DS", "6" },
+ { 0x0018, 0x5212,
+ "Image Translation Vector", "ImageTranslationVector", "DS", "3" },
+ { 0x0018, 0x6000,
+ "Sensitivity", "Sensitivity", "DS", "1" },
+ { 0x0018, 0x6011,
+ "Sequence of Ultrasound Regions", "SequenceOfUltrasoundRegions", "SQ", "1" },
+ { 0x0018, 0x6012,
+ "Region Spatial Format", "RegionSpatialFormat", "US", "1" },
+ { 0x0018, 0x6014,
+ "Region Data Type", "RegionDataType", "US", "1" },
+ { 0x0018, 0x6016,
+ "Region Flags", "RegionFlags", "UL", "1" },
+ { 0x0018, 0x6018,
+ "Region Location Min X0", "RegionLocationMinX0", "UL", "1" },
+ { 0x0018, 0x601a,
+ "Region Location Min Y0", "RegionLocationMinY0", "UL", "1" },
+ { 0x0018, 0x601c,
+ "Region Location Max X1", "RegionLocationMaxX1", "UL", "1" },
+ { 0x0018, 0x601e,
+ "Region Location Max Y1", "RegionLocationMaxY1", "UL", "1" },
+ { 0x0018, 0x6020,
+ "Reference Pixel X0", "ReferencePixelX0", "SL", "1" },
+ { 0x0018, 0x6022,
+ "Reference Pixel Y0", "ReferencePixelY0", "SL", "1" },
+ { 0x0018, 0x6024,
+ "Physical Units X Direction", "PhysicalUnitsXDirection", "US", "1" },
+ { 0x0018, 0x6026,
+ "Physical Units Y Direction", "PhysicalUnitsYDirection", "US", "1" },
+ { 0x0018, 0x6028,
+ "Reference Pixel Physical Value X", "ReferencePixelPhysicalValueX", "FD", "1" },
+ { 0x0018, 0x602a,
+ "Reference Pixel Physical Value Y", "ReferencePixelPhysicalValueY", "FD", "1" },
+ { 0x0018, 0x602c,
+ "Physical Delta X", "PhysicalDeltaX", "FD", "1" },
+ { 0x0018, 0x602e,
+ "Physical Delta Y", "PhysicalDeltaY", "FD", "1" },
+ { 0x0018, 0x6030,
+ "Transducer Frequency", "TransducerFrequency", "UL", "1" },
+ { 0x0018, 0x6031,
+ "Transducer Type", "TransducerType", "CS", "1" },
+ { 0x0018, 0x6032,
+ "Pulse Repetition Frequency", "PulseRepetitionFrequency", "UL", "1" },
+ { 0x0018, 0x6034,
+ "Doppler Correction Angle", "DopplerCorrectionAngle", "FD", "1" },
+ { 0x0018, 0x6036,
+ "Steering Angle", "SteeringAngle", "FD", "1" },
+ { 0x0018, 0x6038,
+ "Doppler Sample Volume X Position (Retired)", "DopplerSampleVolumeXPositionRetired", "UL", "1" },
+ { 0x0018, 0x6039,
+ "Doppler Sample Volume X Position", "DopplerSampleVolumeXPosition", "SL", "1" },
+ { 0x0018, 0x603a,
+ "Doppler Sample Volume Y Position (Retired)", "DopplerSampleVolumeYPositionRetired", "UL", "1" },
+ { 0x0018, 0x603b,
+ "Doppler Sample Volume Y Position", "DopplerSampleVolumeYPosition", "SL", "1" },
+ { 0x0018, 0x603c,
+ "TM-Line Position X0 (Retired)", "TMLinePositionX0Retired", "UL", "1" },
+ { 0x0018, 0x603d,
+ "TM-Line Position X0", "TMLinePositionX0", "SL", "1" },
+ { 0x0018, 0x603e,
+ "TM-Line Position Y0 (Retired)", "TMLinePositionY0Retired", "UL", "1" },
+ { 0x0018, 0x603f,
+ "TM-Line Position Y0", "TMLinePositionY0", "SL", "1" },
+ { 0x0018, 0x6040,
+ "TM-Line Position X1 (Retired)", "TMLinePositionX1Retired", "UL", "1" },
+ { 0x0018, 0x6041,
+ "TM-Line Position X1", "TMLinePositionX1", "SL", "1" },
+ { 0x0018, 0x6042,
+ "TM-Line Position Y1 (Retired)", "TMLinePositionY1Retired", "UL", "1" },
+ { 0x0018, 0x6043,
+ "TM-Line Position Y1", "TMLinePositionY1", "SL", "1" },
+ { 0x0018, 0x6044,
+ "Pixel Component Organization", "PixelComponentOrganization", "US", "1" },
+ { 0x0018, 0x6046,
+ "Pixel Component Mask", "PixelComponentMask", "UL", "1" },
+ { 0x0018, 0x6048,
+ "Pixel Component Range Start", "PixelComponentRangeStart", "UL", "1" },
+ { 0x0018, 0x604a,
+ "Pixel Component Range Stop", "PixelComponentRangeStop", "UL", "1" },
+ { 0x0018, 0x604c,
+ "Pixel Component Physical Units", "PixelComponentPhysicalUnits", "US", "1" },
+ { 0x0018, 0x604e,
+ "Pixel Component Data Type", "PixelComponentDataType", "US", "1" },
+ { 0x0018, 0x6050,
+ "Number of Table Break Points", "NumberOfTableBreakPoints", "UL", "1" },
+ { 0x0018, 0x6052,
+ "Table of X Break Points", "TableOfXBreakPoints", "UL", "1-n" },
+ { 0x0018, 0x6054,
+ "Table of Y Break Points", "TableOfYBreakPoints", "FD", "1-n" },
+ { 0x0018, 0x6056,
+ "Number of Table Entries", "NumberOfTableEntries", "UL", "1" },
+ { 0x0018, 0x6058,
+ "Table of Pixel Values", "TableOfPixelValues", "UL", "1-n" },
+ { 0x0018, 0x605a,
+ "Table of Parameter Values", "TableOfParameterValues", "FL", "1-n" },
+ { 0x0018, 0x6060,
+ "R Wave Time Vector", "RWaveTimeVector", "FL", "1-n" },
+ { 0x0018, 0x7000,
+ "Detector Conditions Nominal Flag", "DetectorConditionsNominalFlag", "CS", "1" },
+ { 0x0018, 0x7001,
+ "Detector Temperature", "DetectorTemperature", "DS", "1" },
+ { 0x0018, 0x7004,
+ "Detector Type", "DetectorType", "CS", "1" },
+ { 0x0018, 0x7005,
+ "Detector Configuration", "DetectorConfiguration", "CS", "1" },
+ { 0x0018, 0x7006,
+ "Detector Description", "DetectorDescription", "LT", "1" },
+ { 0x0018, 0x7008,
+ "Detector Mode", "DetectorMode", "LT", "1" },
+ { 0x0018, 0x700a,
+ "Detector ID", "DetectorID", "SH", "1" },
+ { 0x0018, 0x700c,
+ "Date of Last Detector Calibration", "DateOfLastDetectorCalibration", "DA", "1" },
+ { 0x0018, 0x700e,
+ "Time of Last Detector Calibration", "TimeOfLastDetectorCalibration", "TM", "1" },
+ { 0x0018, 0x7010,
+ "Exposures on Detector Since Last Calibration", "ExposuresOnDetectorSinceLastCalibration", "IS", "1" },
+ { 0x0018, 0x7011,
+ "Exposures on Detector Since Manufactured", "ExposuresOnDetectorSinceManufactured", "IS", "1" },
+ { 0x0018, 0x7012,
+ "Detector Time Since Last Exposure", "DetectorTimeSinceLastExposure", "DS", "1" },
+ { 0x0018, 0x7014,
+ "Detector Active Time", "DetectorActiveTime", "DS", "1" },
+ { 0x0018, 0x7016,
+ "Detector Activation Offset From Exposure", "DetectorActivationOffsetFromExposure", "DS", "1" },
+ { 0x0018, 0x701a,
+ "Detector Binning", "DetectorBinning", "DS", "2" },
+ { 0x0018, 0x7020,
+ "Detector Element Physical Size", "DetectorElementPhysicalSize", "DS", "2" },
+ { 0x0018, 0x7022,
+ "Detector Element Spacing", "DetectorElementSpacing", "DS", "2" },
+ { 0x0018, 0x7024,
+ "Detector Active Shape", "DetectorActiveShape", "CS", "1" },
+ { 0x0018, 0x7026,
+ "Detector Active Dimension(s)", "DetectorActiveDimensions", "DS", "1-2" },
+ { 0x0018, 0x7028,
+ "Detector Active Origin", "DetectorActiveOrigin", "DS", "2" },
+ { 0x0018, 0x702a,
+ "Detector Manufacturer Name", "DetectorManufacturerName", "LO", "1" },
+ { 0x0018, 0x702b,
+ "Detector Manufacturer's Model Name", "DetectorManufacturerModelName", "LO", "1" },
+ { 0x0018, 0x7030,
+ "Field of View Origin", "FieldOfViewOrigin", "DS", "2" },
+ { 0x0018, 0x7032,
+ "Field of View Rotation", "FieldOfViewRotation", "DS", "1" },
+ { 0x0018, 0x7034,
+ "Field of View Horizontal Flip", "FieldOfViewHorizontalFlip", "CS", "1" },
+ { 0x0018, 0x7036,
+ "Pixel Data Area Origin Relative To FOV", "PixelDataAreaOriginRelativeToFOV", "FL", "2" },
+ { 0x0018, 0x7038,
+ "Pixel Data Area Rotation Angle Relative To FOV", "PixelDataAreaRotationAngleRelativeToFOV", "FL", "1" },
+ { 0x0018, 0x7040,
+ "Grid Absorbing Material", "GridAbsorbingMaterial", "LT", "1" },
+ { 0x0018, 0x7041,
+ "Grid Spacing Material", "GridSpacingMaterial", "LT", "1" },
+ { 0x0018, 0x7042,
+ "Grid Thickness", "GridThickness", "DS", "1" },
+ { 0x0018, 0x7044,
+ "Grid Pitch", "GridPitch", "DS", "1" },
+ { 0x0018, 0x7046,
+ "Grid Aspect Ratio", "GridAspectRatio", "IS", "2" },
+ { 0x0018, 0x7048,
+ "Grid Period", "GridPeriod", "DS", "1" },
+ { 0x0018, 0x704c,
+ "Grid Focal Distance", "GridFocalDistance", "DS", "1" },
+ { 0x0018, 0x7050,
+ "Filter Material", "FilterMaterial", "CS", "1-n" },
+ { 0x0018, 0x7052,
+ "Filter Thickness Minimum", "FilterThicknessMinimum", "DS", "1-n" },
+ { 0x0018, 0x7054,
+ "Filter Thickness Maximum", "FilterThicknessMaximum", "DS", "1-n" },
+ { 0x0018, 0x7056,
+ "Filter Beam Path Length Minimum", "FilterBeamPathLengthMinimum", "FL", "1-n" },
+ { 0x0018, 0x7058,
+ "Filter Beam Path Length Maximum", "FilterBeamPathLengthMaximum", "FL", "1-n" },
+ { 0x0018, 0x7060,
+ "Exposure Control Mode", "ExposureControlMode", "CS", "1" },
+ { 0x0018, 0x7062,
+ "Exposure Control Mode Description", "ExposureControlModeDescription", "LT", "1" },
+ { 0x0018, 0x7064,
+ "Exposure Status", "ExposureStatus", "CS", "1" },
+ { 0x0018, 0x7065,
+ "Phototimer Setting", "PhototimerSetting", "DS", "1" },
+ { 0x0018, 0x8150,
+ "Exposure Time in uS", "ExposureTimeInuS", "DS", "1" },
+ { 0x0018, 0x8151,
+ "X-Ray Tube Current in uA", "XRayTubeCurrentInuA", "DS", "1" },
+ { 0x0018, 0x9004,
+ "Content Qualification", "ContentQualification", "CS", "1" },
+ { 0x0018, 0x9005,
+ "Pulse Sequence Name", "PulseSequenceName", "SH", "1" },
+ { 0x0018, 0x9006,
+ "MR Imaging Modifier Sequence", "MRImagingModifierSequence", "SQ", "1" },
+ { 0x0018, 0x9008,
+ "Echo Pulse Sequence", "EchoPulseSequence", "CS", "1" },
+ { 0x0018, 0x9009,
+ "Inversion Recovery", "InversionRecovery", "CS", "1" },
+ { 0x0018, 0x9010,
+ "Flow Compensation", "FlowCompensation", "CS", "1" },
+ { 0x0018, 0x9011,
+ "Multiple Spin Echo", "MultipleSpinEcho", "CS", "1" },
+ { 0x0018, 0x9012,
+ "Multi-planar Excitation", "MultiPlanarExcitation", "CS", "1" },
+ { 0x0018, 0x9014,
+ "Phase Contrast", "PhaseContrast", "CS", "1" },
+ { 0x0018, 0x9015,
+ "Time of Flight Contrast", "TimeOfFlightContrast", "CS", "1" },
+ { 0x0018, 0x9016,
+ "Spoiling", "Spoiling", "CS", "1" },
+ { 0x0018, 0x9017,
+ "Steady State Pulse Sequence", "SteadyStatePulseSequence", "CS", "1" },
+ { 0x0018, 0x9018,
+ "Echo Planar Pulse Sequence", "EchoPlanarPulseSequence", "CS", "1" },
+ { 0x0018, 0x9019,
+ "Tag Angle First Axis", "TagAngleFirstAxis", "FD", "1" },
+ { 0x0018, 0x9020,
+ "Magnetization Transfer", "MagnetizationTransfer", "CS", "1" },
+ { 0x0018, 0x9021,
+ "T2 Preparation", "T2Preparation", "CS", "1" },
+ { 0x0018, 0x9022,
+ "Blood Signal Nulling", "BloodSignalNulling", "CS", "1" },
+ { 0x0018, 0x9024,
+ "Saturation Recovery", "SaturationRecovery", "CS", "1" },
+ { 0x0018, 0x9025,
+ "Spectrally Selected Suppression", "SpectrallySelectedSuppression", "CS", "1" },
+ { 0x0018, 0x9026,
+ "Spectrally Selected Excitation", "SpectrallySelectedExcitation", "CS", "1" },
+ { 0x0018, 0x9027,
+ "Spatial Pre-saturation", "SpatialPresaturation", "CS", "1" },
+ { 0x0018, 0x9028,
+ "Tagging", "Tagging", "CS", "1" },
+ { 0x0018, 0x9029,
+ "Oversampling Phase", "OversamplingPhase", "CS", "1" },
+ { 0x0018, 0x9030,
+ "Tag Spacing First Dimension", "TagSpacingFirstDimension", "FD", "1" },
+ { 0x0018, 0x9032,
+ "Geometry of k-Space Traversal", "GeometryOfKSpaceTraversal", "CS", "1" },
+ { 0x0018, 0x9033,
+ "Segmented k-Space Traversal", "SegmentedKSpaceTraversal", "CS", "1" },
+ { 0x0018, 0x9034,
+ "Rectilinear Phase Encode Reordering", "RectilinearPhaseEncodeReordering", "CS", "1" },
+ { 0x0018, 0x9035,
+ "Tag Thickness", "TagThickness", "FD", "1" },
+ { 0x0018, 0x9036,
+ "Partial Fourier Direction", "PartialFourierDirection", "CS", "1" },
+ { 0x0018, 0x9037,
+ "Cardiac Synchronization Technique", "CardiacSynchronizationTechnique", "CS", "1" },
+ { 0x0018, 0x9041,
+ "Receive Coil Manufacturer Name", "ReceiveCoilManufacturerName", "LO", "1" },
+ { 0x0018, 0x9042,
+ "MR Receive Coil Sequence", "MRReceiveCoilSequence", "SQ", "1" },
+ { 0x0018, 0x9043,
+ "Receive Coil Type", "ReceiveCoilType", "CS", "1" },
+ { 0x0018, 0x9044,
+ "Quadrature Receive Coil", "QuadratureReceiveCoil", "CS", "1" },
+ { 0x0018, 0x9045,
+ "Multi-Coil Definition Sequence", "MultiCoilDefinitionSequence", "SQ", "1" },
+ { 0x0018, 0x9046,
+ "Multi-Coil Configuration", "MultiCoilConfiguration", "LO", "1" },
+ { 0x0018, 0x9047,
+ "Multi-Coil Element Name", "MultiCoilElementName", "SH", "1" },
+ { 0x0018, 0x9048,
+ "Multi-Coil Element Used", "MultiCoilElementUsed", "CS", "1" },
+ { 0x0018, 0x9049,
+ "MR Transmit Coil Sequence", "MRTransmitCoilSequence", "SQ", "1" },
+ { 0x0018, 0x9050,
+ "Transmit Coil Manufacturer Name", "TransmitCoilManufacturerName", "LO", "1" },
+ { 0x0018, 0x9051,
+ "Transmit Coil Type", "TransmitCoilType", "CS", "1" },
+ { 0x0018, 0x9052,
+ "Spectral Width", "SpectralWidth", "FD", "1-2" },
+ { 0x0018, 0x9053,
+ "Chemical Shift Reference", "ChemicalShiftReference", "FD", "1-2" },
+ { 0x0018, 0x9054,
+ "Volume Localization Technique", "VolumeLocalizationTechnique", "CS", "1" },
+ { 0x0018, 0x9058,
+ "MR Acquisition Frequency Encoding Steps", "MRAcquisitionFrequencyEncodingSteps", "US", "1" },
+ { 0x0018, 0x9059,
+ "De-coupling", "Decoupling", "CS", "1" },
+ { 0x0018, 0x9060,
+ "De-coupled Nucleus", "DecoupledNucleus", "CS", "1-2" },
+ { 0x0018, 0x9061,
+ "De-coupling Frequency", "DecouplingFrequency", "FD", "1-2" },
+ { 0x0018, 0x9062,
+ "De-coupling Method", "DecouplingMethod", "CS", "1" },
+ { 0x0018, 0x9063,
+ "De-coupling Chemical Shift Reference", "DecouplingChemicalShiftReference", "FD", "1-2" },
+ { 0x0018, 0x9064,
+ "k-space Filtering", "KSpaceFiltering", "CS", "1" },
+ { 0x0018, 0x9065,
+ "Time Domain Filtering", "TimeDomainFiltering", "CS", "1-2" },
+ { 0x0018, 0x9066,
+ "Number of Zero Fills", "NumberOfZeroFills", "US", "1-2" },
+ { 0x0018, 0x9067,
+ "Baseline Correction", "BaselineCorrection", "CS", "1" },
+ { 0x0018, 0x9069,
+ "Parallel Reduction Factor In-plane", "ParallelReductionFactorInPlane", "FD", "1" },
+ { 0x0018, 0x9070,
+ "Cardiac R-R Interval Specified", "CardiacRRIntervalSpecified", "FD", "1" },
+ { 0x0018, 0x9073,
+ "Acquisition Duration", "AcquisitionDuration", "FD", "1" },
+ { 0x0018, 0x9074,
+ "Frame Acquisition DateTime", "FrameAcquisitionDateTime", "DT", "1" },
+ { 0x0018, 0x9075,
+ "Diffusion Directionality", "DiffusionDirectionality", "CS", "1" },
+ { 0x0018, 0x9076,
+ "Diffusion Gradient Direction Sequence", "DiffusionGradientDirectionSequence", "SQ", "1" },
+ { 0x0018, 0x9077,
+ "Parallel Acquisition", "ParallelAcquisition", "CS", "1" },
+ { 0x0018, 0x9078,
+ "Parallel Acquisition Technique", "ParallelAcquisitionTechnique", "CS", "1" },
+ { 0x0018, 0x9079,
+ "Inversion Times", "InversionTimes", "FD", "1-n" },
+ { 0x0018, 0x9080,
+ "Metabolite Map Description", "MetaboliteMapDescription", "ST", "1" },
+ { 0x0018, 0x9081,
+ "Partial Fourier", "PartialFourier", "CS", "1" },
+ { 0x0018, 0x9082,
+ "Effective Echo Time", "EffectiveEchoTime", "FD", "1" },
+ { 0x0018, 0x9083,
+ "Metabolite Map Code Sequence", "MetaboliteMapCodeSequence", "SQ", "1" },
+ { 0x0018, 0x9084,
+ "Chemical Shift Sequence", "ChemicalShiftSequence", "SQ", "1" },
+ { 0x0018, 0x9085,
+ "Cardiac Signal Source", "CardiacSignalSource", "CS", "1" },
+ { 0x0018, 0x9087,
+ "Diffusion b-value", "DiffusionBValue", "FD", "1" },
+ { 0x0018, 0x9089,
+ "Diffusion Gradient Orientation", "DiffusionGradientOrientation", "FD", "3" },
+ { 0x0018, 0x9090,
+ "Velocity Encoding Direction", "VelocityEncodingDirection", "FD", "3" },
+ { 0x0018, 0x9091,
+ "Velocity Encoding Minimum Value", "VelocityEncodingMinimumValue", "FD", "1" },
+ { 0x0018, 0x9092,
+ "Velocity Encoding Acquisition Sequence", "VelocityEncodingAcquisitionSequence", "SQ", "1" },
+ { 0x0018, 0x9093,
+ "Number of k-Space Trajectories", "NumberOfKSpaceTrajectories", "US", "1" },
+ { 0x0018, 0x9094,
+ "Coverage of k-Space", "CoverageOfKSpace", "CS", "1" },
+ { 0x0018, 0x9095,
+ "Spectroscopy Acquisition Phase Rows", "SpectroscopyAcquisitionPhaseRows", "UL", "1" },
+ { 0x0018, 0x9096,
+ "Parallel Reduction Factor In-plane (Retired)", "ParallelReductionFactorInPlaneRetired", "FD", "1" },
+ { 0x0018, 0x9098,
+ "Transmitter Frequency", "TransmitterFrequency", "FD", "1-2" },
+ { 0x0018, 0x9100,
+ "Resonant Nucleus", "ResonantNucleus", "CS", "1-2" },
+ { 0x0018, 0x9101,
+ "Frequency Correction", "FrequencyCorrection", "CS", "1" },
+ { 0x0018, 0x9103,
+ "MR Spectroscopy FOV/Geometry Sequence", "MRSpectroscopyFOVGeometrySequence", "SQ", "1" },
+ { 0x0018, 0x9104,
+ "Slab Thickness", "SlabThickness", "FD", "1" },
+ { 0x0018, 0x9105,
+ "Slab Orientation", "SlabOrientation", "FD", "3" },
+ { 0x0018, 0x9106,
+ "Mid Slab Position", "MidSlabPosition", "FD", "3" },
+ { 0x0018, 0x9107,
+ "MR Spatial Saturation Sequence", "MRSpatialSaturationSequence", "SQ", "1" },
+ { 0x0018, 0x9112,
+ "MR Timing and Related Parameters Sequence", "MRTimingAndRelatedParametersSequence", "SQ", "1" },
+ { 0x0018, 0x9114,
+ "MR Echo Sequence", "MREchoSequence", "SQ", "1" },
+ { 0x0018, 0x9115,
+ "MR Modifier Sequence", "MRModifierSequence", "SQ", "1" },
+ { 0x0018, 0x9117,
+ "MR Diffusion Sequence", "MRDiffusionSequence", "SQ", "1" },
+ { 0x0018, 0x9118,
+ "Cardiac Synchronization Sequence", "CardiacSynchronizationSequence", "SQ", "1" },
+ { 0x0018, 0x9119,
+ "MR Averages Sequence", "MRAveragesSequence", "SQ", "1" },
+ { 0x0018, 0x9125,
+ "MR FOV/Geometry Sequence", "MRFOVGeometrySequence", "SQ", "1" },
+ { 0x0018, 0x9126,
+ "Volume Localization Sequence", "VolumeLocalizationSequence", "SQ", "1" },
+ { 0x0018, 0x9127,
+ "Spectroscopy Acquisition Data Columns", "SpectroscopyAcquisitionDataColumns", "UL", "1" },
+ { 0x0018, 0x9147,
+ "Diffusion Anisotropy Type", "DiffusionAnisotropyType", "CS", "1" },
+ { 0x0018, 0x9151,
+ "Frame Reference DateTime", "FrameReferenceDateTime", "DT", "1" },
+ { 0x0018, 0x9152,
+ "MR Metabolite Map Sequence", "MRMetaboliteMapSequence", "SQ", "1" },
+ { 0x0018, 0x9155,
+ "Parallel Reduction Factor out-of-plane", "ParallelReductionFactorOutOfPlane", "FD", "1" },
+ { 0x0018, 0x9159,
+ "Spectroscopy Acquisition Out-of-plane Phase Steps", "SpectroscopyAcquisitionOutOfPlanePhaseSteps", "UL", "1" },
+ { 0x0018, 0x9166,
+ "Bulk Motion Status", "BulkMotionStatus", "CS", "1" },
+ { 0x0018, 0x9168,
+ "Parallel Reduction Factor Second In-plane", "ParallelReductionFactorSecondInPlane", "FD", "1" },
+ { 0x0018, 0x9169,
+ "Cardiac Beat Rejection Technique", "CardiacBeatRejectionTechnique", "CS", "1" },
+ { 0x0018, 0x9170,
+ "Respiratory Motion Compensation Technique", "RespiratoryMotionCompensationTechnique", "CS", "1" },
+ { 0x0018, 0x9171,
+ "Respiratory Signal Source", "RespiratorySignalSource", "CS", "1" },
+ { 0x0018, 0x9172,
+ "Bulk Motion Compensation Technique", "BulkMotionCompensationTechnique", "CS", "1" },
+ { 0x0018, 0x9173,
+ "Bulk Motion Signal Source", "BulkMotionSignalSource", "CS", "1" },
+ { 0x0018, 0x9174,
+ "Applicable Safety Standard Agency", "ApplicableSafetyStandardAgency", "CS", "1" },
+ { 0x0018, 0x9175,
+ "Applicable Safety Standard Description", "ApplicableSafetyStandardDescription", "LO", "1" },
+ { 0x0018, 0x9176,
+ "Operating Mode Sequence", "OperatingModeSequence", "SQ", "1" },
+ { 0x0018, 0x9177,
+ "Operating Mode Type", "OperatingModeType", "CS", "1" },
+ { 0x0018, 0x9178,
+ "Operating Mode", "OperatingMode", "CS", "1" },
+ { 0x0018, 0x9179,
+ "Specific Absorption Rate Definition", "SpecificAbsorptionRateDefinition", "CS", "1" },
+ { 0x0018, 0x9180,
+ "Gradient Output Type", "GradientOutputType", "CS", "1" },
+ { 0x0018, 0x9181,
+ "Specific Absorption Rate Value", "SpecificAbsorptionRateValue", "FD", "1" },
+ { 0x0018, 0x9182,
+ "Gradient Output", "GradientOutput", "FD", "1" },
+ { 0x0018, 0x9183,
+ "Flow Compensation Direction", "FlowCompensationDirection", "CS", "1" },
+ { 0x0018, 0x9184,
+ "Tagging Delay", "TaggingDelay", "FD", "1" },
+ { 0x0018, 0x9185,
+ "Respiratory Motion Compensation Technique Description", "RespiratoryMotionCompensationTechniqueDescription", "ST", "1" },
+ { 0x0018, 0x9186,
+ "Respiratory Signal Source ID", "RespiratorySignalSourceID", "SH", "1" },
+ { 0x0018, 0x9195,
+ "Chemical Shift Minimum Integration Limit in Hz", "ChemicalShiftMinimumIntegrationLimitInHz", "FD", "1" },
+ { 0x0018, 0x9196,
+ "Chemical Shift Maximum Integration Limit in Hz", "ChemicalShiftMaximumIntegrationLimitInHz", "FD", "1" },
+ { 0x0018, 0x9197,
+ "MR Velocity Encoding Sequence", "MRVelocityEncodingSequence", "SQ", "1" },
+ { 0x0018, 0x9198,
+ "First Order Phase Correction", "FirstOrderPhaseCorrection", "CS", "1" },
+ { 0x0018, 0x9199,
+ "Water Referenced Phase Correction", "WaterReferencedPhaseCorrection", "CS", "1" },
+ { 0x0018, 0x9200,
+ "MR Spectroscopy Acquisition Type", "MRSpectroscopyAcquisitionType", "CS", "1" },
+ { 0x0018, 0x9214,
+ "Respiratory Cycle Position", "RespiratoryCyclePosition", "CS", "1" },
+ { 0x0018, 0x9217,
+ "Velocity Encoding Maximum Value", "VelocityEncodingMaximumValue", "FD", "1" },
+ { 0x0018, 0x9218,
+ "Tag Spacing Second Dimension", "TagSpacingSecondDimension", "FD", "1" },
+ { 0x0018, 0x9219,
+ "Tag Angle Second Axis", "TagAngleSecondAxis", "SS", "1" },
+ { 0x0018, 0x9220,
+ "Frame Acquisition Duration", "FrameAcquisitionDuration", "FD", "1" },
+ { 0x0018, 0x9226,
+ "MR Image Frame Type Sequence", "MRImageFrameTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9227,
+ "MR Spectroscopy Frame Type Sequence", "MRSpectroscopyFrameTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9231,
+ "MR Acquisition Phase Encoding Steps in-plane", "MRAcquisitionPhaseEncodingStepsInPlane", "US", "1" },
+ { 0x0018, 0x9232,
+ "MR Acquisition Phase Encoding Steps out-of-plane", "MRAcquisitionPhaseEncodingStepsOutOfPlane", "US", "1" },
+ { 0x0018, 0x9234,
+ "Spectroscopy Acquisition Phase Columns", "SpectroscopyAcquisitionPhaseColumns", "UL", "1" },
+ { 0x0018, 0x9236,
+ "Cardiac Cycle Position", "CardiacCyclePosition", "CS", "1" },
+ { 0x0018, 0x9239,
+ "Specific Absorption Rate Sequence", "SpecificAbsorptionRateSequence", "SQ", "1" },
+ { 0x0018, 0x9240,
+ "RF Echo Train Length", "RFEchoTrainLength", "US", "1" },
+ { 0x0018, 0x9241,
+ "Gradient Echo Train Length", "GradientEchoTrainLength", "US", "1" },
+ { 0x0018, 0x9250,
+ "Arterial Spin Labeling Contrast", "ArterialSpinLabelingContrast", "CS", "1" },
+ { 0x0018, 0x9251,
+ "MR Arterial Spin Labeling Sequence", "MRArterialSpinLabelingSequence", "SQ", "1" },
+ { 0x0018, 0x9252,
+ "ASL Technique Description", "ASLTechniqueDescription", "LO", "1" },
+ { 0x0018, 0x9253,
+ "ASL Slab Number", "ASLSlabNumber", "US", "1" },
+ { 0x0018, 0x9254,
+ "ASL Slab Thickness", "ASLSlabThickness", "FD", "1" },
+ { 0x0018, 0x9255,
+ "ASL Slab Orientation", "ASLSlabOrientation", "FD", "3" },
+ { 0x0018, 0x9256,
+ "ASL Mid Slab Position", "ASLMidSlabPosition", "FD", "3" },
+ { 0x0018, 0x9257,
+ "ASL Context", "ASLContext", "CS", "1" },
+ { 0x0018, 0x9258,
+ "ASL Pulse Train Duration", "ASLPulseTrainDuration", "UL", "1" },
+ { 0x0018, 0x9259,
+ "ASL Crusher Flag", "ASLCrusherFlag", "CS", "1" },
+ { 0x0018, 0x925a,
+ "ASL Crusher Flow Limit", "ASLCrusherFlowLimit", "FD", "1" },
+ { 0x0018, 0x925b,
+ "ASL Crusher Description", "ASLCrusherDescription", "LO", "1" },
+ { 0x0018, 0x925c,
+ "ASL Bolus Cut-off Flag", "ASLBolusCutoffFlag", "CS", "1" },
+ { 0x0018, 0x925d,
+ "ASL Bolus Cut-off Timing Sequence", "ASLBolusCutoffTimingSequence", "SQ", "1" },
+ { 0x0018, 0x925e,
+ "ASL Bolus Cut-off Technique", "ASLBolusCutoffTechnique", "LO", "1" },
+ { 0x0018, 0x925f,
+ "ASL Bolus Cut-off Delay Time", "ASLBolusCutoffDelayTime", "UL", "1" },
+ { 0x0018, 0x9260,
+ "ASL Slab Sequence", "ASLSlabSequence", "SQ", "1" },
+ { 0x0018, 0x9295,
+ "Chemical Shift Minimum Integration Limit in ppm", "ChemicalShiftMinimumIntegrationLimitInppm", "FD", "1" },
+ { 0x0018, 0x9296,
+ "Chemical Shift Maximum Integration Limit in ppm", "ChemicalShiftMaximumIntegrationLimitInppm", "FD", "1" },
+ { 0x0018, 0x9297,
+ "Water Reference Acquisition", "WaterReferenceAcquisition", "CS", "1" },
+ { 0x0018, 0x9298,
+ "Echo Peak Position", "EchoPeakPosition", "IS", "1" },
+ { 0x0018, 0x9301,
+ "CT Acquisition Type Sequence", "CTAcquisitionTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9302,
+ "Acquisition Type", "AcquisitionType", "CS", "1" },
+ { 0x0018, 0x9303,
+ "Tube Angle", "TubeAngle", "FD", "1" },
+ { 0x0018, 0x9304,
+ "CT Acquisition Details Sequence", "CTAcquisitionDetailsSequence", "SQ", "1" },
+ { 0x0018, 0x9305,
+ "Revolution Time", "RevolutionTime", "FD", "1" },
+ { 0x0018, 0x9306,
+ "Single Collimation Width", "SingleCollimationWidth", "FD", "1" },
+ { 0x0018, 0x9307,
+ "Total Collimation Width", "TotalCollimationWidth", "FD", "1" },
+ { 0x0018, 0x9308,
+ "CT Table Dynamics Sequence", "CTTableDynamicsSequence", "SQ", "1" },
+ { 0x0018, 0x9309,
+ "Table Speed", "TableSpeed", "FD", "1" },
+ { 0x0018, 0x9310,
+ "Table Feed per Rotation", "TableFeedPerRotation", "FD", "1" },
+ { 0x0018, 0x9311,
+ "Spiral Pitch Factor", "SpiralPitchFactor", "FD", "1" },
+ { 0x0018, 0x9312,
+ "CT Geometry Sequence", "CTGeometrySequence", "SQ", "1" },
+ { 0x0018, 0x9313,
+ "Data Collection Center (Patient)", "DataCollectionCenterPatient", "FD", "3" },
+ { 0x0018, 0x9314,
+ "CT Reconstruction Sequence", "CTReconstructionSequence", "SQ", "1" },
+ { 0x0018, 0x9315,
+ "Reconstruction Algorithm", "ReconstructionAlgorithm", "CS", "1" },
+ { 0x0018, 0x9316,
+ "Convolution Kernel Group", "ConvolutionKernelGroup", "CS", "1" },
+ { 0x0018, 0x9317,
+ "Reconstruction Field of View", "ReconstructionFieldOfView", "FD", "2" },
+ { 0x0018, 0x9318,
+ "Reconstruction Target Center (Patient)", "ReconstructionTargetCenterPatient", "FD", "3" },
+ { 0x0018, 0x9319,
+ "Reconstruction Angle", "ReconstructionAngle", "FD", "1" },
+ { 0x0018, 0x9320,
+ "Image Filter", "ImageFilter", "SH", "1" },
+ { 0x0018, 0x9321,
+ "CT Exposure Sequence", "CTExposureSequence", "SQ", "1" },
+ { 0x0018, 0x9322,
+ "Reconstruction Pixel Spacing", "ReconstructionPixelSpacing", "FD", "2" },
+ { 0x0018, 0x9323,
+ "Exposure Modulation Type", "ExposureModulationType", "CS", "1" },
+ { 0x0018, 0x9324,
+ "Estimated Dose Saving", "EstimatedDoseSaving", "FD", "1" },
+ { 0x0018, 0x9325,
+ "CT X-Ray Details Sequence", "CTXRayDetailsSequence", "SQ", "1" },
+ { 0x0018, 0x9326,
+ "CT Position Sequence", "CTPositionSequence", "SQ", "1" },
+ { 0x0018, 0x9327,
+ "Table Position", "TablePosition", "FD", "1" },
+ { 0x0018, 0x9328,
+ "Exposure Time in ms", "ExposureTimeInms", "FD", "1" },
+ { 0x0018, 0x9329,
+ "CT Image Frame Type Sequence", "CTImageFrameTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9330,
+ "X-Ray Tube Current in mA", "XRayTubeCurrentInmA", "FD", "1" },
+ { 0x0018, 0x9332,
+ "Exposure in mAs", "ExposureInmAs", "FD", "1" },
+ { 0x0018, 0x9333,
+ "Constant Volume Flag", "ConstantVolumeFlag", "CS", "1" },
+ { 0x0018, 0x9334,
+ "Fluoroscopy Flag", "FluoroscopyFlag", "CS", "1" },
+ { 0x0018, 0x9335,
+ "Distance Source to Data Collection Center", "DistanceSourceToDataCollectionCenter", "FD", "1" },
+ { 0x0018, 0x9337,
+ "Contrast/Bolus Agent Number", "ContrastBolusAgentNumber", "US", "1" },
+ { 0x0018, 0x9338,
+ "Contrast/Bolus Ingredient Code Sequence", "ContrastBolusIngredientCodeSequence", "SQ", "1" },
+ { 0x0018, 0x9340,
+ "Contrast Administration Profile Sequence", "ContrastAdministrationProfileSequence", "SQ", "1" },
+ { 0x0018, 0x9341,
+ "Contrast/Bolus Usage Sequence", "ContrastBolusUsageSequence", "SQ", "1" },
+ { 0x0018, 0x9342,
+ "Contrast/Bolus Agent Administered", "ContrastBolusAgentAdministered", "CS", "1" },
+ { 0x0018, 0x9343,
+ "Contrast/Bolus Agent Detected", "ContrastBolusAgentDetected", "CS", "1" },
+ { 0x0018, 0x9344,
+ "Contrast/Bolus Agent Phase", "ContrastBolusAgentPhase", "CS", "1" },
+ { 0x0018, 0x9345,
+ "CTDIvol", "CTDIvol", "FD", "1" },
+ { 0x0018, 0x9346,
+ "CTDI Phantom Type Code Sequence", "CTDIPhantomTypeCodeSequence", "SQ", "1" },
+ { 0x0018, 0x9351,
+ "Calcium Scoring Mass Factor Patient", "CalciumScoringMassFactorPatient", "FL", "1" },
+ { 0x0018, 0x9352,
+ "Calcium Scoring Mass Factor Device", "CalciumScoringMassFactorDevice", "FL", "3" },
+ { 0x0018, 0x9353,
+ "Energy Weighting Factor", "EnergyWeightingFactor", "FL", "1" },
+ { 0x0018, 0x9360,
+ "CT Additional X-Ray Source Sequence", "CTAdditionalXRaySourceSequence", "SQ", "1" },
+ { 0x0018, 0x9401,
+ "Projection Pixel Calibration Sequence", "ProjectionPixelCalibrationSequence", "SQ", "1" },
+ { 0x0018, 0x9402,
+ "Distance Source to Isocenter", "DistanceSourceToIsocenter", "FL", "1" },
+ { 0x0018, 0x9403,
+ "Distance Object to Table Top", "DistanceObjectToTableTop", "FL", "1" },
+ { 0x0018, 0x9404,
+ "Object Pixel Spacing in Center of Beam", "ObjectPixelSpacingInCenterOfBeam", "FL", "2" },
+ { 0x0018, 0x9405,
+ "Positioner Position Sequence", "PositionerPositionSequence", "SQ", "1" },
+ { 0x0018, 0x9406,
+ "Table Position Sequence", "TablePositionSequence", "SQ", "1" },
+ { 0x0018, 0x9407,
+ "Collimator Shape Sequence", "CollimatorShapeSequence", "SQ", "1" },
+ { 0x0018, 0x9410,
+ "Planes in Acquisition", "PlanesInAcquisition", "CS", "1" },
+ { 0x0018, 0x9412,
+ "XA/XRF Frame Characteristics Sequence", "XAXRFFrameCharacteristicsSequence", "SQ", "1" },
+ { 0x0018, 0x9417,
+ "Frame Acquisition Sequence", "FrameAcquisitionSequence", "SQ", "1" },
+ { 0x0018, 0x9420,
+ "X-Ray Receptor Type", "XRayReceptorType", "CS", "1" },
+ { 0x0018, 0x9423,
+ "Acquisition Protocol Name", "AcquisitionProtocolName", "LO", "1" },
+ { 0x0018, 0x9424,
+ "Acquisition Protocol Description", "AcquisitionProtocolDescription", "LT", "1" },
+ { 0x0018, 0x9425,
+ "Contrast/Bolus Ingredient Opaque", "ContrastBolusIngredientOpaque", "CS", "1" },
+ { 0x0018, 0x9426,
+ "Distance Receptor Plane to Detector Housing", "DistanceReceptorPlaneToDetectorHousing", "FL", "1" },
+ { 0x0018, 0x9427,
+ "Intensifier Active Shape", "IntensifierActiveShape", "CS", "1" },
+ { 0x0018, 0x9428,
+ "Intensifier Active Dimension(s)", "IntensifierActiveDimensions", "FL", "1-2" },
+ { 0x0018, 0x9429,
+ "Physical Detector Size", "PhysicalDetectorSize", "FL", "2" },
+ { 0x0018, 0x9430,
+ "Position of Isocenter Projection", "PositionOfIsocenterProjection", "FL", "2" },
+ { 0x0018, 0x9432,
+ "Field of View Sequence", "FieldOfViewSequence", "SQ", "1" },
+ { 0x0018, 0x9433,
+ "Field of View Description", "FieldOfViewDescription", "LO", "1" },
+ { 0x0018, 0x9434,
+ "Exposure Control Sensing Regions Sequence", "ExposureControlSensingRegionsSequence", "SQ", "1" },
+ { 0x0018, 0x9435,
+ "Exposure Control Sensing Region Shape", "ExposureControlSensingRegionShape", "CS", "1" },
+ { 0x0018, 0x9436,
+ "Exposure Control Sensing Region Left Vertical Edge", "ExposureControlSensingRegionLeftVerticalEdge", "SS", "1" },
+ { 0x0018, 0x9437,
+ "Exposure Control Sensing Region Right Vertical Edge", "ExposureControlSensingRegionRightVerticalEdge", "SS", "1" },
+ { 0x0018, 0x9438,
+ "Exposure Control Sensing Region Upper Horizontal Edge", "ExposureControlSensingRegionUpperHorizontalEdge", "SS", "1" },
+ { 0x0018, 0x9439,
+ "Exposure Control Sensing Region Lower Horizontal Edge", "ExposureControlSensingRegionLowerHorizontalEdge", "SS", "1" },
+ { 0x0018, 0x9440,
+ "Center of Circular Exposure Control Sensing Region", "CenterOfCircularExposureControlSensingRegion", "SS", "2" },
+ { 0x0018, 0x9441,
+ "Radius of Circular Exposure Control Sensing Region", "RadiusOfCircularExposureControlSensingRegion", "US", "1" },
+ { 0x0018, 0x9442,
+ "Vertices of the Polygonal Exposure Control Sensing Region", "VerticesOfThePolygonalExposureControlSensingRegion", "SS", "2-n" },
+ { 0x0018, 0x9447,
+ "Column Angulation (Patient)", "ColumnAngulationPatient", "FL", "1" },
+ { 0x0018, 0x9449,
+ "Beam Angle", "BeamAngle", "FL", "1" },
+ { 0x0018, 0x9451,
+ "Frame Detector Parameters Sequence", "FrameDetectorParametersSequence", "SQ", "1" },
+ { 0x0018, 0x9452,
+ "Calculated Anatomy Thickness", "CalculatedAnatomyThickness", "FL", "1" },
+ { 0x0018, 0x9455,
+ "Calibration Sequence", "CalibrationSequence", "SQ", "1" },
+ { 0x0018, 0x9456,
+ "Object Thickness Sequence", "ObjectThicknessSequence", "SQ", "1" },
+ { 0x0018, 0x9457,
+ "Plane Identification", "PlaneIdentification", "CS", "1" },
+ { 0x0018, 0x9461,
+ "Field of View Dimension(s) in Float", "FieldOfViewDimensionsInFloat", "FL", "1-2" },
+ { 0x0018, 0x9462,
+ "Isocenter Reference System Sequence", "IsocenterReferenceSystemSequence", "SQ", "1" },
+ { 0x0018, 0x9463,
+ "Positioner Isocenter Primary Angle", "PositionerIsocenterPrimaryAngle", "FL", "1" },
+ { 0x0018, 0x9464,
+ "Positioner Isocenter Secondary Angle", "PositionerIsocenterSecondaryAngle", "FL", "1" },
+ { 0x0018, 0x9465,
+ "Positioner Isocenter Detector Rotation Angle", "PositionerIsocenterDetectorRotationAngle", "FL", "1" },
+ { 0x0018, 0x9466,
+ "Table X Position to Isocenter", "TableXPositionToIsocenter", "FL", "1" },
+ { 0x0018, 0x9467,
+ "Table Y Position to Isocenter", "TableYPositionToIsocenter", "FL", "1" },
+ { 0x0018, 0x9468,
+ "Table Z Position to Isocenter", "TableZPositionToIsocenter", "FL", "1" },
+ { 0x0018, 0x9469,
+ "Table Horizontal Rotation Angle", "TableHorizontalRotationAngle", "FL", "1" },
+ { 0x0018, 0x9470,
+ "Table Head Tilt Angle", "TableHeadTiltAngle", "FL", "1" },
+ { 0x0018, 0x9471,
+ "Table Cradle Tilt Angle", "TableCradleTiltAngle", "FL", "1" },
+ { 0x0018, 0x9472,
+ "Frame Display Shutter Sequence", "FrameDisplayShutterSequence", "SQ", "1" },
+ { 0x0018, 0x9473,
+ "Acquired Image Area Dose Product", "AcquiredImageAreaDoseProduct", "FL", "1" },
+ { 0x0018, 0x9474,
+ "C-arm Positioner Tabletop Relationship", "CArmPositionerTabletopRelationship", "CS", "1" },
+ { 0x0018, 0x9476,
+ "X-Ray Geometry Sequence", "XRayGeometrySequence", "SQ", "1" },
+ { 0x0018, 0x9477,
+ "Irradiation Event Identification Sequence", "IrradiationEventIdentificationSequence", "SQ", "1" },
+ { 0x0018, 0x9504,
+ "X-Ray 3D Frame Type Sequence", "XRay3DFrameTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9506,
+ "Contributing Sources Sequence", "ContributingSourcesSequence", "SQ", "1" },
+ { 0x0018, 0x9507,
+ "X-Ray 3D Acquisition Sequence", "XRay3DAcquisitionSequence", "SQ", "1" },
+ { 0x0018, 0x9508,
+ "Primary Positioner Scan Arc", "PrimaryPositionerScanArc", "FL", "1" },
+ { 0x0018, 0x9509,
+ "Secondary Positioner Scan Arc", "SecondaryPositionerScanArc", "FL", "1" },
+ { 0x0018, 0x9510,
+ "Primary Positioner Scan Start Angle", "PrimaryPositionerScanStartAngle", "FL", "1" },
+ { 0x0018, 0x9511,
+ "Secondary Positioner Scan Start Angle", "SecondaryPositionerScanStartAngle", "FL", "1" },
+ { 0x0018, 0x9514,
+ "Primary Positioner Increment", "PrimaryPositionerIncrement", "FL", "1" },
+ { 0x0018, 0x9515,
+ "Secondary Positioner Increment", "SecondaryPositionerIncrement", "FL", "1" },
+ { 0x0018, 0x9516,
+ "Start Acquisition DateTime", "StartAcquisitionDateTime", "DT", "1" },
+ { 0x0018, 0x9517,
+ "End Acquisition DateTime", "EndAcquisitionDateTime", "DT", "1" },
+ { 0x0018, 0x9518,
+ "Primary Positioner Increment Sign", "PrimaryPositionerIncrementSign", "SS", "1" },
+ { 0x0018, 0x9519,
+ "Secondary Positioner Increment Sign", "SecondaryPositionerIncrementSign", "SS", "1" },
+ { 0x0018, 0x9524,
+ "Application Name", "ApplicationName", "LO", "1" },
+ { 0x0018, 0x9525,
+ "Application Version", "ApplicationVersion", "LO", "1" },
+ { 0x0018, 0x9526,
+ "Application Manufacturer", "ApplicationManufacturer", "LO", "1" },
+ { 0x0018, 0x9527,
+ "Algorithm Type", "AlgorithmType", "CS", "1" },
+ { 0x0018, 0x9528,
+ "Algorithm Description", "AlgorithmDescription", "LO", "1" },
+ { 0x0018, 0x9530,
+ "X-Ray 3D Reconstruction Sequence", "XRay3DReconstructionSequence", "SQ", "1" },
+ { 0x0018, 0x9531,
+ "Reconstruction Description", "ReconstructionDescription", "LO", "1" },
+ { 0x0018, 0x9538,
+ "Per Projection Acquisition Sequence", "PerProjectionAcquisitionSequence", "SQ", "1" },
+ { 0x0018, 0x9541,
+ "Detector Position Sequence", "DetectorPositionSequence", "SQ", "1" },
+ { 0x0018, 0x9542,
+ "X-Ray Acquisition Dose Sequence", "XRayAcquisitionDoseSequence", "SQ", "1" },
+ { 0x0018, 0x9543,
+ "X-Ray Source Isocenter Primary Angle", "XRaySourceIsocenterPrimaryAngle", "FD", "1" },
+ { 0x0018, 0x9544,
+ "X-Ray Source Isocenter Secondary Angle", "XRaySourceIsocenterSecondaryAngle", "FD", "1" },
+ { 0x0018, 0x9545,
+ "Breast Support Isocenter Primary Angle", "BreastSupportIsocenterPrimaryAngle", "FD", "1" },
+ { 0x0018, 0x9546,
+ "Breast Support Isocenter Secondary Angle", "BreastSupportIsocenterSecondaryAngle", "FD", "1" },
+ { 0x0018, 0x9547,
+ "Breast Support X Position to Isocenter", "BreastSupportXPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9548,
+ "Breast Support Y Position to Isocenter", "BreastSupportYPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9549,
+ "Breast Support Z Position to Isocenter", "BreastSupportZPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9550,
+ "Detector Isocenter Primary Angle", "DetectorIsocenterPrimaryAngle", "FD", "1" },
+ { 0x0018, 0x9551,
+ "Detector Isocenter Secondary Angle", "DetectorIsocenterSecondaryAngle", "FD", "1" },
+ { 0x0018, 0x9552,
+ "Detector X Position to Isocenter", "DetectorXPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9553,
+ "Detector Y Position to Isocenter", "DetectorYPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9554,
+ "Detector Z Position to Isocenter", "DetectorZPositionToIsocenter", "FD", "1" },
+ { 0x0018, 0x9555,
+ "X-Ray Grid Sequence", "XRayGridSequence", "SQ", "1" },
+ { 0x0018, 0x9556,
+ "X-Ray Filter Sequence", "XRayFilterSequence", "SQ", "1" },
+ { 0x0018, 0x9557,
+ "Detector Active Area TLHC Position", "DetectorActiveAreaTLHCPosition", "FD", "3" },
+ { 0x0018, 0x9558,
+ "Detector Active Area Orientation", "DetectorActiveAreaOrientation", "FD", "6" },
+ { 0x0018, 0x9559,
+ "Positioner Primary Angle Direction", "PositionerPrimaryAngleDirection", "CS", "1" },
+ { 0x0018, 0x9601,
+ "Diffusion b-matrix Sequence", "DiffusionBMatrixSequence", "SQ", "1" },
+ { 0x0018, 0x9602,
+ "Diffusion b-value XX", "DiffusionBValueXX", "FD", "1" },
+ { 0x0018, 0x9603,
+ "Diffusion b-value XY", "DiffusionBValueXY", "FD", "1" },
+ { 0x0018, 0x9604,
+ "Diffusion b-value XZ", "DiffusionBValueXZ", "FD", "1" },
+ { 0x0018, 0x9605,
+ "Diffusion b-value YY", "DiffusionBValueYY", "FD", "1" },
+ { 0x0018, 0x9606,
+ "Diffusion b-value YZ", "DiffusionBValueYZ", "FD", "1" },
+ { 0x0018, 0x9607,
+ "Diffusion b-value ZZ", "DiffusionBValueZZ", "FD", "1" },
+ { 0x0018, 0x9701,
+ "Decay Correction DateTime", "DecayCorrectionDateTime", "DT", "1" },
+ { 0x0018, 0x9715,
+ "Start Density Threshold", "StartDensityThreshold", "FD", "1" },
+ { 0x0018, 0x9716,
+ "Start Relative Density Difference Threshold", "StartRelativeDensityDifferenceThreshold", "FD", "1" },
+ { 0x0018, 0x9717,
+ "Start Cardiac Trigger Count Threshold", "StartCardiacTriggerCountThreshold", "FD", "1" },
+ { 0x0018, 0x9718,
+ "Start Respiratory Trigger Count Threshold", "StartRespiratoryTriggerCountThreshold", "FD", "1" },
+ { 0x0018, 0x9719,
+ "Termination Counts Threshold", "TerminationCountsThreshold", "FD", "1" },
+ { 0x0018, 0x9720,
+ "Termination Density Threshold", "TerminationDensityThreshold", "FD", "1" },
+ { 0x0018, 0x9721,
+ "Termination Relative Density Threshold", "TerminationRelativeDensityThreshold", "FD", "1" },
+ { 0x0018, 0x9722,
+ "Termination Time Threshold", "TerminationTimeThreshold", "FD", "1" },
+ { 0x0018, 0x9723,
+ "Termination Cardiac Trigger Count Threshold", "TerminationCardiacTriggerCountThreshold", "FD", "1" },
+ { 0x0018, 0x9724,
+ "Termination Respiratory Trigger Count Threshold", "TerminationRespiratoryTriggerCountThreshold", "FD", "1" },
+ { 0x0018, 0x9725,
+ "Detector Geometry", "DetectorGeometry", "CS", "1" },
+ { 0x0018, 0x9726,
+ "Transverse Detector Separation", "TransverseDetectorSeparation", "FD", "1" },
+ { 0x0018, 0x9727,
+ "Axial Detector Dimension", "AxialDetectorDimension", "FD", "1" },
+ { 0x0018, 0x9729,
+ "Radiopharmaceutical Agent Number", "RadiopharmaceuticalAgentNumber", "US", "1" },
+ { 0x0018, 0x9732,
+ "PET Frame Acquisition Sequence", "PETFrameAcquisitionSequence", "SQ", "1" },
+ { 0x0018, 0x9733,
+ "PET Detector Motion Details Sequence", "PETDetectorMotionDetailsSequence", "SQ", "1" },
+ { 0x0018, 0x9734,
+ "PET Table Dynamics Sequence", "PETTableDynamicsSequence", "SQ", "1" },
+ { 0x0018, 0x9735,
+ "PET Position Sequence", "PETPositionSequence", "SQ", "1" },
+ { 0x0018, 0x9736,
+ "PET Frame Correction Factors Sequence", "PETFrameCorrectionFactorsSequence", "SQ", "1" },
+ { 0x0018, 0x9737,
+ "Radiopharmaceutical Usage Sequence", "RadiopharmaceuticalUsageSequence", "SQ", "1" },
+ { 0x0018, 0x9738,
+ "Attenuation Correction Source", "AttenuationCorrectionSource", "CS", "1" },
+ { 0x0018, 0x9739,
+ "Number of Iterations", "NumberOfIterations", "US", "1" },
+ { 0x0018, 0x9740,
+ "Number of Subsets", "NumberOfSubsets", "US", "1" },
+ { 0x0018, 0x9749,
+ "PET Reconstruction Sequence", "PETReconstructionSequence", "SQ", "1" },
+ { 0x0018, 0x9751,
+ "PET Frame Type Sequence", "PETFrameTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9755,
+ "Time of Flight Information Used", "TimeOfFlightInformationUsed", "CS", "1" },
+ { 0x0018, 0x9756,
+ "Reconstruction Type", "ReconstructionType", "CS", "1" },
+ { 0x0018, 0x9758,
+ "Decay Corrected", "DecayCorrected", "CS", "1" },
+ { 0x0018, 0x9759,
+ "Attenuation Corrected", "AttenuationCorrected", "CS", "1" },
+ { 0x0018, 0x9760,
+ "Scatter Corrected", "ScatterCorrected", "CS", "1" },
+ { 0x0018, 0x9761,
+ "Dead Time Corrected", "DeadTimeCorrected", "CS", "1" },
+ { 0x0018, 0x9762,
+ "Gantry Motion Corrected", "GantryMotionCorrected", "CS", "1" },
+ { 0x0018, 0x9763,
+ "Patient Motion Corrected", "PatientMotionCorrected", "CS", "1" },
+ { 0x0018, 0x9764,
+ "Count Loss Normalization Corrected", "CountLossNormalizationCorrected", "CS", "1" },
+ { 0x0018, 0x9765,
+ "Randoms Corrected", "RandomsCorrected", "CS", "1" },
+ { 0x0018, 0x9766,
+ "Non-uniform Radial Sampling Corrected", "NonUniformRadialSamplingCorrected", "CS", "1" },
+ { 0x0018, 0x9767,
+ "Sensitivity Calibrated", "SensitivityCalibrated", "CS", "1" },
+ { 0x0018, 0x9768,
+ "Detector Normalization Correction", "DetectorNormalizationCorrection", "CS", "1" },
+ { 0x0018, 0x9769,
+ "Iterative Reconstruction Method", "IterativeReconstructionMethod", "CS", "1" },
+ { 0x0018, 0x9770,
+ "Attenuation Correction Temporal Relationship", "AttenuationCorrectionTemporalRelationship", "CS", "1" },
+ { 0x0018, 0x9771,
+ "Patient Physiological State Sequence", "PatientPhysiologicalStateSequence", "SQ", "1" },
+ { 0x0018, 0x9772,
+ "Patient Physiological State Code Sequence", "PatientPhysiologicalStateCodeSequence", "SQ", "1" },
+ { 0x0018, 0x9801,
+ "Depth(s) of Focus", "DepthsOfFocus", "FD", "1-n" },
+ { 0x0018, 0x9803,
+ "Excluded Intervals Sequence", "ExcludedIntervalsSequence", "SQ", "1" },
+ { 0x0018, 0x9804,
+ "Exclusion Start DateTime", "ExclusionStartDateTime", "DT", "1" },
+ { 0x0018, 0x9805,
+ "Exclusion Duration", "ExclusionDuration", "FD", "1" },
+ { 0x0018, 0x9806,
+ "US Image Description Sequence", "USImageDescriptionSequence", "SQ", "1" },
+ { 0x0018, 0x9807,
+ "Image Data Type Sequence", "ImageDataTypeSequence", "SQ", "1" },
+ { 0x0018, 0x9808,
+ "Data Type", "DataType", "CS", "1" },
+ { 0x0018, 0x9809,
+ "Transducer Scan Pattern Code Sequence", "TransducerScanPatternCodeSequence", "SQ", "1" },
+ { 0x0018, 0x980b,
+ "Aliased Data Type", "AliasedDataType", "CS", "1" },
+ { 0x0018, 0x980c,
+ "Position Measuring Device Used", "PositionMeasuringDeviceUsed", "CS", "1" },
+ { 0x0018, 0x980d,
+ "Transducer Geometry Code Sequence", "TransducerGeometryCodeSequence", "SQ", "1" },
+ { 0x0018, 0x980e,
+ "Transducer Beam Steering Code Sequence", "TransducerBeamSteeringCodeSequence", "SQ", "1" },
+ { 0x0018, 0x980f,
+ "Transducer Application Code Sequence", "TransducerApplicationCodeSequence", "SQ", "1" },
+ { 0x0018, 0x9810,
+ "Zero Velocity Pixel Value", "ZeroVelocityPixelValue", "US or SS", "1" },
+ { 0x0018, 0xa001,
+ "Contributing Equipment Sequence", "ContributingEquipmentSequence", "SQ", "1" },
+ { 0x0018, 0xa002,
+ "Contribution DateTime", "ContributionDateTime", "DT", "1" },
+ { 0x0018, 0xa003,
+ "Contribution Description", "ContributionDescription", "ST", "1" },
+ { 0x0020, 0x000d,
+ "Study Instance UID", "StudyInstanceUID", "UI", "1" },
+ { 0x0020, 0x000e,
+ "Series Instance UID", "SeriesInstanceUID", "UI", "1" },
+ { 0x0020, 0x0010,
+ "Study ID", "StudyID", "SH", "1" },
+ { 0x0020, 0x0011,
+ "Series Number", "SeriesNumber", "IS", "1" },
+ { 0x0020, 0x0012,
+ "Acquisition Number", "AcquisitionNumber", "IS", "1" },
+ { 0x0020, 0x0013,
+ "Instance Number", "InstanceNumber", "IS", "1" },
+ { 0x0020, 0x0014,
+ "Isotope Number", "IsotopeNumber", "IS", "1" },
+ { 0x0020, 0x0015,
+ "Phase Number", "PhaseNumber", "IS", "1" },
+ { 0x0020, 0x0016,
+ "Interval Number", "IntervalNumber", "IS", "1" },
+ { 0x0020, 0x0017,
+ "Time Slot Number", "TimeSlotNumber", "IS", "1" },
+ { 0x0020, 0x0018,
+ "Angle Number", "AngleNumber", "IS", "1" },
+ { 0x0020, 0x0019,
+ "Item Number", "ItemNumber", "IS", "1" },
+ { 0x0020, 0x0020,
+ "Patient Orientation", "PatientOrientation", "CS", "2" },
+ { 0x0020, 0x0022,
+ "Overlay Number", "OverlayNumber", "IS", "1" },
+ { 0x0020, 0x0024,
+ "Curve Number", "CurveNumber", "IS", "1" },
+ { 0x0020, 0x0026,
+ "LUT Number", "LUTNumber", "IS", "1" },
+ { 0x0020, 0x0030,
+ "Image Position", "ImagePosition", "DS", "3" },
+ { 0x0020, 0x0032,
+ "Image Position (Patient)", "ImagePositionPatient", "DS", "3" },
+ { 0x0020, 0x0035,
+ "Image Orientation", "ImageOrientation", "DS", "6" },
+ { 0x0020, 0x0037,
+ "Image Orientation (Patient)", "ImageOrientationPatient", "DS", "6" },
+ { 0x0020, 0x0050,
+ "Location", "Location", "DS", "1" },
+ { 0x0020, 0x0052,
+ "Frame of Reference UID", "FrameOfReferenceUID", "UI", "1" },
+ { 0x0020, 0x0060,
+ "Laterality", "Laterality", "CS", "1" },
+ { 0x0020, 0x0062,
+ "Image Laterality", "ImageLaterality", "CS", "1" },
+ { 0x0020, 0x0070,
+ "Image Geometry Type", "ImageGeometryType", "LO", "1" },
+ { 0x0020, 0x0080,
+ "Masking Image", "MaskingImage", "CS", "1-n" },
+ { 0x0020, 0x00aa,
+ "Report Number", "ReportNumber", "IS", "1" },
+ { 0x0020, 0x0100,
+ "Temporal Position Identifier", "TemporalPositionIdentifier", "IS", "1" },
+ { 0x0020, 0x0105,
+ "Number of Temporal Positions", "NumberOfTemporalPositions", "IS", "1" },
+ { 0x0020, 0x0110,
+ "Temporal Resolution", "TemporalResolution", "DS", "1" },
+ { 0x0020, 0x0200,
+ "Synchronization Frame of Reference UID", "SynchronizationFrameOfReferenceUID", "UI", "1" },
+ { 0x0020, 0x0242,
+ "SOP Instance UID of Concatenation Source", "SOPInstanceUIDOfConcatenationSource", "UI", "1" },
+ { 0x0020, 0x1000,
+ "Series in Study", "SeriesInStudy", "IS", "1" },
+ { 0x0020, 0x1001,
+ "Acquisitions in Series", "AcquisitionsInSeries", "IS", "1" },
+ { 0x0020, 0x1002,
+ "Images in Acquisition", "ImagesInAcquisition", "IS", "1" },
+ { 0x0020, 0x1003,
+ "Images in Series", "ImagesInSeries", "IS", "1" },
+ { 0x0020, 0x1004,
+ "Acquisitions in Study", "AcquisitionsInStudy", "IS", "1" },
+ { 0x0020, 0x1005,
+ "Images in Study", "ImagesInStudy", "IS", "1" },
+ { 0x0020, 0x1020,
+ "Reference", "Reference", "LO", "1-n" },
+ { 0x0020, 0x1040,
+ "Position Reference Indicator", "PositionReferenceIndicator", "LO", "1" },
+ { 0x0020, 0x1041,
+ "Slice Location", "SliceLocation", "DS", "1" },
+ { 0x0020, 0x1070,
+ "Other Study Numbers", "OtherStudyNumbers", "IS", "1-n" },
+ { 0x0020, 0x1200,
+ "Number of Patient Related Studies", "NumberOfPatientRelatedStudies", "IS", "1" },
+ { 0x0020, 0x1202,
+ "Number of Patient Related Series", "NumberOfPatientRelatedSeries", "IS", "1" },
+ { 0x0020, 0x1204,
+ "Number of Patient Related Instances", "NumberOfPatientRelatedInstances", "IS", "1" },
+ { 0x0020, 0x1206,
+ "Number of Study Related Series", "NumberOfStudyRelatedSeries", "IS", "1" },
+ { 0x0020, 0x1208,
+ "Number of Study Related Instances", "NumberOfStudyRelatedInstances", "IS", "1" },
+ { 0x0020, 0x1209,
+ "Number of Series Related Instances", "NumberOfSeriesRelatedInstances", "IS", "1" },
+ { 0x0020, 0x3401,
+ "Modifying Device ID", "ModifyingDeviceID", "CS", "1" },
+ { 0x0020, 0x3402,
+ "Modified Image ID", "ModifiedImageID", "CS", "1" },
+ { 0x0020, 0x3403,
+ "Modified Image Date", "ModifiedImageDate", "DA", "1" },
+ { 0x0020, 0x3404,
+ "Modifying Device Manufacturer", "ModifyingDeviceManufacturer", "LO", "1" },
+ { 0x0020, 0x3405,
+ "Modified Image Time", "ModifiedImageTime", "TM", "1" },
+ { 0x0020, 0x3406,
+ "Modified Image Description", "ModifiedImageDescription", "LO", "1" },
+ { 0x0020, 0x4000,
+ "Image Comments", "ImageComments", "LT", "1" },
+ { 0x0020, 0x5000,
+ "Original Image Identification", "OriginalImageIdentification", "AT", "1-n" },
+ { 0x0020, 0x5002,
+ "Original Image Identification Nomenclature", "OriginalImageIdentificationNomenclature", "LO", "1-n" },
+ { 0x0020, 0x9056,
+ "Stack ID", "StackID", "SH", "1" },
+ { 0x0020, 0x9057,
+ "In-Stack Position Number", "InStackPositionNumber", "UL", "1" },
+ { 0x0020, 0x9071,
+ "Frame Anatomy Sequence", "FrameAnatomySequence", "SQ", "1" },
+ { 0x0020, 0x9072,
+ "Frame Laterality", "FrameLaterality", "CS", "1" },
+ { 0x0020, 0x9111,
+ "Frame Content Sequence", "FrameContentSequence", "SQ", "1" },
+ { 0x0020, 0x9113,
+ "Plane Position Sequence", "PlanePositionSequence", "SQ", "1" },
+ { 0x0020, 0x9116,
+ "Plane Orientation Sequence", "PlaneOrientationSequence", "SQ", "1" },
+ { 0x0020, 0x9128,
+ "Temporal Position Index", "TemporalPositionIndex", "UL", "1" },
+ { 0x0020, 0x9153,
+ "Nominal Cardiac Trigger Delay Time", "NominalCardiacTriggerDelayTime", "FD", "1" },
+ { 0x0020, 0x9154,
+ "Nominal Cardiac Trigger Time Prior To R-Peak", "NominalCardiacTriggerTimePriorToRPeak", "FL", "1" },
+ { 0x0020, 0x9155,
+ "Actual Cardiac Trigger Time Prior To R-Peak", "ActualCardiacTriggerTimePriorToRPeak", "FL", "1" },
+ { 0x0020, 0x9156,
+ "Frame Acquisition Number", "FrameAcquisitionNumber", "US", "1" },
+ { 0x0020, 0x9157,
+ "Dimension Index Values", "DimensionIndexValues", "UL", "1-n" },
+ { 0x0020, 0x9158,
+ "Frame Comments", "FrameComments", "LT", "1" },
+ { 0x0020, 0x9161,
+ "Concatenation UID", "ConcatenationUID", "UI", "1" },
+ { 0x0020, 0x9162,
+ "In-concatenation Number", "InConcatenationNumber", "US", "1" },
+ { 0x0020, 0x9163,
+ "In-concatenation Total Number", "InConcatenationTotalNumber", "US", "1" },
+ { 0x0020, 0x9164,
+ "Dimension Organization UID", "DimensionOrganizationUID", "UI", "1" },
+ { 0x0020, 0x9165,
+ "Dimension Index Pointer", "DimensionIndexPointer", "AT", "1" },
+ { 0x0020, 0x9167,
+ "Functional Group Pointer", "FunctionalGroupPointer", "AT", "1" },
+ { 0x0020, 0x9170,
+ "Unassigned Shared Converted Attributes Sequence", "UnassignedSharedConvertedAttributesSequence", "SQ", "1" },
+ { 0x0020, 0x9171,
+ "Unassigned Per-Frame Converted Attributes Sequence", "UnassignedPerFrameConvertedAttributesSequence", "SQ", "1" },
+ { 0x0020, 0x9172,
+ "Conversion Source Attributes Sequence", "ConversionSourceAttributesSequence", "SQ", "1" },
+ { 0x0020, 0x9213,
+ "Dimension Index Private Creator", "DimensionIndexPrivateCreator", "LO", "1" },
+ { 0x0020, 0x9221,
+ "Dimension Organization Sequence", "DimensionOrganizationSequence", "SQ", "1" },
+ { 0x0020, 0x9222,
+ "Dimension Index Sequence", "DimensionIndexSequence", "SQ", "1" },
+ { 0x0020, 0x9228,
+ "Concatenation Frame Offset Number", "ConcatenationFrameOffsetNumber", "UL", "1" },
+ { 0x0020, 0x9238,
+ "Functional Group Private Creator", "FunctionalGroupPrivateCreator", "LO", "1" },
+ { 0x0020, 0x9241,
+ "Nominal Percentage of Cardiac Phase", "NominalPercentageOfCardiacPhase", "FL", "1" },
+ { 0x0020, 0x9245,
+ "Nominal Percentage of Respiratory Phase", "NominalPercentageOfRespiratoryPhase", "FL", "1" },
+ { 0x0020, 0x9246,
+ "Starting Respiratory Amplitude", "StartingRespiratoryAmplitude", "FL", "1" },
+ { 0x0020, 0x9247,
+ "Starting Respiratory Phase", "StartingRespiratoryPhase", "CS", "1" },
+ { 0x0020, 0x9248,
+ "Ending Respiratory Amplitude", "EndingRespiratoryAmplitude", "FL", "1" },
+ { 0x0020, 0x9249,
+ "Ending Respiratory Phase", "EndingRespiratoryPhase", "CS", "1" },
+ { 0x0020, 0x9250,
+ "Respiratory Trigger Type", "RespiratoryTriggerType", "CS", "1" },
+ { 0x0020, 0x9251,
+ "R-R Interval Time Nominal", "RRIntervalTimeNominal", "FD", "1" },
+ { 0x0020, 0x9252,
+ "Actual Cardiac Trigger Delay Time", "ActualCardiacTriggerDelayTime", "FD", "1" },
+ { 0x0020, 0x9253,
+ "Respiratory Synchronization Sequence", "RespiratorySynchronizationSequence", "SQ", "1" },
+ { 0x0020, 0x9254,
+ "Respiratory Interval Time", "RespiratoryIntervalTime", "FD", "1" },
+ { 0x0020, 0x9255,
+ "Nominal Respiratory Trigger Delay Time", "NominalRespiratoryTriggerDelayTime", "FD", "1" },
+ { 0x0020, 0x9256,
+ "Respiratory Trigger Delay Threshold", "RespiratoryTriggerDelayThreshold", "FD", "1" },
+ { 0x0020, 0x9257,
+ "Actual Respiratory Trigger Delay Time", "ActualRespiratoryTriggerDelayTime", "FD", "1" },
+ { 0x0020, 0x9301,
+ "Image Position (Volume)", "ImagePositionVolume", "FD", "3" },
+ { 0x0020, 0x9302,
+ "Image Orientation (Volume)", "ImageOrientationVolume", "FD", "6" },
+ { 0x0020, 0x9307,
+ "Ultrasound Acquisition Geometry", "UltrasoundAcquisitionGeometry", "CS", "1" },
+ { 0x0020, 0x9308,
+ "Apex Position", "ApexPosition", "FD", "3" },
+ { 0x0020, 0x9309,
+ "Volume to Transducer Mapping Matrix", "VolumeToTransducerMappingMatrix", "FD", "16" },
+ { 0x0020, 0x930a,
+ "Volume to Table Mapping Matrix", "VolumeToTableMappingMatrix", "FD", "16" },
+ { 0x0020, 0x930b,
+ "Volume to Transducer Relationship", "VolumeToTransducerRelationship", "CS", "1" },
+ { 0x0020, 0x930c,
+ "Patient Frame of Reference Source", "PatientFrameOfReferenceSource", "CS", "1" },
+ { 0x0020, 0x930d,
+ "Temporal Position Time Offset", "TemporalPositionTimeOffset", "FD", "1" },
+ { 0x0020, 0x930e,
+ "Plane Position (Volume) Sequence", "PlanePositionVolumeSequence", "SQ", "1" },
+ { 0x0020, 0x930f,
+ "Plane Orientation (Volume) Sequence", "PlaneOrientationVolumeSequence", "SQ", "1" },
+ { 0x0020, 0x9310,
+ "Temporal Position Sequence", "TemporalPositionSequence", "SQ", "1" },
+ { 0x0020, 0x9311,
+ "Dimension Organization Type", "DimensionOrganizationType", "CS", "1" },
+ { 0x0020, 0x9312,
+ "Volume Frame of Reference UID", "VolumeFrameOfReferenceUID", "UI", "1" },
+ { 0x0020, 0x9313,
+ "Table Frame of Reference UID", "TableFrameOfReferenceUID", "UI", "1" },
+ { 0x0020, 0x9421,
+ "Dimension Description Label", "DimensionDescriptionLabel", "LO", "1" },
+ { 0x0020, 0x9450,
+ "Patient Orientation in Frame Sequence", "PatientOrientationInFrameSequence", "SQ", "1" },
+ { 0x0020, 0x9453,
+ "Frame Label", "FrameLabel", "LO", "1" },
+ { 0x0020, 0x9518,
+ "Acquisition Index", "AcquisitionIndex", "US", "1-n" },
+ { 0x0020, 0x9529,
+ "Contributing SOP Instances Reference Sequence", "ContributingSOPInstancesReferenceSequence", "SQ", "1" },
+ { 0x0020, 0x9536,
+ "Reconstruction Index", "ReconstructionIndex", "US", "1" },
+ { 0x0022, 0x0001,
+ "Light Path Filter Pass-Through Wavelength", "LightPathFilterPassThroughWavelength", "US", "1" },
+ { 0x0022, 0x0002,
+ "Light Path Filter Pass Band", "LightPathFilterPassBand", "US", "2" },
+ { 0x0022, 0x0003,
+ "Image Path Filter Pass-Through Wavelength", "ImagePathFilterPassThroughWavelength", "US", "1" },
+ { 0x0022, 0x0004,
+ "Image Path Filter Pass Band", "ImagePathFilterPassBand", "US", "2" },
+ { 0x0022, 0x0005,
+ "Patient Eye Movement Commanded", "PatientEyeMovementCommanded", "CS", "1" },
+ { 0x0022, 0x0006,
+ "Patient Eye Movement Command Code Sequence", "PatientEyeMovementCommandCodeSequence", "SQ", "1" },
+ { 0x0022, 0x0007,
+ "Spherical Lens Power", "SphericalLensPower", "FL", "1" },
+ { 0x0022, 0x0008,
+ "Cylinder Lens Power", "CylinderLensPower", "FL", "1" },
+ { 0x0022, 0x0009,
+ "Cylinder Axis", "CylinderAxis", "FL", "1" },
+ { 0x0022, 0x000a,
+ "Emmetropic Magnification", "EmmetropicMagnification", "FL", "1" },
+ { 0x0022, 0x000b,
+ "Intra Ocular Pressure", "IntraOcularPressure", "FL", "1" },
+ { 0x0022, 0x000c,
+ "Horizontal Field of View", "HorizontalFieldOfView", "FL", "1" },
+ { 0x0022, 0x000d,
+ "Pupil Dilated", "PupilDilated", "CS", "1" },
+ { 0x0022, 0x000e,
+ "Degree of Dilation", "DegreeOfDilation", "FL", "1" },
+ { 0x0022, 0x0010,
+ "Stereo Baseline Angle", "StereoBaselineAngle", "FL", "1" },
+ { 0x0022, 0x0011,
+ "Stereo Baseline Displacement", "StereoBaselineDisplacement", "FL", "1" },
+ { 0x0022, 0x0012,
+ "Stereo Horizontal Pixel Offset", "StereoHorizontalPixelOffset", "FL", "1" },
+ { 0x0022, 0x0013,
+ "Stereo Vertical Pixel Offset", "StereoVerticalPixelOffset", "FL", "1" },
+ { 0x0022, 0x0014,
+ "Stereo Rotation", "StereoRotation", "FL", "1" },
+ { 0x0022, 0x0015,
+ "Acquisition Device Type Code Sequence", "AcquisitionDeviceTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x0016,
+ "Illumination Type Code Sequence", "IlluminationTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x0017,
+ "Light Path Filter Type Stack Code Sequence", "LightPathFilterTypeStackCodeSequence", "SQ", "1" },
+ { 0x0022, 0x0018,
+ "Image Path Filter Type Stack Code Sequence", "ImagePathFilterTypeStackCodeSequence", "SQ", "1" },
+ { 0x0022, 0x0019,
+ "Lenses Code Sequence", "LensesCodeSequence", "SQ", "1" },
+ { 0x0022, 0x001a,
+ "Channel Description Code Sequence", "ChannelDescriptionCodeSequence", "SQ", "1" },
+ { 0x0022, 0x001b,
+ "Refractive State Sequence", "RefractiveStateSequence", "SQ", "1" },
+ { 0x0022, 0x001c,
+ "Mydriatic Agent Code Sequence", "MydriaticAgentCodeSequence", "SQ", "1" },
+ { 0x0022, 0x001d,
+ "Relative Image Position Code Sequence", "RelativeImagePositionCodeSequence", "SQ", "1" },
+ { 0x0022, 0x001e,
+ "Camera Angle of View", "CameraAngleOfView", "FL", "1" },
+ { 0x0022, 0x0020,
+ "Stereo Pairs Sequence", "StereoPairsSequence", "SQ", "1" },
+ { 0x0022, 0x0021,
+ "Left Image Sequence", "LeftImageSequence", "SQ", "1" },
+ { 0x0022, 0x0022,
+ "Right Image Sequence", "RightImageSequence", "SQ", "1" },
+ { 0x0022, 0x0028,
+ "Stereo Pairs Present", "StereoPairsPresent", "CS", "1" },
+ { 0x0022, 0x0030,
+ "Axial Length of the Eye", "AxialLengthOfTheEye", "FL", "1" },
+ { 0x0022, 0x0031,
+ "Ophthalmic Frame Location Sequence", "OphthalmicFrameLocationSequence", "SQ", "1" },
+ { 0x0022, 0x0032,
+ "Reference Coordinates", "ReferenceCoordinates", "FL", "2-2n" },
+ { 0x0022, 0x0035,
+ "Depth Spatial Resolution", "DepthSpatialResolution", "FL", "1" },
+ { 0x0022, 0x0036,
+ "Maximum Depth Distortion", "MaximumDepthDistortion", "FL", "1" },
+ { 0x0022, 0x0037,
+ "Along-scan Spatial Resolution", "AlongScanSpatialResolution", "FL", "1" },
+ { 0x0022, 0x0038,
+ "Maximum Along-scan Distortion", "MaximumAlongScanDistortion", "FL", "1" },
+ { 0x0022, 0x0039,
+ "Ophthalmic Image Orientation", "OphthalmicImageOrientation", "CS", "1" },
+ { 0x0022, 0x0041,
+ "Depth of Transverse Image", "DepthOfTransverseImage", "FL", "1" },
+ { 0x0022, 0x0042,
+ "Mydriatic Agent Concentration Units Sequence", "MydriaticAgentConcentrationUnitsSequence", "SQ", "1" },
+ { 0x0022, 0x0048,
+ "Across-scan Spatial Resolution", "AcrossScanSpatialResolution", "FL", "1" },
+ { 0x0022, 0x0049,
+ "Maximum Across-scan Distortion", "MaximumAcrossScanDistortion", "FL", "1" },
+ { 0x0022, 0x004e,
+ "Mydriatic Agent Concentration", "MydriaticAgentConcentration", "DS", "1" },
+ { 0x0022, 0x0055,
+ "Illumination Wave Length", "IlluminationWaveLength", "FL", "1" },
+ { 0x0022, 0x0056,
+ "Illumination Power", "IlluminationPower", "FL", "1" },
+ { 0x0022, 0x0057,
+ "Illumination Bandwidth", "IlluminationBandwidth", "FL", "1" },
+ { 0x0022, 0x0058,
+ "Mydriatic Agent Sequence", "MydriaticAgentSequence", "SQ", "1" },
+ { 0x0022, 0x1007,
+ "Ophthalmic Axial Measurements Right Eye Sequence", "OphthalmicAxialMeasurementsRightEyeSequence", "SQ", "1" },
+ { 0x0022, 0x1008,
+ "Ophthalmic Axial Measurements Left Eye Sequence", "OphthalmicAxialMeasurementsLeftEyeSequence", "SQ", "1" },
+ { 0x0022, 0x1009,
+ "Ophthalmic Axial Measurements Device Type", "OphthalmicAxialMeasurementsDeviceType", "CS", "1" },
+ { 0x0022, 0x1010,
+ "Ophthalmic Axial Length Measurements Type", "OphthalmicAxialLengthMeasurementsType", "CS", "1" },
+ { 0x0022, 0x1012,
+ "Ophthalmic Axial Length Sequence", "OphthalmicAxialLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1019,
+ "Ophthalmic Axial Length", "OphthalmicAxialLength", "FL", "1" },
+ { 0x0022, 0x1024,
+ "Lens Status Code Sequence", "LensStatusCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1025,
+ "Vitreous Status Code Sequence", "VitreousStatusCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1028,
+ "IOL Formula Code Sequence", "IOLFormulaCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1029,
+ "IOL Formula Detail", "IOLFormulaDetail", "LO", "1" },
+ { 0x0022, 0x1033,
+ "Keratometer Index", "KeratometerIndex", "FL", "1" },
+ { 0x0022, 0x1035,
+ "Source of Ophthalmic Axial Length Code Sequence", "SourceOfOphthalmicAxialLengthCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1037,
+ "Target Refraction", "TargetRefraction", "FL", "1" },
+ { 0x0022, 0x1039,
+ "Refractive Procedure Occurred", "RefractiveProcedureOccurred", "CS", "1" },
+ { 0x0022, 0x1040,
+ "Refractive Surgery Type Code Sequence", "RefractiveSurgeryTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1044,
+ "Ophthalmic Ultrasound Method Code Sequence", "OphthalmicUltrasoundMethodCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1050,
+ "Ophthalmic Axial Length Measurements Sequence", "OphthalmicAxialLengthMeasurementsSequence", "SQ", "1" },
+ { 0x0022, 0x1053,
+ "IOL Power", "IOLPower", "FL", "1" },
+ { 0x0022, 0x1054,
+ "Predicted Refractive Error", "PredictedRefractiveError", "FL", "1" },
+ { 0x0022, 0x1059,
+ "Ophthalmic Axial Length Velocity", "OphthalmicAxialLengthVelocity", "FL", "1" },
+ { 0x0022, 0x1065,
+ "Lens Status Description", "LensStatusDescription", "LO", "1" },
+ { 0x0022, 0x1066,
+ "Vitreous Status Description", "VitreousStatusDescription", "LO", "1" },
+ { 0x0022, 0x1090,
+ "IOL Power Sequence", "IOLPowerSequence", "SQ", "1" },
+ { 0x0022, 0x1092,
+ "Lens Constant Sequence", "LensConstantSequence", "SQ", "1" },
+ { 0x0022, 0x1093,
+ "IOL Manufacturer", "IOLManufacturer", "LO", "1" },
+ { 0x0022, 0x1094,
+ "Lens Constant Description", "LensConstantDescription", "LO", "1" },
+ { 0x0022, 0x1095,
+ "Implant Name", "ImplantName", "LO", "1" },
+ { 0x0022, 0x1096,
+ "Keratometry Measurement Type Code Sequence", "KeratometryMeasurementTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1097,
+ "Implant Part Number", "ImplantPartNumber", "LO", "1" },
+ { 0x0022, 0x1100,
+ "Referenced Ophthalmic Axial Measurements Sequence", "ReferencedOphthalmicAxialMeasurementsSequence", "SQ", "1" },
+ { 0x0022, 0x1101,
+ "Ophthalmic Axial Length Measurements Segment Name Code Sequence", "OphthalmicAxialLengthMeasurementsSegmentNameCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1103,
+ "Refractive Error Before Refractive Surgery Code Sequence", "RefractiveErrorBeforeRefractiveSurgeryCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1121,
+ "IOL Power For Exact Emmetropia", "IOLPowerForExactEmmetropia", "FL", "1" },
+ { 0x0022, 0x1122,
+ "IOL Power For Exact Target Refraction", "IOLPowerForExactTargetRefraction", "FL", "1" },
+ { 0x0022, 0x1125,
+ "Anterior Chamber Depth Definition Code Sequence", "AnteriorChamberDepthDefinitionCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1127,
+ "Lens Thickness Sequence", "LensThicknessSequence", "SQ", "1" },
+ { 0x0022, 0x1128,
+ "Anterior Chamber Depth Sequence", "AnteriorChamberDepthSequence", "SQ", "1" },
+ { 0x0022, 0x1130,
+ "Lens Thickness", "LensThickness", "FL", "1" },
+ { 0x0022, 0x1131,
+ "Anterior Chamber Depth", "AnteriorChamberDepth", "FL", "1" },
+ { 0x0022, 0x1132,
+ "Source of Lens Thickness Data Code Sequence", "SourceOfLensThicknessDataCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1133,
+ "Source of Anterior Chamber Depth Data Code Sequence", "SourceOfAnteriorChamberDepthDataCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1134,
+ "Source of Refractive Measurements Sequence", "SourceOfRefractiveMeasurementsSequence", "SQ", "1" },
+ { 0x0022, 0x1135,
+ "Source of Refractive Measurements Code Sequence", "SourceOfRefractiveMeasurementsCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1140,
+ "Ophthalmic Axial Length Measurement Modified", "OphthalmicAxialLengthMeasurementModified", "CS", "1" },
+ { 0x0022, 0x1150,
+ "Ophthalmic Axial Length Data Source Code Sequence", "OphthalmicAxialLengthDataSourceCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1153,
+ "Ophthalmic Axial Length Acquisition Method Code Sequence", "OphthalmicAxialLengthAcquisitionMethodCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1155,
+ "Signal to Noise Ratio", "SignalToNoiseRatio", "FL", "1" },
+ { 0x0022, 0x1159,
+ "Ophthalmic Axial Length Data Source Description", "OphthalmicAxialLengthDataSourceDescription", "LO", "1" },
+ { 0x0022, 0x1210,
+ "Ophthalmic Axial Length Measurements Total Length Sequence", "OphthalmicAxialLengthMeasurementsTotalLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1211,
+ "Ophthalmic Axial Length Measurements Segmental Length Sequence", "OphthalmicAxialLengthMeasurementsSegmentalLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1212,
+ "Ophthalmic Axial Length Measurements Length Summation Sequence", "OphthalmicAxialLengthMeasurementsLengthSummationSequence", "SQ", "1" },
+ { 0x0022, 0x1220,
+ "Ultrasound Ophthalmic Axial Length Measurements Sequence", "UltrasoundOphthalmicAxialLengthMeasurementsSequence", "SQ", "1" },
+ { 0x0022, 0x1225,
+ "Optical Ophthalmic Axial Length Measurements Sequence", "OpticalOphthalmicAxialLengthMeasurementsSequence", "SQ", "1" },
+ { 0x0022, 0x1230,
+ "Ultrasound Selected Ophthalmic Axial Length Sequence", "UltrasoundSelectedOphthalmicAxialLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1250,
+ "Ophthalmic Axial Length Selection Method Code Sequence", "OphthalmicAxialLengthSelectionMethodCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1255,
+ "Optical Selected Ophthalmic Axial Length Sequence", "OpticalSelectedOphthalmicAxialLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1257,
+ "Selected Segmental Ophthalmic Axial Length Sequence", "SelectedSegmentalOphthalmicAxialLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1260,
+ "Selected Total Ophthalmic Axial Length Sequence", "SelectedTotalOphthalmicAxialLengthSequence", "SQ", "1" },
+ { 0x0022, 0x1262,
+ "Ophthalmic Axial Length Quality Metric Sequence", "OphthalmicAxialLengthQualityMetricSequence", "SQ", "1" },
+ { 0x0022, 0x1265,
+ "Ophthalmic Axial Length Quality Metric Type Code Sequence", "OphthalmicAxialLengthQualityMetricTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1273,
+ "Ophthalmic Axial Length Quality Metric Type Description", "OphthalmicAxialLengthQualityMetricTypeDescription", "LO", "1" },
+ { 0x0022, 0x1300,
+ "Intraocular Lens Calculations Right Eye Sequence", "IntraocularLensCalculationsRightEyeSequence", "SQ", "1" },
+ { 0x0022, 0x1310,
+ "Intraocular Lens Calculations Left Eye Sequence", "IntraocularLensCalculationsLeftEyeSequence", "SQ", "1" },
+ { 0x0022, 0x1330,
+ "Referenced Ophthalmic Axial Length Measurement QC Image Sequence", "ReferencedOphthalmicAxialLengthMeasurementQCImageSequence", "SQ", "1" },
+ { 0x0022, 0x1415,
+ "Ophthalmic Mapping Device Type", "OphthalmicMappingDeviceType", "CS", "1" },
+ { 0x0022, 0x1420,
+ "Acquisition Method Code Sequence", "AcquisitionMethodCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1423,
+ "Acquisition Method Algorithm Sequence", "AcquisitionMethodAlgorithmSequence", "SQ", "1" },
+ { 0x0022, 0x1436,
+ "Ophthalmic Thickness Map Type Code Sequence", "OphthalmicThicknessMapTypeCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1443,
+ "Ophthalmic Thickness Mapping Normals Sequence", "OphthalmicThicknessMappingNormalsSequence", "SQ", "1" },
+ { 0x0022, 0x1445,
+ "Retinal Thickness Definition Code Sequence", "RetinalThicknessDefinitionCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1450,
+ "Pixel Value Mapping to Coded Concept Sequence", "PixelValueMappingToCodedConceptSequence", "SQ", "1" },
+ { 0x0022, 0x1452,
+ "Mapped Pixel Value", "MappedPixelValue", "US or SS", "1" },
+ { 0x0022, 0x1454,
+ "Pixel Value Mapping Explanation", "PixelValueMappingExplanation", "LO", "1" },
+ { 0x0022, 0x1458,
+ "Ophthalmic Thickness Map Quality Threshold Sequence", "OphthalmicThicknessMapQualityThresholdSequence", "SQ", "1" },
+ { 0x0022, 0x1460,
+ "Ophthalmic Thickness Map Threshold Quality Rating", "OphthalmicThicknessMapThresholdQualityRating", "FL", "1" },
+ { 0x0022, 0x1463,
+ "Anatomic Structure Reference Point", "AnatomicStructureReferencePoint", "FL", "2" },
+ { 0x0022, 0x1465,
+ "Registration to Localizer Sequence", "RegistrationToLocalizerSequence", "SQ", "1" },
+ { 0x0022, 0x1466,
+ "Registered Localizer Units", "RegisteredLocalizerUnits", "CS", "1" },
+ { 0x0022, 0x1467,
+ "Registered Localizer Top Left Hand Corner", "RegisteredLocalizerTopLeftHandCorner", "FL", "2" },
+ { 0x0022, 0x1468,
+ "Registered Localizer Bottom Right Hand Corner", "RegisteredLocalizerBottomRightHandCorner", "FL", "2" },
+ { 0x0022, 0x1470,
+ "Ophthalmic Thickness Map Quality Rating Sequence", "OphthalmicThicknessMapQualityRatingSequence", "SQ", "1" },
+ { 0x0022, 0x1472,
+ "Relevant OPT Attributes Sequence", "RelevantOPTAttributesSequence", "SQ", "1" },
+ { 0x0022, 0x1512,
+ "Transformation Method Code Sequence", "TransformationMethodCodeSequence", "SQ", "1" },
+ { 0x0022, 0x1513,
+ "Transformation Algorithm Sequence", "TransformationAlgorithmSequence", "SQ", "1" },
+ { 0x0022, 0x1515,
+ "Ophthalmic Axial Length Method", "OphthalmicAxialLengthMethod", "CS", "1" },
+ { 0x0022, 0x1517,
+ "Ophthalmic FOV", "OphthalmicFOV", "FL", "1" },
+ { 0x0022, 0x1518,
+ "Two Dimensional to Three Dimensional Map Sequence", "TwoDimensionalToThreeDimensionalMapSequence", "SQ", "1" },
+ { 0x0022, 0x1525,
+ "Wide Field Ophthalmic Photography Quality Rating Sequence", "WideFieldOphthalmicPhotographyQualityRatingSequence", "SQ", "1" },
+ { 0x0022, 0x1526,
+ "Wide Field Ophthalmic Photography Quality Threshold Sequence", "WideFieldOphthalmicPhotographyQualityThresholdSequence", "SQ", "1" },
+ { 0x0022, 0x1527,
+ "Wide Field Ophthalmic Photography Threshold Quality Rating", "WideFieldOphthalmicPhotographyThresholdQualityRating", "FL", "1" },
+ { 0x0022, 0x1528,
+ "X Coordinates Center Pixel View Angle", "XCoordinatesCenterPixelViewAngle", "FL", "1" },
+ { 0x0022, 0x1529,
+ "Y Coordinates Center Pixel View Angle", "YCoordinatesCenterPixelViewAngle", "FL", "1" },
+ { 0x0022, 0x1530,
+ "Number of Map Points", "NumberOfMapPoints", "UL", "1" },
+ { 0x0022, 0x1531,
+ "Two Dimensional to Three Dimensional Map Data", "TwoDimensionalToThreeDimensionalMapData", "OF", "1" },
+ { 0x0024, 0x0010,
+ "Visual Field Horizontal Extent", "VisualFieldHorizontalExtent", "FL", "1" },
+ { 0x0024, 0x0011,
+ "Visual Field Vertical Extent", "VisualFieldVerticalExtent", "FL", "1" },
+ { 0x0024, 0x0012,
+ "Visual Field Shape", "VisualFieldShape", "CS", "1" },
+ { 0x0024, 0x0016,
+ "Screening Test Mode Code Sequence", "ScreeningTestModeCodeSequence", "SQ", "1" },
+ { 0x0024, 0x0018,
+ "Maximum Stimulus Luminance", "MaximumStimulusLuminance", "FL", "1" },
+ { 0x0024, 0x0020,
+ "Background Luminance", "BackgroundLuminance", "FL", "1" },
+ { 0x0024, 0x0021,
+ "Stimulus Color Code Sequence", "StimulusColorCodeSequence", "SQ", "1" },
+ { 0x0024, 0x0024,
+ "Background Illumination Color Code Sequence", "BackgroundIlluminationColorCodeSequence", "SQ", "1" },
+ { 0x0024, 0x0025,
+ "Stimulus Area", "StimulusArea", "FL", "1" },
+ { 0x0024, 0x0028,
+ "Stimulus Presentation Time", "StimulusPresentationTime", "FL", "1" },
+ { 0x0024, 0x0032,
+ "Fixation Sequence", "FixationSequence", "SQ", "1" },
+ { 0x0024, 0x0033,
+ "Fixation Monitoring Code Sequence", "FixationMonitoringCodeSequence", "SQ", "1" },
+ { 0x0024, 0x0034,
+ "Visual Field Catch Trial Sequence", "VisualFieldCatchTrialSequence", "SQ", "1" },
+ { 0x0024, 0x0035,
+ "Fixation Checked Quantity", "FixationCheckedQuantity", "US", "1" },
+ { 0x0024, 0x0036,
+ "Patient Not Properly Fixated Quantity", "PatientNotProperlyFixatedQuantity", "US", "1" },
+ { 0x0024, 0x0037,
+ "Presented Visual Stimuli Data Flag", "PresentedVisualStimuliDataFlag", "CS", "1" },
+ { 0x0024, 0x0038,
+ "Number of Visual Stimuli", "NumberOfVisualStimuli", "US", "1" },
+ { 0x0024, 0x0039,
+ "Excessive Fixation Losses Data Flag", "ExcessiveFixationLossesDataFlag", "CS", "1" },
+ { 0x0024, 0x0040,
+ "Excessive Fixation Losses", "ExcessiveFixationLosses", "CS", "1" },
+ { 0x0024, 0x0042,
+ "Stimuli Retesting Quantity", "StimuliRetestingQuantity", "US", "1" },
+ { 0x0024, 0x0044,
+ "Comments on Patient's Performance of Visual Field", "CommentsOnPatientPerformanceOfVisualField", "LT", "1" },
+ { 0x0024, 0x0045,
+ "False Negatives Estimate Flag", "FalseNegativesEstimateFlag", "CS", "1" },
+ { 0x0024, 0x0046,
+ "False Negatives Estimate", "FalseNegativesEstimate", "FL", "1" },
+ { 0x0024, 0x0048,
+ "Negative Catch Trials Quantity", "NegativeCatchTrialsQuantity", "US", "1" },
+ { 0x0024, 0x0050,
+ "False Negatives Quantity", "FalseNegativesQuantity", "US", "1" },
+ { 0x0024, 0x0051,
+ "Excessive False Negatives Data Flag", "ExcessiveFalseNegativesDataFlag", "CS", "1" },
+ { 0x0024, 0x0052,
+ "Excessive False Negatives", "ExcessiveFalseNegatives", "CS", "1" },
+ { 0x0024, 0x0053,
+ "False Positives Estimate Flag", "FalsePositivesEstimateFlag", "CS", "1" },
+ { 0x0024, 0x0054,
+ "False Positives Estimate", "FalsePositivesEstimate", "FL", "1" },
+ { 0x0024, 0x0055,
+ "Catch Trials Data Flag", "CatchTrialsDataFlag", "CS", "1" },
+ { 0x0024, 0x0056,
+ "Positive Catch Trials Quantity", "PositiveCatchTrialsQuantity", "US", "1" },
+ { 0x0024, 0x0057,
+ "Test Point Normals Data Flag", "TestPointNormalsDataFlag", "CS", "1" },
+ { 0x0024, 0x0058,
+ "Test Point Normals Sequence", "TestPointNormalsSequence", "SQ", "1" },
+ { 0x0024, 0x0059,
+ "Global Deviation Probability Normals Flag", "GlobalDeviationProbabilityNormalsFlag", "CS", "1" },
+ { 0x0024, 0x0060,
+ "False Positives Quantity", "FalsePositivesQuantity", "US", "1" },
+ { 0x0024, 0x0061,
+ "Excessive False Positives Data Flag", "ExcessiveFalsePositivesDataFlag", "CS", "1" },
+ { 0x0024, 0x0062,
+ "Excessive False Positives", "ExcessiveFalsePositives", "CS", "1" },
+ { 0x0024, 0x0063,
+ "Visual Field Test Normals Flag", "VisualFieldTestNormalsFlag", "CS", "1" },
+ { 0x0024, 0x0064,
+ "Results Normals Sequence", "ResultsNormalsSequence", "SQ", "1" },
+ { 0x0024, 0x0065,
+ "Age Corrected Sensitivity Deviation Algorithm Sequence", "AgeCorrectedSensitivityDeviationAlgorithmSequence", "SQ", "1" },
+ { 0x0024, 0x0066,
+ "Global Deviation From Normal", "GlobalDeviationFromNormal", "FL", "1" },
+ { 0x0024, 0x0067,
+ "Generalized Defect Sensitivity Deviation Algorithm Sequence", "GeneralizedDefectSensitivityDeviationAlgorithmSequence", "SQ", "1" },
+ { 0x0024, 0x0068,
+ "Localized Deviation From Normal", "LocalizedDeviationFromNormal", "FL", "1" },
+ { 0x0024, 0x0069,
+ "Patient Reliability Indicator", "PatientReliabilityIndicator", "LO", "1" },
+ { 0x0024, 0x0070,
+ "Visual Field Mean Sensitivity", "VisualFieldMeanSensitivity", "FL", "1" },
+ { 0x0024, 0x0071,
+ "Global Deviation Probability", "GlobalDeviationProbability", "FL", "1" },
+ { 0x0024, 0x0072,
+ "Local Deviation Probability Normals Flag", "LocalDeviationProbabilityNormalsFlag", "CS", "1" },
+ { 0x0024, 0x0073,
+ "Localized Deviation Probability", "LocalizedDeviationProbability", "FL", "1" },
+ { 0x0024, 0x0074,
+ "Short Term Fluctuation Calculated", "ShortTermFluctuationCalculated", "CS", "1" },
+ { 0x0024, 0x0075,
+ "Short Term Fluctuation", "ShortTermFluctuation", "FL", "1" },
+ { 0x0024, 0x0076,
+ "Short Term Fluctuation Probability Calculated", "ShortTermFluctuationProbabilityCalculated", "CS", "1" },
+ { 0x0024, 0x0077,
+ "Short Term Fluctuation Probability", "ShortTermFluctuationProbability", "FL", "1" },
+ { 0x0024, 0x0078,
+ "Corrected Localized Deviation From Normal Calculated", "CorrectedLocalizedDeviationFromNormalCalculated", "CS", "1" },
+ { 0x0024, 0x0079,
+ "Corrected Localized Deviation From Normal", "CorrectedLocalizedDeviationFromNormal", "FL", "1" },
+ { 0x0024, 0x0080,
+ "Corrected Localized Deviation From Normal Probability Calculated", "CorrectedLocalizedDeviationFromNormalProbabilityCalculated", "CS", "1" },
+ { 0x0024, 0x0081,
+ "Corrected Localized Deviation From Normal Probability", "CorrectedLocalizedDeviationFromNormalProbability", "FL", "1" },
+ { 0x0024, 0x0083,
+ "Global Deviation Probability Sequence", "GlobalDeviationProbabilitySequence", "SQ", "1" },
+ { 0x0024, 0x0085,
+ "Localized Deviation Probability Sequence", "LocalizedDeviationProbabilitySequence", "SQ", "1" },
+ { 0x0024, 0x0086,
+ "Foveal Sensitivity Measured", "FovealSensitivityMeasured", "CS", "1" },
+ { 0x0024, 0x0087,
+ "Foveal Sensitivity", "FovealSensitivity", "FL", "1" },
+ { 0x0024, 0x0088,
+ "Visual Field Test Duration", "VisualFieldTestDuration", "FL", "1" },
+ { 0x0024, 0x0089,
+ "Visual Field Test Point Sequence", "VisualFieldTestPointSequence", "SQ", "1" },
+ { 0x0024, 0x0090,
+ "Visual Field Test Point X-Coordinate", "VisualFieldTestPointXCoordinate", "FL", "1" },
+ { 0x0024, 0x0091,
+ "Visual Field Test Point Y-Coordinate", "VisualFieldTestPointYCoordinate", "FL", "1" },
+ { 0x0024, 0x0092,
+ "Age Corrected Sensitivity Deviation Value", "AgeCorrectedSensitivityDeviationValue", "FL", "1" },
+ { 0x0024, 0x0093,
+ "Stimulus Results", "StimulusResults", "CS", "1" },
+ { 0x0024, 0x0094,
+ "Sensitivity Value", "SensitivityValue", "FL", "1" },
+ { 0x0024, 0x0095,
+ "Retest Stimulus Seen", "RetestStimulusSeen", "CS", "1" },
+ { 0x0024, 0x0096,
+ "Retest Sensitivity Value", "RetestSensitivityValue", "FL", "1" },
+ { 0x0024, 0x0097,
+ "Visual Field Test Point Normals Sequence", "VisualFieldTestPointNormalsSequence", "SQ", "1" },
+ { 0x0024, 0x0098,
+ "Quantified Defect", "QuantifiedDefect", "FL", "1" },
+ { 0x0024, 0x0100,
+ "Age Corrected Sensitivity Deviation Probability Value", "AgeCorrectedSensitivityDeviationProbabilityValue", "FL", "1" },
+ { 0x0024, 0x0102,
+ "Generalized Defect Corrected Sensitivity Deviation Flag", "GeneralizedDefectCorrectedSensitivityDeviationFlag", "CS", "1" },
+ { 0x0024, 0x0103,
+ "Generalized Defect Corrected Sensitivity Deviation Value", "GeneralizedDefectCorrectedSensitivityDeviationValue", "FL", "1" },
+ { 0x0024, 0x0104,
+ "Generalized Defect Corrected Sensitivity Deviation Probability Value", "GeneralizedDefectCorrectedSensitivityDeviationProbabilityValue", "FL", "1" },
+ { 0x0024, 0x0105,
+ "Minimum Sensitivity Value", "MinimumSensitivityValue", "FL", "1" },
+ { 0x0024, 0x0106,
+ "Blind Spot Localized", "BlindSpotLocalized", "CS", "1" },
+ { 0x0024, 0x0107,
+ "Blind Spot X-Coordinate", "BlindSpotXCoordinate", "FL", "1" },
+ { 0x0024, 0x0108,
+ "Blind Spot Y-Coordinate", "BlindSpotYCoordinate", "FL", "1" },
+ { 0x0024, 0x0110,
+ "Visual Acuity Measurement Sequence", "VisualAcuityMeasurementSequence", "SQ", "1" },
+ { 0x0024, 0x0112,
+ "Refractive Parameters Used on Patient Sequence", "RefractiveParametersUsedOnPatientSequence", "SQ", "1" },
+ { 0x0024, 0x0113,
+ "Measurement Laterality", "MeasurementLaterality", "CS", "1" },
+ { 0x0024, 0x0114,
+ "Ophthalmic Patient Clinical Information Left Eye Sequence", "OphthalmicPatientClinicalInformationLeftEyeSequence", "SQ", "1" },
+ { 0x0024, 0x0115,
+ "Ophthalmic Patient Clinical Information Right Eye Sequence", "OphthalmicPatientClinicalInformationRightEyeSequence", "SQ", "1" },
+ { 0x0024, 0x0117,
+ "Foveal Point Normative Data Flag", "FovealPointNormativeDataFlag", "CS", "1" },
+ { 0x0024, 0x0118,
+ "Foveal Point Probability Value", "FovealPointProbabilityValue", "FL", "1" },
+ { 0x0024, 0x0120,
+ "Screening Baseline Measured", "ScreeningBaselineMeasured", "CS", "1" },
+ { 0x0024, 0x0122,
+ "Screening Baseline Measured Sequence", "ScreeningBaselineMeasuredSequence", "SQ", "1" },
+ { 0x0024, 0x0124,
+ "Screening Baseline Type", "ScreeningBaselineType", "CS", "1" },
+ { 0x0024, 0x0126,
+ "Screening Baseline Value", "ScreeningBaselineValue", "FL", "1" },
+ { 0x0024, 0x0202,
+ "Algorithm Source", "AlgorithmSource", "LO", "1" },
+ { 0x0024, 0x0306,
+ "Data Set Name", "DataSetName", "LO", "1" },
+ { 0x0024, 0x0307,
+ "Data Set Version", "DataSetVersion", "LO", "1" },
+ { 0x0024, 0x0308,
+ "Data Set Source", "DataSetSource", "LO", "1" },
+ { 0x0024, 0x0309,
+ "Data Set Description", "DataSetDescription", "LO", "1" },
+ { 0x0024, 0x0317,
+ "Visual Field Test Reliability Global Index Sequence", "VisualFieldTestReliabilityGlobalIndexSequence", "SQ", "1" },
+ { 0x0024, 0x0320,
+ "Visual Field Global Results Index Sequence", "VisualFieldGlobalResultsIndexSequence", "SQ", "1" },
+ { 0x0024, 0x0325,
+ "Data Observation Sequence", "DataObservationSequence", "SQ", "1" },
+ { 0x0024, 0x0338,
+ "Index Normals Flag", "IndexNormalsFlag", "CS", "1" },
+ { 0x0024, 0x0341,
+ "Index Probability", "IndexProbability", "FL", "1" },
+ { 0x0024, 0x0344,
+ "Index Probability Sequence", "IndexProbabilitySequence", "SQ", "1" },
+ { 0x0028, 0x0002,
+ "Samples per Pixel", "SamplesPerPixel", "US", "1" },
+ { 0x0028, 0x0003,
+ "Samples per Pixel Used", "SamplesPerPixelUsed", "US", "1" },
+ { 0x0028, 0x0004,
+ "Photometric Interpretation", "PhotometricInterpretation", "CS", "1" },
+ { 0x0028, 0x0005,
+ "Image Dimensions", "ImageDimensions", "US", "1" },
+ { 0x0028, 0x0006,
+ "Planar Configuration", "PlanarConfiguration", "US", "1" },
+ { 0x0028, 0x0008,
+ "Number of Frames", "NumberOfFrames", "IS", "1" },
+ { 0x0028, 0x0009,
+ "Frame Increment Pointer", "FrameIncrementPointer", "AT", "1-n" },
+ { 0x0028, 0x000a,
+ "Frame Dimension Pointer", "FrameDimensionPointer", "AT", "1-n" },
+ { 0x0028, 0x0010,
+ "Rows", "Rows", "US", "1" },
+ { 0x0028, 0x0011,
+ "Columns", "Columns", "US", "1" },
+ { 0x0028, 0x0012,
+ "Planes", "Planes", "US", "1" },
+ { 0x0028, 0x0014,
+ "Ultrasound Color Data Present", "UltrasoundColorDataPresent", "US", "1" },
+ { 0x0028, 0x0030,
+ "Pixel Spacing", "PixelSpacing", "DS", "2" },
+ { 0x0028, 0x0031,
+ "Zoom Factor", "ZoomFactor", "DS", "2" },
+ { 0x0028, 0x0032,
+ "Zoom Center", "ZoomCenter", "DS", "2" },
+ { 0x0028, 0x0034,
+ "Pixel Aspect Ratio", "PixelAspectRatio", "IS", "2" },
+ { 0x0028, 0x0040,
+ "Image Format", "ImageFormat", "CS", "1" },
+ { 0x0028, 0x0050,
+ "Manipulated Image", "ManipulatedImage", "LO", "1-n" },
+ { 0x0028, 0x0051,
+ "Corrected Image", "CorrectedImage", "CS", "1-n" },
+ { 0x0028, 0x005f,
+ "Compression Recognition Code", "CompressionRecognitionCode", "LO", "1" },
+ { 0x0028, 0x0060,
+ "Compression Code", "CompressionCode", "CS", "1" },
+ { 0x0028, 0x0061,
+ "Compression Originator", "CompressionOriginator", "SH", "1" },
+ { 0x0028, 0x0062,
+ "Compression Label", "CompressionLabel", "LO", "1" },
+ { 0x0028, 0x0063,
+ "Compression Description", "CompressionDescription", "SH", "1" },
+ { 0x0028, 0x0065,
+ "Compression Sequence", "CompressionSequence", "CS", "1-n" },
+ { 0x0028, 0x0066,
+ "Compression Step Pointers", "CompressionStepPointers", "AT", "1-n" },
+ { 0x0028, 0x0068,
+ "Repeat Interval", "RepeatInterval", "US", "1" },
+ { 0x0028, 0x0069,
+ "Bits Grouped", "BitsGrouped", "US", "1" },
+ { 0x0028, 0x0070,
+ "Perimeter Table", "PerimeterTable", "US", "1-n" },
+ { 0x0028, 0x0071,
+ "Perimeter Value", "PerimeterValue", "US or SS", "1" },
+ { 0x0028, 0x0080,
+ "Predictor Rows", "PredictorRows", "US", "1" },
+ { 0x0028, 0x0081,
+ "Predictor Columns", "PredictorColumns", "US", "1" },
+ { 0x0028, 0x0082,
+ "Predictor Constants", "PredictorConstants", "US", "1-n" },
+ { 0x0028, 0x0090,
+ "Blocked Pixels", "BlockedPixels", "CS", "1" },
+ { 0x0028, 0x0091,
+ "Block Rows", "BlockRows", "US", "1" },
+ { 0x0028, 0x0092,
+ "Block Columns", "BlockColumns", "US", "1" },
+ { 0x0028, 0x0093,
+ "Row Overlap", "RowOverlap", "US", "1" },
+ { 0x0028, 0x0094,
+ "Column Overlap", "ColumnOverlap", "US", "1" },
+ { 0x0028, 0x0100,
+ "Bits Allocated", "BitsAllocated", "US", "1" },
+ { 0x0028, 0x0101,
+ "Bits Stored", "BitsStored", "US", "1" },
+ { 0x0028, 0x0102,
+ "High Bit", "HighBit", "US", "1" },
+ { 0x0028, 0x0103,
+ "Pixel Representation", "PixelRepresentation", "US", "1" },
+ { 0x0028, 0x0104,
+ "Smallest Valid Pixel Value", "SmallestValidPixelValue", "US or SS", "1" },
+ { 0x0028, 0x0105,
+ "Largest Valid Pixel Value", "LargestValidPixelValue", "US or SS", "1" },
+ { 0x0028, 0x0106,
+ "Smallest Image Pixel Value", "SmallestImagePixelValue", "US or SS", "1" },
+ { 0x0028, 0x0107,
+ "Largest Image Pixel Value", "LargestImagePixelValue", "US or SS", "1" },
+ { 0x0028, 0x0108,
+ "Smallest Pixel Value in Series", "SmallestPixelValueInSeries", "US or SS", "1" },
+ { 0x0028, 0x0109,
+ "Largest Pixel Value in Series", "LargestPixelValueInSeries", "US or SS", "1" },
+ { 0x0028, 0x0110,
+ "Smallest Image Pixel Value in Plane", "SmallestImagePixelValueInPlane", "US or SS", "1" },
+ { 0x0028, 0x0111,
+ "Largest Image Pixel Value in Plane", "LargestImagePixelValueInPlane", "US or SS", "1" },
+ { 0x0028, 0x0120,
+ "Pixel Padding Value", "PixelPaddingValue", "US or SS", "1" },
+ { 0x0028, 0x0121,
+ "Pixel Padding Range Limit", "PixelPaddingRangeLimit", "US or SS", "1" },
+ { 0x0028, 0x0122,
+ "Float Pixel Padding Value", "FloatPixelPaddingValue", "FL", "1" },
+ { 0x0028, 0x0123,
+ "Double Float Pixel Padding Value", "DoubleFloatPixelPaddingValue", "FD", "1" },
+ { 0x0028, 0x0124,
+ "Float Pixel Padding Range Limit", "FloatPixelPaddingRangeLimit", "FL", "1" },
+ { 0x0028, 0x0125,
+ "Double Float Pixel Padding Range Limit", "DoubleFloatPixelPaddingRangeLimit", "FD", "1" },
+ { 0x0028, 0x0200,
+ "Image Location", "ImageLocation", "US", "1" },
+ { 0x0028, 0x0300,
+ "Quality Control Image", "QualityControlImage", "CS", "1" },
+ { 0x0028, 0x0301,
+ "Burned In Annotation", "BurnedInAnnotation", "CS", "1" },
+ { 0x0028, 0x0302,
+ "Recognizable Visual Features", "RecognizableVisualFeatures", "CS", "1" },
+ { 0x0028, 0x0303,
+ "Longitudinal Temporal Information Modified", "LongitudinalTemporalInformationModified", "CS", "1" },
+ { 0x0028, 0x0304,
+ "Referenced Color Palette Instance UID", "ReferencedColorPaletteInstanceUID", "UI", "1" },
+ { 0x0028, 0x0400,
+ "Transform Label", "TransformLabel", "LO", "1" },
+ { 0x0028, 0x0401,
+ "Transform Version Number", "TransformVersionNumber", "LO", "1" },
+ { 0x0028, 0x0402,
+ "Number of Transform Steps", "NumberOfTransformSteps", "US", "1" },
+ { 0x0028, 0x0403,
+ "Sequence of Compressed Data", "SequenceOfCompressedData", "LO", "1-n" },
+ { 0x0028, 0x0404,
+ "Details of Coefficients", "DetailsOfCoefficients", "AT", "1-n" },
+ { 0x0028, 0x0700,
+ "DCT Label", "DCTLabel", "LO", "1" },
+ { 0x0028, 0x0701,
+ "Data Block Description", "DataBlockDescription", "CS", "1-n" },
+ { 0x0028, 0x0702,
+ "Data Block", "DataBlock", "AT", "1-n" },
+ { 0x0028, 0x0710,
+ "Normalization Factor Format", "NormalizationFactorFormat", "US", "1" },
+ { 0x0028, 0x0720,
+ "Zonal Map Number Format", "ZonalMapNumberFormat", "US", "1" },
+ { 0x0028, 0x0721,
+ "Zonal Map Location", "ZonalMapLocation", "AT", "1-n" },
+ { 0x0028, 0x0722,
+ "Zonal Map Format", "ZonalMapFormat", "US", "1" },
+ { 0x0028, 0x0730,
+ "Adaptive Map Format", "AdaptiveMapFormat", "US", "1" },
+ { 0x0028, 0x0740,
+ "Code Number Format", "CodeNumberFormat", "US", "1" },
+ { 0x0028, 0x0a02,
+ "Pixel Spacing Calibration Type", "PixelSpacingCalibrationType", "CS", "1" },
+ { 0x0028, 0x0a04,
+ "Pixel Spacing Calibration Description", "PixelSpacingCalibrationDescription", "LO", "1" },
+ { 0x0028, 0x1040,
+ "Pixel Intensity Relationship", "PixelIntensityRelationship", "CS", "1" },
+ { 0x0028, 0x1041,
+ "Pixel Intensity Relationship Sign", "PixelIntensityRelationshipSign", "SS", "1" },
+ { 0x0028, 0x1050,
+ "Window Center", "WindowCenter", "DS", "1-n" },
+ { 0x0028, 0x1051,
+ "Window Width", "WindowWidth", "DS", "1-n" },
+ { 0x0028, 0x1052,
+ "Rescale Intercept", "RescaleIntercept", "DS", "1" },
+ { 0x0028, 0x1053,
+ "Rescale Slope", "RescaleSlope", "DS", "1" },
+ { 0x0028, 0x1054,
+ "Rescale Type", "RescaleType", "LO", "1" },
+ { 0x0028, 0x1055,
+ "Window Center & Width Explanation", "WindowCenterWidthExplanation", "LO", "1-n" },
+ { 0x0028, 0x1056,
+ "VOI LUT Function", "VOILUTFunction", "CS", "1" },
+ { 0x0028, 0x1080,
+ "Gray Scale", "GrayScale", "CS", "1" },
+ { 0x0028, 0x1090,
+ "Recommended Viewing Mode", "RecommendedViewingMode", "CS", "1" },
+ { 0x0028, 0x1100,
+ "Gray Lookup Table Descriptor", "GrayLookupTableDescriptor", "US or SS", "3" },
+ { 0x0028, 0x1101,
+ "Red Palette Color Lookup Table Descriptor", "RedPaletteColorLookupTableDescriptor", "US or SS", "3" },
+ { 0x0028, 0x1102,
+ "Green Palette Color Lookup Table Descriptor", "GreenPaletteColorLookupTableDescriptor", "US or SS", "3" },
+ { 0x0028, 0x1103,
+ "Blue Palette Color Lookup Table Descriptor", "BluePaletteColorLookupTableDescriptor", "US or SS", "3" },
+ { 0x0028, 0x1104,
+ "Alpha Palette Color Lookup Table Descriptor", "AlphaPaletteColorLookupTableDescriptor", "US", "3" },
+ { 0x0028, 0x1111,
+ "Large Red Palette Color Lookup Table Descriptor", "LargeRedPaletteColorLookupTableDescriptor", "US or SS", "4" },
+ { 0x0028, 0x1112,
+ "Large Green Palette Color Lookup Table Descriptor", "LargeGreenPaletteColorLookupTableDescriptor", "US or SS", "4" },
+ { 0x0028, 0x1113,
+ "Large Blue Palette Color Lookup Table Descriptor", "LargeBluePaletteColorLookupTableDescriptor", "US or SS", "4" },
+ { 0x0028, 0x1199,
+ "Palette Color Lookup Table UID", "PaletteColorLookupTableUID", "UI", "1" },
+ { 0x0028, 0x1200,
+ "Gray Lookup Table Data", "GrayLookupTableData", "US or SS or OW", "1-n or 1" },
+ { 0x0028, 0x1201,
+ "Red Palette Color Lookup Table Data", "RedPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1202,
+ "Green Palette Color Lookup Table Data", "GreenPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1203,
+ "Blue Palette Color Lookup Table Data", "BluePaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1204,
+ "Alpha Palette Color Lookup Table Data", "AlphaPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1211,
+ "Large Red Palette Color Lookup Table Data", "LargeRedPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1212,
+ "Large Green Palette Color Lookup Table Data", "LargeGreenPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1213,
+ "Large Blue Palette Color Lookup Table Data", "LargeBluePaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1214,
+ "Large Palette Color Lookup Table UID", "LargePaletteColorLookupTableUID", "UI", "1" },
+ { 0x0028, 0x1221,
+ "Segmented Red Palette Color Lookup Table Data", "SegmentedRedPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1222,
+ "Segmented Green Palette Color Lookup Table Data", "SegmentedGreenPaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1223,
+ "Segmented Blue Palette Color Lookup Table Data", "SegmentedBluePaletteColorLookupTableData", "OW", "1" },
+ { 0x0028, 0x1300,
+ "Breast Implant Present", "BreastImplantPresent", "CS", "1" },
+ { 0x0028, 0x1350,
+ "Partial View", "PartialView", "CS", "1" },
+ { 0x0028, 0x1351,
+ "Partial View Description", "PartialViewDescription", "ST", "1" },
+ { 0x0028, 0x1352,
+ "Partial View Code Sequence", "PartialViewCodeSequence", "SQ", "1" },
+ { 0x0028, 0x135a,
+ "Spatial Locations Preserved", "SpatialLocationsPreserved", "CS", "1" },
+ { 0x0028, 0x1401,
+ "Data Frame Assignment Sequence", "DataFrameAssignmentSequence", "SQ", "1" },
+ { 0x0028, 0x1402,
+ "Data Path Assignment", "DataPathAssignment", "CS", "1" },
+ { 0x0028, 0x1403,
+ "Bits Mapped to Color Lookup Table", "BitsMappedToColorLookupTable", "US", "1" },
+ { 0x0028, 0x1404,
+ "Blending LUT 1 Sequence", "BlendingLUT1Sequence", "SQ", "1" },
+ { 0x0028, 0x1405,
+ "Blending LUT 1 Transfer Function", "BlendingLUT1TransferFunction", "CS", "1" },
+ { 0x0028, 0x1406,
+ "Blending Weight Constant", "BlendingWeightConstant", "FD", "1" },
+ { 0x0028, 0x1407,
+ "Blending Lookup Table Descriptor", "BlendingLookupTableDescriptor", "US", "3" },
+ { 0x0028, 0x1408,
+ "Blending Lookup Table Data", "BlendingLookupTableData", "OW", "1" },
+ { 0x0028, 0x140b,
+ "Enhanced Palette Color Lookup Table Sequence", "EnhancedPaletteColorLookupTableSequence", "SQ", "1" },
+ { 0x0028, 0x140c,
+ "Blending LUT 2 Sequence", "BlendingLUT2Sequence", "SQ", "1" },
+ { 0x0028, 0x140d,
+ "Blending LUT 2 Transfer Function", "BlendingLUT2TransferFunction", "CS", "1" },
+ { 0x0028, 0x140e,
+ "Data Path ID", "DataPathID", "CS", "1" },
+ { 0x0028, 0x140f,
+ "RGB LUT Transfer Function", "RGBLUTTransferFunction", "CS", "1" },
+ { 0x0028, 0x1410,
+ "Alpha LUT Transfer Function", "AlphaLUTTransferFunction", "CS", "1" },
+ { 0x0028, 0x2000,
+ "ICC Profile", "ICCProfile", "OB", "1" },
+ { 0x0028, 0x2110,
+ "Lossy Image Compression", "LossyImageCompression", "CS", "1" },
+ { 0x0028, 0x2112,
+ "Lossy Image Compression Ratio", "LossyImageCompressionRatio", "DS", "1-n" },
+ { 0x0028, 0x2114,
+ "Lossy Image Compression Method", "LossyImageCompressionMethod", "CS", "1-n" },
+ { 0x0028, 0x3000,
+ "Modality LUT Sequence", "ModalityLUTSequence", "SQ", "1" },
+ { 0x0028, 0x3002,
+ "LUT Descriptor", "LUTDescriptor", "US or SS", "3" },
+ { 0x0028, 0x3003,
+ "LUT Explanation", "LUTExplanation", "LO", "1" },
+ { 0x0028, 0x3004,
+ "Modality LUT Type", "ModalityLUTType", "LO", "1" },
+ { 0x0028, 0x3006,
+ "LUT Data", "LUTData", "US or OW", "1-n or 1" },
+ { 0x0028, 0x3010,
+ "VOI LUT Sequence", "VOILUTSequence", "SQ", "1" },
+ { 0x0028, 0x3110,
+ "Softcopy VOI LUT Sequence", "SoftcopyVOILUTSequence", "SQ", "1" },
+ { 0x0028, 0x4000,
+ "Image Presentation Comments", "ImagePresentationComments", "LT", "1" },
+ { 0x0028, 0x5000,
+ "Bi-Plane Acquisition Sequence", "BiPlaneAcquisitionSequence", "SQ", "1" },
+ { 0x0028, 0x6010,
+ "Representative Frame Number", "RepresentativeFrameNumber", "US", "1" },
+ { 0x0028, 0x6020,
+ "Frame Numbers of Interest (FOI)", "FrameNumbersOfInterest", "US", "1-n" },
+ { 0x0028, 0x6022,
+ "Frame of Interest Description", "FrameOfInterestDescription", "LO", "1-n" },
+ { 0x0028, 0x6023,
+ "Frame of Interest Type", "FrameOfInterestType", "CS", "1-n" },
+ { 0x0028, 0x6030,
+ "Mask Pointer(s)", "MaskPointers", "US", "1-n" },
+ { 0x0028, 0x6040,
+ "R Wave Pointer", "RWavePointer", "US", "1-n" },
+ { 0x0028, 0x6100,
+ "Mask Subtraction Sequence", "MaskSubtractionSequence", "SQ", "1" },
+ { 0x0028, 0x6101,
+ "Mask Operation", "MaskOperation", "CS", "1" },
+ { 0x0028, 0x6102,
+ "Applicable Frame Range", "ApplicableFrameRange", "US", "2-2n" },
+ { 0x0028, 0x6110,
+ "Mask Frame Numbers", "MaskFrameNumbers", "US", "1-n" },
+ { 0x0028, 0x6112,
+ "Contrast Frame Averaging", "ContrastFrameAveraging", "US", "1" },
+ { 0x0028, 0x6114,
+ "Mask Sub-pixel Shift", "MaskSubPixelShift", "FL", "2" },
+ { 0x0028, 0x6120,
+ "TID Offset", "TIDOffset", "SS", "1" },
+ { 0x0028, 0x6190,
+ "Mask Operation Explanation", "MaskOperationExplanation", "ST", "1" },
+ { 0x0028, 0x7000,
+ "Equipment Administrator Sequence", "EquipmentAdministratorSequence", "SQ", "1" },
+ { 0x0028, 0x7001,
+ "Number of Display Subsystems", "NumberOfDisplaySubsystems", "US", "1" },
+ { 0x0028, 0x7002,
+ "Current Configuration ID", "CurrentConfigurationID", "US", "1" },
+ { 0x0028, 0x7003,
+ "Display Subsystem ID", "DisplaySubsystemID", "US", "1" },
+ { 0x0028, 0x7004,
+ "Display Subsystem Name", "DisplaySubsystemName", "SH", "1" },
+ { 0x0028, 0x7005,
+ "Display Subsystem Description", "DisplaySubsystemDescription", "LO", "1" },
+ { 0x0028, 0x7006,
+ "System Status", "SystemStatus", "CS", "1" },
+ { 0x0028, 0x7007,
+ "System Status Comment", "SystemStatusComment", "LO", "1" },
+ { 0x0028, 0x7008,
+ "Target Luminance Characteristics Sequence", "TargetLuminanceCharacteristicsSequence", "SQ", "1" },
+ { 0x0028, 0x7009,
+ "Luminance Characteristics ID", "LuminanceCharacteristicsID", "US", "1" },
+ { 0x0028, 0x700a,
+ "Display Subsystem Configuration Sequence", "DisplaySubsystemConfigurationSequence", "SQ", "1" },
+ { 0x0028, 0x700b,
+ "Configuration ID", "ConfigurationID", "US", "1" },
+ { 0x0028, 0x700c,
+ "Configuration Name", "ConfigurationName", "SH", "1" },
+ { 0x0028, 0x700d,
+ "Configuration Description", "ConfigurationDescription", "LO", "1" },
+ { 0x0028, 0x700e,
+ "Referenced Target Luminance Characteristics ID", "ReferencedTargetLuminanceCharacteristicsID", "US", "1" },
+ { 0x0028, 0x700f,
+ "QA Results Sequence", "QAResultsSequence", "SQ", "1" },
+ { 0x0028, 0x7010,
+ "Display Subsystem QA Results Sequence", "DisplaySubsystemQAResultsSequence", "SQ", "1" },
+ { 0x0028, 0x7011,
+ "Configuration QA Results Sequence", "ConfigurationQAResultsSequence", "SQ", "1" },
+ { 0x0028, 0x7012,
+ "Measurement Equipment Sequence", "MeasurementEquipmentSequence", "SQ", "1" },
+ { 0x0028, 0x7013,
+ "Measurement Functions", "MeasurementFunctions", "CS", "1-n" },
+ { 0x0028, 0x7014,
+ "Measurement Equipment Type", "MeasurementEquipmentType", "CS", "1" },
+ { 0x0028, 0x7015,
+ "Visual Evaluation Result Sequence", "VisualEvaluationResultSequence", "SQ", "1" },
+ { 0x0028, 0x7016,
+ "Display Calibration Result Sequence", "DisplayCalibrationResultSequence", "SQ", "1" },
+ { 0x0028, 0x7017,
+ "DDL Value", "DDLValue", "US", "1" },
+ { 0x0028, 0x7018,
+ "CIExy White Point", "CIExyWhitePoint", "FL", "2" },
+ { 0x0028, 0x7019,
+ "Display Function Type", "DisplayFunctionType", "CS", "1" },
+ { 0x0028, 0x701a,
+ "Gamma Value", "GammaValue", "FL", "1" },
+ { 0x0028, 0x701b,
+ "Number of Luminance Points", "NumberOfLuminancePoints", "US", "1" },
+ { 0x0028, 0x701c,
+ "Luminance Response Sequence", "LuminanceResponseSequence", "SQ", "1" },
+ { 0x0028, 0x701d,
+ "Target Minimum Luminance", "TargetMinimumLuminance", "FL", "1" },
+ { 0x0028, 0x701e,
+ "Target Maximum Luminance", "TargetMaximumLuminance", "FL", "1" },
+ { 0x0028, 0x701f,
+ "Luminance Value", "LuminanceValue", "FL", "1" },
+ { 0x0028, 0x7020,
+ "Luminance Response Description", "LuminanceResponseDescription", "LO", "1" },
+ { 0x0028, 0x7021,
+ "White Point Flag", "WhitePointFlag", "CS", "1" },
+ { 0x0028, 0x7022,
+ "Display Device Type Code Sequence", "DisplayDeviceTypeCodeSequence", "SQ", "1" },
+ { 0x0028, 0x7023,
+ "Display Subsystem Sequence", "DisplaySubsystemSequence", "SQ", "1" },
+ { 0x0028, 0x7024,
+ "Luminance Result Sequence", "LuminanceResultSequence", "SQ", "1" },
+ { 0x0028, 0x7025,
+ "Ambient Light Value Source", "AmbientLightValueSource", "CS", "1" },
+ { 0x0028, 0x7026,
+ "Measured Characteristics", "MeasuredCharacteristics", "CS", "1-n" },
+ { 0x0028, 0x7027,
+ "Luminance Uniformity Result Sequence", "LuminanceUniformityResultSequence", "SQ", "1" },
+ { 0x0028, 0x7028,
+ "Visual Evaluation Test Sequence", "VisualEvaluationTestSequence", "SQ", "1" },
+ { 0x0028, 0x7029,
+ "Test Result", "TestResult", "CS", "1" },
+ { 0x0028, 0x702a,
+ "Test Result Comment", "TestResultComment", "LO", "1" },
+ { 0x0028, 0x702b,
+ "Test Image Validation", "TestImageValidation", "CS", "1" },
+ { 0x0028, 0x702c,
+ "Test Pattern Code Sequence", "TestPatternCodeSequence", "SQ", "1" },
+ { 0x0028, 0x702d,
+ "Measurement Pattern Code Sequence", "MeasurementPatternCodeSequence", "SQ", "1" },
+ { 0x0028, 0x702e,
+ "Visual Evaluation Method Code Sequence", "VisualEvaluationMethodCodeSequence", "SQ", "1" },
+ { 0x0028, 0x7fe0,
+ "Pixel Data Provider URL", "PixelDataProviderURL", "UR", "1" },
+ { 0x0028, 0x9001,
+ "Data Point Rows", "DataPointRows", "UL", "1" },
+ { 0x0028, 0x9002,
+ "Data Point Columns", "DataPointColumns", "UL", "1" },
+ { 0x0028, 0x9003,
+ "Signal Domain Columns", "SignalDomainColumns", "CS", "1" },
+ { 0x0028, 0x9099,
+ "Largest Monochrome Pixel Value", "LargestMonochromePixelValue", "US", "1" },
+ { 0x0028, 0x9108,
+ "Data Representation", "DataRepresentation", "CS", "1" },
+ { 0x0028, 0x9110,
+ "Pixel Measures Sequence", "PixelMeasuresSequence", "SQ", "1" },
+ { 0x0028, 0x9132,
+ "Frame VOI LUT Sequence", "FrameVOILUTSequence", "SQ", "1" },
+ { 0x0028, 0x9145,
+ "Pixel Value Transformation Sequence", "PixelValueTransformationSequence", "SQ", "1" },
+ { 0x0028, 0x9235,
+ "Signal Domain Rows", "SignalDomainRows", "CS", "1" },
+ { 0x0028, 0x9411,
+ "Display Filter Percentage", "DisplayFilterPercentage", "FL", "1" },
+ { 0x0028, 0x9415,
+ "Frame Pixel Shift Sequence", "FramePixelShiftSequence", "SQ", "1" },
+ { 0x0028, 0x9416,
+ "Subtraction Item ID", "SubtractionItemID", "US", "1" },
+ { 0x0028, 0x9422,
+ "Pixel Intensity Relationship LUT Sequence", "PixelIntensityRelationshipLUTSequence", "SQ", "1" },
+ { 0x0028, 0x9443,
+ "Frame Pixel Data Properties Sequence", "FramePixelDataPropertiesSequence", "SQ", "1" },
+ { 0x0028, 0x9444,
+ "Geometrical Properties", "GeometricalProperties", "CS", "1" },
+ { 0x0028, 0x9445,
+ "Geometric Maximum Distortion", "GeometricMaximumDistortion", "FL", "1" },
+ { 0x0028, 0x9446,
+ "Image Processing Applied", "ImageProcessingApplied", "CS", "1-n" },
+ { 0x0028, 0x9454,
+ "Mask Selection Mode", "MaskSelectionMode", "CS", "1" },
+ { 0x0028, 0x9474,
+ "LUT Function", "LUTFunction", "CS", "1" },
+ { 0x0028, 0x9478,
+ "Mask Visibility Percentage", "MaskVisibilityPercentage", "FL", "1" },
+ { 0x0028, 0x9501,
+ "Pixel Shift Sequence", "PixelShiftSequence", "SQ", "1" },
+ { 0x0028, 0x9502,
+ "Region Pixel Shift Sequence", "RegionPixelShiftSequence", "SQ", "1" },
+ { 0x0028, 0x9503,
+ "Vertices of the Region", "VerticesOfTheRegion", "SS", "2-2n" },
+ { 0x0028, 0x9505,
+ "Multi-frame Presentation Sequence", "MultiFramePresentationSequence", "SQ", "1" },
+ { 0x0028, 0x9506,
+ "Pixel Shift Frame Range", "PixelShiftFrameRange", "US", "2-2n" },
+ { 0x0028, 0x9507,
+ "LUT Frame Range", "LUTFrameRange", "US", "2-2n" },
+ { 0x0028, 0x9520,
+ "Image to Equipment Mapping Matrix", "ImageToEquipmentMappingMatrix", "DS", "16" },
+ { 0x0028, 0x9537,
+ "Equipment Coordinate System Identification", "EquipmentCoordinateSystemIdentification", "CS", "1" },
+ { 0x0032, 0x000a,
+ "Study Status ID", "StudyStatusID", "CS", "1" },
+ { 0x0032, 0x000c,
+ "Study Priority ID", "StudyPriorityID", "CS", "1" },
+ { 0x0032, 0x0012,
+ "Study ID Issuer", "StudyIDIssuer", "LO", "1" },
+ { 0x0032, 0x0032,
+ "Study Verified Date", "StudyVerifiedDate", "DA", "1" },
+ { 0x0032, 0x0033,
+ "Study Verified Time", "StudyVerifiedTime", "TM", "1" },
+ { 0x0032, 0x0034,
+ "Study Read Date", "StudyReadDate", "DA", "1" },
+ { 0x0032, 0x0035,
+ "Study Read Time", "StudyReadTime", "TM", "1" },
+ { 0x0032, 0x1000,
+ "Scheduled Study Start Date", "ScheduledStudyStartDate", "DA", "1" },
+ { 0x0032, 0x1001,
+ "Scheduled Study Start Time", "ScheduledStudyStartTime", "TM", "1" },
+ { 0x0032, 0x1010,
+ "Scheduled Study Stop Date", "ScheduledStudyStopDate", "DA", "1" },
+ { 0x0032, 0x1011,
+ "Scheduled Study Stop Time", "ScheduledStudyStopTime", "TM", "1" },
+ { 0x0032, 0x1020,
+ "Scheduled Study Location", "ScheduledStudyLocation", "LO", "1" },
+ { 0x0032, 0x1021,
+ "Scheduled Study Location AE Title", "ScheduledStudyLocationAETitle", "AE", "1-n" },
+ { 0x0032, 0x1030,
+ "Reason for Study", "ReasonForStudy", "LO", "1" },
+ { 0x0032, 0x1031,
+ "Requesting Physician Identification Sequence", "RequestingPhysicianIdentificationSequence", "SQ", "1" },
+ { 0x0032, 0x1032,
+ "Requesting Physician", "RequestingPhysician", "PN", "1" },
+ { 0x0032, 0x1033,
+ "Requesting Service", "RequestingService", "LO", "1" },
+ { 0x0032, 0x1034,
+ "Requesting Service Code Sequence", "RequestingServiceCodeSequence", "SQ", "1" },
+ { 0x0032, 0x1040,
+ "Study Arrival Date", "StudyArrivalDate", "DA", "1" },
+ { 0x0032, 0x1041,
+ "Study Arrival Time", "StudyArrivalTime", "TM", "1" },
+ { 0x0032, 0x1050,
+ "Study Completion Date", "StudyCompletionDate", "DA", "1" },
+ { 0x0032, 0x1051,
+ "Study Completion Time", "StudyCompletionTime", "TM", "1" },
+ { 0x0032, 0x1055,
+ "Study Component Status ID", "StudyComponentStatusID", "CS", "1" },
+ { 0x0032, 0x1060,
+ "Requested Procedure Description", "RequestedProcedureDescription", "LO", "1" },
+ { 0x0032, 0x1064,
+ "Requested Procedure Code Sequence", "RequestedProcedureCodeSequence", "SQ", "1" },
+ { 0x0032, 0x1070,
+ "Requested Contrast Agent", "RequestedContrastAgent", "LO", "1" },
+ { 0x0032, 0x4000,
+ "Study Comments", "StudyComments", "LT", "1" },
+ { 0x0038, 0x0004,
+ "Referenced Patient Alias Sequence", "ReferencedPatientAliasSequence", "SQ", "1" },
+ { 0x0038, 0x0008,
+ "Visit Status ID", "VisitStatusID", "CS", "1" },
+ { 0x0038, 0x0010,
+ "Admission ID", "AdmissionID", "LO", "1" },
+ { 0x0038, 0x0011,
+ "Issuer of Admission ID", "IssuerOfAdmissionID", "LO", "1" },
+ { 0x0038, 0x0014,
+ "Issuer of Admission ID Sequence", "IssuerOfAdmissionIDSequence", "SQ", "1" },
+ { 0x0038, 0x0016,
+ "Route of Admissions", "RouteOfAdmissions", "LO", "1" },
+ { 0x0038, 0x001a,
+ "Scheduled Admission Date", "ScheduledAdmissionDate", "DA", "1" },
+ { 0x0038, 0x001b,
+ "Scheduled Admission Time", "ScheduledAdmissionTime", "TM", "1" },
+ { 0x0038, 0x001c,
+ "Scheduled Discharge Date", "ScheduledDischargeDate", "DA", "1" },
+ { 0x0038, 0x001d,
+ "Scheduled Discharge Time", "ScheduledDischargeTime", "TM", "1" },
+ { 0x0038, 0x001e,
+ "Scheduled Patient Institution Residence", "ScheduledPatientInstitutionResidence", "LO", "1" },
+ { 0x0038, 0x0020,
+ "Admitting Date", "AdmittingDate", "DA", "1" },
+ { 0x0038, 0x0021,
+ "Admitting Time", "AdmittingTime", "TM", "1" },
+ { 0x0038, 0x0030,
+ "Discharge Date", "DischargeDate", "DA", "1" },
+ { 0x0038, 0x0032,
+ "Discharge Time", "DischargeTime", "TM", "1" },
+ { 0x0038, 0x0040,
+ "Discharge Diagnosis Description", "DischargeDiagnosisDescription", "LO", "1" },
+ { 0x0038, 0x0044,
+ "Discharge Diagnosis Code Sequence", "DischargeDiagnosisCodeSequence", "SQ", "1" },
+ { 0x0038, 0x0050,
+ "Special Needs", "SpecialNeeds", "LO", "1" },
+ { 0x0038, 0x0060,
+ "Service Episode ID", "ServiceEpisodeID", "LO", "1" },
+ { 0x0038, 0x0061,
+ "Issuer of Service Episode ID", "IssuerOfServiceEpisodeID", "LO", "1" },
+ { 0x0038, 0x0062,
+ "Service Episode Description", "ServiceEpisodeDescription", "LO", "1" },
+ { 0x0038, 0x0064,
+ "Issuer of Service Episode ID Sequence", "IssuerOfServiceEpisodeIDSequence", "SQ", "1" },
+ { 0x0038, 0x0100,
+ "Pertinent Documents Sequence", "PertinentDocumentsSequence", "SQ", "1" },
+ { 0x0038, 0x0101,
+ "Pertinent Resources Sequence", "PertinentResourcesSequence", "SQ", "1" },
+ { 0x0038, 0x0102,
+ "Resource Description", "ResourceDescription", "LO", "1" },
+ { 0x0038, 0x0300,
+ "Current Patient Location", "CurrentPatientLocation", "LO", "1" },
+ { 0x0038, 0x0400,
+ "Patient's Institution Residence", "PatientInstitutionResidence", "LO", "1" },
+ { 0x0038, 0x0500,
+ "Patient State", "PatientState", "LO", "1" },
+ { 0x0038, 0x0502,
+ "Patient Clinical Trial Participation Sequence", "PatientClinicalTrialParticipationSequence", "SQ", "1" },
+ { 0x0038, 0x4000,
+ "Visit Comments", "VisitComments", "LT", "1" },
+ { 0x003a, 0x0004,
+ "Waveform Originality", "WaveformOriginality", "CS", "1" },
+ { 0x003a, 0x0005,
+ "Number of Waveform Channels", "NumberOfWaveformChannels", "US", "1" },
+ { 0x003a, 0x0010,
+ "Number of Waveform Samples", "NumberOfWaveformSamples", "UL", "1" },
+ { 0x003a, 0x001a,
+ "Sampling Frequency", "SamplingFrequency", "DS", "1" },
+ { 0x003a, 0x0020,
+ "Multiplex Group Label", "MultiplexGroupLabel", "SH", "1" },
+ { 0x003a, 0x0200,
+ "Channel Definition Sequence", "ChannelDefinitionSequence", "SQ", "1" },
+ { 0x003a, 0x0202,
+ "Waveform Channel Number", "WaveformChannelNumber", "IS", "1" },
+ { 0x003a, 0x0203,
+ "Channel Label", "ChannelLabel", "SH", "1" },
+ { 0x003a, 0x0205,
+ "Channel Status", "ChannelStatus", "CS", "1-n" },
+ { 0x003a, 0x0208,
+ "Channel Source Sequence", "ChannelSourceSequence", "SQ", "1" },
+ { 0x003a, 0x0209,
+ "Channel Source Modifiers Sequence", "ChannelSourceModifiersSequence", "SQ", "1" },
+ { 0x003a, 0x020a,
+ "Source Waveform Sequence", "SourceWaveformSequence", "SQ", "1" },
+ { 0x003a, 0x020c,
+ "Channel Derivation Description", "ChannelDerivationDescription", "LO", "1" },
+ { 0x003a, 0x0210,
+ "Channel Sensitivity", "ChannelSensitivity", "DS", "1" },
+ { 0x003a, 0x0211,
+ "Channel Sensitivity Units Sequence", "ChannelSensitivityUnitsSequence", "SQ", "1" },
+ { 0x003a, 0x0212,
+ "Channel Sensitivity Correction Factor", "ChannelSensitivityCorrectionFactor", "DS", "1" },
+ { 0x003a, 0x0213,
+ "Channel Baseline", "ChannelBaseline", "DS", "1" },
+ { 0x003a, 0x0214,
+ "Channel Time Skew", "ChannelTimeSkew", "DS", "1" },
+ { 0x003a, 0x0215,
+ "Channel Sample Skew", "ChannelSampleSkew", "DS", "1" },
+ { 0x003a, 0x0218,
+ "Channel Offset", "ChannelOffset", "DS", "1" },
+ { 0x003a, 0x021a,
+ "Waveform Bits Stored", "WaveformBitsStored", "US", "1" },
+ { 0x003a, 0x0220,
+ "Filter Low Frequency", "FilterLowFrequency", "DS", "1" },
+ { 0x003a, 0x0221,
+ "Filter High Frequency", "FilterHighFrequency", "DS", "1" },
+ { 0x003a, 0x0222,
+ "Notch Filter Frequency", "NotchFilterFrequency", "DS", "1" },
+ { 0x003a, 0x0223,
+ "Notch Filter Bandwidth", "NotchFilterBandwidth", "DS", "1" },
+ { 0x003a, 0x0230,
+ "Waveform Data Display Scale", "WaveformDataDisplayScale", "FL", "1" },
+ { 0x003a, 0x0231,
+ "Waveform Display Background CIELab Value", "WaveformDisplayBackgroundCIELabValue", "US", "3" },
+ { 0x003a, 0x0240,
+ "Waveform Presentation Group Sequence", "WaveformPresentationGroupSequence", "SQ", "1" },
+ { 0x003a, 0x0241,
+ "Presentation Group Number", "PresentationGroupNumber", "US", "1" },
+ { 0x003a, 0x0242,
+ "Channel Display Sequence", "ChannelDisplaySequence", "SQ", "1" },
+ { 0x003a, 0x0244,
+ "Channel Recommended Display CIELab Value", "ChannelRecommendedDisplayCIELabValue", "US", "3" },
+ { 0x003a, 0x0245,
+ "Channel Position", "ChannelPosition", "FL", "1" },
+ { 0x003a, 0x0246,
+ "Display Shading Flag", "DisplayShadingFlag", "CS", "1" },
+ { 0x003a, 0x0247,
+ "Fractional Channel Display Scale", "FractionalChannelDisplayScale", "FL", "1" },
+ { 0x003a, 0x0248,
+ "Absolute Channel Display Scale", "AbsoluteChannelDisplayScale", "FL", "1" },
+ { 0x003a, 0x0300,
+ "Multiplexed Audio Channels Description Code Sequence", "MultiplexedAudioChannelsDescriptionCodeSequence", "SQ", "1" },
+ { 0x003a, 0x0301,
+ "Channel Identification Code", "ChannelIdentificationCode", "IS", "1" },
+ { 0x003a, 0x0302,
+ "Channel Mode", "ChannelMode", "CS", "1" },
+ { 0x0040, 0x0001,
+ "Scheduled Station AE Title", "ScheduledStationAETitle", "AE", "1-n" },
+ { 0x0040, 0x0002,
+ "Scheduled Procedure Step Start Date", "ScheduledProcedureStepStartDate", "DA", "1" },
+ { 0x0040, 0x0003,
+ "Scheduled Procedure Step Start Time", "ScheduledProcedureStepStartTime", "TM", "1" },
+ { 0x0040, 0x0004,
+ "Scheduled Procedure Step End Date", "ScheduledProcedureStepEndDate", "DA", "1" },
+ { 0x0040, 0x0005,
+ "Scheduled Procedure Step End Time", "ScheduledProcedureStepEndTime", "TM", "1" },
+ { 0x0040, 0x0006,
+ "Scheduled Performing Physician's Name", "ScheduledPerformingPhysicianName", "PN", "1" },
+ { 0x0040, 0x0007,
+ "Scheduled Procedure Step Description", "ScheduledProcedureStepDescription", "LO", "1" },
+ { 0x0040, 0x0008,
+ "Scheduled Protocol Code Sequence", "ScheduledProtocolCodeSequence", "SQ", "1" },
+ { 0x0040, 0x0009,
+ "Scheduled Procedure Step ID", "ScheduledProcedureStepID", "SH", "1" },
+ { 0x0040, 0x000a,
+ "Stage Code Sequence", "StageCodeSequence", "SQ", "1" },
+ { 0x0040, 0x000b,
+ "Scheduled Performing Physician Identification Sequence", "ScheduledPerformingPhysicianIdentificationSequence", "SQ", "1" },
+ { 0x0040, 0x0010,
+ "Scheduled Station Name", "ScheduledStationName", "SH", "1-n" },
+ { 0x0040, 0x0011,
+ "Scheduled Procedure Step Location", "ScheduledProcedureStepLocation", "SH", "1" },
+ { 0x0040, 0x0012,
+ "Pre-Medication", "PreMedication", "LO", "1" },
+ { 0x0040, 0x0020,
+ "Scheduled Procedure Step Status", "ScheduledProcedureStepStatus", "CS", "1" },
+ { 0x0040, 0x0026,
+ "Order Placer Identifier Sequence", "OrderPlacerIdentifierSequence", "SQ", "1" },
+ { 0x0040, 0x0027,
+ "Order Filler Identifier Sequence", "OrderFillerIdentifierSequence", "SQ", "1" },
+ { 0x0040, 0x0031,
+ "Local Namespace Entity ID", "LocalNamespaceEntityID", "UT", "1" },
+ { 0x0040, 0x0032,
+ "Universal Entity ID", "UniversalEntityID", "UT", "1" },
+ { 0x0040, 0x0033,
+ "Universal Entity ID Type", "UniversalEntityIDType", "CS", "1" },
+ { 0x0040, 0x0035,
+ "Identifier Type Code", "IdentifierTypeCode", "CS", "1" },
+ { 0x0040, 0x0036,
+ "Assigning Facility Sequence", "AssigningFacilitySequence", "SQ", "1" },
+ { 0x0040, 0x0039,
+ "Assigning Jurisdiction Code Sequence", "AssigningJurisdictionCodeSequence", "SQ", "1" },
+ { 0x0040, 0x003a,
+ "Assigning Agency or Department Code Sequence", "AssigningAgencyOrDepartmentCodeSequence", "SQ", "1" },
+ { 0x0040, 0x0100,
+ "Scheduled Procedure Step Sequence", "ScheduledProcedureStepSequence", "SQ", "1" },
+ { 0x0040, 0x0220,
+ "Referenced Non-Image Composite SOP Instance Sequence", "ReferencedNonImageCompositeSOPInstanceSequence", "SQ", "1" },
+ { 0x0040, 0x0241,
+ "Performed Station AE Title", "PerformedStationAETitle", "AE", "1" },
+ { 0x0040, 0x0242,
+ "Performed Station Name", "PerformedStationName", "SH", "1" },
+ { 0x0040, 0x0243,
+ "Performed Location", "PerformedLocation", "SH", "1" },
+ { 0x0040, 0x0244,
+ "Performed Procedure Step Start Date", "PerformedProcedureStepStartDate", "DA", "1" },
+ { 0x0040, 0x0245,
+ "Performed Procedure Step Start Time", "PerformedProcedureStepStartTime", "TM", "1" },
+ { 0x0040, 0x0250,
+ "Performed Procedure Step End Date", "PerformedProcedureStepEndDate", "DA", "1" },
+ { 0x0040, 0x0251,
+ "Performed Procedure Step End Time", "PerformedProcedureStepEndTime", "TM", "1" },
+ { 0x0040, 0x0252,
+ "Performed Procedure Step Status", "PerformedProcedureStepStatus", "CS", "1" },
+ { 0x0040, 0x0253,
+ "Performed Procedure Step ID", "PerformedProcedureStepID", "SH", "1" },
+ { 0x0040, 0x0254,
+ "Performed Procedure Step Description", "PerformedProcedureStepDescription", "LO", "1" },
+ { 0x0040, 0x0255,
+ "Performed Procedure Type Description", "PerformedProcedureTypeDescription", "LO", "1" },
+ { 0x0040, 0x0260,
+ "Performed Protocol Code Sequence", "PerformedProtocolCodeSequence", "SQ", "1" },
+ { 0x0040, 0x0261,
+ "Performed Protocol Type", "PerformedProtocolType", "CS", "1" },
+ { 0x0040, 0x0270,
+ "Scheduled Step Attributes Sequence", "ScheduledStepAttributesSequence", "SQ", "1" },
+ { 0x0040, 0x0275,
+ "Request Attributes Sequence", "RequestAttributesSequence", "SQ", "1" },
+ { 0x0040, 0x0280,
+ "Comments on the Performed Procedure Step", "CommentsOnThePerformedProcedureStep", "ST", "1" },
+ { 0x0040, 0x0281,
+ "Performed Procedure Step Discontinuation Reason Code Sequence", "PerformedProcedureStepDiscontinuationReasonCodeSequence", "SQ", "1" },
+ { 0x0040, 0x0293,
+ "Quantity Sequence", "QuantitySequence", "SQ", "1" },
+ { 0x0040, 0x0294,
+ "Quantity", "Quantity", "DS", "1" },
+ { 0x0040, 0x0295,
+ "Measuring Units Sequence", "MeasuringUnitsSequence", "SQ", "1" },
+ { 0x0040, 0x0296,
+ "Billing Item Sequence", "BillingItemSequence", "SQ", "1" },
+ { 0x0040, 0x0300,
+ "Total Time of Fluoroscopy", "TotalTimeOfFluoroscopy", "US", "1" },
+ { 0x0040, 0x0301,
+ "Total Number of Exposures", "TotalNumberOfExposures", "US", "1" },
+ { 0x0040, 0x0302,
+ "Entrance Dose", "EntranceDose", "US", "1" },
+ { 0x0040, 0x0303,
+ "Exposed Area", "ExposedArea", "US", "1-2" },
+ { 0x0040, 0x0306,
+ "Distance Source to Entrance", "DistanceSourceToEntrance", "DS", "1" },
+ { 0x0040, 0x0307,
+ "Distance Source to Support", "DistanceSourceToSupport", "DS", "1" },
+ { 0x0040, 0x030e,
+ "Exposure Dose Sequence", "ExposureDoseSequence", "SQ", "1" },
+ { 0x0040, 0x0310,
+ "Comments on Radiation Dose", "CommentsOnRadiationDose", "ST", "1" },
+ { 0x0040, 0x0312,
+ "X-Ray Output", "XRayOutput", "DS", "1" },
+ { 0x0040, 0x0314,
+ "Half Value Layer", "HalfValueLayer", "DS", "1" },
+ { 0x0040, 0x0316,
+ "Organ Dose", "OrganDose", "DS", "1" },
+ { 0x0040, 0x0318,
+ "Organ Exposed", "OrganExposed", "CS", "1" },
+ { 0x0040, 0x0320,
+ "Billing Procedure Step Sequence", "BillingProcedureStepSequence", "SQ", "1" },
+ { 0x0040, 0x0321,
+ "Film Consumption Sequence", "FilmConsumptionSequence", "SQ", "1" },
+ { 0x0040, 0x0324,
+ "Billing Supplies and Devices Sequence", "BillingSuppliesAndDevicesSequence", "SQ", "1" },
+ { 0x0040, 0x0330,
+ "Referenced Procedure Step Sequence", "ReferencedProcedureStepSequence", "SQ", "1" },
+ { 0x0040, 0x0340,
+ "Performed Series Sequence", "PerformedSeriesSequence", "SQ", "1" },
+ { 0x0040, 0x0400,
+ "Comments on the Scheduled Procedure Step", "CommentsOnTheScheduledProcedureStep", "LT", "1" },
+ { 0x0040, 0x0440,
+ "Protocol Context Sequence", "ProtocolContextSequence", "SQ", "1" },
+ { 0x0040, 0x0441,
+ "Content Item Modifier Sequence", "ContentItemModifierSequence", "SQ", "1" },
+ { 0x0040, 0x0500,
+ "Scheduled Specimen Sequence", "ScheduledSpecimenSequence", "SQ", "1" },
+ { 0x0040, 0x050a,
+ "Specimen Accession Number", "SpecimenAccessionNumber", "LO", "1" },
+ { 0x0040, 0x0512,
+ "Container Identifier", "ContainerIdentifier", "LO", "1" },
+ { 0x0040, 0x0513,
+ "Issuer of the Container Identifier Sequence", "IssuerOfTheContainerIdentifierSequence", "SQ", "1" },
+ { 0x0040, 0x0515,
+ "Alternate Container Identifier Sequence", "AlternateContainerIdentifierSequence", "SQ", "1" },
+ { 0x0040, 0x0518,
+ "Container Type Code Sequence", "ContainerTypeCodeSequence", "SQ", "1" },
+ { 0x0040, 0x051a,
+ "Container Description", "ContainerDescription", "LO", "1" },
+ { 0x0040, 0x0520,
+ "Container Component Sequence", "ContainerComponentSequence", "SQ", "1" },
+ { 0x0040, 0x0550,
+ "Specimen Sequence", "SpecimenSequence", "SQ", "1" },
+ { 0x0040, 0x0551,
+ "Specimen Identifier", "SpecimenIdentifier", "LO", "1" },
+ { 0x0040, 0x0552,
+ "Specimen Description Sequence (Trial)", "SpecimenDescriptionSequenceTrial", "SQ", "1" },
+ { 0x0040, 0x0553,
+ "Specimen Description (Trial)", "SpecimenDescriptionTrial", "ST", "1" },
+ { 0x0040, 0x0554,
+ "Specimen UID", "SpecimenUID", "UI", "1" },
+ { 0x0040, 0x0555,
+ "Acquisition Context Sequence", "AcquisitionContextSequence", "SQ", "1" },
+ { 0x0040, 0x0556,
+ "Acquisition Context Description", "AcquisitionContextDescription", "ST", "1" },
+ { 0x0040, 0x059a,
+ "Specimen Type Code Sequence", "SpecimenTypeCodeSequence", "SQ", "1" },
+ { 0x0040, 0x0560,
+ "Specimen Description Sequence", "SpecimenDescriptionSequence", "SQ", "1" },
+ { 0x0040, 0x0562,
+ "Issuer of the Specimen Identifier Sequence", "IssuerOfTheSpecimenIdentifierSequence", "SQ", "1" },
+ { 0x0040, 0x0600,
+ "Specimen Short Description", "SpecimenShortDescription", "LO", "1" },
+ { 0x0040, 0x0602,
+ "Specimen Detailed Description", "SpecimenDetailedDescription", "UT", "1" },
+ { 0x0040, 0x0610,
+ "Specimen Preparation Sequence", "SpecimenPreparationSequence", "SQ", "1" },
+ { 0x0040, 0x0612,
+ "Specimen Preparation Step Content Item Sequence", "SpecimenPreparationStepContentItemSequence", "SQ", "1" },
+ { 0x0040, 0x0620,
+ "Specimen Localization Content Item Sequence", "SpecimenLocalizationContentItemSequence", "SQ", "1" },
+ { 0x0040, 0x06fa,
+ "Slide Identifier", "SlideIdentifier", "LO", "1" },
+ { 0x0040, 0x071a,
+ "Image Center Point Coordinates Sequence", "ImageCenterPointCoordinatesSequence", "SQ", "1" },
+ { 0x0040, 0x072a,
+ "X Offset in Slide Coordinate System", "XOffsetInSlideCoordinateSystem", "DS", "1" },
+ { 0x0040, 0x073a,
+ "Y Offset in Slide Coordinate System", "YOffsetInSlideCoordinateSystem", "DS", "1" },
+ { 0x0040, 0x074a,
+ "Z Offset in Slide Coordinate System", "ZOffsetInSlideCoordinateSystem", "DS", "1" },
+ { 0x0040, 0x08d8,
+ "Pixel Spacing Sequence", "PixelSpacingSequence", "SQ", "1" },
+ { 0x0040, 0x08da,
+ "Coordinate System Axis Code Sequence", "CoordinateSystemAxisCodeSequence", "SQ", "1" },
+ { 0x0040, 0x08ea,
+ "Measurement Units Code Sequence", "MeasurementUnitsCodeSequence", "SQ", "1" },
+ { 0x0040, 0x09f8,
+ "Vital Stain Code Sequence (Trial)", "VitalStainCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0x1001,
+ "Requested Procedure ID", "RequestedProcedureID", "SH", "1" },
+ { 0x0040, 0x1002,
+ "Reason for the Requested Procedure", "ReasonForTheRequestedProcedure", "LO", "1" },
+ { 0x0040, 0x1003,
+ "Requested Procedure Priority", "RequestedProcedurePriority", "SH", "1" },
+ { 0x0040, 0x1004,
+ "Patient Transport Arrangements", "PatientTransportArrangements", "LO", "1" },
+ { 0x0040, 0x1005,
+ "Requested Procedure Location", "RequestedProcedureLocation", "LO", "1" },
+ { 0x0040, 0x1006,
+ "Placer Order Number / Procedure", "PlacerOrderNumberProcedure", "SH", "1" },
+ { 0x0040, 0x1007,
+ "Filler Order Number / Procedure", "FillerOrderNumberProcedure", "SH", "1" },
+ { 0x0040, 0x1008,
+ "Confidentiality Code", "ConfidentialityCode", "LO", "1" },
+ { 0x0040, 0x1009,
+ "Reporting Priority", "ReportingPriority", "SH", "1" },
+ { 0x0040, 0x100a,
+ "Reason for Requested Procedure Code Sequence", "ReasonForRequestedProcedureCodeSequence", "SQ", "1" },
+ { 0x0040, 0x1010,
+ "Names of Intended Recipients of Results", "NamesOfIntendedRecipientsOfResults", "PN", "1-n" },
+ { 0x0040, 0x1011,
+ "Intended Recipients of Results Identification Sequence", "IntendedRecipientsOfResultsIdentificationSequence", "SQ", "1" },
+ { 0x0040, 0x1012,
+ "Reason For Performed Procedure Code Sequence", "ReasonForPerformedProcedureCodeSequence", "SQ", "1" },
+ { 0x0040, 0x1060,
+ "Requested Procedure Description (Trial)", "RequestedProcedureDescriptionTrial", "LO", "1" },
+ { 0x0040, 0x1101,
+ "Person Identification Code Sequence", "PersonIdentificationCodeSequence", "SQ", "1" },
+ { 0x0040, 0x1102,
+ "Person's Address", "PersonAddress", "ST", "1" },
+ { 0x0040, 0x1103,
+ "Person's Telephone Numbers", "PersonTelephoneNumbers", "LO", "1-n" },
+ { 0x0040, 0x1104,
+ "Person's Telecom Information", "PersonTelecomInformation", "LT", "1" },
+ { 0x0040, 0x1400,
+ "Requested Procedure Comments", "RequestedProcedureComments", "LT", "1" },
+ { 0x0040, 0x2001,
+ "Reason for the Imaging Service Request", "ReasonForTheImagingServiceRequest", "LO", "1" },
+ { 0x0040, 0x2004,
+ "Issue Date of Imaging Service Request", "IssueDateOfImagingServiceRequest", "DA", "1" },
+ { 0x0040, 0x2005,
+ "Issue Time of Imaging Service Request", "IssueTimeOfImagingServiceRequest", "TM", "1" },
+ { 0x0040, 0x2006,
+ "Placer Order Number / Imaging Service Request (Retired)", "PlacerOrderNumberImagingServiceRequestRetired", "SH", "1" },
+ { 0x0040, 0x2007,
+ "Filler Order Number / Imaging Service Request (Retired)", "FillerOrderNumberImagingServiceRequestRetired", "SH", "1" },
+ { 0x0040, 0x2008,
+ "Order Entered By", "OrderEnteredBy", "PN", "1" },
+ { 0x0040, 0x2009,
+ "Order Enterer's Location", "OrderEntererLocation", "SH", "1" },
+ { 0x0040, 0x2010,
+ "Order Callback Phone Number", "OrderCallbackPhoneNumber", "SH", "1" },
+ { 0x0040, 0x2011,
+ "Order Callback Telecom Information", "OrderCallbackTelecomInformation", "LT", "1" },
+ { 0x0040, 0x2016,
+ "Placer Order Number / Imaging Service Request", "PlacerOrderNumberImagingServiceRequest", "LO", "1" },
+ { 0x0040, 0x2017,
+ "Filler Order Number / Imaging Service Request", "FillerOrderNumberImagingServiceRequest", "LO", "1" },
+ { 0x0040, 0x2400,
+ "Imaging Service Request Comments", "ImagingServiceRequestComments", "LT", "1" },
+ { 0x0040, 0x3001,
+ "Confidentiality Constraint on Patient Data Description", "ConfidentialityConstraintOnPatientDataDescription", "LO", "1" },
+ { 0x0040, 0x4001,
+ "General Purpose Scheduled Procedure Step Status", "GeneralPurposeScheduledProcedureStepStatus", "CS", "1" },
+ { 0x0040, 0x4002,
+ "General Purpose Performed Procedure Step Status", "GeneralPurposePerformedProcedureStepStatus", "CS", "1" },
+ { 0x0040, 0x4003,
+ "General Purpose Scheduled Procedure Step Priority", "GeneralPurposeScheduledProcedureStepPriority", "CS", "1" },
+ { 0x0040, 0x4004,
+ "Scheduled Processing Applications Code Sequence", "ScheduledProcessingApplicationsCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4005,
+ "Scheduled Procedure Step Start DateTime", "ScheduledProcedureStepStartDateTime", "DT", "1" },
+ { 0x0040, 0x4006,
+ "Multiple Copies Flag", "MultipleCopiesFlag", "CS", "1" },
+ { 0x0040, 0x4007,
+ "Performed Processing Applications Code Sequence", "PerformedProcessingApplicationsCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4009,
+ "Human Performer Code Sequence", "HumanPerformerCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4010,
+ "Scheduled Procedure Step Modification DateTime", "ScheduledProcedureStepModificationDateTime", "DT", "1" },
+ { 0x0040, 0x4011,
+ "Expected Completion DateTime", "ExpectedCompletionDateTime", "DT", "1" },
+ { 0x0040, 0x4015,
+ "Resulting General Purpose Performed Procedure Steps Sequence", "ResultingGeneralPurposePerformedProcedureStepsSequence", "SQ", "1" },
+ { 0x0040, 0x4016,
+ "Referenced General Purpose Scheduled Procedure Step Sequence", "ReferencedGeneralPurposeScheduledProcedureStepSequence", "SQ", "1" },
+ { 0x0040, 0x4018,
+ "Scheduled Workitem Code Sequence", "ScheduledWorkitemCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4019,
+ "Performed Workitem Code Sequence", "PerformedWorkitemCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4020,
+ "Input Availability Flag", "InputAvailabilityFlag", "CS", "1" },
+ { 0x0040, 0x4021,
+ "Input Information Sequence", "InputInformationSequence", "SQ", "1" },
+ { 0x0040, 0x4022,
+ "Relevant Information Sequence", "RelevantInformationSequence", "SQ", "1" },
+ { 0x0040, 0x4023,
+ "Referenced General Purpose Scheduled Procedure Step Transaction UID", "ReferencedGeneralPurposeScheduledProcedureStepTransactionUID", "UI", "1" },
+ { 0x0040, 0x4025,
+ "Scheduled Station Name Code Sequence", "ScheduledStationNameCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4026,
+ "Scheduled Station Class Code Sequence", "ScheduledStationClassCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4027,
+ "Scheduled Station Geographic Location Code Sequence", "ScheduledStationGeographicLocationCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4028,
+ "Performed Station Name Code Sequence", "PerformedStationNameCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4029,
+ "Performed Station Class Code Sequence", "PerformedStationClassCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4030,
+ "Performed Station Geographic Location Code Sequence", "PerformedStationGeographicLocationCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4031,
+ "Requested Subsequent Workitem Code Sequence", "RequestedSubsequentWorkitemCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4032,
+ "Non-DICOM Output Code Sequence", "NonDICOMOutputCodeSequence", "SQ", "1" },
+ { 0x0040, 0x4033,
+ "Output Information Sequence", "OutputInformationSequence", "SQ", "1" },
+ { 0x0040, 0x4034,
+ "Scheduled Human Performers Sequence", "ScheduledHumanPerformersSequence", "SQ", "1" },
+ { 0x0040, 0x4035,
+ "Actual Human Performers Sequence", "ActualHumanPerformersSequence", "SQ", "1" },
+ { 0x0040, 0x4036,
+ "Human Performer's Organization", "HumanPerformerOrganization", "LO", "1" },
+ { 0x0040, 0x4037,
+ "Human Performer's Name", "HumanPerformerName", "PN", "1" },
+ { 0x0040, 0x4040,
+ "Raw Data Handling", "RawDataHandling", "CS", "1" },
+ { 0x0040, 0x4041,
+ "Input Readiness State", "InputReadinessState", "CS", "1" },
+ { 0x0040, 0x4050,
+ "Performed Procedure Step Start DateTime", "PerformedProcedureStepStartDateTime", "DT", "1" },
+ { 0x0040, 0x4051,
+ "Performed Procedure Step End DateTime", "PerformedProcedureStepEndDateTime", "DT", "1" },
+ { 0x0040, 0x4052,
+ "Procedure Step Cancellation DateTime", "ProcedureStepCancellationDateTime", "DT", "1" },
+ { 0x0040, 0x8302,
+ "Entrance Dose in mGy", "EntranceDoseInmGy", "DS", "1" },
+ { 0x0040, 0x9092,
+ "Parametric Map Frame Type Sequence", "ParametricMapFrameTypeSequence", "SQ", "1" },
+ { 0x0040, 0x9094,
+ "Referenced Image Real World Value Mapping Sequence", "ReferencedImageRealWorldValueMappingSequence", "SQ", "1" },
+ { 0x0040, 0x9096,
+ "Real World Value Mapping Sequence", "RealWorldValueMappingSequence", "SQ", "1" },
+ { 0x0040, 0x9098,
+ "Pixel Value Mapping Code Sequence", "PixelValueMappingCodeSequence", "SQ", "1" },
+ { 0x0040, 0x9210,
+ "LUT Label", "LUTLabel", "SH", "1" },
+ { 0x0040, 0x9211,
+ "Real World Value Last Value Mapped", "RealWorldValueLastValueMapped", "US or SS", "1" },
+ { 0x0040, 0x9212,
+ "Real World Value LUT Data", "RealWorldValueLUTData", "FD", "1-n" },
+ { 0x0040, 0x9216,
+ "Real World Value First Value Mapped", "RealWorldValueFirstValueMapped", "US or SS", "1" },
+ { 0x0040, 0x9220,
+ "Quantity Definition Sequence", "QuantityDefinitionSequence", "SQ", "1" },
+ { 0x0040, 0x9224,
+ "Real World Value Intercept", "RealWorldValueIntercept", "FD", "1" },
+ { 0x0040, 0x9225,
+ "Real World Value Slope", "RealWorldValueSlope", "FD", "1" },
+ { 0x0040, 0xa007,
+ "Findings Flag (Trial)", "FindingsFlagTrial", "CS", "1" },
+ { 0x0040, 0xa010,
+ "Relationship Type", "RelationshipType", "CS", "1" },
+ { 0x0040, 0xa020,
+ "Findings Sequence (Trial)", "FindingsSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa021,
+ "Findings Group UID (Trial)", "FindingsGroupUIDTrial", "UI", "1" },
+ { 0x0040, 0xa022,
+ "Referenced Findings Group UID (Trial)", "ReferencedFindingsGroupUIDTrial", "UI", "1" },
+ { 0x0040, 0xa023,
+ "Findings Group Recording Date (Trial)", "FindingsGroupRecordingDateTrial", "DA", "1" },
+ { 0x0040, 0xa024,
+ "Findings Group Recording Time (Trial)", "FindingsGroupRecordingTimeTrial", "TM", "1" },
+ { 0x0040, 0xa026,
+ "Findings Source Category Code Sequence (Trial)", "FindingsSourceCategoryCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa027,
+ "Verifying Organization", "VerifyingOrganization", "LO", "1" },
+ { 0x0040, 0xa028,
+ "Documenting Organization Identifier Code Sequence (Trial)", "DocumentingOrganizationIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa030,
+ "Verification DateTime", "VerificationDateTime", "DT", "1" },
+ { 0x0040, 0xa032,
+ "Observation DateTime", "ObservationDateTime", "DT", "1" },
+ { 0x0040, 0xa040,
+ "Value Type", "ValueType", "CS", "1" },
+ { 0x0040, 0xa043,
+ "Concept Name Code Sequence", "ConceptNameCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa047,
+ "Measurement Precision Description (Trial)", "MeasurementPrecisionDescriptionTrial", "LO", "1" },
+ { 0x0040, 0xa050,
+ "Continuity Of Content", "ContinuityOfContent", "CS", "1" },
+ { 0x0040, 0xa057,
+ "Urgency or Priority Alerts (Trial)", "UrgencyOrPriorityAlertsTrial", "CS", "1-n" },
+ { 0x0040, 0xa060,
+ "Sequencing Indicator (Trial)", "SequencingIndicatorTrial", "LO", "1" },
+ { 0x0040, 0xa066,
+ "Document Identifier Code Sequence (Trial)", "DocumentIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa067,
+ "Document Author (Trial)", "DocumentAuthorTrial", "PN", "1" },
+ { 0x0040, 0xa068,
+ "Document Author Identifier Code Sequence (Trial)", "DocumentAuthorIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa070,
+ "Identifier Code Sequence (Trial)", "IdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa073,
+ "Verifying Observer Sequence", "VerifyingObserverSequence", "SQ", "1" },
+ { 0x0040, 0xa074,
+ "Object Binary Identifier (Trial)", "ObjectBinaryIdentifierTrial", "OB", "1" },
+ { 0x0040, 0xa075,
+ "Verifying Observer Name", "VerifyingObserverName", "PN", "1" },
+ { 0x0040, 0xa076,
+ "Documenting Observer Identifier Code Sequence (Trial)", "DocumentingObserverIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa078,
+ "Author Observer Sequence", "AuthorObserverSequence", "SQ", "1" },
+ { 0x0040, 0xa07a,
+ "Participant Sequence", "ParticipantSequence", "SQ", "1" },
+ { 0x0040, 0xa07c,
+ "Custodial Organization Sequence", "CustodialOrganizationSequence", "SQ", "1" },
+ { 0x0040, 0xa080,
+ "Participation Type", "ParticipationType", "CS", "1" },
+ { 0x0040, 0xa082,
+ "Participation DateTime", "ParticipationDateTime", "DT", "1" },
+ { 0x0040, 0xa084,
+ "Observer Type", "ObserverType", "CS", "1" },
+ { 0x0040, 0xa085,
+ "Procedure Identifier Code Sequence (Trial)", "ProcedureIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa088,
+ "Verifying Observer Identification Code Sequence", "VerifyingObserverIdentificationCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa089,
+ "Object Directory Binary Identifier (Trial)", "ObjectDirectoryBinaryIdentifierTrial", "OB", "1" },
+ { 0x0040, 0xa090,
+ "Equivalent CDA Document Sequence", "EquivalentCDADocumentSequence", "SQ", "1" },
+ { 0x0040, 0xa0b0,
+ "Referenced Waveform Channels", "ReferencedWaveformChannels", "US", "2-2n" },
+ { 0x0040, 0xa110,
+ "Date of Document or Verbal Transaction (Trial)", "DateOfDocumentOrVerbalTransactionTrial", "DA", "1" },
+ { 0x0040, 0xa112,
+ "Time of Document Creation or Verbal Transaction (Trial)", "TimeOfDocumentCreationOrVerbalTransactionTrial", "TM", "1" },
+ { 0x0040, 0xa120,
+ "DateTime", "DateTime", "DT", "1" },
+ { 0x0040, 0xa121,
+ "Date", "Date", "DA", "1" },
+ { 0x0040, 0xa122,
+ "Time", "Time", "TM", "1" },
+ { 0x0040, 0xa123,
+ "Person Name", "PersonName", "PN", "1" },
+ { 0x0040, 0xa124,
+ "UID", "UID", "UI", "1" },
+ { 0x0040, 0xa125,
+ "Report Status ID (Trial)", "ReportStatusIDTrial", "CS", "2" },
+ { 0x0040, 0xa130,
+ "Temporal Range Type", "TemporalRangeType", "CS", "1" },
+ { 0x0040, 0xa132,
+ "Referenced Sample Positions", "ReferencedSamplePositions", "UL", "1-n" },
+ { 0x0040, 0xa136,
+ "Referenced Frame Numbers", "ReferencedFrameNumbers", "US", "1-n" },
+ { 0x0040, 0xa138,
+ "Referenced Time Offsets", "ReferencedTimeOffsets", "DS", "1-n" },
+ { 0x0040, 0xa13a,
+ "Referenced DateTime", "ReferencedDateTime", "DT", "1-n" },
+ { 0x0040, 0xa160,
+ "Text Value", "TextValue", "UT", "1" },
+ { 0x0040, 0xa161,
+ "Floating Point Value", "FloatingPointValue", "FD", "1-n" },
+ { 0x0040, 0xa162,
+ "Rational Numerator Value", "RationalNumeratorValue", "SL", "1-n" },
+ { 0x0040, 0xa163,
+ "Rational Denominator Value", "RationalDenominatorValue", "UL", "1-n" },
+ { 0x0040, 0xa167,
+ "Observation Category Code Sequence (Trial)", "ObservationCategoryCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa168,
+ "Concept Code Sequence", "ConceptCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa16a,
+ "Bibliographic Citation (Trial)", "BibliographicCitationTrial", "ST", "1" },
+ { 0x0040, 0xa170,
+ "Purpose of Reference Code Sequence", "PurposeOfReferenceCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa171,
+ "Observation UID", "ObservationUID", "UI", "1" },
+ { 0x0040, 0xa172,
+ "Referenced Observation UID (Trial)", "ReferencedObservationUIDTrial", "UI", "1" },
+ { 0x0040, 0xa173,
+ "Referenced Observation Class (Trial)", "ReferencedObservationClassTrial", "CS", "1" },
+ { 0x0040, 0xa174,
+ "Referenced Object Observation Class (Trial)", "ReferencedObjectObservationClassTrial", "CS", "1" },
+ { 0x0040, 0xa180,
+ "Annotation Group Number", "AnnotationGroupNumber", "US", "1" },
+ { 0x0040, 0xa192,
+ "Observation Date (Trial)", "ObservationDateTrial", "DA", "1" },
+ { 0x0040, 0xa193,
+ "Observation Time (Trial)", "ObservationTimeTrial", "TM", "1" },
+ { 0x0040, 0xa194,
+ "Measurement Automation (Trial)", "MeasurementAutomationTrial", "CS", "1" },
+ { 0x0040, 0xa195,
+ "Modifier Code Sequence", "ModifierCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa224,
+ "Identification Description (Trial)", "IdentificationDescriptionTrial", "ST", "1" },
+ { 0x0040, 0xa290,
+ "Coordinates Set Geometric Type (Trial)", "CoordinatesSetGeometricTypeTrial", "CS", "1" },
+ { 0x0040, 0xa296,
+ "Algorithm Code Sequence (Trial)", "AlgorithmCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa297,
+ "Algorithm Description (Trial)", "AlgorithmDescriptionTrial", "ST", "1" },
+ { 0x0040, 0xa29a,
+ "Pixel Coordinates Set (Trial)", "PixelCoordinatesSetTrial", "SL", "2-2n" },
+ { 0x0040, 0xa300,
+ "Measured Value Sequence", "MeasuredValueSequence", "SQ", "1" },
+ { 0x0040, 0xa301,
+ "Numeric Value Qualifier Code Sequence", "NumericValueQualifierCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa307,
+ "Current Observer (Trial)", "CurrentObserverTrial", "PN", "1" },
+ { 0x0040, 0xa30a,
+ "Numeric Value", "NumericValue", "DS", "1-n" },
+ { 0x0040, 0xa313,
+ "Referenced Accession Sequence (Trial)", "ReferencedAccessionSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa33a,
+ "Report Status Comment (Trial)", "ReportStatusCommentTrial", "ST", "1" },
+ { 0x0040, 0xa340,
+ "Procedure Context Sequence (Trial)", "ProcedureContextSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa352,
+ "Verbal Source (Trial)", "VerbalSourceTrial", "PN", "1" },
+ { 0x0040, 0xa353,
+ "Address (Trial)", "AddressTrial", "ST", "1" },
+ { 0x0040, 0xa354,
+ "Telephone Number (Trial)", "TelephoneNumberTrial", "LO", "1" },
+ { 0x0040, 0xa358,
+ "Verbal Source Identifier Code Sequence (Trial)", "VerbalSourceIdentifierCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa360,
+ "Predecessor Documents Sequence", "PredecessorDocumentsSequence", "SQ", "1" },
+ { 0x0040, 0xa370,
+ "Referenced Request Sequence", "ReferencedRequestSequence", "SQ", "1" },
+ { 0x0040, 0xa372,
+ "Performed Procedure Code Sequence", "PerformedProcedureCodeSequence", "SQ", "1" },
+ { 0x0040, 0xa375,
+ "Current Requested Procedure Evidence Sequence", "CurrentRequestedProcedureEvidenceSequence", "SQ", "1" },
+ { 0x0040, 0xa380,
+ "Report Detail Sequence (Trial)", "ReportDetailSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa385,
+ "Pertinent Other Evidence Sequence", "PertinentOtherEvidenceSequence", "SQ", "1" },
+ { 0x0040, 0xa390,
+ "HL7 Structured Document Reference Sequence", "HL7StructuredDocumentReferenceSequence", "SQ", "1" },
+ { 0x0040, 0xa402,
+ "Observation Subject UID (Trial)", "ObservationSubjectUIDTrial", "UI", "1" },
+ { 0x0040, 0xa403,
+ "Observation Subject Class (Trial)", "ObservationSubjectClassTrial", "CS", "1" },
+ { 0x0040, 0xa404,
+ "Observation Subject Type Code Sequence (Trial)", "ObservationSubjectTypeCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa491,
+ "Completion Flag", "CompletionFlag", "CS", "1" },
+ { 0x0040, 0xa492,
+ "Completion Flag Description", "CompletionFlagDescription", "LO", "1" },
+ { 0x0040, 0xa493,
+ "Verification Flag", "VerificationFlag", "CS", "1" },
+ { 0x0040, 0xa494,
+ "Archive Requested", "ArchiveRequested", "CS", "1" },
+ { 0x0040, 0xa496,
+ "Preliminary Flag", "PreliminaryFlag", "CS", "1" },
+ { 0x0040, 0xa504,
+ "Content Template Sequence", "ContentTemplateSequence", "SQ", "1" },
+ { 0x0040, 0xa525,
+ "Identical Documents Sequence", "IdenticalDocumentsSequence", "SQ", "1" },
+ { 0x0040, 0xa600,
+ "Observation Subject Context Flag (Trial)", "ObservationSubjectContextFlagTrial", "CS", "1" },
+ { 0x0040, 0xa601,
+ "Observer Context Flag (Trial)", "ObserverContextFlagTrial", "CS", "1" },
+ { 0x0040, 0xa603,
+ "Procedure Context Flag (Trial)", "ProcedureContextFlagTrial", "CS", "1" },
+ { 0x0040, 0xa730,
+ "Content Sequence", "ContentSequence", "SQ", "1" },
+ { 0x0040, 0xa731,
+ "Relationship Sequence (Trial)", "RelationshipSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa732,
+ "Relationship Type Code Sequence (Trial)", "RelationshipTypeCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa744,
+ "Language Code Sequence (Trial)", "LanguageCodeSequenceTrial", "SQ", "1" },
+ { 0x0040, 0xa992,
+ "Uniform Resource Locator (Trial)", "UniformResourceLocatorTrial", "ST", "1" },
+ { 0x0040, 0xb020,
+ "Waveform Annotation Sequence", "WaveformAnnotationSequence", "SQ", "1" },
+ { 0x0040, 0xdb00,
+ "Template Identifier", "TemplateIdentifier", "CS", "1" },
+ { 0x0040, 0xdb06,
+ "Template Version", "TemplateVersion", "DT", "1" },
+ { 0x0040, 0xdb07,
+ "Template Local Version", "TemplateLocalVersion", "DT", "1" },
+ { 0x0040, 0xdb0b,
+ "Template Extension Flag", "TemplateExtensionFlag", "CS", "1" },
+ { 0x0040, 0xdb0c,
+ "Template Extension Organization UID", "TemplateExtensionOrganizationUID", "UI", "1" },
+ { 0x0040, 0xdb0d,
+ "Template Extension Creator UID", "TemplateExtensionCreatorUID", "UI", "1" },
+ { 0x0040, 0xdb73,
+ "Referenced Content Item Identifier", "ReferencedContentItemIdentifier", "UL", "1-n" },
+ { 0x0040, 0xe001,
+ "HL7 Instance Identifier", "HL7InstanceIdentifier", "ST", "1" },
+ { 0x0040, 0xe004,
+ "HL7 Document Effective Time", "HL7DocumentEffectiveTime", "DT", "1" },
+ { 0x0040, 0xe006,
+ "HL7 Document Type Code Sequence", "HL7DocumentTypeCodeSequence", "SQ", "1" },
+ { 0x0040, 0xe008,
+ "Document Class Code Sequence", "DocumentClassCodeSequence", "SQ", "1" },
+ { 0x0040, 0xe010,
+ "Retrieve URI", "RetrieveURI", "UR", "1" },
+ { 0x0040, 0xe011,
+ "Retrieve Location UID", "RetrieveLocationUID", "UI", "1" },
+ { 0x0040, 0xe020,
+ "Type of Instances", "TypeOfInstances", "CS", "1" },
+ { 0x0040, 0xe021,
+ "DICOM Retrieval Sequence", "DICOMRetrievalSequence", "SQ", "1" },
+ { 0x0040, 0xe022,
+ "DICOM Media Retrieval Sequence", "DICOMMediaRetrievalSequence", "SQ", "1" },
+ { 0x0040, 0xe023,
+ "WADO Retrieval Sequence", "WADORetrievalSequence", "SQ", "1" },
+ { 0x0040, 0xe024,
+ "XDS Retrieval Sequence", "XDSRetrievalSequence", "SQ", "1" },
+ { 0x0040, 0xe025,
+ "WADO-RS Retrieval Sequence", "WADORSRetrievalSequence", "SQ", "1" },
+ { 0x0040, 0xe030,
+ "Repository Unique ID", "RepositoryUniqueID", "UI", "1" },
+ { 0x0040, 0xe031,
+ "Home Community ID", "HomeCommunityID", "UI", "1" },
+ { 0x0042, 0x0010,
+ "Document Title", "DocumentTitle", "ST", "1" },
+ { 0x0042, 0x0011,
+ "Encapsulated Document", "EncapsulatedDocument", "OB", "1" },
+ { 0x0042, 0x0012,
+ "MIME Type of Encapsulated Document", "MIMETypeOfEncapsulatedDocument", "LO", "1" },
+ { 0x0042, 0x0013,
+ "Source Instance Sequence", "SourceInstanceSequence", "SQ", "1" },
+ { 0x0042, 0x0014,
+ "List of MIME Types", "ListOfMIMETypes", "LO", "1-n" },
+ { 0x0044, 0x0001,
+ "Product Package Identifier", "ProductPackageIdentifier", "ST", "1" },
+ { 0x0044, 0x0002,
+ "Substance Administration Approval", "SubstanceAdministrationApproval", "CS", "1" },
+ { 0x0044, 0x0003,
+ "Approval Status Further Description", "ApprovalStatusFurtherDescription", "LT", "1" },
+ { 0x0044, 0x0004,
+ "Approval Status DateTime", "ApprovalStatusDateTime", "DT", "1" },
+ { 0x0044, 0x0007,
+ "Product Type Code Sequence", "ProductTypeCodeSequence", "SQ", "1" },
+ { 0x0044, 0x0008,
+ "Product Name", "ProductName", "LO", "1-n" },
+ { 0x0044, 0x0009,
+ "Product Description", "ProductDescription", "LT", "1" },
+ { 0x0044, 0x000a,
+ "Product Lot Identifier", "ProductLotIdentifier", "LO", "1" },
+ { 0x0044, 0x000b,
+ "Product Expiration DateTime", "ProductExpirationDateTime", "DT", "1" },
+ { 0x0044, 0x0010,
+ "Substance Administration DateTime", "SubstanceAdministrationDateTime", "DT", "1" },
+ { 0x0044, 0x0011,
+ "Substance Administration Notes", "SubstanceAdministrationNotes", "LO", "1" },
+ { 0x0044, 0x0012,
+ "Substance Administration Device ID", "SubstanceAdministrationDeviceID", "LO", "1" },
+ { 0x0044, 0x0013,
+ "Product Parameter Sequence", "ProductParameterSequence", "SQ", "1" },
+ { 0x0044, 0x0019,
+ "Substance Administration Parameter Sequence", "SubstanceAdministrationParameterSequence", "SQ", "1" },
+ { 0x0046, 0x0012,
+ "Lens Description", "LensDescription", "LO", "1" },
+ { 0x0046, 0x0014,
+ "Right Lens Sequence", "RightLensSequence", "SQ", "1" },
+ { 0x0046, 0x0015,
+ "Left Lens Sequence", "LeftLensSequence", "SQ", "1" },
+ { 0x0046, 0x0016,
+ "Unspecified Laterality Lens Sequence", "UnspecifiedLateralityLensSequence", "SQ", "1" },
+ { 0x0046, 0x0018,
+ "Cylinder Sequence", "CylinderSequence", "SQ", "1" },
+ { 0x0046, 0x0028,
+ "Prism Sequence", "PrismSequence", "SQ", "1" },
+ { 0x0046, 0x0030,
+ "Horizontal Prism Power", "HorizontalPrismPower", "FD", "1" },
+ { 0x0046, 0x0032,
+ "Horizontal Prism Base", "HorizontalPrismBase", "CS", "1" },
+ { 0x0046, 0x0034,
+ "Vertical Prism Power", "VerticalPrismPower", "FD", "1" },
+ { 0x0046, 0x0036,
+ "Vertical Prism Base", "VerticalPrismBase", "CS", "1" },
+ { 0x0046, 0x0038,
+ "Lens Segment Type", "LensSegmentType", "CS", "1" },
+ { 0x0046, 0x0040,
+ "Optical Transmittance", "OpticalTransmittance", "FD", "1" },
+ { 0x0046, 0x0042,
+ "Channel Width", "ChannelWidth", "FD", "1" },
+ { 0x0046, 0x0044,
+ "Pupil Size", "PupilSize", "FD", "1" },
+ { 0x0046, 0x0046,
+ "Corneal Size", "CornealSize", "FD", "1" },
+ { 0x0046, 0x0050,
+ "Autorefraction Right Eye Sequence", "AutorefractionRightEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0052,
+ "Autorefraction Left Eye Sequence", "AutorefractionLeftEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0060,
+ "Distance Pupillary Distance", "DistancePupillaryDistance", "FD", "1" },
+ { 0x0046, 0x0062,
+ "Near Pupillary Distance", "NearPupillaryDistance", "FD", "1" },
+ { 0x0046, 0x0063,
+ "Intermediate Pupillary Distance", "IntermediatePupillaryDistance", "FD", "1" },
+ { 0x0046, 0x0064,
+ "Other Pupillary Distance", "OtherPupillaryDistance", "FD", "1" },
+ { 0x0046, 0x0070,
+ "Keratometry Right Eye Sequence", "KeratometryRightEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0071,
+ "Keratometry Left Eye Sequence", "KeratometryLeftEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0074,
+ "Steep Keratometric Axis Sequence", "SteepKeratometricAxisSequence", "SQ", "1" },
+ { 0x0046, 0x0075,
+ "Radius of Curvature", "RadiusOfCurvature", "FD", "1" },
+ { 0x0046, 0x0076,
+ "Keratometric Power", "KeratometricPower", "FD", "1" },
+ { 0x0046, 0x0077,
+ "Keratometric Axis", "KeratometricAxis", "FD", "1" },
+ { 0x0046, 0x0080,
+ "Flat Keratometric Axis Sequence", "FlatKeratometricAxisSequence", "SQ", "1" },
+ { 0x0046, 0x0092,
+ "Background Color", "BackgroundColor", "CS", "1" },
+ { 0x0046, 0x0094,
+ "Optotype", "Optotype", "CS", "1" },
+ { 0x0046, 0x0095,
+ "Optotype Presentation", "OptotypePresentation", "CS", "1" },
+ { 0x0046, 0x0097,
+ "Subjective Refraction Right Eye Sequence", "SubjectiveRefractionRightEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0098,
+ "Subjective Refraction Left Eye Sequence", "SubjectiveRefractionLeftEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0100,
+ "Add Near Sequence", "AddNearSequence", "SQ", "1" },
+ { 0x0046, 0x0101,
+ "Add Intermediate Sequence", "AddIntermediateSequence", "SQ", "1" },
+ { 0x0046, 0x0102,
+ "Add Other Sequence", "AddOtherSequence", "SQ", "1" },
+ { 0x0046, 0x0104,
+ "Add Power", "AddPower", "FD", "1" },
+ { 0x0046, 0x0106,
+ "Viewing Distance", "ViewingDistance", "FD", "1" },
+ { 0x0046, 0x0121,
+ "Visual Acuity Type Code Sequence", "VisualAcuityTypeCodeSequence", "SQ", "1" },
+ { 0x0046, 0x0122,
+ "Visual Acuity Right Eye Sequence", "VisualAcuityRightEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0123,
+ "Visual Acuity Left Eye Sequence", "VisualAcuityLeftEyeSequence", "SQ", "1" },
+ { 0x0046, 0x0124,
+ "Visual Acuity Both Eyes Open Sequence", "VisualAcuityBothEyesOpenSequence", "SQ", "1" },
+ { 0x0046, 0x0125,
+ "Viewing Distance Type", "ViewingDistanceType", "CS", "1" },
+ { 0x0046, 0x0135,
+ "Visual Acuity Modifiers", "VisualAcuityModifiers", "SS", "2" },
+ { 0x0046, 0x0137,
+ "Decimal Visual Acuity", "DecimalVisualAcuity", "FD", "1" },
+ { 0x0046, 0x0139,
+ "Optotype Detailed Definition", "OptotypeDetailedDefinition", "LO", "1" },
+ { 0x0046, 0x0145,
+ "Referenced Refractive Measurements Sequence", "ReferencedRefractiveMeasurementsSequence", "SQ", "1" },
+ { 0x0046, 0x0146,
+ "Sphere Power", "SpherePower", "FD", "1" },
+ { 0x0046, 0x0147,
+ "Cylinder Power", "CylinderPower", "FD", "1" },
+ { 0x0046, 0x0201,
+ "Corneal Topography Surface", "CornealTopographySurface", "CS", "1" },
+ { 0x0046, 0x0202,
+ "Corneal Vertex Location", "CornealVertexLocation", "FL", "2" },
+ { 0x0046, 0x0203,
+ "Pupil Centroid X-Coordinate", "PupilCentroidXCoordinate", "FL", "1" },
+ { 0x0046, 0x0204,
+ "Pupil Centroid Y-Coordinate", "PupilCentroidYCoordinate", "FL", "1" },
+ { 0x0046, 0x0205,
+ "Equivalent Pupil Radius", "EquivalentPupilRadius", "FL", "1" },
+ { 0x0046, 0x0207,
+ "Corneal Topography Map Type Code Sequence", "CornealTopographyMapTypeCodeSequence", "SQ", "1" },
+ { 0x0046, 0x0208,
+ "Vertices of the Outline of Pupil", "VerticesOfTheOutlineOfPupil", "IS", "2-2n" },
+ { 0x0046, 0x0210,
+ "Corneal Topography Mapping Normals Sequence", "CornealTopographyMappingNormalsSequence", "SQ", "1" },
+ { 0x0046, 0x0211,
+ "Maximum Corneal Curvature Sequence", "MaximumCornealCurvatureSequence", "SQ", "1" },
+ { 0x0046, 0x0212,
+ "Maximum Corneal Curvature", "MaximumCornealCurvature", "FL", "1" },
+ { 0x0046, 0x0213,
+ "Maximum Corneal Curvature Location", "MaximumCornealCurvatureLocation", "FL", "2" },
+ { 0x0046, 0x0215,
+ "Minimum Keratometric Sequence", "MinimumKeratometricSequence", "SQ", "1" },
+ { 0x0046, 0x0218,
+ "Simulated Keratometric Cylinder Sequence", "SimulatedKeratometricCylinderSequence", "SQ", "1" },
+ { 0x0046, 0x0220,
+ "Average Corneal Power", "AverageCornealPower", "FL", "1" },
+ { 0x0046, 0x0224,
+ "Corneal I-S Value", "CornealISValue", "FL", "1" },
+ { 0x0046, 0x0227,
+ "Analyzed Area", "AnalyzedArea", "FL", "1" },
+ { 0x0046, 0x0230,
+ "Surface Regularity Index", "SurfaceRegularityIndex", "FL", "1" },
+ { 0x0046, 0x0232,
+ "Surface Asymmetry Index", "SurfaceAsymmetryIndex", "FL", "1" },
+ { 0x0046, 0x0234,
+ "Corneal Eccentricity Index", "CornealEccentricityIndex", "FL", "1" },
+ { 0x0046, 0x0236,
+ "Keratoconus Prediction Index", "KeratoconusPredictionIndex", "FL", "1" },
+ { 0x0046, 0x0238,
+ "Decimal Potential Visual Acuity", "DecimalPotentialVisualAcuity", "FL", "1" },
+ { 0x0046, 0x0242,
+ "Corneal Topography Map Quality Evaluation", "CornealTopographyMapQualityEvaluation", "CS", "1" },
+ { 0x0046, 0x0244,
+ "Source Image Corneal Processed Data Sequence", "SourceImageCornealProcessedDataSequence", "SQ", "1" },
+ { 0x0046, 0x0247,
+ "Corneal Point Location", "CornealPointLocation", "FL", "3" },
+ { 0x0046, 0x0248,
+ "Corneal Point Estimated", "CornealPointEstimated", "CS", "1" },
+ { 0x0046, 0x0249,
+ "Axial Power", "AxialPower", "FL", "1" },
+ { 0x0046, 0x0250,
+ "Tangential Power", "TangentialPower", "FL", "1" },
+ { 0x0046, 0x0251,
+ "Refractive Power", "RefractivePower", "FL", "1" },
+ { 0x0046, 0x0252,
+ "Relative Elevation", "RelativeElevation", "FL", "1" },
+ { 0x0046, 0x0253,
+ "Corneal Wavefront", "CornealWavefront", "FL", "1" },
+ { 0x0048, 0x0001,
+ "Imaged Volume Width", "ImagedVolumeWidth", "FL", "1" },
+ { 0x0048, 0x0002,
+ "Imaged Volume Height", "ImagedVolumeHeight", "FL", "1" },
+ { 0x0048, 0x0003,
+ "Imaged Volume Depth", "ImagedVolumeDepth", "FL", "1" },
+ { 0x0048, 0x0006,
+ "Total Pixel Matrix Columns", "TotalPixelMatrixColumns", "UL", "1" },
+ { 0x0048, 0x0007,
+ "Total Pixel Matrix Rows", "TotalPixelMatrixRows", "UL", "1" },
+ { 0x0048, 0x0008,
+ "Total Pixel Matrix Origin Sequence", "TotalPixelMatrixOriginSequence", "SQ", "1" },
+ { 0x0048, 0x0010,
+ "Specimen Label in Image", "SpecimenLabelInImage", "CS", "1" },
+ { 0x0048, 0x0011,
+ "Focus Method", "FocusMethod", "CS", "1" },
+ { 0x0048, 0x0012,
+ "Extended Depth of Field", "ExtendedDepthOfField", "CS", "1" },
+ { 0x0048, 0x0013,
+ "Number of Focal Planes", "NumberOfFocalPlanes", "US", "1" },
+ { 0x0048, 0x0014,
+ "Distance Between Focal Planes", "DistanceBetweenFocalPlanes", "FL", "1" },
+ { 0x0048, 0x0015,
+ "Recommended Absent Pixel CIELab Value", "RecommendedAbsentPixelCIELabValue", "US", "3" },
+ { 0x0048, 0x0100,
+ "Illuminator Type Code Sequence", "IlluminatorTypeCodeSequence", "SQ", "1" },
+ { 0x0048, 0x0102,
+ "Image Orientation (Slide)", "ImageOrientationSlide", "DS", "6" },
+ { 0x0048, 0x0105,
+ "Optical Path Sequence", "OpticalPathSequence", "SQ", "1" },
+ { 0x0048, 0x0106,
+ "Optical Path Identifier", "OpticalPathIdentifier", "SH", "1" },
+ { 0x0048, 0x0107,
+ "Optical Path Description", "OpticalPathDescription", "ST", "1" },
+ { 0x0048, 0x0108,
+ "Illumination Color Code Sequence", "IlluminationColorCodeSequence", "SQ", "1" },
+ { 0x0048, 0x0110,
+ "Specimen Reference Sequence", "SpecimenReferenceSequence", "SQ", "1" },
+ { 0x0048, 0x0111,
+ "Condenser Lens Power", "CondenserLensPower", "DS", "1" },
+ { 0x0048, 0x0112,
+ "Objective Lens Power", "ObjectiveLensPower", "DS", "1" },
+ { 0x0048, 0x0113,
+ "Objective Lens Numerical Aperture", "ObjectiveLensNumericalAperture", "DS", "1" },
+ { 0x0048, 0x0120,
+ "Palette Color Lookup Table Sequence", "PaletteColorLookupTableSequence", "SQ", "1" },
+ { 0x0048, 0x0200,
+ "Referenced Image Navigation Sequence", "ReferencedImageNavigationSequence", "SQ", "1" },
+ { 0x0048, 0x0201,
+ "Top Left Hand Corner of Localizer Area", "TopLeftHandCornerOfLocalizerArea", "US", "2" },
+ { 0x0048, 0x0202,
+ "Bottom Right Hand Corner of Localizer Area", "BottomRightHandCornerOfLocalizerArea", "US", "2" },
+ { 0x0048, 0x0207,
+ "Optical Path Identification Sequence", "OpticalPathIdentificationSequence", "SQ", "1" },
+ { 0x0048, 0x021a,
+ "Plane Position (Slide) Sequence", "PlanePositionSlideSequence", "SQ", "1" },
+ { 0x0048, 0x021e,
+ "Column Position In Total Image Pixel Matrix", "ColumnPositionInTotalImagePixelMatrix", "SL", "1" },
+ { 0x0048, 0x021f,
+ "Row Position In Total Image Pixel Matrix", "RowPositionInTotalImagePixelMatrix", "SL", "1" },
+ { 0x0048, 0x0301,
+ "Pixel Origin Interpretation", "PixelOriginInterpretation", "CS", "1" },
+ { 0x0050, 0x0004,
+ "Calibration Image", "CalibrationImage", "CS", "1" },
+ { 0x0050, 0x0010,
+ "Device Sequence", "DeviceSequence", "SQ", "1" },
+ { 0x0050, 0x0012,
+ "Container Component Type Code Sequence", "ContainerComponentTypeCodeSequence", "SQ", "1" },
+ { 0x0050, 0x0013,
+ "Container Component Thickness", "ContainerComponentThickness", "FD", "1" },
+ { 0x0050, 0x0014,
+ "Device Length", "DeviceLength", "DS", "1" },
+ { 0x0050, 0x0015,
+ "Container Component Width", "ContainerComponentWidth", "FD", "1" },
+ { 0x0050, 0x0016,
+ "Device Diameter", "DeviceDiameter", "DS", "1" },
+ { 0x0050, 0x0017,
+ "Device Diameter Units", "DeviceDiameterUnits", "CS", "1" },
+ { 0x0050, 0x0018,
+ "Device Volume", "DeviceVolume", "DS", "1" },
+ { 0x0050, 0x0019,
+ "Inter-Marker Distance", "InterMarkerDistance", "DS", "1" },
+ { 0x0050, 0x001a,
+ "Container Component Material", "ContainerComponentMaterial", "CS", "1" },
+ { 0x0050, 0x001b,
+ "Container Component ID", "ContainerComponentID", "LO", "1" },
+ { 0x0050, 0x001c,
+ "Container Component Length", "ContainerComponentLength", "FD", "1" },
+ { 0x0050, 0x001d,
+ "Container Component Diameter", "ContainerComponentDiameter", "FD", "1" },
+ { 0x0050, 0x001e,
+ "Container Component Description", "ContainerComponentDescription", "LO", "1" },
+ { 0x0050, 0x0020,
+ "Device Description", "DeviceDescription", "LO", "1" },
+ { 0x0052, 0x0001,
+ "Contrast/Bolus Ingredient Percent by Volume", "ContrastBolusIngredientPercentByVolume", "FL", "1" },
+ { 0x0052, 0x0002,
+ "OCT Focal Distance", "OCTFocalDistance", "FD", "1" },
+ { 0x0052, 0x0003,
+ "Beam Spot Size", "BeamSpotSize", "FD", "1" },
+ { 0x0052, 0x0004,
+ "Effective Refractive Index", "EffectiveRefractiveIndex", "FD", "1" },
+ { 0x0052, 0x0006,
+ "OCT Acquisition Domain", "OCTAcquisitionDomain", "CS", "1" },
+ { 0x0052, 0x0007,
+ "OCT Optical Center Wavelength", "OCTOpticalCenterWavelength", "FD", "1" },
+ { 0x0052, 0x0008,
+ "Axial Resolution", "AxialResolution", "FD", "1" },
+ { 0x0052, 0x0009,
+ "Ranging Depth", "RangingDepth", "FD", "1" },
+ { 0x0052, 0x0011,
+ "A-line Rate", "ALineRate", "FD", "1" },
+ { 0x0052, 0x0012,
+ "A-lines Per Frame", "ALinesPerFrame", "US", "1" },
+ { 0x0052, 0x0013,
+ "Catheter Rotational Rate", "CatheterRotationalRate", "FD", "1" },
+ { 0x0052, 0x0014,
+ "A-line Pixel Spacing", "ALinePixelSpacing", "FD", "1" },
+ { 0x0052, 0x0016,
+ "Mode of Percutaneous Access Sequence", "ModeOfPercutaneousAccessSequence", "SQ", "1" },
+ { 0x0052, 0x0025,
+ "Intravascular OCT Frame Type Sequence", "IntravascularOCTFrameTypeSequence", "SQ", "1" },
+ { 0x0052, 0x0026,
+ "OCT Z Offset Applied", "OCTZOffsetApplied", "CS", "1" },
+ { 0x0052, 0x0027,
+ "Intravascular Frame Content Sequence", "IntravascularFrameContentSequence", "SQ", "1" },
+ { 0x0052, 0x0028,
+ "Intravascular Longitudinal Distance", "IntravascularLongitudinalDistance", "FD", "1" },
+ { 0x0052, 0x0029,
+ "Intravascular OCT Frame Content Sequence", "IntravascularOCTFrameContentSequence", "SQ", "1" },
+ { 0x0052, 0x0030,
+ "OCT Z Offset Correction", "OCTZOffsetCorrection", "SS", "1" },
+ { 0x0052, 0x0031,
+ "Catheter Direction of Rotation", "CatheterDirectionOfRotation", "CS", "1" },
+ { 0x0052, 0x0033,
+ "Seam Line Location", "SeamLineLocation", "FD", "1" },
+ { 0x0052, 0x0034,
+ "First A-line Location", "FirstALineLocation", "FD", "1" },
+ { 0x0052, 0x0036,
+ "Seam Line Index", "SeamLineIndex", "US", "1" },
+ { 0x0052, 0x0038,
+ "Number of Padded A-lines", "NumberOfPaddedALines", "US", "1" },
+ { 0x0052, 0x0039,
+ "Interpolation Type", "InterpolationType", "CS", "1" },
+ { 0x0052, 0x003a,
+ "Refractive Index Applied", "RefractiveIndexApplied", "CS", "1" },
+ { 0x0054, 0x0010,
+ "Energy Window Vector", "EnergyWindowVector", "US", "1-n" },
+ { 0x0054, 0x0011,
+ "Number of Energy Windows", "NumberOfEnergyWindows", "US", "1" },
+ { 0x0054, 0x0012,
+ "Energy Window Information Sequence", "EnergyWindowInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0013,
+ "Energy Window Range Sequence", "EnergyWindowRangeSequence", "SQ", "1" },
+ { 0x0054, 0x0014,
+ "Energy Window Lower Limit", "EnergyWindowLowerLimit", "DS", "1" },
+ { 0x0054, 0x0015,
+ "Energy Window Upper Limit", "EnergyWindowUpperLimit", "DS", "1" },
+ { 0x0054, 0x0016,
+ "Radiopharmaceutical Information Sequence", "RadiopharmaceuticalInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0017,
+ "Residual Syringe Counts", "ResidualSyringeCounts", "IS", "1" },
+ { 0x0054, 0x0018,
+ "Energy Window Name", "EnergyWindowName", "SH", "1" },
+ { 0x0054, 0x0020,
+ "Detector Vector", "DetectorVector", "US", "1-n" },
+ { 0x0054, 0x0021,
+ "Number of Detectors", "NumberOfDetectors", "US", "1" },
+ { 0x0054, 0x0022,
+ "Detector Information Sequence", "DetectorInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0030,
+ "Phase Vector", "PhaseVector", "US", "1-n" },
+ { 0x0054, 0x0031,
+ "Number of Phases", "NumberOfPhases", "US", "1" },
+ { 0x0054, 0x0032,
+ "Phase Information Sequence", "PhaseInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0033,
+ "Number of Frames in Phase", "NumberOfFramesInPhase", "US", "1" },
+ { 0x0054, 0x0036,
+ "Phase Delay", "PhaseDelay", "IS", "1" },
+ { 0x0054, 0x0038,
+ "Pause Between Frames", "PauseBetweenFrames", "IS", "1" },
+ { 0x0054, 0x0039,
+ "Phase Description", "PhaseDescription", "CS", "1" },
+ { 0x0054, 0x0050,
+ "Rotation Vector", "RotationVector", "US", "1-n" },
+ { 0x0054, 0x0051,
+ "Number of Rotations", "NumberOfRotations", "US", "1" },
+ { 0x0054, 0x0052,
+ "Rotation Information Sequence", "RotationInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0053,
+ "Number of Frames in Rotation", "NumberOfFramesInRotation", "US", "1" },
+ { 0x0054, 0x0060,
+ "R-R Interval Vector", "RRIntervalVector", "US", "1-n" },
+ { 0x0054, 0x0061,
+ "Number of R-R Intervals", "NumberOfRRIntervals", "US", "1" },
+ { 0x0054, 0x0062,
+ "Gated Information Sequence", "GatedInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0063,
+ "Data Information Sequence", "DataInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0070,
+ "Time Slot Vector", "TimeSlotVector", "US", "1-n" },
+ { 0x0054, 0x0071,
+ "Number of Time Slots", "NumberOfTimeSlots", "US", "1" },
+ { 0x0054, 0x0072,
+ "Time Slot Information Sequence", "TimeSlotInformationSequence", "SQ", "1" },
+ { 0x0054, 0x0073,
+ "Time Slot Time", "TimeSlotTime", "DS", "1" },
+ { 0x0054, 0x0080,
+ "Slice Vector", "SliceVector", "US", "1-n" },
+ { 0x0054, 0x0081,
+ "Number of Slices", "NumberOfSlices", "US", "1" },
+ { 0x0054, 0x0090,
+ "Angular View Vector", "AngularViewVector", "US", "1-n" },
+ { 0x0054, 0x0100,
+ "Time Slice Vector", "TimeSliceVector", "US", "1-n" },
+ { 0x0054, 0x0101,
+ "Number of Time Slices", "NumberOfTimeSlices", "US", "1" },
+ { 0x0054, 0x0200,
+ "Start Angle", "StartAngle", "DS", "1" },
+ { 0x0054, 0x0202,
+ "Type of Detector Motion", "TypeOfDetectorMotion", "CS", "1" },
+ { 0x0054, 0x0210,
+ "Trigger Vector", "TriggerVector", "IS", "1-n" },
+ { 0x0054, 0x0211,
+ "Number of Triggers in Phase", "NumberOfTriggersInPhase", "US", "1" },
+ { 0x0054, 0x0220,
+ "View Code Sequence", "ViewCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0222,
+ "View Modifier Code Sequence", "ViewModifierCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0300,
+ "Radionuclide Code Sequence", "RadionuclideCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0302,
+ "Administration Route Code Sequence", "AdministrationRouteCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0304,
+ "Radiopharmaceutical Code Sequence", "RadiopharmaceuticalCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0306,
+ "Calibration Data Sequence", "CalibrationDataSequence", "SQ", "1" },
+ { 0x0054, 0x0308,
+ "Energy Window Number", "EnergyWindowNumber", "US", "1" },
+ { 0x0054, 0x0400,
+ "Image ID", "ImageID", "SH", "1" },
+ { 0x0054, 0x0410,
+ "Patient Orientation Code Sequence", "PatientOrientationCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0412,
+ "Patient Orientation Modifier Code Sequence", "PatientOrientationModifierCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0414,
+ "Patient Gantry Relationship Code Sequence", "PatientGantryRelationshipCodeSequence", "SQ", "1" },
+ { 0x0054, 0x0500,
+ "Slice Progression Direction", "SliceProgressionDirection", "CS", "1" },
+ { 0x0054, 0x0501,
+ "Scan Progression Direction", "ScanProgressionDirection", "CS", "1" },
+ { 0x0054, 0x1000,
+ "Series Type", "SeriesType", "CS", "2" },
+ { 0x0054, 0x1001,
+ "Units", "Units", "CS", "1" },
+ { 0x0054, 0x1002,
+ "Counts Source", "CountsSource", "CS", "1" },
+ { 0x0054, 0x1004,
+ "Reprojection Method", "ReprojectionMethod", "CS", "1" },
+ { 0x0054, 0x1006,
+ "SUV Type", "SUVType", "CS", "1" },
+ { 0x0054, 0x1100,
+ "Randoms Correction Method", "RandomsCorrectionMethod", "CS", "1" },
+ { 0x0054, 0x1101,
+ "Attenuation Correction Method", "AttenuationCorrectionMethod", "LO", "1" },
+ { 0x0054, 0x1102,
+ "Decay Correction", "DecayCorrection", "CS", "1" },
+ { 0x0054, 0x1103,
+ "Reconstruction Method", "ReconstructionMethod", "LO", "1" },
+ { 0x0054, 0x1104,
+ "Detector Lines of Response Used", "DetectorLinesOfResponseUsed", "LO", "1" },
+ { 0x0054, 0x1105,
+ "Scatter Correction Method", "ScatterCorrectionMethod", "LO", "1" },
+ { 0x0054, 0x1200,
+ "Axial Acceptance", "AxialAcceptance", "DS", "1" },
+ { 0x0054, 0x1201,
+ "Axial Mash", "AxialMash", "IS", "2" },
+ { 0x0054, 0x1202,
+ "Transverse Mash", "TransverseMash", "IS", "1" },
+ { 0x0054, 0x1203,
+ "Detector Element Size", "DetectorElementSize", "DS", "2" },
+ { 0x0054, 0x1210,
+ "Coincidence Window Width", "CoincidenceWindowWidth", "DS", "1" },
+ { 0x0054, 0x1220,
+ "Secondary Counts Type", "SecondaryCountsType", "CS", "1-n" },
+ { 0x0054, 0x1300,
+ "Frame Reference Time", "FrameReferenceTime", "DS", "1" },
+ { 0x0054, 0x1310,
+ "Primary (Prompts) Counts Accumulated", "PrimaryPromptsCountsAccumulated", "IS", "1" },
+ { 0x0054, 0x1311,
+ "Secondary Counts Accumulated", "SecondaryCountsAccumulated", "IS", "1-n" },
+ { 0x0054, 0x1320,
+ "Slice Sensitivity Factor", "SliceSensitivityFactor", "DS", "1" },
+ { 0x0054, 0x1321,
+ "Decay Factor", "DecayFactor", "DS", "1" },
+ { 0x0054, 0x1322,
+ "Dose Calibration Factor", "DoseCalibrationFactor", "DS", "1" },
+ { 0x0054, 0x1323,
+ "Scatter Fraction Factor", "ScatterFractionFactor", "DS", "1" },
+ { 0x0054, 0x1324,
+ "Dead Time Factor", "DeadTimeFactor", "DS", "1" },
+ { 0x0054, 0x1330,
+ "Image Index", "ImageIndex", "US", "1" },
+ { 0x0054, 0x1400,
+ "Counts Included", "CountsIncluded", "CS", "1-n" },
+ { 0x0054, 0x1401,
+ "Dead Time Correction Flag", "DeadTimeCorrectionFlag", "CS", "1" },
+ { 0x0060, 0x3000,
+ "Histogram Sequence", "HistogramSequence", "SQ", "1" },
+ { 0x0060, 0x3002,
+ "Histogram Number of Bins", "HistogramNumberOfBins", "US", "1" },
+ { 0x0060, 0x3004,
+ "Histogram First Bin Value", "HistogramFirstBinValue", "US or SS", "1" },
+ { 0x0060, 0x3006,
+ "Histogram Last Bin Value", "HistogramLastBinValue", "US or SS", "1" },
+ { 0x0060, 0x3008,
+ "Histogram Bin Width", "HistogramBinWidth", "US", "1" },
+ { 0x0060, 0x3010,
+ "Histogram Explanation", "HistogramExplanation", "LO", "1" },
+ { 0x0060, 0x3020,
+ "Histogram Data", "HistogramData", "UL", "1-n" },
+ { 0x0062, 0x0001,
+ "Segmentation Type", "SegmentationType", "CS", "1" },
+ { 0x0062, 0x0002,
+ "Segment Sequence", "SegmentSequence", "SQ", "1" },
+ { 0x0062, 0x0003,
+ "Segmented Property Category Code Sequence", "SegmentedPropertyCategoryCodeSequence", "SQ", "1" },
+ { 0x0062, 0x0004,
+ "Segment Number", "SegmentNumber", "US", "1" },
+ { 0x0062, 0x0005,
+ "Segment Label", "SegmentLabel", "LO", "1" },
+ { 0x0062, 0x0006,
+ "Segment Description", "SegmentDescription", "ST", "1" },
+ { 0x0062, 0x0008,
+ "Segment Algorithm Type", "SegmentAlgorithmType", "CS", "1" },
+ { 0x0062, 0x0009,
+ "Segment Algorithm Name", "SegmentAlgorithmName", "LO", "1" },
+ { 0x0062, 0x000a,
+ "Segment Identification Sequence", "SegmentIdentificationSequence", "SQ", "1" },
+ { 0x0062, 0x000b,
+ "Referenced Segment Number", "ReferencedSegmentNumber", "US", "1-n" },
+ { 0x0062, 0x000c,
+ "Recommended Display Grayscale Value", "RecommendedDisplayGrayscaleValue", "US", "1" },
+ { 0x0062, 0x000d,
+ "Recommended Display CIELab Value", "RecommendedDisplayCIELabValue", "US", "3" },
+ { 0x0062, 0x000e,
+ "Maximum Fractional Value", "MaximumFractionalValue", "US", "1" },
+ { 0x0062, 0x000f,
+ "Segmented Property Type Code Sequence", "SegmentedPropertyTypeCodeSequence", "SQ", "1" },
+ { 0x0062, 0x0010,
+ "Segmentation Fractional Type", "SegmentationFractionalType", "CS", "1" },
+ { 0x0062, 0x0011,
+ "Segmented Property Type Modifier Code Sequence", "SegmentedPropertyTypeModifierCodeSequence", "SQ", "1" },
+ { 0x0062, 0x0012,
+ "Used Segments Sequence", "UsedSegmentsSequence", "SQ", "1" },
+ { 0x0064, 0x0002,
+ "Deformable Registration Sequence", "DeformableRegistrationSequence", "SQ", "1" },
+ { 0x0064, 0x0003,
+ "Source Frame of Reference UID", "SourceFrameOfReferenceUID", "UI", "1" },
+ { 0x0064, 0x0005,
+ "Deformable Registration Grid Sequence", "DeformableRegistrationGridSequence", "SQ", "1" },
+ { 0x0064, 0x0007,
+ "Grid Dimensions", "GridDimensions", "UL", "3" },
+ { 0x0064, 0x0008,
+ "Grid Resolution", "GridResolution", "FD", "3" },
+ { 0x0064, 0x0009,
+ "Vector Grid Data", "VectorGridData", "OF", "1" },
+ { 0x0064, 0x000f,
+ "Pre Deformation Matrix Registration Sequence", "PreDeformationMatrixRegistrationSequence", "SQ", "1" },
+ { 0x0064, 0x0010,
+ "Post Deformation Matrix Registration Sequence", "PostDeformationMatrixRegistrationSequence", "SQ", "1" },
+ { 0x0066, 0x0001,
+ "Number of Surfaces", "NumberOfSurfaces", "UL", "1" },
+ { 0x0066, 0x0002,
+ "Surface Sequence", "SurfaceSequence", "SQ", "1" },
+ { 0x0066, 0x0003,
+ "Surface Number", "SurfaceNumber", "UL", "1" },
+ { 0x0066, 0x0004,
+ "Surface Comments", "SurfaceComments", "LT", "1" },
+ { 0x0066, 0x0009,
+ "Surface Processing", "SurfaceProcessing", "CS", "1" },
+ { 0x0066, 0x000a,
+ "Surface Processing Ratio", "SurfaceProcessingRatio", "FL", "1" },
+ { 0x0066, 0x000b,
+ "Surface Processing Description", "SurfaceProcessingDescription", "LO", "1" },
+ { 0x0066, 0x000c,
+ "Recommended Presentation Opacity", "RecommendedPresentationOpacity", "FL", "1" },
+ { 0x0066, 0x000d,
+ "Recommended Presentation Type", "RecommendedPresentationType", "CS", "1" },
+ { 0x0066, 0x000e,
+ "Finite Volume", "FiniteVolume", "CS", "1" },
+ { 0x0066, 0x0010,
+ "Manifold", "Manifold", "CS", "1" },
+ { 0x0066, 0x0011,
+ "Surface Points Sequence", "SurfacePointsSequence", "SQ", "1" },
+ { 0x0066, 0x0012,
+ "Surface Points Normals Sequence", "SurfacePointsNormalsSequence", "SQ", "1" },
+ { 0x0066, 0x0013,
+ "Surface Mesh Primitives Sequence", "SurfaceMeshPrimitivesSequence", "SQ", "1" },
+ { 0x0066, 0x0015,
+ "Number of Surface Points", "NumberOfSurfacePoints", "UL", "1" },
+ { 0x0066, 0x0016,
+ "Point Coordinates Data", "PointCoordinatesData", "OF", "1" },
+ { 0x0066, 0x0017,
+ "Point Position Accuracy", "PointPositionAccuracy", "FL", "3" },
+ { 0x0066, 0x0018,
+ "Mean Point Distance", "MeanPointDistance", "FL", "1" },
+ { 0x0066, 0x0019,
+ "Maximum Point Distance", "MaximumPointDistance", "FL", "1" },
+ { 0x0066, 0x001a,
+ "Points Bounding Box Coordinates", "PointsBoundingBoxCoordinates", "FL", "6" },
+ { 0x0066, 0x001b,
+ "Axis of Rotation", "AxisOfRotation", "FL", "3" },
+ { 0x0066, 0x001c,
+ "Center of Rotation", "CenterOfRotation", "FL", "3" },
+ { 0x0066, 0x001e,
+ "Number of Vectors", "NumberOfVectors", "UL", "1" },
+ { 0x0066, 0x001f,
+ "Vector Dimensionality", "VectorDimensionality", "US", "1" },
+ { 0x0066, 0x0020,
+ "Vector Accuracy", "VectorAccuracy", "FL", "1-n" },
+ { 0x0066, 0x0021,
+ "Vector Coordinate Data", "VectorCoordinateData", "OF", "1" },
+ { 0x0066, 0x0023,
+ "Triangle Point Index List", "TrianglePointIndexList", "OW", "1" },
+ { 0x0066, 0x0024,
+ "Edge Point Index List", "EdgePointIndexList", "OW", "1" },
+ { 0x0066, 0x0025,
+ "Vertex Point Index List", "VertexPointIndexList", "OW", "1" },
+ { 0x0066, 0x0026,
+ "Triangle Strip Sequence", "TriangleStripSequence", "SQ", "1" },
+ { 0x0066, 0x0027,
+ "Triangle Fan Sequence", "TriangleFanSequence", "SQ", "1" },
+ { 0x0066, 0x0028,
+ "Line Sequence", "LineSequence", "SQ", "1" },
+ { 0x0066, 0x0029,
+ "Primitive Point Index List", "PrimitivePointIndexList", "OW", "1" },
+ { 0x0066, 0x002a,
+ "Surface Count", "SurfaceCount", "UL", "1" },
+ { 0x0066, 0x002b,
+ "Referenced Surface Sequence", "ReferencedSurfaceSequence", "SQ", "1" },
+ { 0x0066, 0x002c,
+ "Referenced Surface Number", "ReferencedSurfaceNumber", "UL", "1" },
+ { 0x0066, 0x002d,
+ "Segment Surface Generation Algorithm Identification Sequence", "SegmentSurfaceGenerationAlgorithmIdentificationSequence", "SQ", "1" },
+ { 0x0066, 0x002e,
+ "Segment Surface Source Instance Sequence", "SegmentSurfaceSourceInstanceSequence", "SQ", "1" },
+ { 0x0066, 0x002f,
+ "Algorithm Family Code Sequence", "AlgorithmFamilyCodeSequence", "SQ", "1" },
+ { 0x0066, 0x0030,
+ "Algorithm Name Code Sequence", "AlgorithmNameCodeSequence", "SQ", "1" },
+ { 0x0066, 0x0031,
+ "Algorithm Version", "AlgorithmVersion", "LO", "1" },
+ { 0x0066, 0x0032,
+ "Algorithm Parameters", "AlgorithmParameters", "LT", "1" },
+ { 0x0066, 0x0034,
+ "Facet Sequence", "FacetSequence", "SQ", "1" },
+ { 0x0066, 0x0035,
+ "Surface Processing Algorithm Identification Sequence", "SurfaceProcessingAlgorithmIdentificationSequence", "SQ", "1" },
+ { 0x0066, 0x0036,
+ "Algorithm Name", "AlgorithmName", "LO", "1" },
+ { 0x0066, 0x0037,
+ "Recommended Point Radius", "RecommendedPointRadius", "FL", "1" },
+ { 0x0066, 0x0038,
+ "Recommended Line Thickness", "RecommendedLineThickness", "FL", "1" },
+ { 0x0066, 0x0040,
+ "Long Primitive Point Index List", "LongPrimitivePointIndexList", "UL", "1-n" },
+ { 0x0066, 0x0041,
+ "Long Triangle Point Index List", "LongTrianglePointIndexList", "UL", "3-3n" },
+ { 0x0066, 0x0042,
+ "Long Edge Point Index List", "LongEdgePointIndexList", "UL", "2-2n" },
+ { 0x0066, 0x0043,
+ "Long Vertex Point Index List", "LongVertexPointIndexList", "UL", "1-n" },
+ { 0x0068, 0x6210,
+ "Implant Size", "ImplantSize", "LO", "1" },
+ { 0x0068, 0x6221,
+ "Implant Template Version", "ImplantTemplateVersion", "LO", "1" },
+ { 0x0068, 0x6222,
+ "Replaced Implant Template Sequence", "ReplacedImplantTemplateSequence", "SQ", "1" },
+ { 0x0068, 0x6223,
+ "Implant Type", "ImplantType", "CS", "1" },
+ { 0x0068, 0x6224,
+ "Derivation Implant Template Sequence", "DerivationImplantTemplateSequence", "SQ", "1" },
+ { 0x0068, 0x6225,
+ "Original Implant Template Sequence", "OriginalImplantTemplateSequence", "SQ", "1" },
+ { 0x0068, 0x6226,
+ "Effective DateTime", "EffectiveDateTime", "DT", "1" },
+ { 0x0068, 0x6230,
+ "Implant Target Anatomy Sequence", "ImplantTargetAnatomySequence", "SQ", "1" },
+ { 0x0068, 0x6260,
+ "Information From Manufacturer Sequence", "InformationFromManufacturerSequence", "SQ", "1" },
+ { 0x0068, 0x6265,
+ "Notification From Manufacturer Sequence", "NotificationFromManufacturerSequence", "SQ", "1" },
+ { 0x0068, 0x6270,
+ "Information Issue DateTime", "InformationIssueDateTime", "DT", "1" },
+ { 0x0068, 0x6280,
+ "Information Summary", "InformationSummary", "ST", "1" },
+ { 0x0068, 0x62a0,
+ "Implant Regulatory Disapproval Code Sequence", "ImplantRegulatoryDisapprovalCodeSequence", "SQ", "1" },
+ { 0x0068, 0x62a5,
+ "Overall Template Spatial Tolerance", "OverallTemplateSpatialTolerance", "FD", "1" },
+ { 0x0068, 0x62c0,
+ "HPGL Document Sequence", "HPGLDocumentSequence", "SQ", "1" },
+ { 0x0068, 0x62d0,
+ "HPGL Document ID", "HPGLDocumentID", "US", "1" },
+ { 0x0068, 0x62d5,
+ "HPGL Document Label", "HPGLDocumentLabel", "LO", "1" },
+ { 0x0068, 0x62e0,
+ "View Orientation Code Sequence", "ViewOrientationCodeSequence", "SQ", "1" },
+ { 0x0068, 0x62f0,
+ "View Orientation Modifier", "ViewOrientationModifier", "FD", "9" },
+ { 0x0068, 0x62f2,
+ "HPGL Document Scaling", "HPGLDocumentScaling", "FD", "1" },
+ { 0x0068, 0x6300,
+ "HPGL Document", "HPGLDocument", "OB", "1" },
+ { 0x0068, 0x6310,
+ "HPGL Contour Pen Number", "HPGLContourPenNumber", "US", "1" },
+ { 0x0068, 0x6320,
+ "HPGL Pen Sequence", "HPGLPenSequence", "SQ", "1" },
+ { 0x0068, 0x6330,
+ "HPGL Pen Number", "HPGLPenNumber", "US", "1" },
+ { 0x0068, 0x6340,
+ "HPGL Pen Label", "HPGLPenLabel", "LO", "1" },
+ { 0x0068, 0x6345,
+ "HPGL Pen Description", "HPGLPenDescription", "ST", "1" },
+ { 0x0068, 0x6346,
+ "Recommended Rotation Point", "RecommendedRotationPoint", "FD", "2" },
+ { 0x0068, 0x6347,
+ "Bounding Rectangle", "BoundingRectangle", "FD", "4" },
+ { 0x0068, 0x6350,
+ "Implant Template 3D Model Surface Number", "ImplantTemplate3DModelSurfaceNumber", "US", "1-n" },
+ { 0x0068, 0x6360,
+ "Surface Model Description Sequence", "SurfaceModelDescriptionSequence", "SQ", "1" },
+ { 0x0068, 0x6380,
+ "Surface Model Label", "SurfaceModelLabel", "LO", "1" },
+ { 0x0068, 0x6390,
+ "Surface Model Scaling Factor", "SurfaceModelScalingFactor", "FD", "1" },
+ { 0x0068, 0x63a0,
+ "Materials Code Sequence", "MaterialsCodeSequence", "SQ", "1" },
+ { 0x0068, 0x63a4,
+ "Coating Materials Code Sequence", "CoatingMaterialsCodeSequence", "SQ", "1" },
+ { 0x0068, 0x63a8,
+ "Implant Type Code Sequence", "ImplantTypeCodeSequence", "SQ", "1" },
+ { 0x0068, 0x63ac,
+ "Fixation Method Code Sequence", "FixationMethodCodeSequence", "SQ", "1" },
+ { 0x0068, 0x63b0,
+ "Mating Feature Sets Sequence", "MatingFeatureSetsSequence", "SQ", "1" },
+ { 0x0068, 0x63c0,
+ "Mating Feature Set ID", "MatingFeatureSetID", "US", "1" },
+ { 0x0068, 0x63d0,
+ "Mating Feature Set Label", "MatingFeatureSetLabel", "LO", "1" },
+ { 0x0068, 0x63e0,
+ "Mating Feature Sequence", "MatingFeatureSequence", "SQ", "1" },
+ { 0x0068, 0x63f0,
+ "Mating Feature ID", "MatingFeatureID", "US", "1" },
+ { 0x0068, 0x6400,
+ "Mating Feature Degree of Freedom Sequence", "MatingFeatureDegreeOfFreedomSequence", "SQ", "1" },
+ { 0x0068, 0x6410,
+ "Degree of Freedom ID", "DegreeOfFreedomID", "US", "1" },
+ { 0x0068, 0x6420,
+ "Degree of Freedom Type", "DegreeOfFreedomType", "CS", "1" },
+ { 0x0068, 0x6430,
+ "2D Mating Feature Coordinates Sequence", "TwoDMatingFeatureCoordinatesSequence", "SQ", "1" },
+ { 0x0068, 0x6440,
+ "Referenced HPGL Document ID", "ReferencedHPGLDocumentID", "US", "1" },
+ { 0x0068, 0x6450,
+ "2D Mating Point", "TwoDMatingPoint", "FD", "2" },
+ { 0x0068, 0x6460,
+ "2D Mating Axes", "TwoDMatingAxes", "FD", "4" },
+ { 0x0068, 0x6470,
+ "2D Degree of Freedom Sequence", "TwoDDegreeOfFreedomSequence", "SQ", "1" },
+ { 0x0068, 0x6490,
+ "3D Degree of Freedom Axis", "ThreeDDegreeOfFreedomAxis", "FD", "3" },
+ { 0x0068, 0x64a0,
+ "Range of Freedom", "RangeOfFreedom", "FD", "2" },
+ { 0x0068, 0x64c0,
+ "3D Mating Point", "ThreeDMatingPoint", "FD", "3" },
+ { 0x0068, 0x64d0,
+ "3D Mating Axes", "ThreeDMatingAxes", "FD", "9" },
+ { 0x0068, 0x64f0,
+ "2D Degree of Freedom Axis", "TwoDDegreeOfFreedomAxis", "FD", "3" },
+ { 0x0068, 0x6500,
+ "Planning Landmark Point Sequence", "PlanningLandmarkPointSequence", "SQ", "1" },
+ { 0x0068, 0x6510,
+ "Planning Landmark Line Sequence", "PlanningLandmarkLineSequence", "SQ", "1" },
+ { 0x0068, 0x6520,
+ "Planning Landmark Plane Sequence", "PlanningLandmarkPlaneSequence", "SQ", "1" },
+ { 0x0068, 0x6530,
+ "Planning Landmark ID", "PlanningLandmarkID", "US", "1" },
+ { 0x0068, 0x6540,
+ "Planning Landmark Description", "PlanningLandmarkDescription", "LO", "1" },
+ { 0x0068, 0x6545,
+ "Planning Landmark Identification Code Sequence", "PlanningLandmarkIdentificationCodeSequence", "SQ", "1" },
+ { 0x0068, 0x6550,
+ "2D Point Coordinates Sequence", "TwoDPointCoordinatesSequence", "SQ", "1" },
+ { 0x0068, 0x6560,
+ "2D Point Coordinates", "TwoDPointCoordinates", "FD", "2" },
+ { 0x0068, 0x6590,
+ "3D Point Coordinates", "ThreeDPointCoordinates", "FD", "3" },
+ { 0x0068, 0x65a0,
+ "2D Line Coordinates Sequence", "TwoDLineCoordinatesSequence", "SQ", "1" },
+ { 0x0068, 0x65b0,
+ "2D Line Coordinates", "TwoDLineCoordinates", "FD", "4" },
+ { 0x0068, 0x65d0,
+ "3D Line Coordinates", "ThreeDLineCoordinates", "FD", "6" },
+ { 0x0068, 0x65e0,
+ "2D Plane Coordinates Sequence", "TwoDPlaneCoordinatesSequence", "SQ", "1" },
+ { 0x0068, 0x65f0,
+ "2D Plane Intersection", "TwoDPlaneIntersection", "FD", "4" },
+ { 0x0068, 0x6610,
+ "3D Plane Origin", "ThreeDPlaneOrigin", "FD", "3" },
+ { 0x0068, 0x6620,
+ "3D Plane Normal", "ThreeDPlaneNormal", "FD", "3" },
+ { 0x0070, 0x0001,
+ "Graphic Annotation Sequence", "GraphicAnnotationSequence", "SQ", "1" },
+ { 0x0070, 0x0002,
+ "Graphic Layer", "GraphicLayer", "CS", "1" },
+ { 0x0070, 0x0003,
+ "Bounding Box Annotation Units", "BoundingBoxAnnotationUnits", "CS", "1" },
+ { 0x0070, 0x0004,
+ "Anchor Point Annotation Units", "AnchorPointAnnotationUnits", "CS", "1" },
+ { 0x0070, 0x0005,
+ "Graphic Annotation Units", "GraphicAnnotationUnits", "CS", "1" },
+ { 0x0070, 0x0006,
+ "Unformatted Text Value", "UnformattedTextValue", "ST", "1" },
+ { 0x0070, 0x0008,
+ "Text Object Sequence", "TextObjectSequence", "SQ", "1" },
+ { 0x0070, 0x0009,
+ "Graphic Object Sequence", "GraphicObjectSequence", "SQ", "1" },
+ { 0x0070, 0x0010,
+ "Bounding Box Top Left Hand Corner", "BoundingBoxTopLeftHandCorner", "FL", "2" },
+ { 0x0070, 0x0011,
+ "Bounding Box Bottom Right Hand Corner", "BoundingBoxBottomRightHandCorner", "FL", "2" },
+ { 0x0070, 0x0012,
+ "Bounding Box Text Horizontal Justification", "BoundingBoxTextHorizontalJustification", "CS", "1" },
+ { 0x0070, 0x0014,
+ "Anchor Point", "AnchorPoint", "FL", "2" },
+ { 0x0070, 0x0015,
+ "Anchor Point Visibility", "AnchorPointVisibility", "CS", "1" },
+ { 0x0070, 0x0020,
+ "Graphic Dimensions", "GraphicDimensions", "US", "1" },
+ { 0x0070, 0x0021,
+ "Number of Graphic Points", "NumberOfGraphicPoints", "US", "1" },
+ { 0x0070, 0x0022,
+ "Graphic Data", "GraphicData", "FL", "2-n" },
+ { 0x0070, 0x0023,
+ "Graphic Type", "GraphicType", "CS", "1" },
+ { 0x0070, 0x0024,
+ "Graphic Filled", "GraphicFilled", "CS", "1" },
+ { 0x0070, 0x0040,
+ "Image Rotation (Retired)", "ImageRotationRetired", "IS", "1" },
+ { 0x0070, 0x0041,
+ "Image Horizontal Flip", "ImageHorizontalFlip", "CS", "1" },
+ { 0x0070, 0x0042,
+ "Image Rotation", "ImageRotation", "US", "1" },
+ { 0x0070, 0x0050,
+ "Displayed Area Top Left Hand Corner (Trial)", "DisplayedAreaTopLeftHandCornerTrial", "US", "2" },
+ { 0x0070, 0x0051,
+ "Displayed Area Bottom Right Hand Corner (Trial)", "DisplayedAreaBottomRightHandCornerTrial", "US", "2" },
+ { 0x0070, 0x0052,
+ "Displayed Area Top Left Hand Corner", "DisplayedAreaTopLeftHandCorner", "SL", "2" },
+ { 0x0070, 0x0053,
+ "Displayed Area Bottom Right Hand Corner", "DisplayedAreaBottomRightHandCorner", "SL", "2" },
+ { 0x0070, 0x005a,
+ "Displayed Area Selection Sequence", "DisplayedAreaSelectionSequence", "SQ", "1" },
+ { 0x0070, 0x0060,
+ "Graphic Layer Sequence", "GraphicLayerSequence", "SQ", "1" },
+ { 0x0070, 0x0062,
+ "Graphic Layer Order", "GraphicLayerOrder", "IS", "1" },
+ { 0x0070, 0x0066,
+ "Graphic Layer Recommended Display Grayscale Value", "GraphicLayerRecommendedDisplayGrayscaleValue", "US", "1" },
+ { 0x0070, 0x0067,
+ "Graphic Layer Recommended Display RGB Value", "GraphicLayerRecommendedDisplayRGBValue", "US", "3" },
+ { 0x0070, 0x0068,
+ "Graphic Layer Description", "GraphicLayerDescription", "LO", "1" },
+ { 0x0070, 0x0080,
+ "Content Label", "ContentLabel", "CS", "1" },
+ { 0x0070, 0x0081,
+ "Content Description", "ContentDescription", "LO", "1" },
+ { 0x0070, 0x0082,
+ "Presentation Creation Date", "PresentationCreationDate", "DA", "1" },
+ { 0x0070, 0x0083,
+ "Presentation Creation Time", "PresentationCreationTime", "TM", "1" },
+ { 0x0070, 0x0084,
+ "Content Creator's Name", "ContentCreatorName", "PN", "1" },
+ { 0x0070, 0x0086,
+ "Content Creator's Identification Code Sequence", "ContentCreatorIdentificationCodeSequence", "SQ", "1" },
+ { 0x0070, 0x0087,
+ "Alternate Content Description Sequence", "AlternateContentDescriptionSequence", "SQ", "1" },
+ { 0x0070, 0x0100,
+ "Presentation Size Mode", "PresentationSizeMode", "CS", "1" },
+ { 0x0070, 0x0101,
+ "Presentation Pixel Spacing", "PresentationPixelSpacing", "DS", "2" },
+ { 0x0070, 0x0102,
+ "Presentation Pixel Aspect Ratio", "PresentationPixelAspectRatio", "IS", "2" },
+ { 0x0070, 0x0103,
+ "Presentation Pixel Magnification Ratio", "PresentationPixelMagnificationRatio", "FL", "1" },
+ { 0x0070, 0x0207,
+ "Graphic Group Label", "GraphicGroupLabel", "LO", "1" },
+ { 0x0070, 0x0208,
+ "Graphic Group Description", "GraphicGroupDescription", "ST", "1" },
+ { 0x0070, 0x0209,
+ "Compound Graphic Sequence", "CompoundGraphicSequence", "SQ", "1" },
+ { 0x0070, 0x0226,
+ "Compound Graphic Instance ID", "CompoundGraphicInstanceID", "UL", "1" },
+ { 0x0070, 0x0227,
+ "Font Name", "FontName", "LO", "1" },
+ { 0x0070, 0x0228,
+ "Font Name Type", "FontNameType", "CS", "1" },
+ { 0x0070, 0x0229,
+ "CSS Font Name", "CSSFontName", "LO", "1" },
+ { 0x0070, 0x0230,
+ "Rotation Angle", "RotationAngle", "FD", "1" },
+ { 0x0070, 0x0231,
+ "Text Style Sequence", "TextStyleSequence", "SQ", "1" },
+ { 0x0070, 0x0232,
+ "Line Style Sequence", "LineStyleSequence", "SQ", "1" },
+ { 0x0070, 0x0233,
+ "Fill Style Sequence", "FillStyleSequence", "SQ", "1" },
+ { 0x0070, 0x0234,
+ "Graphic Group Sequence", "GraphicGroupSequence", "SQ", "1" },
+ { 0x0070, 0x0241,
+ "Text Color CIELab Value", "TextColorCIELabValue", "US", "3" },
+ { 0x0070, 0x0242,
+ "Horizontal Alignment", "HorizontalAlignment", "CS", "1" },
+ { 0x0070, 0x0243,
+ "Vertical Alignment", "VerticalAlignment", "CS", "1" },
+ { 0x0070, 0x0244,
+ "Shadow Style", "ShadowStyle", "CS", "1" },
+ { 0x0070, 0x0245,
+ "Shadow Offset X", "ShadowOffsetX", "FL", "1" },
+ { 0x0070, 0x0246,
+ "Shadow Offset Y", "ShadowOffsetY", "FL", "1" },
+ { 0x0070, 0x0247,
+ "Shadow Color CIELab Value", "ShadowColorCIELabValue", "US", "3" },
+ { 0x0070, 0x0248,
+ "Underlined", "Underlined", "CS", "1" },
+ { 0x0070, 0x0249,
+ "Bold", "Bold", "CS", "1" },
+ { 0x0070, 0x0250,
+ "Italic", "Italic", "CS", "1" },
+ { 0x0070, 0x0251,
+ "Pattern On Color CIELab Value", "PatternOnColorCIELabValue", "US", "3" },
+ { 0x0070, 0x0252,
+ "Pattern Off Color CIELab Value", "PatternOffColorCIELabValue", "US", "3" },
+ { 0x0070, 0x0253,
+ "Line Thickness", "LineThickness", "FL", "1" },
+ { 0x0070, 0x0254,
+ "Line Dashing Style", "LineDashingStyle", "CS", "1" },
+ { 0x0070, 0x0255,
+ "Line Pattern", "LinePattern", "UL", "1" },
+ { 0x0070, 0x0256,
+ "Fill Pattern", "FillPattern", "OB", "1" },
+ { 0x0070, 0x0257,
+ "Fill Mode", "FillMode", "CS", "1" },
+ { 0x0070, 0x0258,
+ "Shadow Opacity", "ShadowOpacity", "FL", "1" },
+ { 0x0070, 0x0261,
+ "Gap Length", "GapLength", "FL", "1" },
+ { 0x0070, 0x0262,
+ "Diameter of Visibility", "DiameterOfVisibility", "FL", "1" },
+ { 0x0070, 0x0273,
+ "Rotation Point", "RotationPoint", "FL", "2" },
+ { 0x0070, 0x0274,
+ "Tick Alignment", "TickAlignment", "CS", "1" },
+ { 0x0070, 0x0278,
+ "Show Tick Label", "ShowTickLabel", "CS", "1" },
+ { 0x0070, 0x0279,
+ "Tick Label Alignment", "TickLabelAlignment", "CS", "1" },
+ { 0x0070, 0x0282,
+ "Compound Graphic Units", "CompoundGraphicUnits", "CS", "1" },
+ { 0x0070, 0x0284,
+ "Pattern On Opacity", "PatternOnOpacity", "FL", "1" },
+ { 0x0070, 0x0285,
+ "Pattern Off Opacity", "PatternOffOpacity", "FL", "1" },
+ { 0x0070, 0x0287,
+ "Major Ticks Sequence", "MajorTicksSequence", "SQ", "1" },
+ { 0x0070, 0x0288,
+ "Tick Position", "TickPosition", "FL", "1" },
+ { 0x0070, 0x0289,
+ "Tick Label", "TickLabel", "SH", "1" },
+ { 0x0070, 0x0294,
+ "Compound Graphic Type", "CompoundGraphicType", "CS", "1" },
+ { 0x0070, 0x0295,
+ "Graphic Group ID", "GraphicGroupID", "UL", "1" },
+ { 0x0070, 0x0306,
+ "Shape Type", "ShapeType", "CS", "1" },
+ { 0x0070, 0x0308,
+ "Registration Sequence", "RegistrationSequence", "SQ", "1" },
+ { 0x0070, 0x0309,
+ "Matrix Registration Sequence", "MatrixRegistrationSequence", "SQ", "1" },
+ { 0x0070, 0x030a,
+ "Matrix Sequence", "MatrixSequence", "SQ", "1" },
+ { 0x0070, 0x030c,
+ "Frame of Reference Transformation Matrix Type", "FrameOfReferenceTransformationMatrixType", "CS", "1" },
+ { 0x0070, 0x030d,
+ "Registration Type Code Sequence", "RegistrationTypeCodeSequence", "SQ", "1" },
+ { 0x0070, 0x030f,
+ "Fiducial Description", "FiducialDescription", "ST", "1" },
+ { 0x0070, 0x0310,
+ "Fiducial Identifier", "FiducialIdentifier", "SH", "1" },
+ { 0x0070, 0x0311,
+ "Fiducial Identifier Code Sequence", "FiducialIdentifierCodeSequence", "SQ", "1" },
+ { 0x0070, 0x0312,
+ "Contour Uncertainty Radius", "ContourUncertaintyRadius", "FD", "1" },
+ { 0x0070, 0x0314,
+ "Used Fiducials Sequence", "UsedFiducialsSequence", "SQ", "1" },
+ { 0x0070, 0x0318,
+ "Graphic Coordinates Data Sequence", "GraphicCoordinatesDataSequence", "SQ", "1" },
+ { 0x0070, 0x031a,
+ "Fiducial UID", "FiducialUID", "UI", "1" },
+ { 0x0070, 0x031c,
+ "Fiducial Set Sequence", "FiducialSetSequence", "SQ", "1" },
+ { 0x0070, 0x031e,
+ "Fiducial Sequence", "FiducialSequence", "SQ", "1" },
+ { 0x0070, 0x0401,
+ "Graphic Layer Recommended Display CIELab Value", "GraphicLayerRecommendedDisplayCIELabValue", "US", "3" },
+ { 0x0070, 0x0402,
+ "Blending Sequence", "BlendingSequence", "SQ", "1" },
+ { 0x0070, 0x0403,
+ "Relative Opacity", "RelativeOpacity", "FL", "1" },
+ { 0x0070, 0x0404,
+ "Referenced Spatial Registration Sequence", "ReferencedSpatialRegistrationSequence", "SQ", "1" },
+ { 0x0070, 0x0405,
+ "Blending Position", "BlendingPosition", "CS", "1" },
+ { 0x0072, 0x0002,
+ "Hanging Protocol Name", "HangingProtocolName", "SH", "1" },
+ { 0x0072, 0x0004,
+ "Hanging Protocol Description", "HangingProtocolDescription", "LO", "1" },
+ { 0x0072, 0x0006,
+ "Hanging Protocol Level", "HangingProtocolLevel", "CS", "1" },
+ { 0x0072, 0x0008,
+ "Hanging Protocol Creator", "HangingProtocolCreator", "LO", "1" },
+ { 0x0072, 0x000a,
+ "Hanging Protocol Creation DateTime", "HangingProtocolCreationDateTime", "DT", "1" },
+ { 0x0072, 0x000c,
+ "Hanging Protocol Definition Sequence", "HangingProtocolDefinitionSequence", "SQ", "1" },
+ { 0x0072, 0x000e,
+ "Hanging Protocol User Identification Code Sequence", "HangingProtocolUserIdentificationCodeSequence", "SQ", "1" },
+ { 0x0072, 0x0010,
+ "Hanging Protocol User Group Name", "HangingProtocolUserGroupName", "LO", "1" },
+ { 0x0072, 0x0012,
+ "Source Hanging Protocol Sequence", "SourceHangingProtocolSequence", "SQ", "1" },
+ { 0x0072, 0x0014,
+ "Number of Priors Referenced", "NumberOfPriorsReferenced", "US", "1" },
+ { 0x0072, 0x0020,
+ "Image Sets Sequence", "ImageSetsSequence", "SQ", "1" },
+ { 0x0072, 0x0022,
+ "Image Set Selector Sequence", "ImageSetSelectorSequence", "SQ", "1" },
+ { 0x0072, 0x0024,
+ "Image Set Selector Usage Flag", "ImageSetSelectorUsageFlag", "CS", "1" },
+ { 0x0072, 0x0026,
+ "Selector Attribute", "SelectorAttribute", "AT", "1" },
+ { 0x0072, 0x0028,
+ "Selector Value Number", "SelectorValueNumber", "US", "1" },
+ { 0x0072, 0x0030,
+ "Time Based Image Sets Sequence", "TimeBasedImageSetsSequence", "SQ", "1" },
+ { 0x0072, 0x0032,
+ "Image Set Number", "ImageSetNumber", "US", "1" },
+ { 0x0072, 0x0034,
+ "Image Set Selector Category", "ImageSetSelectorCategory", "CS", "1" },
+ { 0x0072, 0x0038,
+ "Relative Time", "RelativeTime", "US", "2" },
+ { 0x0072, 0x003a,
+ "Relative Time Units", "RelativeTimeUnits", "CS", "1" },
+ { 0x0072, 0x003c,
+ "Abstract Prior Value", "AbstractPriorValue", "SS", "2" },
+ { 0x0072, 0x003e,
+ "Abstract Prior Code Sequence", "AbstractPriorCodeSequence", "SQ", "1" },
+ { 0x0072, 0x0040,
+ "Image Set Label", "ImageSetLabel", "LO", "1" },
+ { 0x0072, 0x0050,
+ "Selector Attribute VR", "SelectorAttributeVR", "CS", "1" },
+ { 0x0072, 0x0052,
+ "Selector Sequence Pointer", "SelectorSequencePointer", "AT", "1-n" },
+ { 0x0072, 0x0054,
+ "Selector Sequence Pointer Private Creator", "SelectorSequencePointerPrivateCreator", "LO", "1-n" },
+ { 0x0072, 0x0056,
+ "Selector Attribute Private Creator", "SelectorAttributePrivateCreator", "LO", "1" },
+ { 0x0072, 0x0060,
+ "Selector AT Value", "SelectorATValue", "AT", "1-n" },
+ { 0x0072, 0x0062,
+ "Selector CS Value", "SelectorCSValue", "CS", "1-n" },
+ { 0x0072, 0x0064,
+ "Selector IS Value", "SelectorISValue", "IS", "1-n" },
+ { 0x0072, 0x0066,
+ "Selector LO Value", "SelectorLOValue", "LO", "1-n" },
+ { 0x0072, 0x0068,
+ "Selector LT Value", "SelectorLTValue", "LT", "1" },
+ { 0x0072, 0x006a,
+ "Selector PN Value", "SelectorPNValue", "PN", "1-n" },
+ { 0x0072, 0x006c,
+ "Selector SH Value", "SelectorSHValue", "SH", "1-n" },
+ { 0x0072, 0x006e,
+ "Selector ST Value", "SelectorSTValue", "ST", "1" },
+ { 0x0072, 0x0070,
+ "Selector UT Value", "SelectorUTValue", "UT", "1" },
+ { 0x0072, 0x0072,
+ "Selector DS Value", "SelectorDSValue", "DS", "1-n" },
+ { 0x0072, 0x0074,
+ "Selector FD Value", "SelectorFDValue", "FD", "1-n" },
+ { 0x0072, 0x0076,
+ "Selector FL Value", "SelectorFLValue", "FL", "1-n" },
+ { 0x0072, 0x0078,
+ "Selector UL Value", "SelectorULValue", "UL", "1-n" },
+ { 0x0072, 0x007a,
+ "Selector US Value", "SelectorUSValue", "US", "1-n" },
+ { 0x0072, 0x007c,
+ "Selector SL Value", "SelectorSLValue", "SL", "1-n" },
+ { 0x0072, 0x007e,
+ "Selector SS Value", "SelectorSSValue", "SS", "1-n" },
+ { 0x0072, 0x007f,
+ "Selector UI Value", "SelectorUIValue", "UI", "1-n" },
+ { 0x0072, 0x0080,
+ "Selector Code Sequence Value", "SelectorCodeSequenceValue", "SQ", "1" },
+ { 0x0072, 0x0100,
+ "Number of Screens", "NumberOfScreens", "US", "1" },
+ { 0x0072, 0x0102,
+ "Nominal Screen Definition Sequence", "NominalScreenDefinitionSequence", "SQ", "1" },
+ { 0x0072, 0x0104,
+ "Number of Vertical Pixels", "NumberOfVerticalPixels", "US", "1" },
+ { 0x0072, 0x0106,
+ "Number of Horizontal Pixels", "NumberOfHorizontalPixels", "US", "1" },
+ { 0x0072, 0x0108,
+ "Display Environment Spatial Position", "DisplayEnvironmentSpatialPosition", "FD", "4" },
+ { 0x0072, 0x010a,
+ "Screen Minimum Grayscale Bit Depth", "ScreenMinimumGrayscaleBitDepth", "US", "1" },
+ { 0x0072, 0x010c,
+ "Screen Minimum Color Bit Depth", "ScreenMinimumColorBitDepth", "US", "1" },
+ { 0x0072, 0x010e,
+ "Application Maximum Repaint Time", "ApplicationMaximumRepaintTime", "US", "1" },
+ { 0x0072, 0x0200,
+ "Display Sets Sequence", "DisplaySetsSequence", "SQ", "1" },
+ { 0x0072, 0x0202,
+ "Display Set Number", "DisplaySetNumber", "US", "1" },
+ { 0x0072, 0x0203,
+ "Display Set Label", "DisplaySetLabel", "LO", "1" },
+ { 0x0072, 0x0204,
+ "Display Set Presentation Group", "DisplaySetPresentationGroup", "US", "1" },
+ { 0x0072, 0x0206,
+ "Display Set Presentation Group Description", "DisplaySetPresentationGroupDescription", "LO", "1" },
+ { 0x0072, 0x0208,
+ "Partial Data Display Handling", "PartialDataDisplayHandling", "CS", "1" },
+ { 0x0072, 0x0210,
+ "Synchronized Scrolling Sequence", "SynchronizedScrollingSequence", "SQ", "1" },
+ { 0x0072, 0x0212,
+ "Display Set Scrolling Group", "DisplaySetScrollingGroup", "US", "2-n" },
+ { 0x0072, 0x0214,
+ "Navigation Indicator Sequence", "NavigationIndicatorSequence", "SQ", "1" },
+ { 0x0072, 0x0216,
+ "Navigation Display Set", "NavigationDisplaySet", "US", "1" },
+ { 0x0072, 0x0218,
+ "Reference Display Sets", "ReferenceDisplaySets", "US", "1-n" },
+ { 0x0072, 0x0300,
+ "Image Boxes Sequence", "ImageBoxesSequence", "SQ", "1" },
+ { 0x0072, 0x0302,
+ "Image Box Number", "ImageBoxNumber", "US", "1" },
+ { 0x0072, 0x0304,
+ "Image Box Layout Type", "ImageBoxLayoutType", "CS", "1" },
+ { 0x0072, 0x0306,
+ "Image Box Tile Horizontal Dimension", "ImageBoxTileHorizontalDimension", "US", "1" },
+ { 0x0072, 0x0308,
+ "Image Box Tile Vertical Dimension", "ImageBoxTileVerticalDimension", "US", "1" },
+ { 0x0072, 0x0310,
+ "Image Box Scroll Direction", "ImageBoxScrollDirection", "CS", "1" },
+ { 0x0072, 0x0312,
+ "Image Box Small Scroll Type", "ImageBoxSmallScrollType", "CS", "1" },
+ { 0x0072, 0x0314,
+ "Image Box Small Scroll Amount", "ImageBoxSmallScrollAmount", "US", "1" },
+ { 0x0072, 0x0316,
+ "Image Box Large Scroll Type", "ImageBoxLargeScrollType", "CS", "1" },
+ { 0x0072, 0x0318,
+ "Image Box Large Scroll Amount", "ImageBoxLargeScrollAmount", "US", "1" },
+ { 0x0072, 0x0320,
+ "Image Box Overlap Priority", "ImageBoxOverlapPriority", "US", "1" },
+ { 0x0072, 0x0330,
+ "Cine Relative to Real-Time", "CineRelativeToRealTime", "FD", "1" },
+ { 0x0072, 0x0400,
+ "Filter Operations Sequence", "FilterOperationsSequence", "SQ", "1" },
+ { 0x0072, 0x0402,
+ "Filter-by Category", "FilterByCategory", "CS", "1" },
+ { 0x0072, 0x0404,
+ "Filter-by Attribute Presence", "FilterByAttributePresence", "CS", "1" },
+ { 0x0072, 0x0406,
+ "Filter-by Operator", "FilterByOperator", "CS", "1" },
+ { 0x0072, 0x0420,
+ "Structured Display Background CIELab Value", "StructuredDisplayBackgroundCIELabValue", "US", "3" },
+ { 0x0072, 0x0421,
+ "Empty Image Box CIELab Value", "EmptyImageBoxCIELabValue", "US", "3" },
+ { 0x0072, 0x0422,
+ "Structured Display Image Box Sequence", "StructuredDisplayImageBoxSequence", "SQ", "1" },
+ { 0x0072, 0x0424,
+ "Structured Display Text Box Sequence", "StructuredDisplayTextBoxSequence", "SQ", "1" },
+ { 0x0072, 0x0427,
+ "Referenced First Frame Sequence", "ReferencedFirstFrameSequence", "SQ", "1" },
+ { 0x0072, 0x0430,
+ "Image Box Synchronization Sequence", "ImageBoxSynchronizationSequence", "SQ", "1" },
+ { 0x0072, 0x0432,
+ "Synchronized Image Box List", "SynchronizedImageBoxList", "US", "2-n" },
+ { 0x0072, 0x0434,
+ "Type of Synchronization", "TypeOfSynchronization", "CS", "1" },
+ { 0x0072, 0x0500,
+ "Blending Operation Type", "BlendingOperationType", "CS", "1" },
+ { 0x0072, 0x0510,
+ "Reformatting Operation Type", "ReformattingOperationType", "CS", "1" },
+ { 0x0072, 0x0512,
+ "Reformatting Thickness", "ReformattingThickness", "FD", "1" },
+ { 0x0072, 0x0514,
+ "Reformatting Interval", "ReformattingInterval", "FD", "1" },
+ { 0x0072, 0x0516,
+ "Reformatting Operation Initial View Direction", "ReformattingOperationInitialViewDirection", "CS", "1" },
+ { 0x0072, 0x0520,
+ "3D Rendering Type", "ThreeDRenderingType", "CS", "1-n" },
+ { 0x0072, 0x0600,
+ "Sorting Operations Sequence", "SortingOperationsSequence", "SQ", "1" },
+ { 0x0072, 0x0602,
+ "Sort-by Category", "SortByCategory", "CS", "1" },
+ { 0x0072, 0x0604,
+ "Sorting Direction", "SortingDirection", "CS", "1" },
+ { 0x0072, 0x0700,
+ "Display Set Patient Orientation", "DisplaySetPatientOrientation", "CS", "2" },
+ { 0x0072, 0x0702,
+ "VOI Type", "VOIType", "CS", "1" },
+ { 0x0072, 0x0704,
+ "Pseudo-Color Type", "PseudoColorType", "CS", "1" },
+ { 0x0072, 0x0705,
+ "Pseudo-Color Palette Instance Reference Sequence", "PseudoColorPaletteInstanceReferenceSequence", "SQ", "1" },
+ { 0x0072, 0x0706,
+ "Show Grayscale Inverted", "ShowGrayscaleInverted", "CS", "1" },
+ { 0x0072, 0x0710,
+ "Show Image True Size Flag", "ShowImageTrueSizeFlag", "CS", "1" },
+ { 0x0072, 0x0712,
+ "Show Graphic Annotation Flag", "ShowGraphicAnnotationFlag", "CS", "1" },
+ { 0x0072, 0x0714,
+ "Show Patient Demographics Flag", "ShowPatientDemographicsFlag", "CS", "1" },
+ { 0x0072, 0x0716,
+ "Show Acquisition Techniques Flag", "ShowAcquisitionTechniquesFlag", "CS", "1" },
+ { 0x0072, 0x0717,
+ "Display Set Horizontal Justification", "DisplaySetHorizontalJustification", "CS", "1" },
+ { 0x0072, 0x0718,
+ "Display Set Vertical Justification", "DisplaySetVerticalJustification", "CS", "1" },
+ { 0x0074, 0x0120,
+ "Continuation Start Meterset", "ContinuationStartMeterset", "FD", "1" },
+ { 0x0074, 0x0121,
+ "Continuation End Meterset", "ContinuationEndMeterset", "FD", "1" },
+ { 0x0074, 0x1000,
+ "Procedure Step State", "ProcedureStepState", "CS", "1" },
+ { 0x0074, 0x1002,
+ "Procedure Step Progress Information Sequence", "ProcedureStepProgressInformationSequence", "SQ", "1" },
+ { 0x0074, 0x1004,
+ "Procedure Step Progress", "ProcedureStepProgress", "DS", "1" },
+ { 0x0074, 0x1006,
+ "Procedure Step Progress Description", "ProcedureStepProgressDescription", "ST", "1" },
+ { 0x0074, 0x1008,
+ "Procedure Step Communications URI Sequence", "ProcedureStepCommunicationsURISequence", "SQ", "1" },
+ { 0x0074, 0x100a,
+ "Contact URI", "ContactURI", "UR", "1" },
+ { 0x0074, 0x100c,
+ "Contact Display Name", "ContactDisplayName", "LO", "1" },
+ { 0x0074, 0x100e,
+ "Procedure Step Discontinuation Reason Code Sequence", "ProcedureStepDiscontinuationReasonCodeSequence", "SQ", "1" },
+ { 0x0074, 0x1020,
+ "Beam Task Sequence", "BeamTaskSequence", "SQ", "1" },
+ { 0x0074, 0x1022,
+ "Beam Task Type", "BeamTaskType", "CS", "1" },
+ { 0x0074, 0x1024,
+ "Beam Order Index (Trial)", "BeamOrderIndexTrial", "IS", "1" },
+ { 0x0074, 0x1025,
+ "Autosequence Flag", "AutosequenceFlag", "CS", "1" },
+ { 0x0074, 0x1026,
+ "Table Top Vertical Adjusted Position", "TableTopVerticalAdjustedPosition", "FD", "1" },
+ { 0x0074, 0x1027,
+ "Table Top Longitudinal Adjusted Position", "TableTopLongitudinalAdjustedPosition", "FD", "1" },
+ { 0x0074, 0x1028,
+ "Table Top Lateral Adjusted Position", "TableTopLateralAdjustedPosition", "FD", "1" },
+ { 0x0074, 0x102a,
+ "Patient Support Adjusted Angle", "PatientSupportAdjustedAngle", "FD", "1" },
+ { 0x0074, 0x102b,
+ "Table Top Eccentric Adjusted Angle", "TableTopEccentricAdjustedAngle", "FD", "1" },
+ { 0x0074, 0x102c,
+ "Table Top Pitch Adjusted Angle", "TableTopPitchAdjustedAngle", "FD", "1" },
+ { 0x0074, 0x102d,
+ "Table Top Roll Adjusted Angle", "TableTopRollAdjustedAngle", "FD", "1" },
+ { 0x0074, 0x1030,
+ "Delivery Verification Image Sequence", "DeliveryVerificationImageSequence", "SQ", "1" },
+ { 0x0074, 0x1032,
+ "Verification Image Timing", "VerificationImageTiming", "CS", "1" },
+ { 0x0074, 0x1034,
+ "Double Exposure Flag", "DoubleExposureFlag", "CS", "1" },
+ { 0x0074, 0x1036,
+ "Double Exposure Ordering", "DoubleExposureOrdering", "CS", "1" },
+ { 0x0074, 0x1038,
+ "Double Exposure Meterset (Trial)", "DoubleExposureMetersetTrial", "DS", "1" },
+ { 0x0074, 0x103a,
+ "Double Exposure Field Delta (Trial)", "DoubleExposureFieldDeltaTrial", "DS", "4" },
+ { 0x0074, 0x1040,
+ "Related Reference RT Image Sequence", "RelatedReferenceRTImageSequence", "SQ", "1" },
+ { 0x0074, 0x1042,
+ "General Machine Verification Sequence", "GeneralMachineVerificationSequence", "SQ", "1" },
+ { 0x0074, 0x1044,
+ "Conventional Machine Verification Sequence", "ConventionalMachineVerificationSequence", "SQ", "1" },
+ { 0x0074, 0x1046,
+ "Ion Machine Verification Sequence", "IonMachineVerificationSequence", "SQ", "1" },
+ { 0x0074, 0x1048,
+ "Failed Attributes Sequence", "FailedAttributesSequence", "SQ", "1" },
+ { 0x0074, 0x104a,
+ "Overridden Attributes Sequence", "OverriddenAttributesSequence", "SQ", "1" },
+ { 0x0074, 0x104c,
+ "Conventional Control Point Verification Sequence", "ConventionalControlPointVerificationSequence", "SQ", "1" },
+ { 0x0074, 0x104e,
+ "Ion Control Point Verification Sequence", "IonControlPointVerificationSequence", "SQ", "1" },
+ { 0x0074, 0x1050,
+ "Attribute Occurrence Sequence", "AttributeOccurrenceSequence", "SQ", "1" },
+ { 0x0074, 0x1052,
+ "Attribute Occurrence Pointer", "AttributeOccurrencePointer", "AT", "1" },
+ { 0x0074, 0x1054,
+ "Attribute Item Selector", "AttributeItemSelector", "UL", "1" },
+ { 0x0074, 0x1056,
+ "Attribute Occurrence Private Creator", "AttributeOccurrencePrivateCreator", "LO", "1" },
+ { 0x0074, 0x1057,
+ "Selector Sequence Pointer Items", "SelectorSequencePointerItems", "IS", "1-n" },
+ { 0x0074, 0x1200,
+ "Scheduled Procedure Step Priority", "ScheduledProcedureStepPriority", "CS", "1" },
+ { 0x0074, 0x1202,
+ "Worklist Label", "WorklistLabel", "LO", "1" },
+ { 0x0074, 0x1204,
+ "Procedure Step Label", "ProcedureStepLabel", "LO", "1" },
+ { 0x0074, 0x1210,
+ "Scheduled Processing Parameters Sequence", "ScheduledProcessingParametersSequence", "SQ", "1" },
+ { 0x0074, 0x1212,
+ "Performed Processing Parameters Sequence", "PerformedProcessingParametersSequence", "SQ", "1" },
+ { 0x0074, 0x1216,
+ "Unified Procedure Step Performed Procedure Sequence", "UnifiedProcedureStepPerformedProcedureSequence", "SQ", "1" },
+ { 0x0074, 0x1220,
+ "Related Procedure Step Sequence", "RelatedProcedureStepSequence", "SQ", "1" },
+ { 0x0074, 0x1222,
+ "Procedure Step Relationship Type", "ProcedureStepRelationshipType", "LO", "1" },
+ { 0x0074, 0x1224,
+ "Replaced Procedure Step Sequence", "ReplacedProcedureStepSequence", "SQ", "1" },
+ { 0x0074, 0x1230,
+ "Deletion Lock", "DeletionLock", "LO", "1" },
+ { 0x0074, 0x1234,
+ "Receiving AE", "ReceivingAE", "AE", "1" },
+ { 0x0074, 0x1236,
+ "Requesting AE", "RequestingAE", "AE", "1" },
+ { 0x0074, 0x1238,
+ "Reason for Cancellation", "ReasonForCancellation", "LT", "1" },
+ { 0x0074, 0x1242,
+ "SCP Status", "SCPStatus", "CS", "1" },
+ { 0x0074, 0x1244,
+ "Subscription List Status", "SubscriptionListStatus", "CS", "1" },
+ { 0x0074, 0x1246,
+ "Unified Procedure Step List Status", "UnifiedProcedureStepListStatus", "CS", "1" },
+ { 0x0074, 0x1324,
+ "Beam Order Index", "BeamOrderIndex", "UL", "1" },
+ { 0x0074, 0x1338,
+ "Double Exposure Meterset", "DoubleExposureMeterset", "FD", "1" },
+ { 0x0074, 0x133a,
+ "Double Exposure Field Delta", "DoubleExposureFieldDelta", "FD", "4" },
+ { 0x0076, 0x0001,
+ "Implant Assembly Template Name", "ImplantAssemblyTemplateName", "LO", "1" },
+ { 0x0076, 0x0003,
+ "Implant Assembly Template Issuer", "ImplantAssemblyTemplateIssuer", "LO", "1" },
+ { 0x0076, 0x0006,
+ "Implant Assembly Template Version", "ImplantAssemblyTemplateVersion", "LO", "1" },
+ { 0x0076, 0x0008,
+ "Replaced Implant Assembly Template Sequence", "ReplacedImplantAssemblyTemplateSequence", "SQ", "1" },
+ { 0x0076, 0x000a,
+ "Implant Assembly Template Type", "ImplantAssemblyTemplateType", "CS", "1" },
+ { 0x0076, 0x000c,
+ "Original Implant Assembly Template Sequence", "OriginalImplantAssemblyTemplateSequence", "SQ", "1" },
+ { 0x0076, 0x000e,
+ "Derivation Implant Assembly Template Sequence", "DerivationImplantAssemblyTemplateSequence", "SQ", "1" },
+ { 0x0076, 0x0010,
+ "Implant Assembly Template Target Anatomy Sequence", "ImplantAssemblyTemplateTargetAnatomySequence", "SQ", "1" },
+ { 0x0076, 0x0020,
+ "Procedure Type Code Sequence", "ProcedureTypeCodeSequence", "SQ", "1" },
+ { 0x0076, 0x0030,
+ "Surgical Technique", "SurgicalTechnique", "LO", "1" },
+ { 0x0076, 0x0032,
+ "Component Types Sequence", "ComponentTypesSequence", "SQ", "1" },
+ { 0x0076, 0x0034,
+ "Component Type Code Sequence", "ComponentTypeCodeSequence", "CS", "1" },
+ { 0x0076, 0x0036,
+ "Exclusive Component Type", "ExclusiveComponentType", "CS", "1" },
+ { 0x0076, 0x0038,
+ "Mandatory Component Type", "MandatoryComponentType", "CS", "1" },
+ { 0x0076, 0x0040,
+ "Component Sequence", "ComponentSequence", "SQ", "1" },
+ { 0x0076, 0x0055,
+ "Component ID", "ComponentID", "US", "1" },
+ { 0x0076, 0x0060,
+ "Component Assembly Sequence", "ComponentAssemblySequence", "SQ", "1" },
+ { 0x0076, 0x0070,
+ "Component 1 Referenced ID", "Component1ReferencedID", "US", "1" },
+ { 0x0076, 0x0080,
+ "Component 1 Referenced Mating Feature Set ID", "Component1ReferencedMatingFeatureSetID", "US", "1" },
+ { 0x0076, 0x0090,
+ "Component 1 Referenced Mating Feature ID", "Component1ReferencedMatingFeatureID", "US", "1" },
+ { 0x0076, 0x00a0,
+ "Component 2 Referenced ID", "Component2ReferencedID", "US", "1" },
+ { 0x0076, 0x00b0,
+ "Component 2 Referenced Mating Feature Set ID", "Component2ReferencedMatingFeatureSetID", "US", "1" },
+ { 0x0076, 0x00c0,
+ "Component 2 Referenced Mating Feature ID", "Component2ReferencedMatingFeatureID", "US", "1" },
+ { 0x0078, 0x0001,
+ "Implant Template Group Name", "ImplantTemplateGroupName", "LO", "1" },
+ { 0x0078, 0x0010,
+ "Implant Template Group Description", "ImplantTemplateGroupDescription", "ST", "1" },
+ { 0x0078, 0x0020,
+ "Implant Template Group Issuer", "ImplantTemplateGroupIssuer", "LO", "1" },
+ { 0x0078, 0x0024,
+ "Implant Template Group Version", "ImplantTemplateGroupVersion", "LO", "1" },
+ { 0x0078, 0x0026,
+ "Replaced Implant Template Group Sequence", "ReplacedImplantTemplateGroupSequence", "SQ", "1" },
+ { 0x0078, 0x0028,
+ "Implant Template Group Target Anatomy Sequence", "ImplantTemplateGroupTargetAnatomySequence", "SQ", "1" },
+ { 0x0078, 0x002a,
+ "Implant Template Group Members Sequence", "ImplantTemplateGroupMembersSequence", "SQ", "1" },
+ { 0x0078, 0x002e,
+ "Implant Template Group Member ID", "ImplantTemplateGroupMemberID", "US", "1" },
+ { 0x0078, 0x0050,
+ "3D Implant Template Group Member Matching Point", "ThreeDImplantTemplateGroupMemberMatchingPoint", "FD", "3" },
+ { 0x0078, 0x0060,
+ "3D Implant Template Group Member Matching Axes", "ThreeDImplantTemplateGroupMemberMatchingAxes", "FD", "9" },
+ { 0x0078, 0x0070,
+ "Implant Template Group Member Matching 2D Coordinates Sequence", "ImplantTemplateGroupMemberMatching2DCoordinatesSequence", "SQ", "1" },
+ { 0x0078, 0x0090,
+ "2D Implant Template Group Member Matching Point", "TwoDImplantTemplateGroupMemberMatchingPoint", "FD", "2" },
+ { 0x0078, 0x00a0,
+ "2D Implant Template Group Member Matching Axes", "TwoDImplantTemplateGroupMemberMatchingAxes", "FD", "4" },
+ { 0x0078, 0x00b0,
+ "Implant Template Group Variation Dimension Sequence", "ImplantTemplateGroupVariationDimensionSequence", "SQ", "1" },
+ { 0x0078, 0x00b2,
+ "Implant Template Group Variation Dimension Name", "ImplantTemplateGroupVariationDimensionName", "LO", "1" },
+ { 0x0078, 0x00b4,
+ "Implant Template Group Variation Dimension Rank Sequence", "ImplantTemplateGroupVariationDimensionRankSequence", "SQ", "1" },
+ { 0x0078, 0x00b6,
+ "Referenced Implant Template Group Member ID", "ReferencedImplantTemplateGroupMemberID", "US", "1" },
+ { 0x0078, 0x00b8,
+ "Implant Template Group Variation Dimension Rank", "ImplantTemplateGroupVariationDimensionRank", "US", "1" },
+ { 0x0080, 0x0001,
+ "Surface Scan Acquisition Type Code Sequence", "SurfaceScanAcquisitionTypeCodeSequence", "SQ", "1" },
+ { 0x0080, 0x0002,
+ "Surface Scan Mode Code Sequence", "SurfaceScanModeCodeSequence", "SQ", "1" },
+ { 0x0080, 0x0003,
+ "Registration Method Code Sequence", "RegistrationMethodCodeSequence", "SQ", "1" },
+ { 0x0080, 0x0004,
+ "Shot Duration Time", "ShotDurationTime", "FD", "1" },
+ { 0x0080, 0x0005,
+ "Shot Offset Time", "ShotOffsetTime", "FD", "1" },
+ { 0x0080, 0x0006,
+ "Surface Point Presentation Value Data", "SurfacePointPresentationValueData", "US", "1-n" },
+ { 0x0080, 0x0007,
+ "Surface Point Color CIELab Value Data", "SurfacePointColorCIELabValueData", "US", "3-3n" },
+ { 0x0080, 0x0008,
+ "UV Mapping Sequence", "UVMappingSequence", "SQ", "1" },
+ { 0x0080, 0x0009,
+ "Texture Label", "TextureLabel", "SH", "1" },
+ { 0x0080, 0x0010,
+ "U Value Data", "UValueData", "OF", "1-n" },
+ { 0x0080, 0x0011,
+ "V Value Data", "VValueData", "OF", "1-n" },
+ { 0x0080, 0x0012,
+ "Referenced Texture Sequence", "ReferencedTextureSequence", "SQ", "1" },
+ { 0x0080, 0x0013,
+ "Referenced Surface Data Sequence", "ReferencedSurfaceDataSequence", "SQ", "1" },
+ { 0x0088, 0x0130,
+ "Storage Media File-set ID", "StorageMediaFileSetID", "SH", "1" },
+ { 0x0088, 0x0140,
+ "Storage Media File-set UID", "StorageMediaFileSetUID", "UI", "1" },
+ { 0x0088, 0x0200,
+ "Icon Image Sequence", "IconImageSequence", "SQ", "1" },
+ { 0x0088, 0x0904,
+ "Topic Title", "TopicTitle", "LO", "1" },
+ { 0x0088, 0x0906,
+ "Topic Subject", "TopicSubject", "ST", "1" },
+ { 0x0088, 0x0910,
+ "Topic Author", "TopicAuthor", "LO", "1" },
+ { 0x0088, 0x0912,
+ "Topic Keywords", "TopicKeywords", "LO", "1-32" },
+ { 0x0100, 0x0410,
+ "SOP Instance Status", "SOPInstanceStatus", "CS", "1" },
+ { 0x0100, 0x0420,
+ "SOP Authorization DateTime", "SOPAuthorizationDateTime", "DT", "1" },
+ { 0x0100, 0x0424,
+ "SOP Authorization Comment", "SOPAuthorizationComment", "LT", "1" },
+ { 0x0100, 0x0426,
+ "Authorization Equipment Certification Number", "AuthorizationEquipmentCertificationNumber", "LO", "1" },
+ { 0x0400, 0x0005,
+ "MAC ID Number", "MACIDNumber", "US", "1" },
+ { 0x0400, 0x0010,
+ "MAC Calculation Transfer Syntax UID", "MACCalculationTransferSyntaxUID", "UI", "1" },
+ { 0x0400, 0x0015,
+ "MAC Algorithm", "MACAlgorithm", "CS", "1" },
+ { 0x0400, 0x0020,
+ "Data Elements Signed", "DataElementsSigned", "AT", "1-n" },
+ { 0x0400, 0x0100,
+ "Digital Signature UID", "DigitalSignatureUID", "UI", "1" },
+ { 0x0400, 0x0105,
+ "Digital Signature DateTime", "DigitalSignatureDateTime", "DT", "1" },
+ { 0x0400, 0x0110,
+ "Certificate Type", "CertificateType", "CS", "1" },
+ { 0x0400, 0x0115,
+ "Certificate of Signer", "CertificateOfSigner", "OB", "1" },
+ { 0x0400, 0x0120,
+ "Signature", "Signature", "OB", "1" },
+ { 0x0400, 0x0305,
+ "Certified Timestamp Type", "CertifiedTimestampType", "CS", "1" },
+ { 0x0400, 0x0310,
+ "Certified Timestamp", "CertifiedTimestamp", "OB", "1" },
+ { 0x0400, 0x0401,
+ "Digital Signature Purpose Code Sequence", "DigitalSignaturePurposeCodeSequence", "SQ", "1" },
+ { 0x0400, 0x0402,
+ "Referenced Digital Signature Sequence", "ReferencedDigitalSignatureSequence", "SQ", "1" },
+ { 0x0400, 0x0403,
+ "Referenced SOP Instance MAC Sequence", "ReferencedSOPInstanceMACSequence", "SQ", "1" },
+ { 0x0400, 0x0404,
+ "MAC", "MAC", "OB", "1" },
+ { 0x0400, 0x0500,
+ "Encrypted Attributes Sequence", "EncryptedAttributesSequence", "SQ", "1" },
+ { 0x0400, 0x0510,
+ "Encrypted Content Transfer Syntax UID", "EncryptedContentTransferSyntaxUID", "UI", "1" },
+ { 0x0400, 0x0520,
+ "Encrypted Content", "EncryptedContent", "OB", "1" },
+ { 0x0400, 0x0550,
+ "Modified Attributes Sequence", "ModifiedAttributesSequence", "SQ", "1" },
+ { 0x0400, 0x0561,
+ "Original Attributes Sequence", "OriginalAttributesSequence", "SQ", "1" },
+ { 0x0400, 0x0562,
+ "Attribute Modification DateTime", "AttributeModificationDateTime", "DT", "1" },
+ { 0x0400, 0x0563,
+ "Modifying System", "ModifyingSystem", "LO", "1" },
+ { 0x0400, 0x0564,
+ "Source of Previous Values", "SourceOfPreviousValues", "LO", "1" },
+ { 0x0400, 0x0565,
+ "Reason for the Attribute Modification", "ReasonForTheAttributeModification", "CS", "1" },
+ { 0x2000, 0x0010,
+ "Number of Copies", "NumberOfCopies", "IS", "1" },
+ { 0x2000, 0x001e,
+ "Printer Configuration Sequence", "PrinterConfigurationSequence", "SQ", "1" },
+ { 0x2000, 0x0020,
+ "Print Priority", "PrintPriority", "CS", "1" },
+ { 0x2000, 0x0030,
+ "Medium Type", "MediumType", "CS", "1" },
+ { 0x2000, 0x0040,
+ "Film Destination", "FilmDestination", "CS", "1" },
+ { 0x2000, 0x0050,
+ "Film Session Label", "FilmSessionLabel", "LO", "1" },
+ { 0x2000, 0x0060,
+ "Memory Allocation", "MemoryAllocation", "IS", "1" },
+ { 0x2000, 0x0061,
+ "Maximum Memory Allocation", "MaximumMemoryAllocation", "IS", "1" },
+ { 0x2000, 0x0062,
+ "Color Image Printing Flag", "ColorImagePrintingFlag", "CS", "1" },
+ { 0x2000, 0x0063,
+ "Collation Flag", "CollationFlag", "CS", "1" },
+ { 0x2000, 0x0065,
+ "Annotation Flag", "AnnotationFlag", "CS", "1" },
+ { 0x2000, 0x0067,
+ "Image Overlay Flag", "ImageOverlayFlag", "CS", "1" },
+ { 0x2000, 0x0069,
+ "Presentation LUT Flag", "PresentationLUTFlag", "CS", "1" },
+ { 0x2000, 0x006a,
+ "Image Box Presentation LUT Flag", "ImageBoxPresentationLUTFlag", "CS", "1" },
+ { 0x2000, 0x00a0,
+ "Memory Bit Depth", "MemoryBitDepth", "US", "1" },
+ { 0x2000, 0x00a1,
+ "Printing Bit Depth", "PrintingBitDepth", "US", "1" },
+ { 0x2000, 0x00a2,
+ "Media Installed Sequence", "MediaInstalledSequence", "SQ", "1" },
+ { 0x2000, 0x00a4,
+ "Other Media Available Sequence", "OtherMediaAvailableSequence", "SQ", "1" },
+ { 0x2000, 0x00a8,
+ "Supported Image Display Formats Sequence", "SupportedImageDisplayFormatsSequence", "SQ", "1" },
+ { 0x2000, 0x0500,
+ "Referenced Film Box Sequence", "ReferencedFilmBoxSequence", "SQ", "1" },
+ { 0x2000, 0x0510,
+ "Referenced Stored Print Sequence", "ReferencedStoredPrintSequence", "SQ", "1" },
+ { 0x2010, 0x0010,
+ "Image Display Format", "ImageDisplayFormat", "ST", "1" },
+ { 0x2010, 0x0030,
+ "Annotation Display Format ID", "AnnotationDisplayFormatID", "CS", "1" },
+ { 0x2010, 0x0040,
+ "Film Orientation", "FilmOrientation", "CS", "1" },
+ { 0x2010, 0x0050,
+ "Film Size ID", "FilmSizeID", "CS", "1" },
+ { 0x2010, 0x0052,
+ "Printer Resolution ID", "PrinterResolutionID", "CS", "1" },
+ { 0x2010, 0x0054,
+ "Default Printer Resolution ID", "DefaultPrinterResolutionID", "CS", "1" },
+ { 0x2010, 0x0060,
+ "Magnification Type", "MagnificationType", "CS", "1" },
+ { 0x2010, 0x0080,
+ "Smoothing Type", "SmoothingType", "CS", "1" },
+ { 0x2010, 0x00a6,
+ "Default Magnification Type", "DefaultMagnificationType", "CS", "1" },
+ { 0x2010, 0x00a7,
+ "Other Magnification Types Available", "OtherMagnificationTypesAvailable", "CS", "1-n" },
+ { 0x2010, 0x00a8,
+ "Default Smoothing Type", "DefaultSmoothingType", "CS", "1" },
+ { 0x2010, 0x00a9,
+ "Other Smoothing Types Available", "OtherSmoothingTypesAvailable", "CS", "1-n" },
+ { 0x2010, 0x0100,
+ "Border Density", "BorderDensity", "CS", "1" },
+ { 0x2010, 0x0110,
+ "Empty Image Density", "EmptyImageDensity", "CS", "1" },
+ { 0x2010, 0x0120,
+ "Min Density", "MinDensity", "US", "1" },
+ { 0x2010, 0x0130,
+ "Max Density", "MaxDensity", "US", "1" },
+ { 0x2010, 0x0140,
+ "Trim", "Trim", "CS", "1" },
+ { 0x2010, 0x0150,
+ "Configuration Information", "ConfigurationInformation", "ST", "1" },
+ { 0x2010, 0x0152,
+ "Configuration Information Description", "ConfigurationInformationDescription", "LT", "1" },
+ { 0x2010, 0x0154,
+ "Maximum Collated Films", "MaximumCollatedFilms", "IS", "1" },
+ { 0x2010, 0x015e,
+ "Illumination", "Illumination", "US", "1" },
+ { 0x2010, 0x0160,
+ "Reflected Ambient Light", "ReflectedAmbientLight", "US", "1" },
+ { 0x2010, 0x0376,
+ "Printer Pixel Spacing", "PrinterPixelSpacing", "DS", "2" },
+ { 0x2010, 0x0500,
+ "Referenced Film Session Sequence", "ReferencedFilmSessionSequence", "SQ", "1" },
+ { 0x2010, 0x0510,
+ "Referenced Image Box Sequence", "ReferencedImageBoxSequence", "SQ", "1" },
+ { 0x2010, 0x0520,
+ "Referenced Basic Annotation Box Sequence", "ReferencedBasicAnnotationBoxSequence", "SQ", "1" },
+ { 0x2020, 0x0010,
+ "Image Box Position", "ImageBoxPosition", "US", "1" },
+ { 0x2020, 0x0020,
+ "Polarity", "Polarity", "CS", "1" },
+ { 0x2020, 0x0030,
+ "Requested Image Size", "RequestedImageSize", "DS", "1" },
+ { 0x2020, 0x0040,
+ "Requested Decimate/Crop Behavior", "RequestedDecimateCropBehavior", "CS", "1" },
+ { 0x2020, 0x0050,
+ "Requested Resolution ID", "RequestedResolutionID", "CS", "1" },
+ { 0x2020, 0x00a0,
+ "Requested Image Size Flag", "RequestedImageSizeFlag", "CS", "1" },
+ { 0x2020, 0x00a2,
+ "Decimate/Crop Result", "DecimateCropResult", "CS", "1" },
+ { 0x2020, 0x0110,
+ "Basic Grayscale Image Sequence", "BasicGrayscaleImageSequence", "SQ", "1" },
+ { 0x2020, 0x0111,
+ "Basic Color Image Sequence", "BasicColorImageSequence", "SQ", "1" },
+ { 0x2020, 0x0130,
+ "Referenced Image Overlay Box Sequence", "ReferencedImageOverlayBoxSequence", "SQ", "1" },
+ { 0x2020, 0x0140,
+ "Referenced VOI LUT Box Sequence", "ReferencedVOILUTBoxSequence", "SQ", "1" },
+ { 0x2030, 0x0010,
+ "Annotation Position", "AnnotationPosition", "US", "1" },
+ { 0x2030, 0x0020,
+ "Text String", "TextString", "LO", "1" },
+ { 0x2040, 0x0010,
+ "Referenced Overlay Plane Sequence", "ReferencedOverlayPlaneSequence", "SQ", "1" },
+ { 0x2040, 0x0011,
+ "Referenced Overlay Plane Groups", "ReferencedOverlayPlaneGroups", "US", "1-99" },
+ { 0x2040, 0x0020,
+ "Overlay Pixel Data Sequence", "OverlayPixelDataSequence", "SQ", "1" },
+ { 0x2040, 0x0060,
+ "Overlay Magnification Type", "OverlayMagnificationType", "CS", "1" },
+ { 0x2040, 0x0070,
+ "Overlay Smoothing Type", "OverlaySmoothingType", "CS", "1" },
+ { 0x2040, 0x0072,
+ "Overlay or Image Magnification", "OverlayOrImageMagnification", "CS", "1" },
+ { 0x2040, 0x0074,
+ "Magnify to Number of Columns", "MagnifyToNumberOfColumns", "US", "1" },
+ { 0x2040, 0x0080,
+ "Overlay Foreground Density", "OverlayForegroundDensity", "CS", "1" },
+ { 0x2040, 0x0082,
+ "Overlay Background Density", "OverlayBackgroundDensity", "CS", "1" },
+ { 0x2040, 0x0090,
+ "Overlay Mode", "OverlayMode", "CS", "1" },
+ { 0x2040, 0x0100,
+ "Threshold Density", "ThresholdDensity", "CS", "1" },
+ { 0x2040, 0x0500,
+ "Referenced Image Box Sequence (Retired)", "ReferencedImageBoxSequenceRetired", "SQ", "1" },
+ { 0x2050, 0x0010,
+ "Presentation LUT Sequence", "PresentationLUTSequence", "SQ", "1" },
+ { 0x2050, 0x0020,
+ "Presentation LUT Shape", "PresentationLUTShape", "CS", "1" },
+ { 0x2050, 0x0500,
+ "Referenced Presentation LUT Sequence", "ReferencedPresentationLUTSequence", "SQ", "1" },
+ { 0x2100, 0x0010,
+ "Print Job ID", "PrintJobID", "SH", "1" },
+ { 0x2100, 0x0020,
+ "Execution Status", "ExecutionStatus", "CS", "1" },
+ { 0x2100, 0x0030,
+ "Execution Status Info", "ExecutionStatusInfo", "CS", "1" },
+ { 0x2100, 0x0040,
+ "Creation Date", "CreationDate", "DA", "1" },
+ { 0x2100, 0x0050,
+ "Creation Time", "CreationTime", "TM", "1" },
+ { 0x2100, 0x0070,
+ "Originator", "Originator", "AE", "1" },
+ { 0x2100, 0x0140,
+ "Destination AE", "DestinationAE", "AE", "1" },
+ { 0x2100, 0x0160,
+ "Owner ID", "OwnerID", "SH", "1" },
+ { 0x2100, 0x0170,
+ "Number of Films", "NumberOfFilms", "IS", "1" },
+ { 0x2100, 0x0500,
+ "Referenced Print Job Sequence (Pull Stored Print)", "ReferencedPrintJobSequencePullStoredPrint", "SQ", "1" },
+ { 0x2110, 0x0010,
+ "Printer Status", "PrinterStatus", "CS", "1" },
+ { 0x2110, 0x0020,
+ "Printer Status Info", "PrinterStatusInfo", "CS", "1" },
+ { 0x2110, 0x0030,
+ "Printer Name", "PrinterName", "LO", "1" },
+ { 0x2110, 0x0099,
+ "Print Queue ID", "PrintQueueID", "SH", "1" },
+ { 0x2120, 0x0010,
+ "Queue Status", "QueueStatus", "CS", "1" },
+ { 0x2120, 0x0050,
+ "Print Job Description Sequence", "PrintJobDescriptionSequence", "SQ", "1" },
+ { 0x2120, 0x0070,
+ "Referenced Print Job Sequence", "ReferencedPrintJobSequence", "SQ", "1" },
+ { 0x2130, 0x0010,
+ "Print Management Capabilities Sequence", "PrintManagementCapabilitiesSequence", "SQ", "1" },
+ { 0x2130, 0x0015,
+ "Printer Characteristics Sequence", "PrinterCharacteristicsSequence", "SQ", "1" },
+ { 0x2130, 0x0030,
+ "Film Box Content Sequence", "FilmBoxContentSequence", "SQ", "1" },
+ { 0x2130, 0x0040,
+ "Image Box Content Sequence", "ImageBoxContentSequence", "SQ", "1" },
+ { 0x2130, 0x0050,
+ "Annotation Content Sequence", "AnnotationContentSequence", "SQ", "1" },
+ { 0x2130, 0x0060,
+ "Image Overlay Box Content Sequence", "ImageOverlayBoxContentSequence", "SQ", "1" },
+ { 0x2130, 0x0080,
+ "Presentation LUT Content Sequence", "PresentationLUTContentSequence", "SQ", "1" },
+ { 0x2130, 0x00a0,
+ "Proposed Study Sequence", "ProposedStudySequence", "SQ", "1" },
+ { 0x2130, 0x00c0,
+ "Original Image Sequence", "OriginalImageSequence", "SQ", "1" },
+ { 0x2200, 0x0001,
+ "Label Using Information Extracted From Instances", "LabelUsingInformationExtractedFromInstances", "CS", "1" },
+ { 0x2200, 0x0002,
+ "Label Text", "LabelText", "UT", "1" },
+ { 0x2200, 0x0003,
+ "Label Style Selection", "LabelStyleSelection", "CS", "1" },
+ { 0x2200, 0x0004,
+ "Media Disposition", "MediaDisposition", "LT", "1" },
+ { 0x2200, 0x0005,
+ "Barcode Value", "BarcodeValue", "LT", "1" },
+ { 0x2200, 0x0006,
+ "Barcode Symbology", "BarcodeSymbology", "CS", "1" },
+ { 0x2200, 0x0007,
+ "Allow Media Splitting", "AllowMediaSplitting", "CS", "1" },
+ { 0x2200, 0x0008,
+ "Include Non-DICOM Objects", "IncludeNonDICOMObjects", "CS", "1" },
+ { 0x2200, 0x0009,
+ "Include Display Application", "IncludeDisplayApplication", "CS", "1" },
+ { 0x2200, 0x000a,
+ "Preserve Composite Instances After Media Creation", "PreserveCompositeInstancesAfterMediaCreation", "CS", "1" },
+ { 0x2200, 0x000b,
+ "Total Number of Pieces of Media Created", "TotalNumberOfPiecesOfMediaCreated", "US", "1" },
+ { 0x2200, 0x000c,
+ "Requested Media Application Profile", "RequestedMediaApplicationProfile", "LO", "1" },
+ { 0x2200, 0x000d,
+ "Referenced Storage Media Sequence", "ReferencedStorageMediaSequence", "SQ", "1" },
+ { 0x2200, 0x000e,
+ "Failure Attributes", "FailureAttributes", "AT", "1-n" },
+ { 0x2200, 0x000f,
+ "Allow Lossy Compression", "AllowLossyCompression", "CS", "1" },
+ { 0x2200, 0x0020,
+ "Request Priority", "RequestPriority", "CS", "1" },
+ { 0x3002, 0x0002,
+ "RT Image Label", "RTImageLabel", "SH", "1" },
+ { 0x3002, 0x0003,
+ "RT Image Name", "RTImageName", "LO", "1" },
+ { 0x3002, 0x0004,
+ "RT Image Description", "RTImageDescription", "ST", "1" },
+ { 0x3002, 0x000a,
+ "Reported Values Origin", "ReportedValuesOrigin", "CS", "1" },
+ { 0x3002, 0x000c,
+ "RT Image Plane", "RTImagePlane", "CS", "1" },
+ { 0x3002, 0x000d,
+ "X-Ray Image Receptor Translation", "XRayImageReceptorTranslation", "DS", "3" },
+ { 0x3002, 0x000e,
+ "X-Ray Image Receptor Angle", "XRayImageReceptorAngle", "DS", "1" },
+ { 0x3002, 0x0010,
+ "RT Image Orientation", "RTImageOrientation", "DS", "6" },
+ { 0x3002, 0x0011,
+ "Image Plane Pixel Spacing", "ImagePlanePixelSpacing", "DS", "2" },
+ { 0x3002, 0x0012,
+ "RT Image Position", "RTImagePosition", "DS", "2" },
+ { 0x3002, 0x0020,
+ "Radiation Machine Name", "RadiationMachineName", "SH", "1" },
+ { 0x3002, 0x0022,
+ "Radiation Machine SAD", "RadiationMachineSAD", "DS", "1" },
+ { 0x3002, 0x0024,
+ "Radiation Machine SSD", "RadiationMachineSSD", "DS", "1" },
+ { 0x3002, 0x0026,
+ "RT Image SID", "RTImageSID", "DS", "1" },
+ { 0x3002, 0x0028,
+ "Source to Reference Object Distance", "SourceToReferenceObjectDistance", "DS", "1" },
+ { 0x3002, 0x0029,
+ "Fraction Number", "FractionNumber", "IS", "1" },
+ { 0x3002, 0x0030,
+ "Exposure Sequence", "ExposureSequence", "SQ", "1" },
+ { 0x3002, 0x0032,
+ "Meterset Exposure", "MetersetExposure", "DS", "1" },
+ { 0x3002, 0x0034,
+ "Diaphragm Position", "DiaphragmPosition", "DS", "4" },
+ { 0x3002, 0x0040,
+ "Fluence Map Sequence", "FluenceMapSequence", "SQ", "1" },
+ { 0x3002, 0x0041,
+ "Fluence Data Source", "FluenceDataSource", "CS", "1" },
+ { 0x3002, 0x0042,
+ "Fluence Data Scale", "FluenceDataScale", "DS", "1" },
+ { 0x3002, 0x0050,
+ "Primary Fluence Mode Sequence", "PrimaryFluenceModeSequence", "SQ", "1" },
+ { 0x3002, 0x0051,
+ "Fluence Mode", "FluenceMode", "CS", "1" },
+ { 0x3002, 0x0052,
+ "Fluence Mode ID", "FluenceModeID", "SH", "1" },
+ { 0x3004, 0x0001,
+ "DVH Type", "DVHType", "CS", "1" },
+ { 0x3004, 0x0002,
+ "Dose Units", "DoseUnits", "CS", "1" },
+ { 0x3004, 0x0004,
+ "Dose Type", "DoseType", "CS", "1" },
+ { 0x3004, 0x0005,
+ "Spatial Transform of Dose", "SpatialTransformOfDose", "CS", "1" },
+ { 0x3004, 0x0006,
+ "Dose Comment", "DoseComment", "LO", "1" },
+ { 0x3004, 0x0008,
+ "Normalization Point", "NormalizationPoint", "DS", "3" },
+ { 0x3004, 0x000a,
+ "Dose Summation Type", "DoseSummationType", "CS", "1" },
+ { 0x3004, 0x000c,
+ "Grid Frame Offset Vector", "GridFrameOffsetVector", "DS", "2-n" },
+ { 0x3004, 0x000e,
+ "Dose Grid Scaling", "DoseGridScaling", "DS", "1" },
+ { 0x3004, 0x0010,
+ "RT Dose ROI Sequence", "RTDoseROISequence", "SQ", "1" },
+ { 0x3004, 0x0012,
+ "Dose Value", "DoseValue", "DS", "1" },
+ { 0x3004, 0x0014,
+ "Tissue Heterogeneity Correction", "TissueHeterogeneityCorrection", "CS", "1-3" },
+ { 0x3004, 0x0040,
+ "DVH Normalization Point", "DVHNormalizationPoint", "DS", "3" },
+ { 0x3004, 0x0042,
+ "DVH Normalization Dose Value", "DVHNormalizationDoseValue", "DS", "1" },
+ { 0x3004, 0x0050,
+ "DVH Sequence", "DVHSequence", "SQ", "1" },
+ { 0x3004, 0x0052,
+ "DVH Dose Scaling", "DVHDoseScaling", "DS", "1" },
+ { 0x3004, 0x0054,
+ "DVH Volume Units", "DVHVolumeUnits", "CS", "1" },
+ { 0x3004, 0x0056,
+ "DVH Number of Bins", "DVHNumberOfBins", "IS", "1" },
+ { 0x3004, 0x0058,
+ "DVH Data", "DVHData", "DS", "2-2n" },
+ { 0x3004, 0x0060,
+ "DVH Referenced ROI Sequence", "DVHReferencedROISequence", "SQ", "1" },
+ { 0x3004, 0x0062,
+ "DVH ROI Contribution Type", "DVHROIContributionType", "CS", "1" },
+ { 0x3004, 0x0070,
+ "DVH Minimum Dose", "DVHMinimumDose", "DS", "1" },
+ { 0x3004, 0x0072,
+ "DVH Maximum Dose", "DVHMaximumDose", "DS", "1" },
+ { 0x3004, 0x0074,
+ "DVH Mean Dose", "DVHMeanDose", "DS", "1" },
+ { 0x3006, 0x0002,
+ "Structure Set Label", "StructureSetLabel", "SH", "1" },
+ { 0x3006, 0x0004,
+ "Structure Set Name", "StructureSetName", "LO", "1" },
+ { 0x3006, 0x0006,
+ "Structure Set Description", "StructureSetDescription", "ST", "1" },
+ { 0x3006, 0x0008,
+ "Structure Set Date", "StructureSetDate", "DA", "1" },
+ { 0x3006, 0x0009,
+ "Structure Set Time", "StructureSetTime", "TM", "1" },
+ { 0x3006, 0x0010,
+ "Referenced Frame of Reference Sequence", "ReferencedFrameOfReferenceSequence", "SQ", "1" },
+ { 0x3006, 0x0012,
+ "RT Referenced Study Sequence", "RTReferencedStudySequence", "SQ", "1" },
+ { 0x3006, 0x0014,
+ "RT Referenced Series Sequence", "RTReferencedSeriesSequence", "SQ", "1" },
+ { 0x3006, 0x0016,
+ "Contour Image Sequence", "ContourImageSequence", "SQ", "1" },
+ { 0x3006, 0x0018,
+ "Predecessor Structure Set Sequence", "PredecessorStructureSetSequence", "SQ", "1" },
+ { 0x3006, 0x0020,
+ "Structure Set ROI Sequence", "StructureSetROISequence", "SQ", "1" },
+ { 0x3006, 0x0022,
+ "ROI Number", "ROINumber", "IS", "1" },
+ { 0x3006, 0x0024,
+ "Referenced Frame of Reference UID", "ReferencedFrameOfReferenceUID", "UI", "1" },
+ { 0x3006, 0x0026,
+ "ROI Name", "ROIName", "LO", "1" },
+ { 0x3006, 0x0028,
+ "ROI Description", "ROIDescription", "ST", "1" },
+ { 0x3006, 0x002a,
+ "ROI Display Color", "ROIDisplayColor", "IS", "3" },
+ { 0x3006, 0x002c,
+ "ROI Volume", "ROIVolume", "DS", "1" },
+ { 0x3006, 0x0030,
+ "RT Related ROI Sequence", "RTRelatedROISequence", "SQ", "1" },
+ { 0x3006, 0x0033,
+ "RT ROI Relationship", "RTROIRelationship", "CS", "1" },
+ { 0x3006, 0x0036,
+ "ROI Generation Algorithm", "ROIGenerationAlgorithm", "CS", "1" },
+ { 0x3006, 0x0038,
+ "ROI Generation Description", "ROIGenerationDescription", "LO", "1" },
+ { 0x3006, 0x0039,
+ "ROI Contour Sequence", "ROIContourSequence", "SQ", "1" },
+ { 0x3006, 0x0040,
+ "Contour Sequence", "ContourSequence", "SQ", "1" },
+ { 0x3006, 0x0042,
+ "Contour Geometric Type", "ContourGeometricType", "CS", "1" },
+ { 0x3006, 0x0044,
+ "Contour Slab Thickness", "ContourSlabThickness", "DS", "1" },
+ { 0x3006, 0x0045,
+ "Contour Offset Vector", "ContourOffsetVector", "DS", "3" },
+ { 0x3006, 0x0046,
+ "Number of Contour Points", "NumberOfContourPoints", "IS", "1" },
+ { 0x3006, 0x0048,
+ "Contour Number", "ContourNumber", "IS", "1" },
+ { 0x3006, 0x0049,
+ "Attached Contours", "AttachedContours", "IS", "1-n" },
+ { 0x3006, 0x0050,
+ "Contour Data", "ContourData", "DS", "3-3n" },
+ { 0x3006, 0x0080,
+ "RT ROI Observations Sequence", "RTROIObservationsSequence", "SQ", "1" },
+ { 0x3006, 0x0082,
+ "Observation Number", "ObservationNumber", "IS", "1" },
+ { 0x3006, 0x0084,
+ "Referenced ROI Number", "ReferencedROINumber", "IS", "1" },
+ { 0x3006, 0x0085,
+ "ROI Observation Label", "ROIObservationLabel", "SH", "1" },
+ { 0x3006, 0x0086,
+ "RT ROI Identification Code Sequence", "RTROIIdentificationCodeSequence", "SQ", "1" },
+ { 0x3006, 0x0088,
+ "ROI Observation Description", "ROIObservationDescription", "ST", "1" },
+ { 0x3006, 0x00a0,
+ "Related RT ROI Observations Sequence", "RelatedRTROIObservationsSequence", "SQ", "1" },
+ { 0x3006, 0x00a4,
+ "RT ROI Interpreted Type", "RTROIInterpretedType", "CS", "1" },
+ { 0x3006, 0x00a6,
+ "ROI Interpreter", "ROIInterpreter", "PN", "1" },
+ { 0x3006, 0x00b0,
+ "ROI Physical Properties Sequence", "ROIPhysicalPropertiesSequence", "SQ", "1" },
+ { 0x3006, 0x00b2,
+ "ROI Physical Property", "ROIPhysicalProperty", "CS", "1" },
+ { 0x3006, 0x00b4,
+ "ROI Physical Property Value", "ROIPhysicalPropertyValue", "DS", "1" },
+ { 0x3006, 0x00b6,
+ "ROI Elemental Composition Sequence", "ROIElementalCompositionSequence", "SQ", "1" },
+ { 0x3006, 0x00b7,
+ "ROI Elemental Composition Atomic Number", "ROIElementalCompositionAtomicNumber", "US", "1" },
+ { 0x3006, 0x00b8,
+ "ROI Elemental Composition Atomic Mass Fraction", "ROIElementalCompositionAtomicMassFraction", "FL", "1" },
+ { 0x3006, 0x00b9,
+ "Additional RT ROI Identification Code Sequence", "AdditionalRTROIIdentificationCodeSequence", "SQ", "1" },
+ { 0x3006, 0x00c0,
+ "Frame of Reference Relationship Sequence", "FrameOfReferenceRelationshipSequence", "SQ", "1" },
+ { 0x3006, 0x00c2,
+ "Related Frame of Reference UID", "RelatedFrameOfReferenceUID", "UI", "1" },
+ { 0x3006, 0x00c4,
+ "Frame of Reference Transformation Type", "FrameOfReferenceTransformationType", "CS", "1" },
+ { 0x3006, 0x00c6,
+ "Frame of Reference Transformation Matrix", "FrameOfReferenceTransformationMatrix", "DS", "16" },
+ { 0x3006, 0x00c8,
+ "Frame of Reference Transformation Comment", "FrameOfReferenceTransformationComment", "LO", "1" },
+ { 0x3008, 0x0010,
+ "Measured Dose Reference Sequence", "MeasuredDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x0012,
+ "Measured Dose Description", "MeasuredDoseDescription", "ST", "1" },
+ { 0x3008, 0x0014,
+ "Measured Dose Type", "MeasuredDoseType", "CS", "1" },
+ { 0x3008, 0x0016,
+ "Measured Dose Value", "MeasuredDoseValue", "DS", "1" },
+ { 0x3008, 0x0020,
+ "Treatment Session Beam Sequence", "TreatmentSessionBeamSequence", "SQ", "1" },
+ { 0x3008, 0x0021,
+ "Treatment Session Ion Beam Sequence", "TreatmentSessionIonBeamSequence", "SQ", "1" },
+ { 0x3008, 0x0022,
+ "Current Fraction Number", "CurrentFractionNumber", "IS", "1" },
+ { 0x3008, 0x0024,
+ "Treatment Control Point Date", "TreatmentControlPointDate", "DA", "1" },
+ { 0x3008, 0x0025,
+ "Treatment Control Point Time", "TreatmentControlPointTime", "TM", "1" },
+ { 0x3008, 0x002a,
+ "Treatment Termination Status", "TreatmentTerminationStatus", "CS", "1" },
+ { 0x3008, 0x002b,
+ "Treatment Termination Code", "TreatmentTerminationCode", "SH", "1" },
+ { 0x3008, 0x002c,
+ "Treatment Verification Status", "TreatmentVerificationStatus", "CS", "1" },
+ { 0x3008, 0x0030,
+ "Referenced Treatment Record Sequence", "ReferencedTreatmentRecordSequence", "SQ", "1" },
+ { 0x3008, 0x0032,
+ "Specified Primary Meterset", "SpecifiedPrimaryMeterset", "DS", "1" },
+ { 0x3008, 0x0033,
+ "Specified Secondary Meterset", "SpecifiedSecondaryMeterset", "DS", "1" },
+ { 0x3008, 0x0036,
+ "Delivered Primary Meterset", "DeliveredPrimaryMeterset", "DS", "1" },
+ { 0x3008, 0x0037,
+ "Delivered Secondary Meterset", "DeliveredSecondaryMeterset", "DS", "1" },
+ { 0x3008, 0x003a,
+ "Specified Treatment Time", "SpecifiedTreatmentTime", "DS", "1" },
+ { 0x3008, 0x003b,
+ "Delivered Treatment Time", "DeliveredTreatmentTime", "DS", "1" },
+ { 0x3008, 0x0040,
+ "Control Point Delivery Sequence", "ControlPointDeliverySequence", "SQ", "1" },
+ { 0x3008, 0x0041,
+ "Ion Control Point Delivery Sequence", "IonControlPointDeliverySequence", "SQ", "1" },
+ { 0x3008, 0x0042,
+ "Specified Meterset", "SpecifiedMeterset", "DS", "1" },
+ { 0x3008, 0x0044,
+ "Delivered Meterset", "DeliveredMeterset", "DS", "1" },
+ { 0x3008, 0x0045,
+ "Meterset Rate Set", "MetersetRateSet", "FL", "1" },
+ { 0x3008, 0x0046,
+ "Meterset Rate Delivered", "MetersetRateDelivered", "FL", "1" },
+ { 0x3008, 0x0047,
+ "Scan Spot Metersets Delivered", "ScanSpotMetersetsDelivered", "FL", "1-n" },
+ { 0x3008, 0x0048,
+ "Dose Rate Delivered", "DoseRateDelivered", "DS", "1" },
+ { 0x3008, 0x0050,
+ "Treatment Summary Calculated Dose Reference Sequence", "TreatmentSummaryCalculatedDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x0052,
+ "Cumulative Dose to Dose Reference", "CumulativeDoseToDoseReference", "DS", "1" },
+ { 0x3008, 0x0054,
+ "First Treatment Date", "FirstTreatmentDate", "DA", "1" },
+ { 0x3008, 0x0056,
+ "Most Recent Treatment Date", "MostRecentTreatmentDate", "DA", "1" },
+ { 0x3008, 0x005a,
+ "Number of Fractions Delivered", "NumberOfFractionsDelivered", "IS", "1" },
+ { 0x3008, 0x0060,
+ "Override Sequence", "OverrideSequence", "SQ", "1" },
+ { 0x3008, 0x0061,
+ "Parameter Sequence Pointer", "ParameterSequencePointer", "AT", "1" },
+ { 0x3008, 0x0062,
+ "Override Parameter Pointer", "OverrideParameterPointer", "AT", "1" },
+ { 0x3008, 0x0063,
+ "Parameter Item Index", "ParameterItemIndex", "IS", "1" },
+ { 0x3008, 0x0064,
+ "Measured Dose Reference Number", "MeasuredDoseReferenceNumber", "IS", "1" },
+ { 0x3008, 0x0065,
+ "Parameter Pointer", "ParameterPointer", "AT", "1" },
+ { 0x3008, 0x0066,
+ "Override Reason", "OverrideReason", "ST", "1" },
+ { 0x3008, 0x0068,
+ "Corrected Parameter Sequence", "CorrectedParameterSequence", "SQ", "1" },
+ { 0x3008, 0x006a,
+ "Correction Value", "CorrectionValue", "FL", "1" },
+ { 0x3008, 0x0070,
+ "Calculated Dose Reference Sequence", "CalculatedDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x0072,
+ "Calculated Dose Reference Number", "CalculatedDoseReferenceNumber", "IS", "1" },
+ { 0x3008, 0x0074,
+ "Calculated Dose Reference Description", "CalculatedDoseReferenceDescription", "ST", "1" },
+ { 0x3008, 0x0076,
+ "Calculated Dose Reference Dose Value", "CalculatedDoseReferenceDoseValue", "DS", "1" },
+ { 0x3008, 0x0078,
+ "Start Meterset", "StartMeterset", "DS", "1" },
+ { 0x3008, 0x007a,
+ "End Meterset", "EndMeterset", "DS", "1" },
+ { 0x3008, 0x0080,
+ "Referenced Measured Dose Reference Sequence", "ReferencedMeasuredDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x0082,
+ "Referenced Measured Dose Reference Number", "ReferencedMeasuredDoseReferenceNumber", "IS", "1" },
+ { 0x3008, 0x0090,
+ "Referenced Calculated Dose Reference Sequence", "ReferencedCalculatedDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x0092,
+ "Referenced Calculated Dose Reference Number", "ReferencedCalculatedDoseReferenceNumber", "IS", "1" },
+ { 0x3008, 0x00a0,
+ "Beam Limiting Device Leaf Pairs Sequence", "BeamLimitingDeviceLeafPairsSequence", "SQ", "1" },
+ { 0x3008, 0x00b0,
+ "Recorded Wedge Sequence", "RecordedWedgeSequence", "SQ", "1" },
+ { 0x3008, 0x00c0,
+ "Recorded Compensator Sequence", "RecordedCompensatorSequence", "SQ", "1" },
+ { 0x3008, 0x00d0,
+ "Recorded Block Sequence", "RecordedBlockSequence", "SQ", "1" },
+ { 0x3008, 0x00e0,
+ "Treatment Summary Measured Dose Reference Sequence", "TreatmentSummaryMeasuredDoseReferenceSequence", "SQ", "1" },
+ { 0x3008, 0x00f0,
+ "Recorded Snout Sequence", "RecordedSnoutSequence", "SQ", "1" },
+ { 0x3008, 0x00f2,
+ "Recorded Range Shifter Sequence", "RecordedRangeShifterSequence", "SQ", "1" },
+ { 0x3008, 0x00f4,
+ "Recorded Lateral Spreading Device Sequence", "RecordedLateralSpreadingDeviceSequence", "SQ", "1" },
+ { 0x3008, 0x00f6,
+ "Recorded Range Modulator Sequence", "RecordedRangeModulatorSequence", "SQ", "1" },
+ { 0x3008, 0x0100,
+ "Recorded Source Sequence", "RecordedSourceSequence", "SQ", "1" },
+ { 0x3008, 0x0105,
+ "Source Serial Number", "SourceSerialNumber", "LO", "1" },
+ { 0x3008, 0x0110,
+ "Treatment Session Application Setup Sequence", "TreatmentSessionApplicationSetupSequence", "SQ", "1" },
+ { 0x3008, 0x0116,
+ "Application Setup Check", "ApplicationSetupCheck", "CS", "1" },
+ { 0x3008, 0x0120,
+ "Recorded Brachy Accessory Device Sequence", "RecordedBrachyAccessoryDeviceSequence", "SQ", "1" },
+ { 0x3008, 0x0122,
+ "Referenced Brachy Accessory Device Number", "ReferencedBrachyAccessoryDeviceNumber", "IS", "1" },
+ { 0x3008, 0x0130,
+ "Recorded Channel Sequence", "RecordedChannelSequence", "SQ", "1" },
+ { 0x3008, 0x0132,
+ "Specified Channel Total Time", "SpecifiedChannelTotalTime", "DS", "1" },
+ { 0x3008, 0x0134,
+ "Delivered Channel Total Time", "DeliveredChannelTotalTime", "DS", "1" },
+ { 0x3008, 0x0136,
+ "Specified Number of Pulses", "SpecifiedNumberOfPulses", "IS", "1" },
+ { 0x3008, 0x0138,
+ "Delivered Number of Pulses", "DeliveredNumberOfPulses", "IS", "1" },
+ { 0x3008, 0x013a,
+ "Specified Pulse Repetition Interval", "SpecifiedPulseRepetitionInterval", "DS", "1" },
+ { 0x3008, 0x013c,
+ "Delivered Pulse Repetition Interval", "DeliveredPulseRepetitionInterval", "DS", "1" },
+ { 0x3008, 0x0140,
+ "Recorded Source Applicator Sequence", "RecordedSourceApplicatorSequence", "SQ", "1" },
+ { 0x3008, 0x0142,
+ "Referenced Source Applicator Number", "ReferencedSourceApplicatorNumber", "IS", "1" },
+ { 0x3008, 0x0150,
+ "Recorded Channel Shield Sequence", "RecordedChannelShieldSequence", "SQ", "1" },
+ { 0x3008, 0x0152,
+ "Referenced Channel Shield Number", "ReferencedChannelShieldNumber", "IS", "1" },
+ { 0x3008, 0x0160,
+ "Brachy Control Point Delivered Sequence", "BrachyControlPointDeliveredSequence", "SQ", "1" },
+ { 0x3008, 0x0162,
+ "Safe Position Exit Date", "SafePositionExitDate", "DA", "1" },
+ { 0x3008, 0x0164,
+ "Safe Position Exit Time", "SafePositionExitTime", "TM", "1" },
+ { 0x3008, 0x0166,
+ "Safe Position Return Date", "SafePositionReturnDate", "DA", "1" },
+ { 0x3008, 0x0168,
+ "Safe Position Return Time", "SafePositionReturnTime", "TM", "1" },
+ { 0x3008, 0x0171,
+ "Pulse Specific Brachy Control Point Delivered Sequence", "PulseSpecificBrachyControlPointDeliveredSequence", "SQ", "1" },
+ { 0x3008, 0x0172,
+ "Pulse Number", "PulseNumber", "US", "1" },
+ { 0x3008, 0x0173,
+ "Brachy Pulse Control Point Delivered Sequence", "BrachyPulseControlPointDeliveredSequence", "SQ", "1" },
+ { 0x3008, 0x0200,
+ "Current Treatment Status", "CurrentTreatmentStatus", "CS", "1" },
+ { 0x3008, 0x0202,
+ "Treatment Status Comment", "TreatmentStatusComment", "ST", "1" },
+ { 0x3008, 0x0220,
+ "Fraction Group Summary Sequence", "FractionGroupSummarySequence", "SQ", "1" },
+ { 0x3008, 0x0223,
+ "Referenced Fraction Number", "ReferencedFractionNumber", "IS", "1" },
+ { 0x3008, 0x0224,
+ "Fraction Group Type", "FractionGroupType", "CS", "1" },
+ { 0x3008, 0x0230,
+ "Beam Stopper Position", "BeamStopperPosition", "CS", "1" },
+ { 0x3008, 0x0240,
+ "Fraction Status Summary Sequence", "FractionStatusSummarySequence", "SQ", "1" },
+ { 0x3008, 0x0250,
+ "Treatment Date", "TreatmentDate", "DA", "1" },
+ { 0x3008, 0x0251,
+ "Treatment Time", "TreatmentTime", "TM", "1" },
+ { 0x300a, 0x0002,
+ "RT Plan Label", "RTPlanLabel", "SH", "1" },
+ { 0x300a, 0x0003,
+ "RT Plan Name", "RTPlanName", "LO", "1" },
+ { 0x300a, 0x0004,
+ "RT Plan Description", "RTPlanDescription", "ST", "1" },
+ { 0x300a, 0x0006,
+ "RT Plan Date", "RTPlanDate", "DA", "1" },
+ { 0x300a, 0x0007,
+ "RT Plan Time", "RTPlanTime", "TM", "1" },
+ { 0x300a, 0x0009,
+ "Treatment Protocols", "TreatmentProtocols", "LO", "1-n" },
+ { 0x300a, 0x000a,
+ "Plan Intent", "PlanIntent", "CS", "1" },
+ { 0x300a, 0x000b,
+ "Treatment Sites", "TreatmentSites", "LO", "1-n" },
+ { 0x300a, 0x000c,
+ "RT Plan Geometry", "RTPlanGeometry", "CS", "1" },
+ { 0x300a, 0x000e,
+ "Prescription Description", "PrescriptionDescription", "ST", "1" },
+ { 0x300a, 0x0010,
+ "Dose Reference Sequence", "DoseReferenceSequence", "SQ", "1" },
+ { 0x300a, 0x0012,
+ "Dose Reference Number", "DoseReferenceNumber", "IS", "1" },
+ { 0x300a, 0x0013,
+ "Dose Reference UID", "DoseReferenceUID", "UI", "1" },
+ { 0x300a, 0x0014,
+ "Dose Reference Structure Type", "DoseReferenceStructureType", "CS", "1" },
+ { 0x300a, 0x0015,
+ "Nominal Beam Energy Unit", "NominalBeamEnergyUnit", "CS", "1" },
+ { 0x300a, 0x0016,
+ "Dose Reference Description", "DoseReferenceDescription", "LO", "1" },
+ { 0x300a, 0x0018,
+ "Dose Reference Point Coordinates", "DoseReferencePointCoordinates", "DS", "3" },
+ { 0x300a, 0x001a,
+ "Nominal Prior Dose", "NominalPriorDose", "DS", "1" },
+ { 0x300a, 0x0020,
+ "Dose Reference Type", "DoseReferenceType", "CS", "1" },
+ { 0x300a, 0x0021,
+ "Constraint Weight", "ConstraintWeight", "DS", "1" },
+ { 0x300a, 0x0022,
+ "Delivery Warning Dose", "DeliveryWarningDose", "DS", "1" },
+ { 0x300a, 0x0023,
+ "Delivery Maximum Dose", "DeliveryMaximumDose", "DS", "1" },
+ { 0x300a, 0x0025,
+ "Target Minimum Dose", "TargetMinimumDose", "DS", "1" },
+ { 0x300a, 0x0026,
+ "Target Prescription Dose", "TargetPrescriptionDose", "DS", "1" },
+ { 0x300a, 0x0027,
+ "Target Maximum Dose", "TargetMaximumDose", "DS", "1" },
+ { 0x300a, 0x0028,
+ "Target Underdose Volume Fraction", "TargetUnderdoseVolumeFraction", "DS", "1" },
+ { 0x300a, 0x002a,
+ "Organ at Risk Full-volume Dose", "OrganAtRiskFullVolumeDose", "DS", "1" },
+ { 0x300a, 0x002b,
+ "Organ at Risk Limit Dose", "OrganAtRiskLimitDose", "DS", "1" },
+ { 0x300a, 0x002c,
+ "Organ at Risk Maximum Dose", "OrganAtRiskMaximumDose", "DS", "1" },
+ { 0x300a, 0x002d,
+ "Organ at Risk Overdose Volume Fraction", "OrganAtRiskOverdoseVolumeFraction", "DS", "1" },
+ { 0x300a, 0x0040,
+ "Tolerance Table Sequence", "ToleranceTableSequence", "SQ", "1" },
+ { 0x300a, 0x0042,
+ "Tolerance Table Number", "ToleranceTableNumber", "IS", "1" },
+ { 0x300a, 0x0043,
+ "Tolerance Table Label", "ToleranceTableLabel", "SH", "1" },
+ { 0x300a, 0x0044,
+ "Gantry Angle Tolerance", "GantryAngleTolerance", "DS", "1" },
+ { 0x300a, 0x0046,
+ "Beam Limiting Device Angle Tolerance", "BeamLimitingDeviceAngleTolerance", "DS", "1" },
+ { 0x300a, 0x0048,
+ "Beam Limiting Device Tolerance Sequence", "BeamLimitingDeviceToleranceSequence", "SQ", "1" },
+ { 0x300a, 0x004a,
+ "Beam Limiting Device Position Tolerance", "BeamLimitingDevicePositionTolerance", "DS", "1" },
+ { 0x300a, 0x004b,
+ "Snout Position Tolerance", "SnoutPositionTolerance", "FL", "1" },
+ { 0x300a, 0x004c,
+ "Patient Support Angle Tolerance", "PatientSupportAngleTolerance", "DS", "1" },
+ { 0x300a, 0x004e,
+ "Table Top Eccentric Angle Tolerance", "TableTopEccentricAngleTolerance", "DS", "1" },
+ { 0x300a, 0x004f,
+ "Table Top Pitch Angle Tolerance", "TableTopPitchAngleTolerance", "FL", "1" },
+ { 0x300a, 0x0050,
+ "Table Top Roll Angle Tolerance", "TableTopRollAngleTolerance", "FL", "1" },
+ { 0x300a, 0x0051,
+ "Table Top Vertical Position Tolerance", "TableTopVerticalPositionTolerance", "DS", "1" },
+ { 0x300a, 0x0052,
+ "Table Top Longitudinal Position Tolerance", "TableTopLongitudinalPositionTolerance", "DS", "1" },
+ { 0x300a, 0x0053,
+ "Table Top Lateral Position Tolerance", "TableTopLateralPositionTolerance", "DS", "1" },
+ { 0x300a, 0x0055,
+ "RT Plan Relationship", "RTPlanRelationship", "CS", "1" },
+ { 0x300a, 0x0070,
+ "Fraction Group Sequence", "FractionGroupSequence", "SQ", "1" },
+ { 0x300a, 0x0071,
+ "Fraction Group Number", "FractionGroupNumber", "IS", "1" },
+ { 0x300a, 0x0072,
+ "Fraction Group Description", "FractionGroupDescription", "LO", "1" },
+ { 0x300a, 0x0078,
+ "Number of Fractions Planned", "NumberOfFractionsPlanned", "IS", "1" },
+ { 0x300a, 0x0079,
+ "Number of Fraction Pattern Digits Per Day", "NumberOfFractionPatternDigitsPerDay", "IS", "1" },
+ { 0x300a, 0x007a,
+ "Repeat Fraction Cycle Length", "RepeatFractionCycleLength", "IS", "1" },
+ { 0x300a, 0x007b,
+ "Fraction Pattern", "FractionPattern", "LT", "1" },
+ { 0x300a, 0x0080,
+ "Number of Beams", "NumberOfBeams", "IS", "1" },
+ { 0x300a, 0x0082,
+ "Beam Dose Specification Point", "BeamDoseSpecificationPoint", "DS", "3" },
+ { 0x300a, 0x0084,
+ "Beam Dose", "BeamDose", "DS", "1" },
+ { 0x300a, 0x0086,
+ "Beam Meterset", "BeamMeterset", "DS", "1" },
+ { 0x300a, 0x0088,
+ "Beam Dose Point Depth", "BeamDosePointDepth", "FL", "1" },
+ { 0x300a, 0x0089,
+ "Beam Dose Point Equivalent Depth", "BeamDosePointEquivalentDepth", "FL", "1" },
+ { 0x300a, 0x008a,
+ "Beam Dose Point SSD", "BeamDosePointSSD", "FL", "1" },
+ { 0x300a, 0x008b,
+ "Beam Dose Meaning", "BeamDoseMeaning", "CS", "1" },
+ { 0x300a, 0x008c,
+ "Beam Dose Verification Control Point Sequence", "BeamDoseVerificationControlPointSequence", "SQ", "1" },
+ { 0x300a, 0x008d,
+ "Average Beam Dose Point Depth", "AverageBeamDosePointDepth", "FL", "1" },
+ { 0x300a, 0x008e,
+ "Average Beam Dose Point Equivalent Depth", "AverageBeamDosePointEquivalentDepth", "FL", "1" },
+ { 0x300a, 0x008f,
+ "Average Beam Dose Point SSD", "AverageBeamDosePointSSD", "FL", "1" },
+ { 0x300a, 0x00a0,
+ "Number of Brachy Application Setups", "NumberOfBrachyApplicationSetups", "IS", "1" },
+ { 0x300a, 0x00a2,
+ "Brachy Application Setup Dose Specification Point", "BrachyApplicationSetupDoseSpecificationPoint", "DS", "3" },
+ { 0x300a, 0x00a4,
+ "Brachy Application Setup Dose", "BrachyApplicationSetupDose", "DS", "1" },
+ { 0x300a, 0x00b0,
+ "Beam Sequence", "BeamSequence", "SQ", "1" },
+ { 0x300a, 0x00b2,
+ "Treatment Machine Name", "TreatmentMachineName", "SH", "1" },
+ { 0x300a, 0x00b3,
+ "Primary Dosimeter Unit", "PrimaryDosimeterUnit", "CS", "1" },
+ { 0x300a, 0x00b4,
+ "Source-Axis Distance", "SourceAxisDistance", "DS", "1" },
+ { 0x300a, 0x00b6,
+ "Beam Limiting Device Sequence", "BeamLimitingDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x00b8,
+ "RT Beam Limiting Device Type", "RTBeamLimitingDeviceType", "CS", "1" },
+ { 0x300a, 0x00ba,
+ "Source to Beam Limiting Device Distance", "SourceToBeamLimitingDeviceDistance", "DS", "1" },
+ { 0x300a, 0x00bb,
+ "Isocenter to Beam Limiting Device Distance", "IsocenterToBeamLimitingDeviceDistance", "FL", "1" },
+ { 0x300a, 0x00bc,
+ "Number of Leaf/Jaw Pairs", "NumberOfLeafJawPairs", "IS", "1" },
+ { 0x300a, 0x00be,
+ "Leaf Position Boundaries", "LeafPositionBoundaries", "DS", "3-n" },
+ { 0x300a, 0x00c0,
+ "Beam Number", "BeamNumber", "IS", "1" },
+ { 0x300a, 0x00c2,
+ "Beam Name", "BeamName", "LO", "1" },
+ { 0x300a, 0x00c3,
+ "Beam Description", "BeamDescription", "ST", "1" },
+ { 0x300a, 0x00c4,
+ "Beam Type", "BeamType", "CS", "1" },
+ { 0x300a, 0x00c5,
+ "Beam Delivery Duration Limit", "BeamDeliveryDurationLimit", "FD", "1" },
+ { 0x300a, 0x00c6,
+ "Radiation Type", "RadiationType", "CS", "1" },
+ { 0x300a, 0x00c7,
+ "High-Dose Technique Type", "HighDoseTechniqueType", "CS", "1" },
+ { 0x300a, 0x00c8,
+ "Reference Image Number", "ReferenceImageNumber", "IS", "1" },
+ { 0x300a, 0x00ca,
+ "Planned Verification Image Sequence", "PlannedVerificationImageSequence", "SQ", "1" },
+ { 0x300a, 0x00cc,
+ "Imaging Device-Specific Acquisition Parameters", "ImagingDeviceSpecificAcquisitionParameters", "LO", "1-n" },
+ { 0x300a, 0x00ce,
+ "Treatment Delivery Type", "TreatmentDeliveryType", "CS", "1" },
+ { 0x300a, 0x00d0,
+ "Number of Wedges", "NumberOfWedges", "IS", "1" },
+ { 0x300a, 0x00d1,
+ "Wedge Sequence", "WedgeSequence", "SQ", "1" },
+ { 0x300a, 0x00d2,
+ "Wedge Number", "WedgeNumber", "IS", "1" },
+ { 0x300a, 0x00d3,
+ "Wedge Type", "WedgeType", "CS", "1" },
+ { 0x300a, 0x00d4,
+ "Wedge ID", "WedgeID", "SH", "1" },
+ { 0x300a, 0x00d5,
+ "Wedge Angle", "WedgeAngle", "IS", "1" },
+ { 0x300a, 0x00d6,
+ "Wedge Factor", "WedgeFactor", "DS", "1" },
+ { 0x300a, 0x00d7,
+ "Total Wedge Tray Water-Equivalent Thickness", "TotalWedgeTrayWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x00d8,
+ "Wedge Orientation", "WedgeOrientation", "DS", "1" },
+ { 0x300a, 0x00d9,
+ "Isocenter to Wedge Tray Distance", "IsocenterToWedgeTrayDistance", "FL", "1" },
+ { 0x300a, 0x00da,
+ "Source to Wedge Tray Distance", "SourceToWedgeTrayDistance", "DS", "1" },
+ { 0x300a, 0x00db,
+ "Wedge Thin Edge Position", "WedgeThinEdgePosition", "FL", "1" },
+ { 0x300a, 0x00dc,
+ "Bolus ID", "BolusID", "SH", "1" },
+ { 0x300a, 0x00dd,
+ "Bolus Description", "BolusDescription", "ST", "1" },
+ { 0x300a, 0x00de,
+ "Effective Wedge Angle", "EffectiveWedgeAngle", "DS", "1" },
+ { 0x300a, 0x00e0,
+ "Number of Compensators", "NumberOfCompensators", "IS", "1" },
+ { 0x300a, 0x00e1,
+ "Material ID", "MaterialID", "SH", "1" },
+ { 0x300a, 0x00e2,
+ "Total Compensator Tray Factor", "TotalCompensatorTrayFactor", "DS", "1" },
+ { 0x300a, 0x00e3,
+ "Compensator Sequence", "CompensatorSequence", "SQ", "1" },
+ { 0x300a, 0x00e4,
+ "Compensator Number", "CompensatorNumber", "IS", "1" },
+ { 0x300a, 0x00e5,
+ "Compensator ID", "CompensatorID", "SH", "1" },
+ { 0x300a, 0x00e6,
+ "Source to Compensator Tray Distance", "SourceToCompensatorTrayDistance", "DS", "1" },
+ { 0x300a, 0x00e7,
+ "Compensator Rows", "CompensatorRows", "IS", "1" },
+ { 0x300a, 0x00e8,
+ "Compensator Columns", "CompensatorColumns", "IS", "1" },
+ { 0x300a, 0x00e9,
+ "Compensator Pixel Spacing", "CompensatorPixelSpacing", "DS", "2" },
+ { 0x300a, 0x00ea,
+ "Compensator Position", "CompensatorPosition", "DS", "2" },
+ { 0x300a, 0x00eb,
+ "Compensator Transmission Data", "CompensatorTransmissionData", "DS", "1-n" },
+ { 0x300a, 0x00ec,
+ "Compensator Thickness Data", "CompensatorThicknessData", "DS", "1-n" },
+ { 0x300a, 0x00ed,
+ "Number of Boli", "NumberOfBoli", "IS", "1" },
+ { 0x300a, 0x00ee,
+ "Compensator Type", "CompensatorType", "CS", "1" },
+ { 0x300a, 0x00ef,
+ "Compensator Tray ID", "CompensatorTrayID", "SH", "1" },
+ { 0x300a, 0x00f0,
+ "Number of Blocks", "NumberOfBlocks", "IS", "1" },
+ { 0x300a, 0x00f2,
+ "Total Block Tray Factor", "TotalBlockTrayFactor", "DS", "1" },
+ { 0x300a, 0x00f3,
+ "Total Block Tray Water-Equivalent Thickness", "TotalBlockTrayWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x00f4,
+ "Block Sequence", "BlockSequence", "SQ", "1" },
+ { 0x300a, 0x00f5,
+ "Block Tray ID", "BlockTrayID", "SH", "1" },
+ { 0x300a, 0x00f6,
+ "Source to Block Tray Distance", "SourceToBlockTrayDistance", "DS", "1" },
+ { 0x300a, 0x00f7,
+ "Isocenter to Block Tray Distance", "IsocenterToBlockTrayDistance", "FL", "1" },
+ { 0x300a, 0x00f8,
+ "Block Type", "BlockType", "CS", "1" },
+ { 0x300a, 0x00f9,
+ "Accessory Code", "AccessoryCode", "LO", "1" },
+ { 0x300a, 0x00fa,
+ "Block Divergence", "BlockDivergence", "CS", "1" },
+ { 0x300a, 0x00fb,
+ "Block Mounting Position", "BlockMountingPosition", "CS", "1" },
+ { 0x300a, 0x00fc,
+ "Block Number", "BlockNumber", "IS", "1" },
+ { 0x300a, 0x00fe,
+ "Block Name", "BlockName", "LO", "1" },
+ { 0x300a, 0x0100,
+ "Block Thickness", "BlockThickness", "DS", "1" },
+ { 0x300a, 0x0102,
+ "Block Transmission", "BlockTransmission", "DS", "1" },
+ { 0x300a, 0x0104,
+ "Block Number of Points", "BlockNumberOfPoints", "IS", "1" },
+ { 0x300a, 0x0106,
+ "Block Data", "BlockData", "DS", "2-2n" },
+ { 0x300a, 0x0107,
+ "Applicator Sequence", "ApplicatorSequence", "SQ", "1" },
+ { 0x300a, 0x0108,
+ "Applicator ID", "ApplicatorID", "SH", "1" },
+ { 0x300a, 0x0109,
+ "Applicator Type", "ApplicatorType", "CS", "1" },
+ { 0x300a, 0x010a,
+ "Applicator Description", "ApplicatorDescription", "LO", "1" },
+ { 0x300a, 0x010c,
+ "Cumulative Dose Reference Coefficient", "CumulativeDoseReferenceCoefficient", "DS", "1" },
+ { 0x300a, 0x010e,
+ "Final Cumulative Meterset Weight", "FinalCumulativeMetersetWeight", "DS", "1" },
+ { 0x300a, 0x0110,
+ "Number of Control Points", "NumberOfControlPoints", "IS", "1" },
+ { 0x300a, 0x0111,
+ "Control Point Sequence", "ControlPointSequence", "SQ", "1" },
+ { 0x300a, 0x0112,
+ "Control Point Index", "ControlPointIndex", "IS", "1" },
+ { 0x300a, 0x0114,
+ "Nominal Beam Energy", "NominalBeamEnergy", "DS", "1" },
+ { 0x300a, 0x0115,
+ "Dose Rate Set", "DoseRateSet", "DS", "1" },
+ { 0x300a, 0x0116,
+ "Wedge Position Sequence", "WedgePositionSequence", "SQ", "1" },
+ { 0x300a, 0x0118,
+ "Wedge Position", "WedgePosition", "CS", "1" },
+ { 0x300a, 0x011a,
+ "Beam Limiting Device Position Sequence", "BeamLimitingDevicePositionSequence", "SQ", "1" },
+ { 0x300a, 0x011c,
+ "Leaf/Jaw Positions", "LeafJawPositions", "DS", "2-2n" },
+ { 0x300a, 0x011e,
+ "Gantry Angle", "GantryAngle", "DS", "1" },
+ { 0x300a, 0x011f,
+ "Gantry Rotation Direction", "GantryRotationDirection", "CS", "1" },
+ { 0x300a, 0x0120,
+ "Beam Limiting Device Angle", "BeamLimitingDeviceAngle", "DS", "1" },
+ { 0x300a, 0x0121,
+ "Beam Limiting Device Rotation Direction", "BeamLimitingDeviceRotationDirection", "CS", "1" },
+ { 0x300a, 0x0122,
+ "Patient Support Angle", "PatientSupportAngle", "DS", "1" },
+ { 0x300a, 0x0123,
+ "Patient Support Rotation Direction", "PatientSupportRotationDirection", "CS", "1" },
+ { 0x300a, 0x0124,
+ "Table Top Eccentric Axis Distance", "TableTopEccentricAxisDistance", "DS", "1" },
+ { 0x300a, 0x0125,
+ "Table Top Eccentric Angle", "TableTopEccentricAngle", "DS", "1" },
+ { 0x300a, 0x0126,
+ "Table Top Eccentric Rotation Direction", "TableTopEccentricRotationDirection", "CS", "1" },
+ { 0x300a, 0x0128,
+ "Table Top Vertical Position", "TableTopVerticalPosition", "DS", "1" },
+ { 0x300a, 0x0129,
+ "Table Top Longitudinal Position", "TableTopLongitudinalPosition", "DS", "1" },
+ { 0x300a, 0x012a,
+ "Table Top Lateral Position", "TableTopLateralPosition", "DS", "1" },
+ { 0x300a, 0x012c,
+ "Isocenter Position", "IsocenterPosition", "DS", "3" },
+ { 0x300a, 0x012e,
+ "Surface Entry Point", "SurfaceEntryPoint", "DS", "3" },
+ { 0x300a, 0x0130,
+ "Source to Surface Distance", "SourceToSurfaceDistance", "DS", "1" },
+ { 0x300a, 0x0131,
+ "Average Beam Dose Point Source to External Contour Surface Distance", "AverageBeamDosePointSourceToExternalContourSurfaceDistance", "FL", "1" },
+ { 0x300a, 0x0132,
+ "Source to External Contour Distance", "SourceToExternalContourDistance", "FL", "1" },
+ { 0x300a, 0x0133,
+ "External Contour Entry Point", "ExternalContourEntryPoint", "FL", "3" },
+ { 0x300a, 0x0134,
+ "Cumulative Meterset Weight", "CumulativeMetersetWeight", "DS", "1" },
+ { 0x300a, 0x0140,
+ "Table Top Pitch Angle", "TableTopPitchAngle", "FL", "1" },
+ { 0x300a, 0x0142,
+ "Table Top Pitch Rotation Direction", "TableTopPitchRotationDirection", "CS", "1" },
+ { 0x300a, 0x0144,
+ "Table Top Roll Angle", "TableTopRollAngle", "FL", "1" },
+ { 0x300a, 0x0146,
+ "Table Top Roll Rotation Direction", "TableTopRollRotationDirection", "CS", "1" },
+ { 0x300a, 0x0148,
+ "Head Fixation Angle", "HeadFixationAngle", "FL", "1" },
+ { 0x300a, 0x014a,
+ "Gantry Pitch Angle", "GantryPitchAngle", "FL", "1" },
+ { 0x300a, 0x014c,
+ "Gantry Pitch Rotation Direction", "GantryPitchRotationDirection", "CS", "1" },
+ { 0x300a, 0x014e,
+ "Gantry Pitch Angle Tolerance", "GantryPitchAngleTolerance", "FL", "1" },
+ { 0x300a, 0x0180,
+ "Patient Setup Sequence", "PatientSetupSequence", "SQ", "1" },
+ { 0x300a, 0x0182,
+ "Patient Setup Number", "PatientSetupNumber", "IS", "1" },
+ { 0x300a, 0x0183,
+ "Patient Setup Label", "PatientSetupLabel", "LO", "1" },
+ { 0x300a, 0x0184,
+ "Patient Additional Position", "PatientAdditionalPosition", "LO", "1" },
+ { 0x300a, 0x0190,
+ "Fixation Device Sequence", "FixationDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x0192,
+ "Fixation Device Type", "FixationDeviceType", "CS", "1" },
+ { 0x300a, 0x0194,
+ "Fixation Device Label", "FixationDeviceLabel", "SH", "1" },
+ { 0x300a, 0x0196,
+ "Fixation Device Description", "FixationDeviceDescription", "ST", "1" },
+ { 0x300a, 0x0198,
+ "Fixation Device Position", "FixationDevicePosition", "SH", "1" },
+ { 0x300a, 0x0199,
+ "Fixation Device Pitch Angle", "FixationDevicePitchAngle", "FL", "1" },
+ { 0x300a, 0x019a,
+ "Fixation Device Roll Angle", "FixationDeviceRollAngle", "FL", "1" },
+ { 0x300a, 0x01a0,
+ "Shielding Device Sequence", "ShieldingDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x01a2,
+ "Shielding Device Type", "ShieldingDeviceType", "CS", "1" },
+ { 0x300a, 0x01a4,
+ "Shielding Device Label", "ShieldingDeviceLabel", "SH", "1" },
+ { 0x300a, 0x01a6,
+ "Shielding Device Description", "ShieldingDeviceDescription", "ST", "1" },
+ { 0x300a, 0x01a8,
+ "Shielding Device Position", "ShieldingDevicePosition", "SH", "1" },
+ { 0x300a, 0x01b0,
+ "Setup Technique", "SetupTechnique", "CS", "1" },
+ { 0x300a, 0x01b2,
+ "Setup Technique Description", "SetupTechniqueDescription", "ST", "1" },
+ { 0x300a, 0x01b4,
+ "Setup Device Sequence", "SetupDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x01b6,
+ "Setup Device Type", "SetupDeviceType", "CS", "1" },
+ { 0x300a, 0x01b8,
+ "Setup Device Label", "SetupDeviceLabel", "SH", "1" },
+ { 0x300a, 0x01ba,
+ "Setup Device Description", "SetupDeviceDescription", "ST", "1" },
+ { 0x300a, 0x01bc,
+ "Setup Device Parameter", "SetupDeviceParameter", "DS", "1" },
+ { 0x300a, 0x01d0,
+ "Setup Reference Description", "SetupReferenceDescription", "ST", "1" },
+ { 0x300a, 0x01d2,
+ "Table Top Vertical Setup Displacement", "TableTopVerticalSetupDisplacement", "DS", "1" },
+ { 0x300a, 0x01d4,
+ "Table Top Longitudinal Setup Displacement", "TableTopLongitudinalSetupDisplacement", "DS", "1" },
+ { 0x300a, 0x01d6,
+ "Table Top Lateral Setup Displacement", "TableTopLateralSetupDisplacement", "DS", "1" },
+ { 0x300a, 0x0200,
+ "Brachy Treatment Technique", "BrachyTreatmentTechnique", "CS", "1" },
+ { 0x300a, 0x0202,
+ "Brachy Treatment Type", "BrachyTreatmentType", "CS", "1" },
+ { 0x300a, 0x0206,
+ "Treatment Machine Sequence", "TreatmentMachineSequence", "SQ", "1" },
+ { 0x300a, 0x0210,
+ "Source Sequence", "SourceSequence", "SQ", "1" },
+ { 0x300a, 0x0212,
+ "Source Number", "SourceNumber", "IS", "1" },
+ { 0x300a, 0x0214,
+ "Source Type", "SourceType", "CS", "1" },
+ { 0x300a, 0x0216,
+ "Source Manufacturer", "SourceManufacturer", "LO", "1" },
+ { 0x300a, 0x0218,
+ "Active Source Diameter", "ActiveSourceDiameter", "DS", "1" },
+ { 0x300a, 0x021a,
+ "Active Source Length", "ActiveSourceLength", "DS", "1" },
+ { 0x300a, 0x021b,
+ "Source Model ID", "SourceModelID", "SH", "1" },
+ { 0x300a, 0x021c,
+ "Source Description", "SourceDescription", "LO", "1" },
+ { 0x300a, 0x0222,
+ "Source Encapsulation Nominal Thickness", "SourceEncapsulationNominalThickness", "DS", "1" },
+ { 0x300a, 0x0224,
+ "Source Encapsulation Nominal Transmission", "SourceEncapsulationNominalTransmission", "DS", "1" },
+ { 0x300a, 0x0226,
+ "Source Isotope Name", "SourceIsotopeName", "LO", "1" },
+ { 0x300a, 0x0228,
+ "Source Isotope Half Life", "SourceIsotopeHalfLife", "DS", "1" },
+ { 0x300a, 0x0229,
+ "Source Strength Units", "SourceStrengthUnits", "CS", "1" },
+ { 0x300a, 0x022a,
+ "Reference Air Kerma Rate", "ReferenceAirKermaRate", "DS", "1" },
+ { 0x300a, 0x022b,
+ "Source Strength", "SourceStrength", "DS", "1" },
+ { 0x300a, 0x022c,
+ "Source Strength Reference Date", "SourceStrengthReferenceDate", "DA", "1" },
+ { 0x300a, 0x022e,
+ "Source Strength Reference Time", "SourceStrengthReferenceTime", "TM", "1" },
+ { 0x300a, 0x0230,
+ "Application Setup Sequence", "ApplicationSetupSequence", "SQ", "1" },
+ { 0x300a, 0x0232,
+ "Application Setup Type", "ApplicationSetupType", "CS", "1" },
+ { 0x300a, 0x0234,
+ "Application Setup Number", "ApplicationSetupNumber", "IS", "1" },
+ { 0x300a, 0x0236,
+ "Application Setup Name", "ApplicationSetupName", "LO", "1" },
+ { 0x300a, 0x0238,
+ "Application Setup Manufacturer", "ApplicationSetupManufacturer", "LO", "1" },
+ { 0x300a, 0x0240,
+ "Template Number", "TemplateNumber", "IS", "1" },
+ { 0x300a, 0x0242,
+ "Template Type", "TemplateType", "SH", "1" },
+ { 0x300a, 0x0244,
+ "Template Name", "TemplateName", "LO", "1" },
+ { 0x300a, 0x0250,
+ "Total Reference Air Kerma", "TotalReferenceAirKerma", "DS", "1" },
+ { 0x300a, 0x0260,
+ "Brachy Accessory Device Sequence", "BrachyAccessoryDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x0262,
+ "Brachy Accessory Device Number", "BrachyAccessoryDeviceNumber", "IS", "1" },
+ { 0x300a, 0x0263,
+ "Brachy Accessory Device ID", "BrachyAccessoryDeviceID", "SH", "1" },
+ { 0x300a, 0x0264,
+ "Brachy Accessory Device Type", "BrachyAccessoryDeviceType", "CS", "1" },
+ { 0x300a, 0x0266,
+ "Brachy Accessory Device Name", "BrachyAccessoryDeviceName", "LO", "1" },
+ { 0x300a, 0x026a,
+ "Brachy Accessory Device Nominal Thickness", "BrachyAccessoryDeviceNominalThickness", "DS", "1" },
+ { 0x300a, 0x026c,
+ "Brachy Accessory Device Nominal Transmission", "BrachyAccessoryDeviceNominalTransmission", "DS", "1" },
+ { 0x300a, 0x0280,
+ "Channel Sequence", "ChannelSequence", "SQ", "1" },
+ { 0x300a, 0x0282,
+ "Channel Number", "ChannelNumber", "IS", "1" },
+ { 0x300a, 0x0284,
+ "Channel Length", "ChannelLength", "DS", "1" },
+ { 0x300a, 0x0286,
+ "Channel Total Time", "ChannelTotalTime", "DS", "1" },
+ { 0x300a, 0x0288,
+ "Source Movement Type", "SourceMovementType", "CS", "1" },
+ { 0x300a, 0x028a,
+ "Number of Pulses", "NumberOfPulses", "IS", "1" },
+ { 0x300a, 0x028c,
+ "Pulse Repetition Interval", "PulseRepetitionInterval", "DS", "1" },
+ { 0x300a, 0x0290,
+ "Source Applicator Number", "SourceApplicatorNumber", "IS", "1" },
+ { 0x300a, 0x0291,
+ "Source Applicator ID", "SourceApplicatorID", "SH", "1" },
+ { 0x300a, 0x0292,
+ "Source Applicator Type", "SourceApplicatorType", "CS", "1" },
+ { 0x300a, 0x0294,
+ "Source Applicator Name", "SourceApplicatorName", "LO", "1" },
+ { 0x300a, 0x0296,
+ "Source Applicator Length", "SourceApplicatorLength", "DS", "1" },
+ { 0x300a, 0x0298,
+ "Source Applicator Manufacturer", "SourceApplicatorManufacturer", "LO", "1" },
+ { 0x300a, 0x029c,
+ "Source Applicator Wall Nominal Thickness", "SourceApplicatorWallNominalThickness", "DS", "1" },
+ { 0x300a, 0x029e,
+ "Source Applicator Wall Nominal Transmission", "SourceApplicatorWallNominalTransmission", "DS", "1" },
+ { 0x300a, 0x02a0,
+ "Source Applicator Step Size", "SourceApplicatorStepSize", "DS", "1" },
+ { 0x300a, 0x02a2,
+ "Transfer Tube Number", "TransferTubeNumber", "IS", "1" },
+ { 0x300a, 0x02a4,
+ "Transfer Tube Length", "TransferTubeLength", "DS", "1" },
+ { 0x300a, 0x02b0,
+ "Channel Shield Sequence", "ChannelShieldSequence", "SQ", "1" },
+ { 0x300a, 0x02b2,
+ "Channel Shield Number", "ChannelShieldNumber", "IS", "1" },
+ { 0x300a, 0x02b3,
+ "Channel Shield ID", "ChannelShieldID", "SH", "1" },
+ { 0x300a, 0x02b4,
+ "Channel Shield Name", "ChannelShieldName", "LO", "1" },
+ { 0x300a, 0x02b8,
+ "Channel Shield Nominal Thickness", "ChannelShieldNominalThickness", "DS", "1" },
+ { 0x300a, 0x02ba,
+ "Channel Shield Nominal Transmission", "ChannelShieldNominalTransmission", "DS", "1" },
+ { 0x300a, 0x02c8,
+ "Final Cumulative Time Weight", "FinalCumulativeTimeWeight", "DS", "1" },
+ { 0x300a, 0x02d0,
+ "Brachy Control Point Sequence", "BrachyControlPointSequence", "SQ", "1" },
+ { 0x300a, 0x02d2,
+ "Control Point Relative Position", "ControlPointRelativePosition", "DS", "1" },
+ { 0x300a, 0x02d4,
+ "Control Point 3D Position", "ControlPoint3DPosition", "DS", "3" },
+ { 0x300a, 0x02d6,
+ "Cumulative Time Weight", "CumulativeTimeWeight", "DS", "1" },
+ { 0x300a, 0x02e0,
+ "Compensator Divergence", "CompensatorDivergence", "CS", "1" },
+ { 0x300a, 0x02e1,
+ "Compensator Mounting Position", "CompensatorMountingPosition", "CS", "1" },
+ { 0x300a, 0x02e2,
+ "Source to Compensator Distance", "SourceToCompensatorDistance", "DS", "1-n" },
+ { 0x300a, 0x02e3,
+ "Total Compensator Tray Water-Equivalent Thickness", "TotalCompensatorTrayWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x02e4,
+ "Isocenter to Compensator Tray Distance", "IsocenterToCompensatorTrayDistance", "FL", "1" },
+ { 0x300a, 0x02e5,
+ "Compensator Column Offset", "CompensatorColumnOffset", "FL", "1" },
+ { 0x300a, 0x02e6,
+ "Isocenter to Compensator Distances", "IsocenterToCompensatorDistances", "FL", "1-n" },
+ { 0x300a, 0x02e7,
+ "Compensator Relative Stopping Power Ratio", "CompensatorRelativeStoppingPowerRatio", "FL", "1" },
+ { 0x300a, 0x02e8,
+ "Compensator Milling Tool Diameter", "CompensatorMillingToolDiameter", "FL", "1" },
+ { 0x300a, 0x02ea,
+ "Ion Range Compensator Sequence", "IonRangeCompensatorSequence", "SQ", "1" },
+ { 0x300a, 0x02eb,
+ "Compensator Description", "CompensatorDescription", "LT", "1" },
+ { 0x300a, 0x0302,
+ "Radiation Mass Number", "RadiationMassNumber", "IS", "1" },
+ { 0x300a, 0x0304,
+ "Radiation Atomic Number", "RadiationAtomicNumber", "IS", "1" },
+ { 0x300a, 0x0306,
+ "Radiation Charge State", "RadiationChargeState", "SS", "1" },
+ { 0x300a, 0x0308,
+ "Scan Mode", "ScanMode", "CS", "1" },
+ { 0x300a, 0x030a,
+ "Virtual Source-Axis Distances", "VirtualSourceAxisDistances", "FL", "2" },
+ { 0x300a, 0x030c,
+ "Snout Sequence", "SnoutSequence", "SQ", "1" },
+ { 0x300a, 0x030d,
+ "Snout Position", "SnoutPosition", "FL", "1" },
+ { 0x300a, 0x030f,
+ "Snout ID", "SnoutID", "SH", "1" },
+ { 0x300a, 0x0312,
+ "Number of Range Shifters", "NumberOfRangeShifters", "IS", "1" },
+ { 0x300a, 0x0314,
+ "Range Shifter Sequence", "RangeShifterSequence", "SQ", "1" },
+ { 0x300a, 0x0316,
+ "Range Shifter Number", "RangeShifterNumber", "IS", "1" },
+ { 0x300a, 0x0318,
+ "Range Shifter ID", "RangeShifterID", "SH", "1" },
+ { 0x300a, 0x0320,
+ "Range Shifter Type", "RangeShifterType", "CS", "1" },
+ { 0x300a, 0x0322,
+ "Range Shifter Description", "RangeShifterDescription", "LO", "1" },
+ { 0x300a, 0x0330,
+ "Number of Lateral Spreading Devices", "NumberOfLateralSpreadingDevices", "IS", "1" },
+ { 0x300a, 0x0332,
+ "Lateral Spreading Device Sequence", "LateralSpreadingDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x0334,
+ "Lateral Spreading Device Number", "LateralSpreadingDeviceNumber", "IS", "1" },
+ { 0x300a, 0x0336,
+ "Lateral Spreading Device ID", "LateralSpreadingDeviceID", "SH", "1" },
+ { 0x300a, 0x0338,
+ "Lateral Spreading Device Type", "LateralSpreadingDeviceType", "CS", "1" },
+ { 0x300a, 0x033a,
+ "Lateral Spreading Device Description", "LateralSpreadingDeviceDescription", "LO", "1" },
+ { 0x300a, 0x033c,
+ "Lateral Spreading Device Water Equivalent Thickness", "LateralSpreadingDeviceWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x0340,
+ "Number of Range Modulators", "NumberOfRangeModulators", "IS", "1" },
+ { 0x300a, 0x0342,
+ "Range Modulator Sequence", "RangeModulatorSequence", "SQ", "1" },
+ { 0x300a, 0x0344,
+ "Range Modulator Number", "RangeModulatorNumber", "IS", "1" },
+ { 0x300a, 0x0346,
+ "Range Modulator ID", "RangeModulatorID", "SH", "1" },
+ { 0x300a, 0x0348,
+ "Range Modulator Type", "RangeModulatorType", "CS", "1" },
+ { 0x300a, 0x034a,
+ "Range Modulator Description", "RangeModulatorDescription", "LO", "1" },
+ { 0x300a, 0x034c,
+ "Beam Current Modulation ID", "BeamCurrentModulationID", "SH", "1" },
+ { 0x300a, 0x0350,
+ "Patient Support Type", "PatientSupportType", "CS", "1" },
+ { 0x300a, 0x0352,
+ "Patient Support ID", "PatientSupportID", "SH", "1" },
+ { 0x300a, 0x0354,
+ "Patient Support Accessory Code", "PatientSupportAccessoryCode", "LO", "1" },
+ { 0x300a, 0x0356,
+ "Fixation Light Azimuthal Angle", "FixationLightAzimuthalAngle", "FL", "1" },
+ { 0x300a, 0x0358,
+ "Fixation Light Polar Angle", "FixationLightPolarAngle", "FL", "1" },
+ { 0x300a, 0x035a,
+ "Meterset Rate", "MetersetRate", "FL", "1" },
+ { 0x300a, 0x0360,
+ "Range Shifter Settings Sequence", "RangeShifterSettingsSequence", "SQ", "1" },
+ { 0x300a, 0x0362,
+ "Range Shifter Setting", "RangeShifterSetting", "LO", "1" },
+ { 0x300a, 0x0364,
+ "Isocenter to Range Shifter Distance", "IsocenterToRangeShifterDistance", "FL", "1" },
+ { 0x300a, 0x0366,
+ "Range Shifter Water Equivalent Thickness", "RangeShifterWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x0370,
+ "Lateral Spreading Device Settings Sequence", "LateralSpreadingDeviceSettingsSequence", "SQ", "1" },
+ { 0x300a, 0x0372,
+ "Lateral Spreading Device Setting", "LateralSpreadingDeviceSetting", "LO", "1" },
+ { 0x300a, 0x0374,
+ "Isocenter to Lateral Spreading Device Distance", "IsocenterToLateralSpreadingDeviceDistance", "FL", "1" },
+ { 0x300a, 0x0380,
+ "Range Modulator Settings Sequence", "RangeModulatorSettingsSequence", "SQ", "1" },
+ { 0x300a, 0x0382,
+ "Range Modulator Gating Start Value", "RangeModulatorGatingStartValue", "FL", "1" },
+ { 0x300a, 0x0384,
+ "Range Modulator Gating Stop Value", "RangeModulatorGatingStopValue", "FL", "1" },
+ { 0x300a, 0x0386,
+ "Range Modulator Gating Start Water Equivalent Thickness", "RangeModulatorGatingStartWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x0388,
+ "Range Modulator Gating Stop Water Equivalent Thickness", "RangeModulatorGatingStopWaterEquivalentThickness", "FL", "1" },
+ { 0x300a, 0x038a,
+ "Isocenter to Range Modulator Distance", "IsocenterToRangeModulatorDistance", "FL", "1" },
+ { 0x300a, 0x0390,
+ "Scan Spot Tune ID", "ScanSpotTuneID", "SH", "1" },
+ { 0x300a, 0x0392,
+ "Number of Scan Spot Positions", "NumberOfScanSpotPositions", "IS", "1" },
+ { 0x300a, 0x0394,
+ "Scan Spot Position Map", "ScanSpotPositionMap", "FL", "1-n" },
+ { 0x300a, 0x0396,
+ "Scan Spot Meterset Weights", "ScanSpotMetersetWeights", "FL", "1-n" },
+ { 0x300a, 0x0398,
+ "Scanning Spot Size", "ScanningSpotSize", "FL", "2" },
+ { 0x300a, 0x039a,
+ "Number of Paintings", "NumberOfPaintings", "IS", "1" },
+ { 0x300a, 0x03a0,
+ "Ion Tolerance Table Sequence", "IonToleranceTableSequence", "SQ", "1" },
+ { 0x300a, 0x03a2,
+ "Ion Beam Sequence", "IonBeamSequence", "SQ", "1" },
+ { 0x300a, 0x03a4,
+ "Ion Beam Limiting Device Sequence", "IonBeamLimitingDeviceSequence", "SQ", "1" },
+ { 0x300a, 0x03a6,
+ "Ion Block Sequence", "IonBlockSequence", "SQ", "1" },
+ { 0x300a, 0x03a8,
+ "Ion Control Point Sequence", "IonControlPointSequence", "SQ", "1" },
+ { 0x300a, 0x03aa,
+ "Ion Wedge Sequence", "IonWedgeSequence", "SQ", "1" },
+ { 0x300a, 0x03ac,
+ "Ion Wedge Position Sequence", "IonWedgePositionSequence", "SQ", "1" },
+ { 0x300a, 0x0401,
+ "Referenced Setup Image Sequence", "ReferencedSetupImageSequence", "SQ", "1" },
+ { 0x300a, 0x0402,
+ "Setup Image Comment", "SetupImageComment", "ST", "1" },
+ { 0x300a, 0x0410,
+ "Motion Synchronization Sequence", "MotionSynchronizationSequence", "SQ", "1" },
+ { 0x300a, 0x0412,
+ "Control Point Orientation", "ControlPointOrientation", "FL", "3" },
+ { 0x300a, 0x0420,
+ "General Accessory Sequence", "GeneralAccessorySequence", "SQ", "1" },
+ { 0x300a, 0x0421,
+ "General Accessory ID", "GeneralAccessoryID", "SH", "1" },
+ { 0x300a, 0x0422,
+ "General Accessory Description", "GeneralAccessoryDescription", "ST", "1" },
+ { 0x300a, 0x0423,
+ "General Accessory Type", "GeneralAccessoryType", "CS", "1" },
+ { 0x300a, 0x0424,
+ "General Accessory Number", "GeneralAccessoryNumber", "IS", "1" },
+ { 0x300a, 0x0425,
+ "Source to General Accessory Distance", "SourceToGeneralAccessoryDistance", "FL", "1" },
+ { 0x300a, 0x0431,
+ "Applicator Geometry Sequence", "ApplicatorGeometrySequence", "SQ", "1" },
+ { 0x300a, 0x0432,
+ "Applicator Aperture Shape", "ApplicatorApertureShape", "CS", "1" },
+ { 0x300a, 0x0433,
+ "Applicator Opening", "ApplicatorOpening", "FL", "1" },
+ { 0x300a, 0x0434,
+ "Applicator Opening X", "ApplicatorOpeningX", "FL", "1" },
+ { 0x300a, 0x0435,
+ "Applicator Opening Y", "ApplicatorOpeningY", "FL", "1" },
+ { 0x300a, 0x0436,
+ "Source to Applicator Mounting Position Distance", "SourceToApplicatorMountingPositionDistance", "FL", "1" },
+ { 0x300a, 0x0440,
+ "Number of Block Slab Items", "NumberOfBlockSlabItems", "IS", "1" },
+ { 0x300a, 0x0441,
+ "Block Slab Sequence", "BlockSlabSequence", "SQ", "1" },
+ { 0x300a, 0x0442,
+ "Block Slab Thickness", "BlockSlabThickness", "DS", "1" },
+ { 0x300a, 0x0443,
+ "Block Slab Number", "BlockSlabNumber", "US", "1" },
+ { 0x300a, 0x0450,
+ "Device Motion Control Sequence", "DeviceMotionControlSequence", "SQ", "1" },
+ { 0x300a, 0x0451,
+ "Device Motion Execution Mode", "DeviceMotionExecutionMode", "CS", "1" },
+ { 0x300a, 0x0452,
+ "Device Motion Observation Mode", "DeviceMotionObservationMode", "CS", "1" },
+ { 0x300a, 0x0453,
+ "Device Motion Parameter Code Sequence", "DeviceMotionParameterCodeSequence", "SQ", "1" },
+ { 0x300c, 0x0002,
+ "Referenced RT Plan Sequence", "ReferencedRTPlanSequence", "SQ", "1" },
+ { 0x300c, 0x0004,
+ "Referenced Beam Sequence", "ReferencedBeamSequence", "SQ", "1" },
+ { 0x300c, 0x0006,
+ "Referenced Beam Number", "ReferencedBeamNumber", "IS", "1" },
+ { 0x300c, 0x0007,
+ "Referenced Reference Image Number", "ReferencedReferenceImageNumber", "IS", "1" },
+ { 0x300c, 0x0008,
+ "Start Cumulative Meterset Weight", "StartCumulativeMetersetWeight", "DS", "1" },
+ { 0x300c, 0x0009,
+ "End Cumulative Meterset Weight", "EndCumulativeMetersetWeight", "DS", "1" },
+ { 0x300c, 0x000a,
+ "Referenced Brachy Application Setup Sequence", "ReferencedBrachyApplicationSetupSequence", "SQ", "1" },
+ { 0x300c, 0x000c,
+ "Referenced Brachy Application Setup Number", "ReferencedBrachyApplicationSetupNumber", "IS", "1" },
+ { 0x300c, 0x000e,
+ "Referenced Source Number", "ReferencedSourceNumber", "IS", "1" },
+ { 0x300c, 0x0020,
+ "Referenced Fraction Group Sequence", "ReferencedFractionGroupSequence", "SQ", "1" },
+ { 0x300c, 0x0022,
+ "Referenced Fraction Group Number", "ReferencedFractionGroupNumber", "IS", "1" },
+ { 0x300c, 0x0040,
+ "Referenced Verification Image Sequence", "ReferencedVerificationImageSequence", "SQ", "1" },
+ { 0x300c, 0x0042,
+ "Referenced Reference Image Sequence", "ReferencedReferenceImageSequence", "SQ", "1" },
+ { 0x300c, 0x0050,
+ "Referenced Dose Reference Sequence", "ReferencedDoseReferenceSequence", "SQ", "1" },
+ { 0x300c, 0x0051,
+ "Referenced Dose Reference Number", "ReferencedDoseReferenceNumber", "IS", "1" },
+ { 0x300c, 0x0055,
+ "Brachy Referenced Dose Reference Sequence", "BrachyReferencedDoseReferenceSequence", "SQ", "1" },
+ { 0x300c, 0x0060,
+ "Referenced Structure Set Sequence", "ReferencedStructureSetSequence", "SQ", "1" },
+ { 0x300c, 0x006a,
+ "Referenced Patient Setup Number", "ReferencedPatientSetupNumber", "IS", "1" },
+ { 0x300c, 0x0080,
+ "Referenced Dose Sequence", "ReferencedDoseSequence", "SQ", "1" },
+ { 0x300c, 0x00a0,
+ "Referenced Tolerance Table Number", "ReferencedToleranceTableNumber", "IS", "1" },
+ { 0x300c, 0x00b0,
+ "Referenced Bolus Sequence", "ReferencedBolusSequence", "SQ", "1" },
+ { 0x300c, 0x00c0,
+ "Referenced Wedge Number", "ReferencedWedgeNumber", "IS", "1" },
+ { 0x300c, 0x00d0,
+ "Referenced Compensator Number", "ReferencedCompensatorNumber", "IS", "1" },
+ { 0x300c, 0x00e0,
+ "Referenced Block Number", "ReferencedBlockNumber", "IS", "1" },
+ { 0x300c, 0x00f0,
+ "Referenced Control Point Index", "ReferencedControlPointIndex", "IS", "1" },
+ { 0x300c, 0x00f2,
+ "Referenced Control Point Sequence", "ReferencedControlPointSequence", "SQ", "1" },
+ { 0x300c, 0x00f4,
+ "Referenced Start Control Point Index", "ReferencedStartControlPointIndex", "IS", "1" },
+ { 0x300c, 0x00f6,
+ "Referenced Stop Control Point Index", "ReferencedStopControlPointIndex", "IS", "1" },
+ { 0x300c, 0x0100,
+ "Referenced Range Shifter Number", "ReferencedRangeShifterNumber", "IS", "1" },
+ { 0x300c, 0x0102,
+ "Referenced Lateral Spreading Device Number", "ReferencedLateralSpreadingDeviceNumber", "IS", "1" },
+ { 0x300c, 0x0104,
+ "Referenced Range Modulator Number", "ReferencedRangeModulatorNumber", "IS", "1" },
+ { 0x300c, 0x0111,
+ "Omitted Beam Task Sequence", "OmittedBeamTaskSequence", "SQ", "1" },
+ { 0x300c, 0x0112,
+ "Reason for Omission", "ReasonForOmission", "CS", "1" },
+ { 0x300c, 0x0113,
+ "Reason for Omission Description", "ReasonForOmissionDescription", "LO", "1" },
+ { 0x300e, 0x0002,
+ "Approval Status", "ApprovalStatus", "CS", "1" },
+ { 0x300e, 0x0004,
+ "Review Date", "ReviewDate", "DA", "1" },
+ { 0x300e, 0x0005,
+ "Review Time", "ReviewTime", "TM", "1" },
+ { 0x300e, 0x0008,
+ "Reviewer Name", "ReviewerName", "PN", "1" },
+ { 0x4000, 0x0010,
+ "Arbitrary", "Arbitrary", "LT", "1" },
+ { 0x4000, 0x4000,
+ "Text Comments", "TextComments", "LT", "1" },
+ { 0x4008, 0x0040,
+ "Results ID", "ResultsID", "SH", "1" },
+ { 0x4008, 0x0042,
+ "Results ID Issuer", "ResultsIDIssuer", "LO", "1" },
+ { 0x4008, 0x0050,
+ "Referenced Interpretation Sequence", "ReferencedInterpretationSequence", "SQ", "1" },
+ { 0x4008, 0x00ff,
+ "Report Production Status (Trial)", "ReportProductionStatusTrial", "CS", "1" },
+ { 0x4008, 0x0100,
+ "Interpretation Recorded Date", "InterpretationRecordedDate", "DA", "1" },
+ { 0x4008, 0x0101,
+ "Interpretation Recorded Time", "InterpretationRecordedTime", "TM", "1" },
+ { 0x4008, 0x0102,
+ "Interpretation Recorder", "InterpretationRecorder", "PN", "1" },
+ { 0x4008, 0x0103,
+ "Reference to Recorded Sound", "ReferenceToRecordedSound", "LO", "1" },
+ { 0x4008, 0x0108,
+ "Interpretation Transcription Date", "InterpretationTranscriptionDate", "DA", "1" },
+ { 0x4008, 0x0109,
+ "Interpretation Transcription Time", "InterpretationTranscriptionTime", "TM", "1" },
+ { 0x4008, 0x010a,
+ "Interpretation Transcriber", "InterpretationTranscriber", "PN", "1" },
+ { 0x4008, 0x010b,
+ "Interpretation Text", "InterpretationText", "ST", "1" },
+ { 0x4008, 0x010c,
+ "Interpretation Author", "InterpretationAuthor", "PN", "1" },
+ { 0x4008, 0x0111,
+ "Interpretation Approver Sequence", "InterpretationApproverSequence", "SQ", "1" },
+ { 0x4008, 0x0112,
+ "Interpretation Approval Date", "InterpretationApprovalDate", "DA", "1" },
+ { 0x4008, 0x0113,
+ "Interpretation Approval Time", "InterpretationApprovalTime", "TM", "1" },
+ { 0x4008, 0x0114,
+ "Physician Approving Interpretation", "PhysicianApprovingInterpretation", "PN", "1" },
+ { 0x4008, 0x0115,
+ "Interpretation Diagnosis Description", "InterpretationDiagnosisDescription", "LT", "1" },
+ { 0x4008, 0x0117,
+ "Interpretation Diagnosis Code Sequence", "InterpretationDiagnosisCodeSequence", "SQ", "1" },
+ { 0x4008, 0x0118,
+ "Results Distribution List Sequence", "ResultsDistributionListSequence", "SQ", "1" },
+ { 0x4008, 0x0119,
+ "Distribution Name", "DistributionName", "PN", "1" },
+ { 0x4008, 0x011a,
+ "Distribution Address", "DistributionAddress", "LO", "1" },
+ { 0x4008, 0x0200,
+ "Interpretation ID", "InterpretationID", "SH", "1" },
+ { 0x4008, 0x0202,
+ "Interpretation ID Issuer", "InterpretationIDIssuer", "LO", "1" },
+ { 0x4008, 0x0210,
+ "Interpretation Type ID", "InterpretationTypeID", "CS", "1" },
+ { 0x4008, 0x0212,
+ "Interpretation Status ID", "InterpretationStatusID", "CS", "1" },
+ { 0x4008, 0x0300,
+ "Impressions", "Impressions", "ST", "1" },
+ { 0x4008, 0x4000,
+ "Results Comments", "ResultsComments", "ST", "1" },
+ { 0x4010, 0x0001,
+ "Low Energy Detectors", "LowEnergyDetectors", "CS", "1" },
+ { 0x4010, 0x0002,
+ "High Energy Detectors", "HighEnergyDetectors", "CS", "1" },
+ { 0x4010, 0x0004,
+ "Detector Geometry Sequence", "DetectorGeometrySequence", "SQ", "1" },
+ { 0x4010, 0x1001,
+ "Threat ROI Voxel Sequence", "ThreatROIVoxelSequence", "SQ", "1" },
+ { 0x4010, 0x1004,
+ "Threat ROI Base", "ThreatROIBase", "FL", "3" },
+ { 0x4010, 0x1005,
+ "Threat ROI Extents", "ThreatROIExtents", "FL", "3" },
+ { 0x4010, 0x1006,
+ "Threat ROI Bitmap", "ThreatROIBitmap", "OB", "1" },
+ { 0x4010, 0x1007,
+ "Route Segment ID", "RouteSegmentID", "SH", "1" },
+ { 0x4010, 0x1008,
+ "Gantry Type", "GantryType", "CS", "1" },
+ { 0x4010, 0x1009,
+ "OOI Owner Type", "OOIOwnerType", "CS", "1" },
+ { 0x4010, 0x100a,
+ "Route Segment Sequence", "RouteSegmentSequence", "SQ", "1" },
+ { 0x4010, 0x1010,
+ "Potential Threat Object ID", "PotentialThreatObjectID", "US", "1" },
+ { 0x4010, 0x1011,
+ "Threat Sequence", "ThreatSequence", "SQ", "1" },
+ { 0x4010, 0x1012,
+ "Threat Category", "ThreatCategory", "CS", "1" },
+ { 0x4010, 0x1013,
+ "Threat Category Description", "ThreatCategoryDescription", "LT", "1" },
+ { 0x4010, 0x1014,
+ "ATD Ability Assessment", "ATDAbilityAssessment", "CS", "1" },
+ { 0x4010, 0x1015,
+ "ATD Assessment Flag", "ATDAssessmentFlag", "CS", "1" },
+ { 0x4010, 0x1016,
+ "ATD Assessment Probability", "ATDAssessmentProbability", "FL", "1" },
+ { 0x4010, 0x1017,
+ "Mass", "Mass", "FL", "1" },
+ { 0x4010, 0x1018,
+ "Density", "Density", "FL", "1" },
+ { 0x4010, 0x1019,
+ "Z Effective", "ZEffective", "FL", "1" },
+ { 0x4010, 0x101a,
+ "Boarding Pass ID", "BoardingPassID", "SH", "1" },
+ { 0x4010, 0x101b,
+ "Center of Mass", "CenterOfMass", "FL", "3" },
+ { 0x4010, 0x101c,
+ "Center of PTO", "CenterOfPTO", "FL", "3" },
+ { 0x4010, 0x101d,
+ "Bounding Polygon", "BoundingPolygon", "FL", "6-n" },
+ { 0x4010, 0x101e,
+ "Route Segment Start Location ID", "RouteSegmentStartLocationID", "SH", "1" },
+ { 0x4010, 0x101f,
+ "Route Segment End Location ID", "RouteSegmentEndLocationID", "SH", "1" },
+ { 0x4010, 0x1020,
+ "Route Segment Location ID Type", "RouteSegmentLocationIDType", "CS", "1" },
+ { 0x4010, 0x1021,
+ "Abort Reason", "AbortReason", "CS", "1-n" },
+ { 0x4010, 0x1023,
+ "Volume of PTO", "VolumeOfPTO", "FL", "1" },
+ { 0x4010, 0x1024,
+ "Abort Flag", "AbortFlag", "CS", "1" },
+ { 0x4010, 0x1025,
+ "Route Segment Start Time", "RouteSegmentStartTime", "DT", "1" },
+ { 0x4010, 0x1026,
+ "Route Segment End Time", "RouteSegmentEndTime", "DT", "1" },
+ { 0x4010, 0x1027,
+ "TDR Type", "TDRType", "CS", "1" },
+ { 0x4010, 0x1028,
+ "International Route Segment", "InternationalRouteSegment", "CS", "1" },
+ { 0x4010, 0x1029,
+ "Threat Detection Algorithm and Version", "ThreatDetectionAlgorithmandVersion", "LO", "1-n" },
+ { 0x4010, 0x102a,
+ "Assigned Location", "AssignedLocation", "SH", "1" },
+ { 0x4010, 0x102b,
+ "Alarm Decision Time", "AlarmDecisionTime", "DT", "1" },
+ { 0x4010, 0x1031,
+ "Alarm Decision", "AlarmDecision", "CS", "1" },
+ { 0x4010, 0x1033,
+ "Number of Total Objects", "NumberOfTotalObjects", "US", "1" },
+ { 0x4010, 0x1034,
+ "Number of Alarm Objects", "NumberOfAlarmObjects", "US", "1" },
+ { 0x4010, 0x1037,
+ "PTO Representation Sequence", "PTORepresentationSequence", "SQ", "1" },
+ { 0x4010, 0x1038,
+ "ATD Assessment Sequence", "ATDAssessmentSequence", "SQ", "1" },
+ { 0x4010, 0x1039,
+ "TIP Type", "TIPType", "CS", "1" },
+ { 0x4010, 0x103a,
+ "DICOS Version", "DICOSVersion", "CS", "1" },
+ { 0x4010, 0x1041,
+ "OOI Owner Creation Time", "OOIOwnerCreationTime", "DT", "1" },
+ { 0x4010, 0x1042,
+ "OOI Type", "OOIType", "CS", "1" },
+ { 0x4010, 0x1043,
+ "OOI Size", "OOISize", "FL", "3" },
+ { 0x4010, 0x1044,
+ "Acquisition Status", "AcquisitionStatus", "CS", "1" },
+ { 0x4010, 0x1045,
+ "Basis Materials Code Sequence", "BasisMaterialsCodeSequence", "SQ", "1" },
+ { 0x4010, 0x1046,
+ "Phantom Type", "PhantomType", "CS", "1" },
+ { 0x4010, 0x1047,
+ "OOI Owner Sequence", "OOIOwnerSequence", "SQ", "1" },
+ { 0x4010, 0x1048,
+ "Scan Type", "ScanType", "CS", "1" },
+ { 0x4010, 0x1051,
+ "Itinerary ID", "ItineraryID", "LO", "1" },
+ { 0x4010, 0x1052,
+ "Itinerary ID Type", "ItineraryIDType", "SH", "1" },
+ { 0x4010, 0x1053,
+ "Itinerary ID Assigning Authority", "ItineraryIDAssigningAuthority", "LO", "1" },
+ { 0x4010, 0x1054,
+ "Route ID", "RouteID", "SH", "1" },
+ { 0x4010, 0x1055,
+ "Route ID Assigning Authority", "RouteIDAssigningAuthority", "SH", "1" },
+ { 0x4010, 0x1056,
+ "Inbound Arrival Type", "InboundArrivalType", "CS", "1" },
+ { 0x4010, 0x1058,
+ "Carrier ID", "CarrierID", "SH", "1" },
+ { 0x4010, 0x1059,
+ "Carrier ID Assigning Authority", "CarrierIDAssigningAuthority", "CS", "1" },
+ { 0x4010, 0x1060,
+ "Source Orientation", "SourceOrientation", "FL", "3" },
+ { 0x4010, 0x1061,
+ "Source Position", "SourcePosition", "FL", "3" },
+ { 0x4010, 0x1062,
+ "Belt Height", "BeltHeight", "FL", "1" },
+ { 0x4010, 0x1064,
+ "Algorithm Routing Code Sequence", "AlgorithmRoutingCodeSequence", "SQ", "1" },
+ { 0x4010, 0x1067,
+ "Transport Classification", "TransportClassification", "CS", "1" },
+ { 0x4010, 0x1068,
+ "OOI Type Descriptor", "OOITypeDescriptor", "LT", "1" },
+ { 0x4010, 0x1069,
+ "Total Processing Time", "TotalProcessingTime", "FL", "1" },
+ { 0x4010, 0x106c,
+ "Detector Calibration Data", "DetectorCalibrationData", "OB", "1" },
+ { 0x4010, 0x106d,
+ "Additional Screening Performed", "AdditionalScreeningPerformed", "CS", "1" },
+ { 0x4010, 0x106e,
+ "Additional Inspection Selection Criteria", "AdditionalInspectionSelectionCriteria", "CS", "1" },
+ { 0x4010, 0x106f,
+ "Additional Inspection Method Sequence", "AdditionalInspectionMethodSequence", "SQ", "1" },
+ { 0x4010, 0x1070,
+ "AIT Device Type", "AITDeviceType", "CS", "1" },
+ { 0x4010, 0x1071,
+ "QR Measurements Sequence", "QRMeasurementsSequence", "SQ", "1" },
+ { 0x4010, 0x1072,
+ "Target Material Sequence", "TargetMaterialSequence", "SQ", "1" },
+ { 0x4010, 0x1073,
+ "SNR Threshold", "SNRThreshold", "FD", "1" },
+ { 0x4010, 0x1075,
+ "Image Scale Representation", "ImageScaleRepresentation", "DS", "1" },
+ { 0x4010, 0x1076,
+ "Referenced PTO Sequence", "ReferencedPTOSequence", "SQ", "1" },
+ { 0x4010, 0x1077,
+ "Referenced TDR Instance Sequence", "ReferencedTDRInstanceSequence", "SQ", "1" },
+ { 0x4010, 0x1078,
+ "PTO Location Description", "PTOLocationDescription", "ST", "1" },
+ { 0x4010, 0x1079,
+ "Anomaly Locator Indicator Sequence", "AnomalyLocatorIndicatorSequence", "SQ", "1" },
+ { 0x4010, 0x107a,
+ "Anomaly Locator Indicator", "AnomalyLocatorIndicator", "FL", "3" },
+ { 0x4010, 0x107b,
+ "PTO Region Sequence", "PTORegionSequence", "SQ", "1" },
+ { 0x4010, 0x107c,
+ "Inspection Selection Criteria", "InspectionSelectionCriteria", "CS", "1" },
+ { 0x4010, 0x107d,
+ "Secondary Inspection Method Sequence", "SecondaryInspectionMethodSequence", "SQ", "1" },
+ { 0x4010, 0x107e,
+ "PRCS to RCS Orientation", "PRCSToRCSOrientation", "DS", "6" },
+ { 0x4ffe, 0x0001,
+ "MAC Parameters Sequence", "MACParametersSequence", "SQ", "1" },
+ { 0x5200, 0x9229,
+ "Shared Functional Groups Sequence", "SharedFunctionalGroupsSequence", "SQ", "1" },
+ { 0x5200, 0x9230,
+ "Per-frame Functional Groups Sequence", "PerFrameFunctionalGroupsSequence", "SQ", "1" },
+ { 0x5400, 0x0100,
+ "Waveform Sequence", "WaveformSequence", "SQ", "1" },
+ { 0x5400, 0x0110,
+ "Channel Minimum Value", "ChannelMinimumValue", "OB or OW", "1" },
+ { 0x5400, 0x0112,
+ "Channel Maximum Value", "ChannelMaximumValue", "OB or OW", "1" },
+ { 0x5400, 0x1004,
+ "Waveform Bits Allocated", "WaveformBitsAllocated", "US", "1" },
+ { 0x5400, 0x1006,
+ "Waveform Sample Interpretation", "WaveformSampleInterpretation", "CS", "1" },
+ { 0x5400, 0x100a,
+ "Waveform Padding Value", "WaveformPaddingValue", "OB or OW", "1" },
+ { 0x5400, 0x1010,
+ "Waveform Data", "WaveformData", "OB or OW", "1" },
+ { 0x5600, 0x0010,
+ "First Order Phase Correction Angle", "FirstOrderPhaseCorrectionAngle", "OF", "1" },
+ { 0x5600, 0x0020,
+ "Spectroscopy Data", "SpectroscopyData", "OF", "1" },
+ { 0x7fe0, 0x0008,
+ "Float Pixel Data", "FloatPixelData", "OF", "1" },
+ { 0x7fe0, 0x0009,
+ "Double Float Pixel Data", "DoubleFloatPixelData", "OD", "1" },
+ { 0x7fe0, 0x0010,
+ "Pixel Data", "PixelData", "OB or OW", "1" },
+ { 0x7fe0, 0x0020,
+ "Coefficients SDVN", "CoefficientsSDVN", "OW", "1" },
+ { 0x7fe0, 0x0030,
+ "Coefficients SDHN", "CoefficientsSDHN", "OW", "1" },
+ { 0x7fe0, 0x0040,
+ "Coefficients SDDN", "CoefficientsSDDN", "OW", "1" },
+ { 0xfffa, 0xfffa,
+ "Digital Signatures Sequence", "DigitalSignaturesSequence", "SQ", "1" },
+ { 0xfffc, 0xfffc,
+ "Data Set Trailing Padding", "DataSetTrailingPadding", "OB", "1" },
+ { 0xfffe, 0xe000,
+ "Item", "Item", "See Note ", "1" },
+ { 0xfffe, 0xe00d,
+ "Item Delimitation Item", "ItemDelimitationItem", "See Note ", "1" },
+ { 0xfffe, 0xe0dd,
+ "Sequence Delimitation Item", "SequenceDelimitationItem", "See Note ", "1" },
+ };
+
+ ElementsDictionary public_dictionary;
+
+ unsigned long const count = sizeof(raw_entries)/sizeof(RawElementsDictionaryEntry);
+ for(unsigned long i=0; i<count; ++i)
+ {
+ RawElementsDictionaryEntry const & raw_entry = raw_entries[i];
+ Tag const tag(raw_entry.group, raw_entry.element);
+ ElementsDictionaryEntry const entry(
+ raw_entry.name, raw_entry.keyword, raw_entry.vr, raw_entry.vm);
+ public_dictionary.insert(std::pair<Tag, ElementsDictionaryEntry>(tag, entry));
+ }
+
+ return public_dictionary;
+}
+
+struct RawUIDsDictionaryEntry
+{
+ char const * uid;
+ char const * name;
+ char const * keyword;
+ char const * type;
+};
+
+UIDsDictionary create_uids_dictionary()
+{
+
+ RawUIDsDictionaryEntry raw_entries[] = {
+ { "1.2.840.10008.1.1", "Verification SOP Class", "VerificationSOPClass", "SOP Class" },
+ { "1.2.840.10008.1.2", "Implicit VR Little Endian: Default Transfer Syntax for DICOM", "ImplicitVRLittleEndian", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.1", "Explicit VR Little Endian", "ExplicitVRLittleEndian", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.1.99", "Deflated Explicit VR Little Endian", "DeflatedExplicitVRLittleEndian", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.2", "Explicit VR Big Endian (Retired)", "ExplicitVRBigEndian_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.50", "JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression", "JPEGBaselineProcess1", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.51", "JPEG Extended (Process 2 & 4): Default Transfer Syntax for Lossy JPEG 12 Bit Image Compression (Process 4 only)", "JPEGExtendedProcess24", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.52", "JPEG Extended (Process 3 & 5) (Retired)", "JPEGExtendedProcess35_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.53", "JPEG Spectral Selection, Non-Hierarchical (Process 6 & 8) (Retired)", "JPEGSpectralSelectionNonHierarchicalProcess68_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.54", "JPEG Spectral Selection, Non-Hierarchical (Process 7 & 9) (Retired)", "JPEGSpectralSelectionNonHierarchicalProcess79_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.55", "JPEG Full Progression, Non-Hierarchical (Process 10 & 12) (Retired)", "JPEGFullProgressionNonHierarchicalProcess1012_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.56", "JPEG Full Progression, Non-Hierarchical (Process 11 & 13) (Retired)", "JPEGFullProgressionNonHierarchicalProcess1113_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.57", "JPEG Lossless, Non-Hierarchical (Process 14)", "JPEGLosslessNonHierarchicalProcess14", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.58", "JPEG Lossless, Non-Hierarchical (Process 15) (Retired)", "JPEGLosslessNonHierarchicalProcess15_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.59", "JPEG Extended, Hierarchical (Process 16 & 18) (Retired)", "JPEGExtendedHierarchicalProcess1618_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.60", "JPEG Extended, Hierarchical (Process 17 & 19) (Retired)", "JPEGExtendedHierarchicalProcess1719_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.61", "JPEG Spectral Selection, Hierarchical (Process 20 & 22) (Retired)", "JPEGSpectralSelectionHierarchicalProcess2022_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.62", "JPEG Spectral Selection, Hierarchical (Process 21 & 23) (Retired)", "JPEGSpectralSelectionHierarchicalProcess2123_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.63", "JPEG Full Progression, Hierarchical (Process 24 & 26) (Retired)", "JPEGFullProgressionHierarchicalProcess2426_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.64", "JPEG Full Progression, Hierarchical (Process 25 & 27) (Retired)", "JPEGFullProgressionHierarchicalProcess2527_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.65", "JPEG Lossless, Hierarchical (Process 28) (Retired)", "JPEGLosslessHierarchicalProcess28_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.66", "JPEG Lossless, Hierarchical (Process 29) (Retired)", "JPEGLosslessHierarchicalProcess29_Retired", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.70", "JPEG Lossless, Non-Hierarchical, First-Order Prediction (Process 14 [Selection Value 1]): Default Transfer Syntax for Lossless JPEG Image Compression", "JPEGLosslessNonHierarchicalFirstOrderPredictionProcess14SelectionValue1", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.80", "JPEG-LS Lossless Image Compression", "JPEGLSLosslessImageCompression", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.81", "JPEG-LS Lossy (Near-Lossless) Image Compression", "JPEGLSLossyNearLosslessImageCompression", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.90", "JPEG 2000 Image Compression (Lossless Only)", "JPEG2000ImageCompressionLosslessOnly", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.91", "JPEG 2000 Image Compression", "JPEG2000ImageCompression", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.92", "JPEG 2000 Part 2 Multi-component Image Compression (Lossless Only)", "JPEG2000Part2MulticomponentImageCompressionLosslessOnly", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.93", "JPEG 2000 Part 2 Multi-component Image Compression", "JPEG2000Part2MulticomponentImageCompression", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.94", "JPIP Referenced", "JPIPReferenced", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.95", "JPIP Referenced Deflate", "JPIPReferencedDeflate", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.100", "MPEG2 Main Profile @ Main Level", "MPEG2MainProfileMainLevel", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.101", "MPEG2 Main Profile @ High Level", "MPEG2MainProfileHighLevel", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.102", "MPEG-4 AVC/H.264 High Profile / Level 4.1", "MPEG4AVCH264HighProfileLevel41", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.103", "MPEG-4 AVC/H.264 BD-compatible High Profile / Level 4.1", "MPEG4AVCH264BDcompatibleHighProfileLevel41", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.104", "MPEG-4 AVC/H.264 High Profile / Level 4.2 For 2D Video", "MPEG4AVCH264HighProfileLevel42For2DVideo", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.105", "MPEG-4 AVC/H.264 High Profile / Level 4.2 For 3D Video", "MPEG4AVCH264HighProfileLevel42For3DVideo", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.4.106", "MPEG-4 AVC/H.264 Stereo High Profile / Level 4.2", "MPEG4AVCH264StereoHighProfileLevel42", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.5", "RLE Lossless", "RLELossless", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.6.1", "RFC 2557 MIME encapsulation", "RFC2557MIMEencapsulation", "Transfer Syntax" },
+ { "1.2.840.10008.1.2.6.2", "XML Encoding", "XMLEncoding", "Transfer Syntax" },
+ { "1.2.840.10008.1.3.10", "Media Storage Directory Storage", "MediaStorageDirectoryStorage", "SOP Class" },
+ { "1.2.840.10008.1.4.1.1", "Talairach Brain Atlas Frame of Reference", "TalairachBrainAtlasFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.2", "SPM2 T1 Frame of Reference", "SPM2T1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.3", "SPM2 T2 Frame of Reference", "SPM2T2FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.4", "SPM2 PD Frame of Reference", "SPM2PDFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.5", "SPM2 EPI Frame of Reference", "SPM2EPIFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.6", "SPM2 FIL T1 Frame of Reference", "SPM2FILT1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.7", "SPM2 PET Frame of Reference", "SPM2PETFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.8", "SPM2 TRANSM Frame of Reference", "SPM2TRANSMFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.9", "SPM2 SPECT Frame of Reference", "SPM2SPECTFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.10", "SPM2 GRAY Frame of Reference", "SPM2GRAYFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.11", "SPM2 WHITE Frame of Reference", "SPM2WHITEFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.12", "SPM2 CSF Frame of Reference", "SPM2CSFFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.13", "SPM2 BRAINMASK Frame of Reference", "SPM2BRAINMASKFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.14", "SPM2 AVG305T1 Frame of Reference", "SPM2AVG305T1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.15", "SPM2 AVG152T1 Frame of Reference", "SPM2AVG152T1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.16", "SPM2 AVG152T2 Frame of Reference", "SPM2AVG152T2FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.17", "SPM2 AVG152PD Frame of Reference", "SPM2AVG152PDFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.1.18", "SPM2 SINGLESUBJT1 Frame of Reference", "SPM2SINGLESUBJT1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.2.1", "ICBM 452 T1 Frame of Reference", "ICBM452T1FrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.4.2.2", "ICBM Single Subject MRI Frame of Reference", "ICBMSingleSubjectMRIFrameofReference", "Well-known frame of reference" },
+ { "1.2.840.10008.1.5.1", "Hot Iron Color Palette SOP Instance", "HotIronColorPaletteSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.5.2", "PET Color Palette SOP Instance", "PETColorPaletteSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.5.3", "Hot Metal Blue Color Palette SOP Instance", "HotMetalBlueColorPaletteSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.5.4", "PET 20 Step Color Palette SOP Instance", "PET20StepColorPaletteSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.9", "Basic Study Content Notification SOP Class (Retired)", "BasicStudyContentNotificationSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.1.20.1", "Storage Commitment Push Model SOP Class", "StorageCommitmentPushModelSOPClass", "SOP Class" },
+ { "1.2.840.10008.1.20.1.1", "Storage Commitment Push Model SOP Instance", "StorageCommitmentPushModelSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.20.2", "Storage Commitment Pull Model SOP Class (Retired)", "StorageCommitmentPullModelSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.1.20.2.1", "Storage Commitment Pull Model SOP Instance (Retired)", "StorageCommitmentPullModelSOPInstance_Retired", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.40", "Procedural Event Logging SOP Class", "ProceduralEventLoggingSOPClass", "SOP Class" },
+ { "1.2.840.10008.1.40.1", "Procedural Event Logging SOP Instance", "ProceduralEventLoggingSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.1.42", "Substance Administration Logging SOP Class", "SubstanceAdministrationLoggingSOPClass", "SOP Class" },
+ { "1.2.840.10008.1.42.1", "Substance Administration Logging SOP Instance", "SubstanceAdministrationLoggingSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.2.6.1", "DICOM UID Registry", "DICOMUIDRegistry", "DICOM UIDs as a Coding Scheme" },
+ { "1.2.840.10008.2.16.4", "DICOM Controlled Terminology", "DICOMControlledTerminology", "Coding Scheme" },
+ { "1.2.840.10008.3.1.1.1", "DICOM Application Context Name", "DICOMApplicationContextName", "Application Context Name" },
+ { "1.2.840.10008.3.1.2.1.1", "Detached Patient Management SOP Class (Retired)", "DetachedPatientManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.3.1.2.1.4", "Detached Patient Management Meta SOP Class (Retired)", "DetachedPatientManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.3.1.2.2.1", "Detached Visit Management SOP Class (Retired)", "DetachedVisitManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.3.1.2.3.1", "Detached Study Management SOP Class (Retired)", "DetachedStudyManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.3.1.2.3.2", "Study Component Management SOP Class (Retired)", "StudyComponentManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.3.1.2.3.3", "Modality Performed Procedure Step SOP Class", "ModalityPerformedProcedureStepSOPClass", "SOP Class" },
+ { "1.2.840.10008.3.1.2.3.4", "Modality Performed Procedure Step Retrieve SOP Class", "ModalityPerformedProcedureStepRetrieveSOPClass", "SOP Class" },
+ { "1.2.840.10008.3.1.2.3.5", "Modality Performed Procedure Step Notification SOP Class", "ModalityPerformedProcedureStepNotificationSOPClass", "SOP Class" },
+ { "1.2.840.10008.3.1.2.5.1", "Detached Results Management SOP Class (Retired)", "DetachedResultsManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.3.1.2.5.4", "Detached Results Management Meta SOP Class (Retired)", "DetachedResultsManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.3.1.2.5.5", "Detached Study Management Meta SOP Class (Retired)", "DetachedStudyManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.3.1.2.6.1", "Detached Interpretation Management SOP Class (Retired)", "DetachedInterpretationManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.4.2", "Storage Service Class", "StorageServiceClass", "Service Class" },
+ { "1.2.840.10008.5.1.1.1", "Basic Film Session SOP Class", "BasicFilmSessionSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.2", "Basic Film Box SOP Class", "BasicFilmBoxSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.4", "Basic Grayscale Image Box SOP Class", "BasicGrayscaleImageBoxSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.4.1", "Basic Color Image Box SOP Class", "BasicColorImageBoxSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.4.2", "Referenced Image Box SOP Class (Retired)", "ReferencedImageBoxSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.9", "Basic Grayscale Print Management Meta SOP Class", "BasicGrayscalePrintManagementMetaSOPClass", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.1.9.1", "Referenced Grayscale Print Management Meta SOP Class (Retired)", "ReferencedGrayscalePrintManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.1.14", "Print Job SOP Class", "PrintJobSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.15", "Basic Annotation Box SOP Class", "BasicAnnotationBoxSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.16", "Printer SOP Class", "PrinterSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.16.376", "Printer Configuration Retrieval SOP Class", "PrinterConfigurationRetrievalSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.17", "Printer SOP Instance", "PrinterSOPInstance", "Well-known Printer SOP Instance" },
+ { "1.2.840.10008.5.1.1.17.376", "Printer Configuration Retrieval SOP Instance", "PrinterConfigurationRetrievalSOPInstance", "Well-known Printer SOP Instance" },
+ { "1.2.840.10008.5.1.1.18", "Basic Color Print Management Meta SOP Class", "BasicColorPrintManagementMetaSOPClass", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.1.18.1", "Referenced Color Print Management Meta SOP Class (Retired)", "ReferencedColorPrintManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.1.22", "VOI LUT Box SOP Class", "VOILUTBoxSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.23", "Presentation LUT SOP Class", "PresentationLUTSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.24", "Image Overlay Box SOP Class (Retired)", "ImageOverlayBoxSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.24.1", "Basic Print Image Overlay Box SOP Class (Retired)", "BasicPrintImageOverlayBoxSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.25", "Print Queue SOP Instance (Retired)", "PrintQueueSOPInstance_Retired", "Well-known Print Queue SOP Instance" },
+ { "1.2.840.10008.5.1.1.26", "Print Queue Management SOP Class (Retired)", "PrintQueueManagementSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.27", "Stored Print Storage SOP Class (Retired)", "StoredPrintStorageSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.29", "Hardcopy Grayscale Image Storage SOP Class (Retired)", "HardcopyGrayscaleImageStorageSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.30", "Hardcopy Color Image Storage SOP Class (Retired)", "HardcopyColorImageStorageSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.31", "Pull Print Request SOP Class (Retired)", "PullPrintRequestSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.1.32", "Pull Stored Print Management Meta SOP Class (Retired)", "PullStoredPrintManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.1.33", "Media Creation Management SOP Class UID", "MediaCreationManagementSOPClassUID", "SOP Class" },
+ { "1.2.840.10008.5.1.1.40", "Display System SOP Class", "DisplaySystemSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.1.40.1", "Display System SOP Instance", "DisplaySystemSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.5.1.4.1.1.1", "Computed Radiography Image Storage", "ComputedRadiographyImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.1", "Digital X-Ray Image Storage - For Presentation", "DigitalXRayImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.1.1", "Digital X-Ray Image Storage - For Processing", "DigitalXRayImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.2", "Digital Mammography X-Ray Image Storage - For Presentation", "DigitalMammographyXRayImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.2.1", "Digital Mammography X-Ray Image Storage - For Processing", "DigitalMammographyXRayImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.3", "Digital Intra-Oral X-Ray Image Storage - For Presentation", "DigitalIntraOralXRayImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.1.3.1", "Digital Intra-Oral X-Ray Image Storage - For Processing", "DigitalIntraOralXRayImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.2", "CT Image Storage", "CTImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.2.1", "Enhanced CT Image Storage", "EnhancedCTImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.2.2", "Legacy Converted Enhanced CT Image Storage", "LegacyConvertedEnhancedCTImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.3", "Ultrasound Multi-frame Image Storage (Retired)", "UltrasoundMultiframeImageStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.3.1", "Ultrasound Multi-frame Image Storage", "UltrasoundMultiframeImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.4", "MR Image Storage", "MRImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.4.1", "Enhanced MR Image Storage", "EnhancedMRImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.4.2", "MR Spectroscopy Storage", "MRSpectroscopyStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.4.3", "Enhanced MR Color Image Storage", "EnhancedMRColorImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.4.4", "Legacy Converted Enhanced MR Image Storage", "LegacyConvertedEnhancedMRImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.5", "Nuclear Medicine Image Storage (Retired)", "NuclearMedicineImageStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.6", "Ultrasound Image Storage (Retired)", "UltrasoundImageStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.6.1", "Ultrasound Image Storage", "UltrasoundImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.6.2", "Enhanced US Volume Storage", "EnhancedUSVolumeStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.7", "Secondary Capture Image Storage", "SecondaryCaptureImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.7.1", "Multi-frame Single Bit Secondary Capture Image Storage", "MultiframeSingleBitSecondaryCaptureImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.7.2", "Multi-frame Grayscale Byte Secondary Capture Image Storage", "MultiframeGrayscaleByteSecondaryCaptureImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.7.3", "Multi-frame Grayscale Word Secondary Capture Image Storage", "MultiframeGrayscaleWordSecondaryCaptureImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.7.4", "Multi-frame True Color Secondary Capture Image Storage", "MultiframeTrueColorSecondaryCaptureImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.8", "Standalone Overlay Storage (Retired)", "StandaloneOverlayStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9", "Standalone Curve Storage (Retired)", "StandaloneCurveStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.1", "Waveform Storage - Trial (Retired)", "WaveformStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.1.1", "12-lead ECG Waveform Storage", "TwelveleadECGWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.1.2", "General ECG Waveform Storage", "GeneralECGWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.1.3", "Ambulatory ECG Waveform Storage", "AmbulatoryECGWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.2.1", "Hemodynamic Waveform Storage", "HemodynamicWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.3.1", "Cardiac Electrophysiology Waveform Storage", "CardiacElectrophysiologyWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.4.1", "Basic Voice Audio Waveform Storage", "BasicVoiceAudioWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.4.2", "General Audio Waveform Storage", "GeneralAudioWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.5.1", "Arterial Pulse Waveform Storage", "ArterialPulseWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.9.6.1", "Respiratory Waveform Storage", "RespiratoryWaveformStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.10", "Standalone Modality LUT Storage (Retired)", "StandaloneModalityLUTStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11", "Standalone VOI LUT Storage (Retired)", "StandaloneVOILUTStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11.1", "Grayscale Softcopy Presentation State Storage SOP Class", "GrayscaleSoftcopyPresentationStateStorageSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11.2", "Color Softcopy Presentation State Storage SOP Class", "ColorSoftcopyPresentationStateStorageSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11.3", "Pseudo-Color Softcopy Presentation State Storage SOP Class", "PseudoColorSoftcopyPresentationStateStorageSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11.4", "Blending Softcopy Presentation State Storage SOP Class", "BlendingSoftcopyPresentationStateStorageSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.11.5", "XA/XRF Grayscale Softcopy Presentation State Storage", "XAXRFGrayscaleSoftcopyPresentationStateStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.12.1", "X-Ray Angiographic Image Storage", "XRayAngiographicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.12.1.1", "Enhanced XA Image Storage", "EnhancedXAImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.12.2", "X-Ray Radiofluoroscopic Image Storage", "XRayRadiofluoroscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.12.2.1", "Enhanced XRF Image Storage", "EnhancedXRFImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.12.3", "X-Ray Angiographic Bi-Plane Image Storage (Retired)", "XRayAngiographicBiPlaneImageStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.13.1.1", "X-Ray 3D Angiographic Image Storage", "XRay3DAngiographicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.13.1.2", "X-Ray 3D Craniofacial Image Storage", "XRay3DCraniofacialImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.13.1.3", "Breast Tomosynthesis Image Storage", "BreastTomosynthesisImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.13.1.4", "Breast Projection X-Ray Image Storage - For Presentation", "BreastProjectionXRayImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.13.1.5", "Breast Projection X-Ray Image Storage - For Processing", "BreastProjectionXRayImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.14.1", "Intravascular Optical Coherence Tomography Image Storage - For Presentation", "IntravascularOpticalCoherenceTomographyImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.14.2", "Intravascular Optical Coherence Tomography Image Storage - For Processing", "IntravascularOpticalCoherenceTomographyImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.20", "Nuclear Medicine Image Storage", "NuclearMedicineImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.30", "Parametric Map Storage", "ParametricMapStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66", "Raw Data Storage", "RawDataStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66.1", "Spatial Registration Storage", "SpatialRegistrationStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66.2", "Spatial Fiducials Storage", "SpatialFiducialsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66.3", "Deformable Spatial Registration Storage", "DeformableSpatialRegistrationStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66.4", "Segmentation Storage", "SegmentationStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.66.5", "Surface Segmentation Storage", "SurfaceSegmentationStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.67", "Real World Value Mapping Storage", "RealWorldValueMappingStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.68.1", "Surface Scan Mesh Storage", "SurfaceScanMeshStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.68.2", "Surface Scan Point Cloud Storage", "SurfaceScanPointCloudStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1", "VL Image Storage - Trial (Retired)", "VLImageStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.2", "VL Multi-frame Image Storage - Trial (Retired)", "VLMultiframeImageStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.1", "VL Endoscopic Image Storage", "VLEndoscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.1.1", "Video Endoscopic Image Storage", "VideoEndoscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.2", "VL Microscopic Image Storage", "VLMicroscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.2.1", "Video Microscopic Image Storage", "VideoMicroscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.3", "VL Slide-Coordinates Microscopic Image Storage", "VLSlideCoordinatesMicroscopicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.4", "VL Photographic Image Storage", "VLPhotographicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.4.1", "Video Photographic Image Storage", "VideoPhotographicImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.1", "Ophthalmic Photography 8 Bit Image Storage", "OphthalmicPhotography8BitImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.2", "Ophthalmic Photography 16 Bit Image Storage", "OphthalmicPhotography16BitImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.3", "Stereometric Relationship Storage", "StereometricRelationshipStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.4", "Ophthalmic Tomography Image Storage", "OphthalmicTomographyImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.5", "Wide Field Ophthalmic Photography Stereographic Projection Image Storage", "WideFieldOphthalmicPhotographyStereographicProjectionImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.5.6", "Wide Field Ophthalmic Photography 3D Coordinates Image Storage", "WideFieldOphthalmicPhotography3DCoordinatesImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.77.1.6", "VL Whole Slide Microscopy Image Storage", "VLWholeSlideMicroscopyImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.1", "Lensometry Measurements Storage", "LensometryMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.2", "Autorefraction Measurements Storage", "AutorefractionMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.3", "Keratometry Measurements Storage", "KeratometryMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.4", "Subjective Refraction Measurements Storage", "SubjectiveRefractionMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.5", "Visual Acuity Measurements Storage", "VisualAcuityMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.6", "Spectacle Prescription Report Storage", "SpectaclePrescriptionReportStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.7", "Ophthalmic Axial Measurements Storage", "OphthalmicAxialMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.78.8", "Intraocular Lens Calculations Storage", "IntraocularLensCalculationsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.79.1", "Macular Grid Thickness and Volume Report Storage", "MacularGridThicknessandVolumeReportStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.80.1", "Ophthalmic Visual Field Static Perimetry Measurements Storage", "OphthalmicVisualFieldStaticPerimetryMeasurementsStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.81.1", "Ophthalmic Thickness Map Storage", "OphthalmicThicknessMapStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.82.1", "Corneal Topography Map Storage", "CornealTopographyMapStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.1", "Text SR Storage - Trial (Retired)", "TextSRStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.2", "Audio SR Storage - Trial (Retired)", "AudioSRStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.3", "Detail SR Storage - Trial (Retired)", "DetailSRStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.4", "Comprehensive SR Storage - Trial (Retired)", "ComprehensiveSRStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.11", "Basic Text SR Storage", "BasicTextSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.22", "Enhanced SR Storage", "EnhancedSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.33", "Comprehensive SR Storage", "ComprehensiveSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.34", "Comprehensive 3D SR Storage", "Comprehensive3DSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.35", "Extensible SR Storage", "ExtensibleSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.40", "Procedure Log Storage", "ProcedureLogStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.50", "Mammography CAD SR Storage", "MammographyCADSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.59", "Key Object Selection Document Storage", "KeyObjectSelectionDocumentStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.65", "Chest CAD SR Storage", "ChestCADSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.67", "X-Ray Radiation Dose SR Storage", "XRayRadiationDoseSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.68", "Radiopharmaceutical Radiation Dose SR Storage", "RadiopharmaceuticalRadiationDoseSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.69", "Colon CAD SR Storage", "ColonCADSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.88.70", "Implantation Plan SR Storage", "ImplantationPlanSRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.104.1", "Encapsulated PDF Storage", "EncapsulatedPDFStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.104.2", "Encapsulated CDA Storage", "EncapsulatedCDAStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.128", "Positron Emission Tomography Image Storage", "PositronEmissionTomographyImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.128.1", "Legacy Converted Enhanced PET Image Storage", "LegacyConvertedEnhancedPETImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.129", "Standalone PET Curve Storage (Retired)", "StandalonePETCurveStorage_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.130", "Enhanced PET Image Storage", "EnhancedPETImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.131", "Basic Structured Display Storage", "BasicStructuredDisplayStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.1", "RT Image Storage", "RTImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.2", "RT Dose Storage", "RTDoseStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.3", "RT Structure Set Storage", "RTStructureSetStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.4", "RT Beams Treatment Record Storage", "RTBeamsTreatmentRecordStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.5", "RT Plan Storage", "RTPlanStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.6", "RT Brachy Treatment Record Storage", "RTBrachyTreatmentRecordStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.7", "RT Treatment Summary Record Storage", "RTTreatmentSummaryRecordStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.8", "RT Ion Plan Storage", "RTIonPlanStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.481.9", "RT Ion Beams Treatment Record Storage", "RTIonBeamsTreatmentRecordStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.1", "DICOS CT Image Storage", "DICOSCTImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.2.1", "DICOS Digital X-Ray Image Storage - For Presentation", "DICOSDigitalXRayImageStorageForPresentation", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.2.2", "DICOS Digital X-Ray Image Storage - For Processing", "DICOSDigitalXRayImageStorageForProcessing", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.3", "DICOS Threat Detection Report Storage", "DICOSThreatDetectionReportStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.4", "DICOS 2D AIT Storage", "DICOS2DAITStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.5", "DICOS 3D AIT Storage", "DICOS3DAITStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.501.6", "DICOS Quadrupole Resonance (QR) Storage", "DICOSQuadrupoleResonanceQRStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.601.1", "Eddy Current Image Storage", "EddyCurrentImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.1.601.2", "Eddy Current Multi-frame Image Storage", "EddyCurrentMultiframeImageStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.1.1", "Patient Root Query/Retrieve Information Model - FIND", "PatientRootQueryRetrieveInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.1.2", "Patient Root Query/Retrieve Information Model - MOVE", "PatientRootQueryRetrieveInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.1.3", "Patient Root Query/Retrieve Information Model - GET", "PatientRootQueryRetrieveInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.2.1", "Study Root Query/Retrieve Information Model - FIND", "StudyRootQueryRetrieveInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.2.2", "Study Root Query/Retrieve Information Model - MOVE", "StudyRootQueryRetrieveInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.2.3", "Study Root Query/Retrieve Information Model - GET", "StudyRootQueryRetrieveInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.3.1", "Patient/Study Only Query/Retrieve Information Model - FIND (Retired)", "PatientStudyOnlyQueryRetrieveInformationModelFIND_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.3.2", "Patient/Study Only Query/Retrieve Information Model - MOVE (Retired)", "PatientStudyOnlyQueryRetrieveInformationModelMOVE_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.3.3", "Patient/Study Only Query/Retrieve Information Model - GET (Retired)", "PatientStudyOnlyQueryRetrieveInformationModelGET_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.4.2", "Composite Instance Root Retrieve - MOVE", "CompositeInstanceRootRetrieveMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.4.3", "Composite Instance Root Retrieve - GET", "CompositeInstanceRootRetrieveGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.1.2.5.3", "Composite Instance Retrieve Without Bulk Data - GET", "CompositeInstanceRetrieveWithoutBulkDataGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.31", "Modality Worklist Information Model - FIND", "ModalityWorklistInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.32", "General Purpose Worklist Management Meta SOP Class (Retired)", "GeneralPurposeWorklistManagementMetaSOPClass_Retired", "Meta SOP Class" },
+ { "1.2.840.10008.5.1.4.32.1", "General Purpose Worklist Information Model - FIND (Retired)", "GeneralPurposeWorklistInformationModelFIND_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.32.2", "General Purpose Scheduled Procedure Step SOP Class (Retired)", "GeneralPurposeScheduledProcedureStepSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.32.3", "General Purpose Performed Procedure Step SOP Class (Retired)", "GeneralPurposePerformedProcedureStepSOPClass_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.33", "Instance Availability Notification SOP Class", "InstanceAvailabilityNotificationSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.1", "RT Beams Delivery Instruction Storage - Trial (Retired)", "RTBeamsDeliveryInstructionStorageTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.2", "RT Conventional Machine Verification - Trial (Retired)", "RTConventionalMachineVerificationTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.3", "RT Ion Machine Verification - Trial (Retired)", "RTIonMachineVerificationTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.4", "Unified Worklist and Procedure Step Service Class - Trial (Retired)", "UnifiedWorklistandProcedureStepServiceClassTrial_Retired", "Service Class" },
+ { "1.2.840.10008.5.1.4.34.4.1", "Unified Procedure Step - Push SOP Class - Trial (Retired)", "UnifiedProcedureStepPushSOPClassTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.4.2", "Unified Procedure Step - Watch SOP Class - Trial (Retired)", "UnifiedProcedureStepWatchSOPClassTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.4.3", "Unified Procedure Step - Pull SOP Class - Trial (Retired)", "UnifiedProcedureStepPullSOPClassTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.4.4", "Unified Procedure Step - Event SOP Class - Trial (Retired)", "UnifiedProcedureStepEventSOPClassTrial_Retired", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.5", "UPS Global Subscription SOP Instance", "UPSGlobalSubscriptionSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.5.1.4.34.5.1", "UPS Filtered Global Subscription SOP Instance", "UPSFilteredGlobalSubscriptionSOPInstance", "Well-known SOP Instance" },
+ { "1.2.840.10008.5.1.4.34.6", "Unified Worklist and Procedure Step Service Class", "UnifiedWorklistandProcedureStepServiceClass", "Service Class" },
+ { "1.2.840.10008.5.1.4.34.6.1", "Unified Procedure Step - Push SOP Class", "UnifiedProcedureStepPushSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.6.2", "Unified Procedure Step - Watch SOP Class", "UnifiedProcedureStepWatchSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.6.3", "Unified Procedure Step - Pull SOP Class", "UnifiedProcedureStepPullSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.6.4", "Unified Procedure Step - Event SOP Class", "UnifiedProcedureStepEventSOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.7", "RT Beams Delivery Instruction Storage", "RTBeamsDeliveryInstructionStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.8", "RT Conventional Machine Verification", "RTConventionalMachineVerification", "SOP Class" },
+ { "1.2.840.10008.5.1.4.34.9", "RT Ion Machine Verification", "RTIonMachineVerification", "SOP Class" },
+ { "1.2.840.10008.5.1.4.37.1", "General Relevant Patient Information Query", "GeneralRelevantPatientInformationQuery", "SOP Class" },
+ { "1.2.840.10008.5.1.4.37.2", "Breast Imaging Relevant Patient Information Query", "BreastImagingRelevantPatientInformationQuery", "SOP Class" },
+ { "1.2.840.10008.5.1.4.37.3", "Cardiac Relevant Patient Information Query", "CardiacRelevantPatientInformationQuery", "SOP Class" },
+ { "1.2.840.10008.5.1.4.38.1", "Hanging Protocol Storage", "HangingProtocolStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.38.2", "Hanging Protocol Information Model - FIND", "HangingProtocolInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.38.3", "Hanging Protocol Information Model - MOVE", "HangingProtocolInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.38.4", "Hanging Protocol Information Model - GET", "HangingProtocolInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.39.1", "Color Palette Storage", "ColorPaletteStorage", "Transfer" },
+ { "1.2.840.10008.5.1.4.39.2", "Color Palette Information Model - FIND", "ColorPaletteInformationModelFIND", "Query/Retrieve" },
+ { "1.2.840.10008.5.1.4.39.3", "Color Palette Information Model - MOVE", "ColorPaletteInformationModelMOVE", "Query/Retrieve" },
+ { "1.2.840.10008.5.1.4.39.4", "Color Palette Information Model - GET", "ColorPaletteInformationModelGET", "Query/Retrieve" },
+ { "1.2.840.10008.5.1.4.41", "Product Characteristics Query SOP Class", "ProductCharacteristicsQuerySOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.42", "Substance Approval Query SOP Class", "SubstanceApprovalQuerySOPClass", "SOP Class" },
+ { "1.2.840.10008.5.1.4.43.1", "Generic Implant Template Storage", "GenericImplantTemplateStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.43.2", "Generic Implant Template Information Model - FIND", "GenericImplantTemplateInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.43.3", "Generic Implant Template Information Model - MOVE", "GenericImplantTemplateInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.43.4", "Generic Implant Template Information Model - GET", "GenericImplantTemplateInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.44.1", "Implant Assembly Template Storage", "ImplantAssemblyTemplateStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.44.2", "Implant Assembly Template Information Model - FIND", "ImplantAssemblyTemplateInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.44.3", "Implant Assembly Template Information Model - MOVE", "ImplantAssemblyTemplateInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.44.4", "Implant Assembly Template Information Model - GET", "ImplantAssemblyTemplateInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.5.1.4.45.1", "Implant Template Group Storage", "ImplantTemplateGroupStorage", "SOP Class" },
+ { "1.2.840.10008.5.1.4.45.2", "Implant Template Group Information Model - FIND", "ImplantTemplateGroupInformationModelFIND", "SOP Class" },
+ { "1.2.840.10008.5.1.4.45.3", "Implant Template Group Information Model - MOVE", "ImplantTemplateGroupInformationModelMOVE", "SOP Class" },
+ { "1.2.840.10008.5.1.4.45.4", "Implant Template Group Information Model - GET", "ImplantTemplateGroupInformationModelGET", "SOP Class" },
+ { "1.2.840.10008.7.1.1", "Native DICOM Model", "NativeDICOMModel", "Application Hosting Model" },
+ { "1.2.840.10008.7.1.2", "Abstract Multi-Dimensional Image Model", "AbstractMultiDimensionalImageModel", "Application Hosting Model" },
+ { "1.2.840.10008.8.1.1", "DICOM Content Mapping Resource", "DICOMContentMappingResource", "Mapping Resource" },
+ { "1.2.840.10008.15.0.3.1", "dicomDeviceName", "dicomDeviceName", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.2", "dicomDescription", "dicomDescription", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.3", "dicomManufacturer", "dicomManufacturer", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.4", "dicomManufacturerModelName", "dicomManufacturerModelName", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.5", "dicomSoftwareVersion", "dicomSoftwareVersion", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.6", "dicomVendorData", "dicomVendorData", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.7", "dicomAETitle", "dicomAETitle", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.8", "dicomNetworkConnectionReference", "dicomNetworkConnectionReference", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.9", "dicomApplicationCluster", "dicomApplicationCluster", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.10", "dicomAssociationInitiator", "dicomAssociationInitiator", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.11", "dicomAssociationAcceptor", "dicomAssociationAcceptor", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.12", "dicomHostname", "dicomHostname", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.13", "dicomPort", "dicomPort", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.14", "dicomSOPClass", "dicomSOPClass", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.15", "dicomTransferRole", "dicomTransferRole", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.16", "dicomTransferSyntax", "dicomTransferSyntax", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.17", "dicomPrimaryDeviceType", "dicomPrimaryDeviceType", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.18", "dicomRelatedDeviceReference", "dicomRelatedDeviceReference", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.19", "dicomPreferredCalledAETitle", "dicomPreferredCalledAETitle", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.20", "dicomTLSCyphersuite", "dicomTLSCyphersuite", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.21", "dicomAuthorizedNodeCertificateReference", "dicomAuthorizedNodeCertificateReference", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.22", "dicomThisNodeCertificateReference", "dicomThisNodeCertificateReference", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.23", "dicomInstalled", "dicomInstalled", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.24", "dicomStationName", "dicomStationName", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.25", "dicomDeviceSerialNumber", "dicomDeviceSerialNumber", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.26", "dicomInstitutionName", "dicomInstitutionName", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.27", "dicomInstitutionAddress", "dicomInstitutionAddress", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.28", "dicomInstitutionDepartmentName", "dicomInstitutionDepartmentName", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.29", "dicomIssuerOfPatientID", "dicomIssuerOfPatientID", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.30", "dicomPreferredCallingAETitle", "dicomPreferredCallingAETitle", "LDAP OID" },
+ { "1.2.840.10008.15.0.3.31", "dicomSupportedCharacterSet", "dicomSupportedCharacterSet", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.1", "dicomConfigurationRoot", "dicomConfigurationRoot", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.2", "dicomDevicesRoot", "dicomDevicesRoot", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.3", "dicomUniqueAETitlesRegistryRoot", "dicomUniqueAETitlesRegistryRoot", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.4", "dicomDevice", "dicomDevice", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.5", "dicomNetworkAE", "dicomNetworkAE", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.6", "dicomNetworkConnection", "dicomNetworkConnection", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.7", "dicomUniqueAETitle", "dicomUniqueAETitle", "LDAP OID" },
+ { "1.2.840.10008.15.0.4.8", "dicomTransferCapability", "dicomTransferCapability", "LDAP OID" },
+ { "1.2.840.10008.15.1.1", "Universal Coordinated Time", "UniversalCoordinatedTime", "Synchronization Frame of Reference" },
+ };
+
+ UIDsDictionary uids_dictionary;
+
+ unsigned long const count = sizeof(raw_entries)/sizeof(RawUIDsDictionaryEntry);
+ for(unsigned long i=0; i<count; ++i)
+ {
+ RawUIDsDictionaryEntry const & raw_entry = raw_entries[i];
+ UIDsDictionaryEntry const entry(
+ raw_entry.name, raw_entry.keyword, raw_entry.type);
+ uids_dictionary.insert(std::pair<std::string, UIDsDictionaryEntry>(raw_entry.uid, entry));
+ }
+
+ return uids_dictionary;
+}
+
+}
+
+}
+
+dcmtkpp::ElementsDictionary dcmtkpp::registry::public_dictionary=dcmtkpp::registry::create_public_dictionary();
+dcmtkpp::UIDsDictionary dcmtkpp::registry::uids_dictionary=dcmtkpp::registry::create_uids_dictionary();
\ No newline at end of file
diff --git a/src/dcmtkpp/registry.h b/src/dcmtkpp/registry.h
index 279d7d8..122216a 100644
--- a/src/dcmtkpp/registry.h
+++ b/src/dcmtkpp/registry.h
@@ -1,3865 +1,4251 @@
/*************************************************************************
-* dcmtkpp - Copyright (C) Universite de Strasbourg
-* Distributed under the terms of the CeCILL-B license, as published by
-* the CEA-CNRS-INRIA. Refer to the LICENSE file or to
-* http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
-* for details.
-************************************************************************/
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
#ifndef _afc7b2d7_0869_4fea_9a9b_7fe6228baca9
#define _afc7b2d7_0869_4fea_9a9b_7fe6228baca9
+#include "dcmtkpp/ElementsDictionary.h"
#include "dcmtkpp/Tag.h"
+#include "dcmtkpp/UIDsDictionary.h"
namespace dcmtkpp
{
namespace registry
{
- Tag const CommandGroupLength(0x0000, 0x0000);
- Tag const AffectedSOPClassUID(0x0000, 0x0002);
- Tag const RequestedSOPClassUID(0x0000, 0x0003);
- Tag const CommandField(0x0000, 0x0100);
- Tag const MessageID(0x0000, 0x0110);
- Tag const MessageIDBeingRespondedTo(0x0000, 0x0120);
- Tag const MoveDestination(0x0000, 0x0600);
- Tag const Priority(0x0000, 0x0700);
- Tag const CommandDataSetType(0x0000, 0x0800);
- Tag const Status(0x0000, 0x0900);
- Tag const OffendingElement(0x0000, 0x0901);
- Tag const ErrorComment(0x0000, 0x0902);
- Tag const ErrorID(0x0000, 0x0903);
- Tag const AffectedSOPInstanceUID(0x0000, 0x1000);
- Tag const RequestedSOPInstanceUID(0x0000, 0x1001);
- Tag const EventTypeID(0x0000, 0x1002);
- Tag const AttributeIdentifierList(0x0000, 0x1005);
- Tag const ActionTypeID(0x0000, 0x1008);
- Tag const NumberOfRemainingSuboperations(0x0000, 0x1020);
- Tag const NumberOfCompletedSuboperations(0x0000, 0x1021);
- Tag const NumberOfFailedSuboperations(0x0000, 0x1022);
- Tag const NumberOfWarningSuboperations(0x0000, 0x1023);
- Tag const MoveOriginatorApplicationEntityTitle(0x0000, 0x1030);
- Tag const MoveOriginatorMessageID(0x0000, 0x1031);
- Tag const FileMetaInformationGroupLength(0x0002, 0x0000);
- Tag const FileMetaInformationVersion(0x0002, 0x0001);
- Tag const MediaStorageSOPClassUID(0x0002, 0x0002);
- Tag const MediaStorageSOPInstanceUID(0x0002, 0x0003);
- Tag const TransferSyntaxUID(0x0002, 0x0010);
- Tag const ImplementationClassUID(0x0002, 0x0012);
- Tag const ImplementationVersionName(0x0002, 0x0013);
- Tag const SourceApplicationEntityTitle(0x0002, 0x0016);
- Tag const SendingApplicationEntityTitle(0x0002, 0x0017);
- Tag const ReceivingApplicationEntityTitle(0x0002, 0x0018);
- Tag const PrivateInformationCreatorUID(0x0002, 0x0100);
- Tag const PrivateInformation(0x0002, 0x0102);
- Tag const FileSetID(0x0004, 0x1130);
- Tag const FileSetDescriptorFileID(0x0004, 0x1141);
- Tag const SpecificCharacterSetOfFileSetDescriptorFile(0x0004, 0x1142);
- Tag const OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity(0x0004, 0x1200);
- Tag const OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity(0x0004, 0x1202);
- Tag const FileSetConsistencyFlag(0x0004, 0x1212);
- Tag const DirectoryRecordSequence(0x0004, 0x1220);
- Tag const OffsetOfTheNextDirectoryRecord(0x0004, 0x1400);
- Tag const RecordInUseFlag(0x0004, 0x1410);
- Tag const OffsetOfReferencedLowerLevelDirectoryEntity(0x0004, 0x1420);
- Tag const DirectoryRecordType(0x0004, 0x1430);
- Tag const PrivateRecordUID(0x0004, 0x1432);
- Tag const ReferencedFileID(0x0004, 0x1500);
- Tag const MRDRDirectoryRecordOffset(0x0004, 0x1504);
- Tag const ReferencedSOPClassUIDInFile(0x0004, 0x1510);
- Tag const ReferencedSOPInstanceUIDInFile(0x0004, 0x1511);
- Tag const ReferencedTransferSyntaxUIDInFile(0x0004, 0x1512);
- Tag const ReferencedRelatedGeneralSOPClassUIDInFile(0x0004, 0x151a);
- Tag const NumberOfReferences(0x0004, 0x1600);
- Tag const LengthToEnd(0x0008, 0x0001);
- Tag const SpecificCharacterSet(0x0008, 0x0005);
- Tag const LanguageCodeSequence(0x0008, 0x0006);
- Tag const ImageType(0x0008, 0x0008);
- Tag const RecognitionCode(0x0008, 0x0010);
- Tag const InstanceCreationDate(0x0008, 0x0012);
- Tag const InstanceCreationTime(0x0008, 0x0013);
- Tag const InstanceCreatorUID(0x0008, 0x0014);
- Tag const InstanceCoercionDateTime(0x0008, 0x0015);
- Tag const SOPClassUID(0x0008, 0x0016);
- Tag const SOPInstanceUID(0x0008, 0x0018);
- Tag const RelatedGeneralSOPClassUID(0x0008, 0x001a);
- Tag const OriginalSpecializedSOPClassUID(0x0008, 0x001b);
- Tag const StudyDate(0x0008, 0x0020);
- Tag const SeriesDate(0x0008, 0x0021);
- Tag const AcquisitionDate(0x0008, 0x0022);
- Tag const ContentDate(0x0008, 0x0023);
- Tag const OverlayDate(0x0008, 0x0024);
- Tag const CurveDate(0x0008, 0x0025);
- Tag const AcquisitionDateTime(0x0008, 0x002a);
- Tag const StudyTime(0x0008, 0x0030);
- Tag const SeriesTime(0x0008, 0x0031);
- Tag const AcquisitionTime(0x0008, 0x0032);
- Tag const ContentTime(0x0008, 0x0033);
- Tag const OverlayTime(0x0008, 0x0034);
- Tag const CurveTime(0x0008, 0x0035);
- Tag const DataSetType(0x0008, 0x0040);
- Tag const DataSetSubtype(0x0008, 0x0041);
- Tag const NuclearMedicineSeriesType(0x0008, 0x0042);
- Tag const AccessionNumber(0x0008, 0x0050);
- Tag const IssuerOfAccessionNumberSequence(0x0008, 0x0051);
- Tag const QueryRetrieveLevel(0x0008, 0x0052);
- Tag const QueryRetrieveView(0x0008, 0x0053);
- Tag const RetrieveAETitle(0x0008, 0x0054);
- Tag const InstanceAvailability(0x0008, 0x0056);
- Tag const FailedSOPInstanceUIDList(0x0008, 0x0058);
- Tag const Modality(0x0008, 0x0060);
- Tag const ModalitiesInStudy(0x0008, 0x0061);
- Tag const SOPClassesInStudy(0x0008, 0x0062);
- Tag const ConversionType(0x0008, 0x0064);
- Tag const PresentationIntentType(0x0008, 0x0068);
- Tag const Manufacturer(0x0008, 0x0070);
- Tag const InstitutionName(0x0008, 0x0080);
- Tag const InstitutionAddress(0x0008, 0x0081);
- Tag const InstitutionCodeSequence(0x0008, 0x0082);
- Tag const ReferringPhysicianName(0x0008, 0x0090);
- Tag const ReferringPhysicianAddress(0x0008, 0x0092);
- Tag const ReferringPhysicianTelephoneNumbers(0x0008, 0x0094);
- Tag const ReferringPhysicianIdentificationSequence(0x0008, 0x0096);
- Tag const CodeValue(0x0008, 0x0100);
- Tag const ExtendedCodeValue(0x0008, 0x0101);
- Tag const CodingSchemeDesignator(0x0008, 0x0102);
- Tag const CodingSchemeVersion(0x0008, 0x0103);
- Tag const CodeMeaning(0x0008, 0x0104);
- Tag const MappingResource(0x0008, 0x0105);
- Tag const ContextGroupVersion(0x0008, 0x0106);
- Tag const ContextGroupLocalVersion(0x0008, 0x0107);
- Tag const ExtendedCodeMeaning(0x0008, 0x0108);
- Tag const ContextGroupExtensionFlag(0x0008, 0x010b);
- Tag const CodingSchemeUID(0x0008, 0x010c);
- Tag const ContextGroupExtensionCreatorUID(0x0008, 0x010d);
- Tag const ContextIdentifier(0x0008, 0x010f);
- Tag const CodingSchemeIdentificationSequence(0x0008, 0x0110);
- Tag const CodingSchemeRegistry(0x0008, 0x0112);
- Tag const CodingSchemeExternalID(0x0008, 0x0114);
- Tag const CodingSchemeName(0x0008, 0x0115);
- Tag const CodingSchemeResponsibleOrganization(0x0008, 0x0116);
- Tag const ContextUID(0x0008, 0x0117);
- Tag const MappingResourceUID(0x0008, 0x0118);
- Tag const LongCodeValue(0x0008, 0x0119);
- Tag const URNCodeValue(0x0008, 0x0120);
- Tag const EquivalentCodeSequence(0x0008, 0x0121);
- Tag const TimezoneOffsetFromUTC(0x0008, 0x0201);
- Tag const NetworkID(0x0008, 0x1000);
- Tag const StationName(0x0008, 0x1010);
- Tag const StudyDescription(0x0008, 0x1030);
- Tag const ProcedureCodeSequence(0x0008, 0x1032);
- Tag const SeriesDescription(0x0008, 0x103e);
- Tag const SeriesDescriptionCodeSequence(0x0008, 0x103f);
- Tag const InstitutionalDepartmentName(0x0008, 0x1040);
- Tag const PhysiciansOfRecord(0x0008, 0x1048);
- Tag const PhysiciansOfRecordIdentificationSequence(0x0008, 0x1049);
- Tag const PerformingPhysicianName(0x0008, 0x1050);
- Tag const PerformingPhysicianIdentificationSequence(0x0008, 0x1052);
- Tag const NameOfPhysiciansReadingStudy(0x0008, 0x1060);
- Tag const PhysiciansReadingStudyIdentificationSequence(0x0008, 0x1062);
- Tag const OperatorsName(0x0008, 0x1070);
- Tag const OperatorIdentificationSequence(0x0008, 0x1072);
- Tag const AdmittingDiagnosesDescription(0x0008, 0x1080);
- Tag const AdmittingDiagnosesCodeSequence(0x0008, 0x1084);
- Tag const ManufacturerModelName(0x0008, 0x1090);
- Tag const ReferencedResultsSequence(0x0008, 0x1100);
- Tag const ReferencedStudySequence(0x0008, 0x1110);
- Tag const ReferencedPerformedProcedureStepSequence(0x0008, 0x1111);
- Tag const ReferencedSeriesSequence(0x0008, 0x1115);
- Tag const ReferencedPatientSequence(0x0008, 0x1120);
- Tag const ReferencedVisitSequence(0x0008, 0x1125);
- Tag const ReferencedOverlaySequence(0x0008, 0x1130);
- Tag const ReferencedStereometricInstanceSequence(0x0008, 0x1134);
- Tag const ReferencedWaveformSequence(0x0008, 0x113a);
- Tag const ReferencedImageSequence(0x0008, 0x1140);
- Tag const ReferencedCurveSequence(0x0008, 0x1145);
- Tag const ReferencedInstanceSequence(0x0008, 0x114a);
- Tag const ReferencedRealWorldValueMappingInstanceSequence(0x0008, 0x114b);
- Tag const ReferencedSOPClassUID(0x0008, 0x1150);
- Tag const ReferencedSOPInstanceUID(0x0008, 0x1155);
- Tag const SOPClassesSupported(0x0008, 0x115a);
- Tag const ReferencedFrameNumber(0x0008, 0x1160);
- Tag const SimpleFrameList(0x0008, 0x1161);
- Tag const CalculatedFrameList(0x0008, 0x1162);
- Tag const TimeRange(0x0008, 0x1163);
- Tag const FrameExtractionSequence(0x0008, 0x1164);
- Tag const MultiFrameSourceSOPInstanceUID(0x0008, 0x1167);
- Tag const RetrieveURL(0x0008, 0x1190);
- Tag const TransactionUID(0x0008, 0x1195);
- Tag const WarningReason(0x0008, 0x1196);
- Tag const FailureReason(0x0008, 0x1197);
- Tag const FailedSOPSequence(0x0008, 0x1198);
- Tag const ReferencedSOPSequence(0x0008, 0x1199);
- Tag const StudiesContainingOtherReferencedInstancesSequence(0x0008, 0x1200);
- Tag const RelatedSeriesSequence(0x0008, 0x1250);
- Tag const LossyImageCompressionRetired(0x0008, 0x2110);
- Tag const DerivationDescription(0x0008, 0x2111);
- Tag const SourceImageSequence(0x0008, 0x2112);
- Tag const StageName(0x0008, 0x2120);
- Tag const StageNumber(0x0008, 0x2122);
- Tag const NumberOfStages(0x0008, 0x2124);
- Tag const ViewName(0x0008, 0x2127);
- Tag const ViewNumber(0x0008, 0x2128);
- Tag const NumberOfEventTimers(0x0008, 0x2129);
- Tag const NumberOfViewsInStage(0x0008, 0x212a);
- Tag const EventElapsedTimes(0x0008, 0x2130);
- Tag const EventTimerNames(0x0008, 0x2132);
- Tag const EventTimerSequence(0x0008, 0x2133);
- Tag const EventTimeOffset(0x0008, 0x2134);
- Tag const EventCodeSequence(0x0008, 0x2135);
- Tag const StartTrim(0x0008, 0x2142);
- Tag const StopTrim(0x0008, 0x2143);
- Tag const RecommendedDisplayFrameRate(0x0008, 0x2144);
- Tag const TransducerPosition(0x0008, 0x2200);
- Tag const TransducerOrientation(0x0008, 0x2204);
- Tag const AnatomicStructure(0x0008, 0x2208);
- Tag const AnatomicRegionSequence(0x0008, 0x2218);
- Tag const AnatomicRegionModifierSequence(0x0008, 0x2220);
- Tag const PrimaryAnatomicStructureSequence(0x0008, 0x2228);
- Tag const AnatomicStructureSpaceOrRegionSequence(0x0008, 0x2229);
- Tag const PrimaryAnatomicStructureModifierSequence(0x0008, 0x2230);
- Tag const TransducerPositionSequence(0x0008, 0x2240);
- Tag const TransducerPositionModifierSequence(0x0008, 0x2242);
- Tag const TransducerOrientationSequence(0x0008, 0x2244);
- Tag const TransducerOrientationModifierSequence(0x0008, 0x2246);
- Tag const AnatomicStructureSpaceOrRegionCodeSequenceTrial(0x0008, 0x2251);
- Tag const AnatomicPortalOfEntranceCodeSequenceTrial(0x0008, 0x2253);
- Tag const AnatomicApproachDirectionCodeSequenceTrial(0x0008, 0x2255);
- Tag const AnatomicPerspectiveDescriptionTrial(0x0008, 0x2256);
- Tag const AnatomicPerspectiveCodeSequenceTrial(0x0008, 0x2257);
- Tag const AnatomicLocationOfExaminingInstrumentDescriptionTrial(0x0008, 0x2258);
- Tag const AnatomicLocationOfExaminingInstrumentCodeSequenceTrial(0x0008, 0x2259);
- Tag const AnatomicStructureSpaceOrRegionModifierCodeSequenceTrial(0x0008, 0x225a);
- Tag const OnAxisBackgroundAnatomicStructureCodeSequenceTrial(0x0008, 0x225c);
- Tag const AlternateRepresentationSequence(0x0008, 0x3001);
- Tag const IrradiationEventUID(0x0008, 0x3010);
- Tag const SourceIrradiationEventSequence(0x0008, 0x3011);
- Tag const RadiopharmaceuticalAdministrationEventUID(0x0008, 0x3012);
- Tag const IdentifyingComments(0x0008, 0x4000);
- Tag const FrameType(0x0008, 0x9007);
- Tag const ReferencedImageEvidenceSequence(0x0008, 0x9092);
- Tag const ReferencedRawDataSequence(0x0008, 0x9121);
- Tag const CreatorVersionUID(0x0008, 0x9123);
- Tag const DerivationImageSequence(0x0008, 0x9124);
- Tag const SourceImageEvidenceSequence(0x0008, 0x9154);
- Tag const PixelPresentation(0x0008, 0x9205);
- Tag const VolumetricProperties(0x0008, 0x9206);
- Tag const VolumeBasedCalculationTechnique(0x0008, 0x9207);
- Tag const ComplexImageComponent(0x0008, 0x9208);
- Tag const AcquisitionContrast(0x0008, 0x9209);
- Tag const DerivationCodeSequence(0x0008, 0x9215);
- Tag const ReferencedPresentationStateSequence(0x0008, 0x9237);
- Tag const ReferencedOtherPlaneSequence(0x0008, 0x9410);
- Tag const FrameDisplaySequence(0x0008, 0x9458);
- Tag const RecommendedDisplayFrameRateInFloat(0x0008, 0x9459);
- Tag const SkipFrameRangeFlag(0x0008, 0x9460);
- Tag const PatientName(0x0010, 0x0010);
- Tag const PatientID(0x0010, 0x0020);
- Tag const IssuerOfPatientID(0x0010, 0x0021);
- Tag const TypeOfPatientID(0x0010, 0x0022);
- Tag const IssuerOfPatientIDQualifiersSequence(0x0010, 0x0024);
- Tag const PatientBirthDate(0x0010, 0x0030);
- Tag const PatientBirthTime(0x0010, 0x0032);
- Tag const PatientSex(0x0010, 0x0040);
- Tag const PatientInsurancePlanCodeSequence(0x0010, 0x0050);
- Tag const PatientPrimaryLanguageCodeSequence(0x0010, 0x0101);
- Tag const PatientPrimaryLanguageModifierCodeSequence(0x0010, 0x0102);
- Tag const QualityControlSubject(0x0010, 0x0200);
- Tag const QualityControlSubjectTypeCodeSequence(0x0010, 0x0201);
- Tag const OtherPatientIDs(0x0010, 0x1000);
- Tag const OtherPatientNames(0x0010, 0x1001);
- Tag const OtherPatientIDsSequence(0x0010, 0x1002);
- Tag const PatientBirthName(0x0010, 0x1005);
- Tag const PatientAge(0x0010, 0x1010);
- Tag const PatientSize(0x0010, 0x1020);
- Tag const PatientSizeCodeSequence(0x0010, 0x1021);
- Tag const PatientWeight(0x0010, 0x1030);
- Tag const PatientAddress(0x0010, 0x1040);
- Tag const InsurancePlanIdentification(0x0010, 0x1050);
- Tag const PatientMotherBirthName(0x0010, 0x1060);
- Tag const MilitaryRank(0x0010, 0x1080);
- Tag const BranchOfService(0x0010, 0x1081);
- Tag const MedicalRecordLocator(0x0010, 0x1090);
- Tag const ReferencedPatientPhotoSequence(0x0010, 0x1100);
- Tag const MedicalAlerts(0x0010, 0x2000);
- Tag const Allergies(0x0010, 0x2110);
- Tag const CountryOfResidence(0x0010, 0x2150);
- Tag const RegionOfResidence(0x0010, 0x2152);
- Tag const PatientTelephoneNumbers(0x0010, 0x2154);
- Tag const EthnicGroup(0x0010, 0x2160);
- Tag const Occupation(0x0010, 0x2180);
- Tag const SmokingStatus(0x0010, 0x21a0);
- Tag const AdditionalPatientHistory(0x0010, 0x21b0);
- Tag const PregnancyStatus(0x0010, 0x21c0);
- Tag const LastMenstrualDate(0x0010, 0x21d0);
- Tag const PatientReligiousPreference(0x0010, 0x21f0);
- Tag const PatientSpeciesDescription(0x0010, 0x2201);
- Tag const PatientSpeciesCodeSequence(0x0010, 0x2202);
- Tag const PatientSexNeutered(0x0010, 0x2203);
- Tag const AnatomicalOrientationType(0x0010, 0x2210);
- Tag const PatientBreedDescription(0x0010, 0x2292);
- Tag const PatientBreedCodeSequence(0x0010, 0x2293);
- Tag const BreedRegistrationSequence(0x0010, 0x2294);
- Tag const BreedRegistrationNumber(0x0010, 0x2295);
- Tag const BreedRegistryCodeSequence(0x0010, 0x2296);
- Tag const ResponsiblePerson(0x0010, 0x2297);
- Tag const ResponsiblePersonRole(0x0010, 0x2298);
- Tag const ResponsibleOrganization(0x0010, 0x2299);
- Tag const PatientComments(0x0010, 0x4000);
- Tag const ExaminedBodyThickness(0x0010, 0x9431);
- Tag const ClinicalTrialSponsorName(0x0012, 0x0010);
- Tag const ClinicalTrialProtocolID(0x0012, 0x0020);
- Tag const ClinicalTrialProtocolName(0x0012, 0x0021);
- Tag const ClinicalTrialSiteID(0x0012, 0x0030);
- Tag const ClinicalTrialSiteName(0x0012, 0x0031);
- Tag const ClinicalTrialSubjectID(0x0012, 0x0040);
- Tag const ClinicalTrialSubjectReadingID(0x0012, 0x0042);
- Tag const ClinicalTrialTimePointID(0x0012, 0x0050);
- Tag const ClinicalTrialTimePointDescription(0x0012, 0x0051);
- Tag const ClinicalTrialCoordinatingCenterName(0x0012, 0x0060);
- Tag const PatientIdentityRemoved(0x0012, 0x0062);
- Tag const DeidentificationMethod(0x0012, 0x0063);
- Tag const DeidentificationMethodCodeSequence(0x0012, 0x0064);
- Tag const ClinicalTrialSeriesID(0x0012, 0x0071);
- Tag const ClinicalTrialSeriesDescription(0x0012, 0x0072);
- Tag const ClinicalTrialProtocolEthicsCommitteeName(0x0012, 0x0081);
- Tag const ClinicalTrialProtocolEthicsCommitteeApprovalNumber(0x0012, 0x0082);
- Tag const ConsentForClinicalTrialUseSequence(0x0012, 0x0083);
- Tag const DistributionType(0x0012, 0x0084);
- Tag const ConsentForDistributionFlag(0x0012, 0x0085);
- Tag const CADFileFormat(0x0014, 0x0023);
- Tag const ComponentReferenceSystem(0x0014, 0x0024);
- Tag const ComponentManufacturingProcedure(0x0014, 0x0025);
- Tag const ComponentManufacturer(0x0014, 0x0028);
- Tag const MaterialThickness(0x0014, 0x0030);
- Tag const MaterialPipeDiameter(0x0014, 0x0032);
- Tag const MaterialIsolationDiameter(0x0014, 0x0034);
- Tag const MaterialGrade(0x0014, 0x0042);
- Tag const MaterialPropertiesDescription(0x0014, 0x0044);
- Tag const MaterialPropertiesFileFormatRetired(0x0014, 0x0045);
- Tag const MaterialNotes(0x0014, 0x0046);
- Tag const ComponentShape(0x0014, 0x0050);
- Tag const CurvatureType(0x0014, 0x0052);
- Tag const OuterDiameter(0x0014, 0x0054);
- Tag const InnerDiameter(0x0014, 0x0056);
- Tag const ActualEnvironmentalConditions(0x0014, 0x1010);
- Tag const ExpiryDate(0x0014, 0x1020);
- Tag const EnvironmentalConditions(0x0014, 0x1040);
- Tag const EvaluatorSequence(0x0014, 0x2002);
- Tag const EvaluatorNumber(0x0014, 0x2004);
- Tag const EvaluatorName(0x0014, 0x2006);
- Tag const EvaluationAttempt(0x0014, 0x2008);
- Tag const IndicationSequence(0x0014, 0x2012);
- Tag const IndicationNumber(0x0014, 0x2014);
- Tag const IndicationLabel(0x0014, 0x2016);
- Tag const IndicationDescription(0x0014, 0x2018);
- Tag const IndicationType(0x0014, 0x201a);
- Tag const IndicationDisposition(0x0014, 0x201c);
- Tag const IndicationROISequence(0x0014, 0x201e);
- Tag const IndicationPhysicalPropertySequence(0x0014, 0x2030);
- Tag const PropertyLabel(0x0014, 0x2032);
- Tag const CoordinateSystemNumberOfAxes(0x0014, 0x2202);
- Tag const CoordinateSystemAxesSequence(0x0014, 0x2204);
- Tag const CoordinateSystemAxisDescription(0x0014, 0x2206);
- Tag const CoordinateSystemDataSetMapping(0x0014, 0x2208);
- Tag const CoordinateSystemAxisNumber(0x0014, 0x220a);
- Tag const CoordinateSystemAxisType(0x0014, 0x220c);
- Tag const CoordinateSystemAxisUnits(0x0014, 0x220e);
- Tag const CoordinateSystemAxisValues(0x0014, 0x2210);
- Tag const CoordinateSystemTransformSequence(0x0014, 0x2220);
- Tag const TransformDescription(0x0014, 0x2222);
- Tag const TransformNumberOfAxes(0x0014, 0x2224);
- Tag const TransformOrderOfAxes(0x0014, 0x2226);
- Tag const TransformedAxisUnits(0x0014, 0x2228);
- Tag const CoordinateSystemTransformRotationAndScaleMatrix(0x0014, 0x222a);
- Tag const CoordinateSystemTransformTranslationMatrix(0x0014, 0x222c);
- Tag const InternalDetectorFrameTime(0x0014, 0x3011);
- Tag const NumberOfFramesIntegrated(0x0014, 0x3012);
- Tag const DetectorTemperatureSequence(0x0014, 0x3020);
- Tag const SensorName(0x0014, 0x3022);
- Tag const HorizontalOffsetOfSensor(0x0014, 0x3024);
- Tag const VerticalOffsetOfSensor(0x0014, 0x3026);
- Tag const SensorTemperature(0x0014, 0x3028);
- Tag const DarkCurrentSequence(0x0014, 0x3040);
- Tag const DarkCurrentCounts(0x0014, 0x3050);
- Tag const GainCorrectionReferenceSequence(0x0014, 0x3060);
- Tag const AirCounts(0x0014, 0x3070);
- Tag const KVUsedInGainCalibration(0x0014, 0x3071);
- Tag const MAUsedInGainCalibration(0x0014, 0x3072);
- Tag const NumberOfFramesUsedForIntegration(0x0014, 0x3073);
- Tag const FilterMaterialUsedInGainCalibration(0x0014, 0x3074);
- Tag const FilterThicknessUsedInGainCalibration(0x0014, 0x3075);
- Tag const DateOfGainCalibration(0x0014, 0x3076);
- Tag const TimeOfGainCalibration(0x0014, 0x3077);
- Tag const BadPixelImage(0x0014, 0x3080);
- Tag const CalibrationNotes(0x0014, 0x3099);
- Tag const PulserEquipmentSequence(0x0014, 0x4002);
- Tag const PulserType(0x0014, 0x4004);
- Tag const PulserNotes(0x0014, 0x4006);
- Tag const ReceiverEquipmentSequence(0x0014, 0x4008);
- Tag const AmplifierType(0x0014, 0x400a);
- Tag const ReceiverNotes(0x0014, 0x400c);
- Tag const PreAmplifierEquipmentSequence(0x0014, 0x400e);
- Tag const PreAmplifierNotes(0x0014, 0x400f);
- Tag const TransmitTransducerSequence(0x0014, 0x4010);
- Tag const ReceiveTransducerSequence(0x0014, 0x4011);
- Tag const NumberOfElements(0x0014, 0x4012);
- Tag const ElementShape(0x0014, 0x4013);
- Tag const ElementDimensionA(0x0014, 0x4014);
- Tag const ElementDimensionB(0x0014, 0x4015);
- Tag const ElementPitchA(0x0014, 0x4016);
- Tag const MeasuredBeamDimensionA(0x0014, 0x4017);
- Tag const MeasuredBeamDimensionB(0x0014, 0x4018);
- Tag const LocationOfMeasuredBeamDiameter(0x0014, 0x4019);
- Tag const NominalFrequency(0x0014, 0x401a);
- Tag const MeasuredCenterFrequency(0x0014, 0x401b);
- Tag const MeasuredBandwidth(0x0014, 0x401c);
- Tag const ElementPitchB(0x0014, 0x401d);
- Tag const PulserSettingsSequence(0x0014, 0x4020);
- Tag const PulseWidth(0x0014, 0x4022);
- Tag const ExcitationFrequency(0x0014, 0x4024);
- Tag const ModulationType(0x0014, 0x4026);
- Tag const Damping(0x0014, 0x4028);
- Tag const ReceiverSettingsSequence(0x0014, 0x4030);
- Tag const AcquiredSoundpathLength(0x0014, 0x4031);
- Tag const AcquisitionCompressionType(0x0014, 0x4032);
- Tag const AcquisitionSampleSize(0x0014, 0x4033);
- Tag const RectifierSmoothing(0x0014, 0x4034);
- Tag const DACSequence(0x0014, 0x4035);
- Tag const DACType(0x0014, 0x4036);
- Tag const DACGainPoints(0x0014, 0x4038);
- Tag const DACTimePoints(0x0014, 0x403a);
- Tag const DACAmplitude(0x0014, 0x403c);
- Tag const PreAmplifierSettingsSequence(0x0014, 0x4040);
- Tag const TransmitTransducerSettingsSequence(0x0014, 0x4050);
- Tag const ReceiveTransducerSettingsSequence(0x0014, 0x4051);
- Tag const IncidentAngle(0x0014, 0x4052);
- Tag const CouplingTechnique(0x0014, 0x4054);
- Tag const CouplingMedium(0x0014, 0x4056);
- Tag const CouplingVelocity(0x0014, 0x4057);
- Tag const ProbeCenterLocationX(0x0014, 0x4058);
- Tag const ProbeCenterLocationZ(0x0014, 0x4059);
- Tag const SoundPathLength(0x0014, 0x405a);
- Tag const DelayLawIdentifier(0x0014, 0x405c);
- Tag const GateSettingsSequence(0x0014, 0x4060);
- Tag const GateThreshold(0x0014, 0x4062);
- Tag const VelocityOfSound(0x0014, 0x4064);
- Tag const CalibrationSettingsSequence(0x0014, 0x4070);
- Tag const CalibrationProcedure(0x0014, 0x4072);
- Tag const ProcedureVersion(0x0014, 0x4074);
- Tag const ProcedureCreationDate(0x0014, 0x4076);
- Tag const ProcedureExpirationDate(0x0014, 0x4078);
- Tag const ProcedureLastModifiedDate(0x0014, 0x407a);
- Tag const CalibrationTime(0x0014, 0x407c);
- Tag const CalibrationDate(0x0014, 0x407e);
- Tag const ProbeDriveEquipmentSequence(0x0014, 0x4080);
- Tag const DriveType(0x0014, 0x4081);
- Tag const ProbeDriveNotes(0x0014, 0x4082);
- Tag const DriveProbeSequence(0x0014, 0x4083);
- Tag const ProbeInductance(0x0014, 0x4084);
- Tag const ProbeResistance(0x0014, 0x4085);
- Tag const ReceiveProbeSequence(0x0014, 0x4086);
- Tag const ProbeDriveSettingsSequence(0x0014, 0x4087);
- Tag const BridgeResistors(0x0014, 0x4088);
- Tag const ProbeOrientationAngle(0x0014, 0x4089);
- Tag const UserSelectedGainY(0x0014, 0x408b);
- Tag const UserSelectedPhase(0x0014, 0x408c);
- Tag const UserSelectedOffsetX(0x0014, 0x408d);
- Tag const UserSelectedOffsetY(0x0014, 0x408e);
- Tag const ChannelSettingsSequence(0x0014, 0x4091);
- Tag const ChannelThreshold(0x0014, 0x4092);
- Tag const ScannerSettingsSequence(0x0014, 0x409a);
- Tag const ScanProcedure(0x0014, 0x409b);
- Tag const TranslationRateX(0x0014, 0x409c);
- Tag const TranslationRateY(0x0014, 0x409d);
- Tag const ChannelOverlap(0x0014, 0x409f);
- Tag const ImageQualityIndicatorType(0x0014, 0x40a0);
- Tag const ImageQualityIndicatorMaterial(0x0014, 0x40a1);
- Tag const ImageQualityIndicatorSize(0x0014, 0x40a2);
- Tag const LINACEnergy(0x0014, 0x5002);
- Tag const LINACOutput(0x0014, 0x5004);
- Tag const ActiveAperture(0x0014, 0x5100);
- Tag const TotalAperture(0x0014, 0x5101);
- Tag const ApertureElevation(0x0014, 0x5102);
- Tag const MainLobeAngle(0x0014, 0x5103);
- Tag const MainRoofAngle(0x0014, 0x5104);
- Tag const ConnectorType(0x0014, 0x5105);
- Tag const WedgeModelNumber(0x0014, 0x5106);
- Tag const WedgeAngleFloat(0x0014, 0x5107);
- Tag const WedgeRoofAngle(0x0014, 0x5108);
- Tag const WedgeElement1Position(0x0014, 0x5109);
- Tag const WedgeMaterialVelocity(0x0014, 0x510a);
- Tag const WedgeMaterial(0x0014, 0x510b);
- Tag const WedgeOffsetZ(0x0014, 0x510c);
- Tag const WedgeOriginOffsetX(0x0014, 0x510d);
- Tag const WedgeTimeDelay(0x0014, 0x510e);
- Tag const WedgeName(0x0014, 0x510f);
- Tag const WedgeManufacturerName(0x0014, 0x5110);
- Tag const WedgeDescription(0x0014, 0x5111);
- Tag const NominalBeamAngle(0x0014, 0x5112);
- Tag const WedgeOffsetX(0x0014, 0x5113);
- Tag const WedgeOffsetY(0x0014, 0x5114);
- Tag const WedgeTotalLength(0x0014, 0x5115);
- Tag const WedgeInContactLength(0x0014, 0x5116);
- Tag const WedgeFrontGap(0x0014, 0x5117);
- Tag const WedgeTotalHeight(0x0014, 0x5118);
- Tag const WedgeFrontHeight(0x0014, 0x5119);
- Tag const WedgeRearHeight(0x0014, 0x511a);
- Tag const WedgeTotalWidth(0x0014, 0x511b);
- Tag const WedgeInContactWidth(0x0014, 0x511c);
- Tag const WedgeChamferHeight(0x0014, 0x511d);
- Tag const WedgeCurve(0x0014, 0x511e);
- Tag const RadiusAlongWedge(0x0014, 0x511f);
- Tag const ContrastBolusAgent(0x0018, 0x0010);
- Tag const ContrastBolusAgentSequence(0x0018, 0x0012);
- Tag const ContrastBolusT1Relaxivity(0x0018, 0x0013);
- Tag const ContrastBolusAdministrationRouteSequence(0x0018, 0x0014);
- Tag const BodyPartExamined(0x0018, 0x0015);
- Tag const ScanningSequence(0x0018, 0x0020);
- Tag const SequenceVariant(0x0018, 0x0021);
- Tag const ScanOptions(0x0018, 0x0022);
- Tag const MRAcquisitionType(0x0018, 0x0023);
- Tag const SequenceName(0x0018, 0x0024);
- Tag const AngioFlag(0x0018, 0x0025);
- Tag const InterventionDrugInformationSequence(0x0018, 0x0026);
- Tag const InterventionDrugStopTime(0x0018, 0x0027);
- Tag const InterventionDrugDose(0x0018, 0x0028);
- Tag const InterventionDrugCodeSequence(0x0018, 0x0029);
- Tag const AdditionalDrugSequence(0x0018, 0x002a);
- Tag const Radionuclide(0x0018, 0x0030);
- Tag const Radiopharmaceutical(0x0018, 0x0031);
- Tag const EnergyWindowCenterline(0x0018, 0x0032);
- Tag const EnergyWindowTotalWidth(0x0018, 0x0033);
- Tag const InterventionDrugName(0x0018, 0x0034);
- Tag const InterventionDrugStartTime(0x0018, 0x0035);
- Tag const InterventionSequence(0x0018, 0x0036);
- Tag const TherapyType(0x0018, 0x0037);
- Tag const InterventionStatus(0x0018, 0x0038);
- Tag const TherapyDescription(0x0018, 0x0039);
- Tag const InterventionDescription(0x0018, 0x003a);
- Tag const CineRate(0x0018, 0x0040);
- Tag const InitialCineRunState(0x0018, 0x0042);
- Tag const SliceThickness(0x0018, 0x0050);
- Tag const KVP(0x0018, 0x0060);
- Tag const CountsAccumulated(0x0018, 0x0070);
- Tag const AcquisitionTerminationCondition(0x0018, 0x0071);
- Tag const EffectiveDuration(0x0018, 0x0072);
- Tag const AcquisitionStartCondition(0x0018, 0x0073);
- Tag const AcquisitionStartConditionData(0x0018, 0x0074);
- Tag const AcquisitionTerminationConditionData(0x0018, 0x0075);
- Tag const RepetitionTime(0x0018, 0x0080);
- Tag const EchoTime(0x0018, 0x0081);
- Tag const InversionTime(0x0018, 0x0082);
- Tag const NumberOfAverages(0x0018, 0x0083);
- Tag const ImagingFrequency(0x0018, 0x0084);
- Tag const ImagedNucleus(0x0018, 0x0085);
- Tag const EchoNumbers(0x0018, 0x0086);
- Tag const MagneticFieldStrength(0x0018, 0x0087);
- Tag const SpacingBetweenSlices(0x0018, 0x0088);
- Tag const NumberOfPhaseEncodingSteps(0x0018, 0x0089);
- Tag const DataCollectionDiameter(0x0018, 0x0090);
- Tag const EchoTrainLength(0x0018, 0x0091);
- Tag const PercentSampling(0x0018, 0x0093);
- Tag const PercentPhaseFieldOfView(0x0018, 0x0094);
- Tag const PixelBandwidth(0x0018, 0x0095);
- Tag const DeviceSerialNumber(0x0018, 0x1000);
- Tag const DeviceUID(0x0018, 0x1002);
- Tag const DeviceID(0x0018, 0x1003);
- Tag const PlateID(0x0018, 0x1004);
- Tag const GeneratorID(0x0018, 0x1005);
- Tag const GridID(0x0018, 0x1006);
- Tag const CassetteID(0x0018, 0x1007);
- Tag const GantryID(0x0018, 0x1008);
- Tag const SecondaryCaptureDeviceID(0x0018, 0x1010);
- Tag const HardcopyCreationDeviceID(0x0018, 0x1011);
- Tag const DateOfSecondaryCapture(0x0018, 0x1012);
- Tag const TimeOfSecondaryCapture(0x0018, 0x1014);
- Tag const SecondaryCaptureDeviceManufacturer(0x0018, 0x1016);
- Tag const HardcopyDeviceManufacturer(0x0018, 0x1017);
- Tag const SecondaryCaptureDeviceManufacturerModelName(0x0018, 0x1018);
- Tag const SecondaryCaptureDeviceSoftwareVersions(0x0018, 0x1019);
- Tag const HardcopyDeviceSoftwareVersion(0x0018, 0x101a);
- Tag const HardcopyDeviceManufacturerModelName(0x0018, 0x101b);
- Tag const SoftwareVersions(0x0018, 0x1020);
- Tag const VideoImageFormatAcquired(0x0018, 0x1022);
- Tag const DigitalImageFormatAcquired(0x0018, 0x1023);
- Tag const ProtocolName(0x0018, 0x1030);
- Tag const ContrastBolusRoute(0x0018, 0x1040);
- Tag const ContrastBolusVolume(0x0018, 0x1041);
- Tag const ContrastBolusStartTime(0x0018, 0x1042);
- Tag const ContrastBolusStopTime(0x0018, 0x1043);
- Tag const ContrastBolusTotalDose(0x0018, 0x1044);
- Tag const SyringeCounts(0x0018, 0x1045);
- Tag const ContrastFlowRate(0x0018, 0x1046);
- Tag const ContrastFlowDuration(0x0018, 0x1047);
- Tag const ContrastBolusIngredient(0x0018, 0x1048);
- Tag const ContrastBolusIngredientConcentration(0x0018, 0x1049);
- Tag const SpatialResolution(0x0018, 0x1050);
- Tag const TriggerTime(0x0018, 0x1060);
- Tag const TriggerSourceOrType(0x0018, 0x1061);
- Tag const NominalInterval(0x0018, 0x1062);
- Tag const FrameTime(0x0018, 0x1063);
- Tag const CardiacFramingType(0x0018, 0x1064);
- Tag const FrameTimeVector(0x0018, 0x1065);
- Tag const FrameDelay(0x0018, 0x1066);
- Tag const ImageTriggerDelay(0x0018, 0x1067);
- Tag const MultiplexGroupTimeOffset(0x0018, 0x1068);
- Tag const TriggerTimeOffset(0x0018, 0x1069);
- Tag const SynchronizationTrigger(0x0018, 0x106a);
- Tag const SynchronizationChannel(0x0018, 0x106c);
- Tag const TriggerSamplePosition(0x0018, 0x106e);
- Tag const RadiopharmaceuticalRoute(0x0018, 0x1070);
- Tag const RadiopharmaceuticalVolume(0x0018, 0x1071);
- Tag const RadiopharmaceuticalStartTime(0x0018, 0x1072);
- Tag const RadiopharmaceuticalStopTime(0x0018, 0x1073);
- Tag const RadionuclideTotalDose(0x0018, 0x1074);
- Tag const RadionuclideHalfLife(0x0018, 0x1075);
- Tag const RadionuclidePositronFraction(0x0018, 0x1076);
- Tag const RadiopharmaceuticalSpecificActivity(0x0018, 0x1077);
- Tag const RadiopharmaceuticalStartDateTime(0x0018, 0x1078);
- Tag const RadiopharmaceuticalStopDateTime(0x0018, 0x1079);
- Tag const BeatRejectionFlag(0x0018, 0x1080);
- Tag const LowRRValue(0x0018, 0x1081);
- Tag const HighRRValue(0x0018, 0x1082);
- Tag const IntervalsAcquired(0x0018, 0x1083);
- Tag const IntervalsRejected(0x0018, 0x1084);
- Tag const PVCRejection(0x0018, 0x1085);
- Tag const SkipBeats(0x0018, 0x1086);
- Tag const HeartRate(0x0018, 0x1088);
- Tag const CardiacNumberOfImages(0x0018, 0x1090);
- Tag const TriggerWindow(0x0018, 0x1094);
- Tag const ReconstructionDiameter(0x0018, 0x1100);
- Tag const DistanceSourceToDetector(0x0018, 0x1110);
- Tag const DistanceSourceToPatient(0x0018, 0x1111);
- Tag const EstimatedRadiographicMagnificationFactor(0x0018, 0x1114);
- Tag const GantryDetectorTilt(0x0018, 0x1120);
- Tag const GantryDetectorSlew(0x0018, 0x1121);
- Tag const TableHeight(0x0018, 0x1130);
- Tag const TableTraverse(0x0018, 0x1131);
- Tag const TableMotion(0x0018, 0x1134);
- Tag const TableVerticalIncrement(0x0018, 0x1135);
- Tag const TableLateralIncrement(0x0018, 0x1136);
- Tag const TableLongitudinalIncrement(0x0018, 0x1137);
- Tag const TableAngle(0x0018, 0x1138);
- Tag const TableType(0x0018, 0x113a);
- Tag const RotationDirection(0x0018, 0x1140);
- Tag const AngularPosition(0x0018, 0x1141);
- Tag const RadialPosition(0x0018, 0x1142);
- Tag const ScanArc(0x0018, 0x1143);
- Tag const AngularStep(0x0018, 0x1144);
- Tag const CenterOfRotationOffset(0x0018, 0x1145);
- Tag const RotationOffset(0x0018, 0x1146);
- Tag const FieldOfViewShape(0x0018, 0x1147);
- Tag const FieldOfViewDimensions(0x0018, 0x1149);
- Tag const ExposureTime(0x0018, 0x1150);
- Tag const XRayTubeCurrent(0x0018, 0x1151);
- Tag const Exposure(0x0018, 0x1152);
- Tag const ExposureInuAs(0x0018, 0x1153);
- Tag const AveragePulseWidth(0x0018, 0x1154);
- Tag const RadiationSetting(0x0018, 0x1155);
- Tag const RectificationType(0x0018, 0x1156);
- Tag const RadiationMode(0x0018, 0x115a);
- Tag const ImageAndFluoroscopyAreaDoseProduct(0x0018, 0x115e);
- Tag const FilterType(0x0018, 0x1160);
- Tag const TypeOfFilters(0x0018, 0x1161);
- Tag const IntensifierSize(0x0018, 0x1162);
- Tag const ImagerPixelSpacing(0x0018, 0x1164);
- Tag const Grid(0x0018, 0x1166);
- Tag const GeneratorPower(0x0018, 0x1170);
- Tag const CollimatorGridName(0x0018, 0x1180);
- Tag const CollimatorType(0x0018, 0x1181);
- Tag const FocalDistance(0x0018, 0x1182);
- Tag const XFocusCenter(0x0018, 0x1183);
- Tag const YFocusCenter(0x0018, 0x1184);
- Tag const FocalSpots(0x0018, 0x1190);
- Tag const AnodeTargetMaterial(0x0018, 0x1191);
- Tag const BodyPartThickness(0x0018, 0x11a0);
- Tag const CompressionForce(0x0018, 0x11a2);
- Tag const PaddleDescription(0x0018, 0x11a4);
- Tag const DateOfLastCalibration(0x0018, 0x1200);
- Tag const TimeOfLastCalibration(0x0018, 0x1201);
- Tag const DateTimeOfLastCalibration(0x0018, 0x1202);
- Tag const ConvolutionKernel(0x0018, 0x1210);
- Tag const UpperLowerPixelValues(0x0018, 0x1240);
- Tag const ActualFrameDuration(0x0018, 0x1242);
- Tag const CountRate(0x0018, 0x1243);
- Tag const PreferredPlaybackSequencing(0x0018, 0x1244);
- Tag const ReceiveCoilName(0x0018, 0x1250);
- Tag const TransmitCoilName(0x0018, 0x1251);
- Tag const PlateType(0x0018, 0x1260);
- Tag const PhosphorType(0x0018, 0x1261);
- Tag const ScanVelocity(0x0018, 0x1300);
- Tag const WholeBodyTechnique(0x0018, 0x1301);
- Tag const ScanLength(0x0018, 0x1302);
- Tag const AcquisitionMatrix(0x0018, 0x1310);
- Tag const InPlanePhaseEncodingDirection(0x0018, 0x1312);
- Tag const FlipAngle(0x0018, 0x1314);
- Tag const VariableFlipAngleFlag(0x0018, 0x1315);
- Tag const SAR(0x0018, 0x1316);
- Tag const dBdt(0x0018, 0x1318);
- Tag const AcquisitionDeviceProcessingDescription(0x0018, 0x1400);
- Tag const AcquisitionDeviceProcessingCode(0x0018, 0x1401);
- Tag const CassetteOrientation(0x0018, 0x1402);
- Tag const CassetteSize(0x0018, 0x1403);
- Tag const ExposuresOnPlate(0x0018, 0x1404);
- Tag const RelativeXRayExposure(0x0018, 0x1405);
- Tag const ExposureIndex(0x0018, 0x1411);
- Tag const TargetExposureIndex(0x0018, 0x1412);
- Tag const DeviationIndex(0x0018, 0x1413);
- Tag const ColumnAngulation(0x0018, 0x1450);
- Tag const TomoLayerHeight(0x0018, 0x1460);
- Tag const TomoAngle(0x0018, 0x1470);
- Tag const TomoTime(0x0018, 0x1480);
- Tag const TomoType(0x0018, 0x1490);
- Tag const TomoClass(0x0018, 0x1491);
- Tag const NumberOfTomosynthesisSourceImages(0x0018, 0x1495);
- Tag const PositionerMotion(0x0018, 0x1500);
- Tag const PositionerType(0x0018, 0x1508);
- Tag const PositionerPrimaryAngle(0x0018, 0x1510);
- Tag const PositionerSecondaryAngle(0x0018, 0x1511);
- Tag const PositionerPrimaryAngleIncrement(0x0018, 0x1520);
- Tag const PositionerSecondaryAngleIncrement(0x0018, 0x1521);
- Tag const DetectorPrimaryAngle(0x0018, 0x1530);
- Tag const DetectorSecondaryAngle(0x0018, 0x1531);
- Tag const ShutterShape(0x0018, 0x1600);
- Tag const ShutterLeftVerticalEdge(0x0018, 0x1602);
- Tag const ShutterRightVerticalEdge(0x0018, 0x1604);
- Tag const ShutterUpperHorizontalEdge(0x0018, 0x1606);
- Tag const ShutterLowerHorizontalEdge(0x0018, 0x1608);
- Tag const CenterOfCircularShutter(0x0018, 0x1610);
- Tag const RadiusOfCircularShutter(0x0018, 0x1612);
- Tag const VerticesOfThePolygonalShutter(0x0018, 0x1620);
- Tag const ShutterPresentationValue(0x0018, 0x1622);
- Tag const ShutterOverlayGroup(0x0018, 0x1623);
- Tag const ShutterPresentationColorCIELabValue(0x0018, 0x1624);
- Tag const CollimatorShape(0x0018, 0x1700);
- Tag const CollimatorLeftVerticalEdge(0x0018, 0x1702);
- Tag const CollimatorRightVerticalEdge(0x0018, 0x1704);
- Tag const CollimatorUpperHorizontalEdge(0x0018, 0x1706);
- Tag const CollimatorLowerHorizontalEdge(0x0018, 0x1708);
- Tag const CenterOfCircularCollimator(0x0018, 0x1710);
- Tag const RadiusOfCircularCollimator(0x0018, 0x1712);
- Tag const VerticesOfThePolygonalCollimator(0x0018, 0x1720);
- Tag const AcquisitionTimeSynchronized(0x0018, 0x1800);
- Tag const TimeSource(0x0018, 0x1801);
- Tag const TimeDistributionProtocol(0x0018, 0x1802);
- Tag const NTPSourceAddress(0x0018, 0x1803);
- Tag const PageNumberVector(0x0018, 0x2001);
- Tag const FrameLabelVector(0x0018, 0x2002);
- Tag const FramePrimaryAngleVector(0x0018, 0x2003);
- Tag const FrameSecondaryAngleVector(0x0018, 0x2004);
- Tag const SliceLocationVector(0x0018, 0x2005);
- Tag const DisplayWindowLabelVector(0x0018, 0x2006);
- Tag const NominalScannedPixelSpacing(0x0018, 0x2010);
- Tag const DigitizingDeviceTransportDirection(0x0018, 0x2020);
- Tag const RotationOfScannedFilm(0x0018, 0x2030);
- Tag const BiopsyTargetSequence(0x0018, 0x2041);
- Tag const TargetUID(0x0018, 0x2042);
- Tag const LocalizingCursorPosition(0x0018, 0x2043);
- Tag const CalculatedTargetPosition(0x0018, 0x2044);
- Tag const TargetLabel(0x0018, 0x2045);
- Tag const DisplayedZValue(0x0018, 0x2046);
- Tag const IVUSAcquisition(0x0018, 0x3100);
- Tag const IVUSPullbackRate(0x0018, 0x3101);
- Tag const IVUSGatedRate(0x0018, 0x3102);
- Tag const IVUSPullbackStartFrameNumber(0x0018, 0x3103);
- Tag const IVUSPullbackStopFrameNumber(0x0018, 0x3104);
- Tag const LesionNumber(0x0018, 0x3105);
- Tag const AcquisitionComments(0x0018, 0x4000);
- Tag const OutputPower(0x0018, 0x5000);
- Tag const TransducerData(0x0018, 0x5010);
- Tag const FocusDepth(0x0018, 0x5012);
- Tag const ProcessingFunction(0x0018, 0x5020);
- Tag const PostprocessingFunction(0x0018, 0x5021);
- Tag const MechanicalIndex(0x0018, 0x5022);
- Tag const BoneThermalIndex(0x0018, 0x5024);
- Tag const CranialThermalIndex(0x0018, 0x5026);
- Tag const SoftTissueThermalIndex(0x0018, 0x5027);
- Tag const SoftTissueFocusThermalIndex(0x0018, 0x5028);
- Tag const SoftTissueSurfaceThermalIndex(0x0018, 0x5029);
- Tag const DynamicRange(0x0018, 0x5030);
- Tag const TotalGain(0x0018, 0x5040);
- Tag const DepthOfScanField(0x0018, 0x5050);
- Tag const PatientPosition(0x0018, 0x5100);
- Tag const ViewPosition(0x0018, 0x5101);
- Tag const ProjectionEponymousNameCodeSequence(0x0018, 0x5104);
- Tag const ImageTransformationMatrix(0x0018, 0x5210);
- Tag const ImageTranslationVector(0x0018, 0x5212);
- Tag const Sensitivity(0x0018, 0x6000);
- Tag const SequenceOfUltrasoundRegions(0x0018, 0x6011);
- Tag const RegionSpatialFormat(0x0018, 0x6012);
- Tag const RegionDataType(0x0018, 0x6014);
- Tag const RegionFlags(0x0018, 0x6016);
- Tag const RegionLocationMinX0(0x0018, 0x6018);
- Tag const RegionLocationMinY0(0x0018, 0x601a);
- Tag const RegionLocationMaxX1(0x0018, 0x601c);
- Tag const RegionLocationMaxY1(0x0018, 0x601e);
- Tag const ReferencePixelX0(0x0018, 0x6020);
- Tag const ReferencePixelY0(0x0018, 0x6022);
- Tag const PhysicalUnitsXDirection(0x0018, 0x6024);
- Tag const PhysicalUnitsYDirection(0x0018, 0x6026);
- Tag const ReferencePixelPhysicalValueX(0x0018, 0x6028);
- Tag const ReferencePixelPhysicalValueY(0x0018, 0x602a);
- Tag const PhysicalDeltaX(0x0018, 0x602c);
- Tag const PhysicalDeltaY(0x0018, 0x602e);
- Tag const TransducerFrequency(0x0018, 0x6030);
- Tag const TransducerType(0x0018, 0x6031);
- Tag const PulseRepetitionFrequency(0x0018, 0x6032);
- Tag const DopplerCorrectionAngle(0x0018, 0x6034);
- Tag const SteeringAngle(0x0018, 0x6036);
- Tag const DopplerSampleVolumeXPositionRetired(0x0018, 0x6038);
- Tag const DopplerSampleVolumeXPosition(0x0018, 0x6039);
- Tag const DopplerSampleVolumeYPositionRetired(0x0018, 0x603a);
- Tag const DopplerSampleVolumeYPosition(0x0018, 0x603b);
- Tag const TMLinePositionX0Retired(0x0018, 0x603c);
- Tag const TMLinePositionX0(0x0018, 0x603d);
- Tag const TMLinePositionY0Retired(0x0018, 0x603e);
- Tag const TMLinePositionY0(0x0018, 0x603f);
- Tag const TMLinePositionX1Retired(0x0018, 0x6040);
- Tag const TMLinePositionX1(0x0018, 0x6041);
- Tag const TMLinePositionY1Retired(0x0018, 0x6042);
- Tag const TMLinePositionY1(0x0018, 0x6043);
- Tag const PixelComponentOrganization(0x0018, 0x6044);
- Tag const PixelComponentMask(0x0018, 0x6046);
- Tag const PixelComponentRangeStart(0x0018, 0x6048);
- Tag const PixelComponentRangeStop(0x0018, 0x604a);
- Tag const PixelComponentPhysicalUnits(0x0018, 0x604c);
- Tag const PixelComponentDataType(0x0018, 0x604e);
- Tag const NumberOfTableBreakPoints(0x0018, 0x6050);
- Tag const TableOfXBreakPoints(0x0018, 0x6052);
- Tag const TableOfYBreakPoints(0x0018, 0x6054);
- Tag const NumberOfTableEntries(0x0018, 0x6056);
- Tag const TableOfPixelValues(0x0018, 0x6058);
- Tag const TableOfParameterValues(0x0018, 0x605a);
- Tag const RWaveTimeVector(0x0018, 0x6060);
- Tag const DetectorConditionsNominalFlag(0x0018, 0x7000);
- Tag const DetectorTemperature(0x0018, 0x7001);
- Tag const DetectorType(0x0018, 0x7004);
- Tag const DetectorConfiguration(0x0018, 0x7005);
- Tag const DetectorDescription(0x0018, 0x7006);
- Tag const DetectorMode(0x0018, 0x7008);
- Tag const DetectorID(0x0018, 0x700a);
- Tag const DateOfLastDetectorCalibration(0x0018, 0x700c);
- Tag const TimeOfLastDetectorCalibration(0x0018, 0x700e);
- Tag const ExposuresOnDetectorSinceLastCalibration(0x0018, 0x7010);
- Tag const ExposuresOnDetectorSinceManufactured(0x0018, 0x7011);
- Tag const DetectorTimeSinceLastExposure(0x0018, 0x7012);
- Tag const DetectorActiveTime(0x0018, 0x7014);
- Tag const DetectorActivationOffsetFromExposure(0x0018, 0x7016);
- Tag const DetectorBinning(0x0018, 0x701a);
- Tag const DetectorElementPhysicalSize(0x0018, 0x7020);
- Tag const DetectorElementSpacing(0x0018, 0x7022);
- Tag const DetectorActiveShape(0x0018, 0x7024);
- Tag const DetectorActiveDimensions(0x0018, 0x7026);
- Tag const DetectorActiveOrigin(0x0018, 0x7028);
- Tag const DetectorManufacturerName(0x0018, 0x702a);
- Tag const DetectorManufacturerModelName(0x0018, 0x702b);
- Tag const FieldOfViewOrigin(0x0018, 0x7030);
- Tag const FieldOfViewRotation(0x0018, 0x7032);
- Tag const FieldOfViewHorizontalFlip(0x0018, 0x7034);
- Tag const PixelDataAreaOriginRelativeToFOV(0x0018, 0x7036);
- Tag const PixelDataAreaRotationAngleRelativeToFOV(0x0018, 0x7038);
- Tag const GridAbsorbingMaterial(0x0018, 0x7040);
- Tag const GridSpacingMaterial(0x0018, 0x7041);
- Tag const GridThickness(0x0018, 0x7042);
- Tag const GridPitch(0x0018, 0x7044);
- Tag const GridAspectRatio(0x0018, 0x7046);
- Tag const GridPeriod(0x0018, 0x7048);
- Tag const GridFocalDistance(0x0018, 0x704c);
- Tag const FilterMaterial(0x0018, 0x7050);
- Tag const FilterThicknessMinimum(0x0018, 0x7052);
- Tag const FilterThicknessMaximum(0x0018, 0x7054);
- Tag const FilterBeamPathLengthMinimum(0x0018, 0x7056);
- Tag const FilterBeamPathLengthMaximum(0x0018, 0x7058);
- Tag const ExposureControlMode(0x0018, 0x7060);
- Tag const ExposureControlModeDescription(0x0018, 0x7062);
- Tag const ExposureStatus(0x0018, 0x7064);
- Tag const PhototimerSetting(0x0018, 0x7065);
- Tag const ExposureTimeInuS(0x0018, 0x8150);
- Tag const XRayTubeCurrentInuA(0x0018, 0x8151);
- Tag const ContentQualification(0x0018, 0x9004);
- Tag const PulseSequenceName(0x0018, 0x9005);
- Tag const MRImagingModifierSequence(0x0018, 0x9006);
- Tag const EchoPulseSequence(0x0018, 0x9008);
- Tag const InversionRecovery(0x0018, 0x9009);
- Tag const FlowCompensation(0x0018, 0x9010);
- Tag const MultipleSpinEcho(0x0018, 0x9011);
- Tag const MultiPlanarExcitation(0x0018, 0x9012);
- Tag const PhaseContrast(0x0018, 0x9014);
- Tag const TimeOfFlightContrast(0x0018, 0x9015);
- Tag const Spoiling(0x0018, 0x9016);
- Tag const SteadyStatePulseSequence(0x0018, 0x9017);
- Tag const EchoPlanarPulseSequence(0x0018, 0x9018);
- Tag const TagAngleFirstAxis(0x0018, 0x9019);
- Tag const MagnetizationTransfer(0x0018, 0x9020);
- Tag const T2Preparation(0x0018, 0x9021);
- Tag const BloodSignalNulling(0x0018, 0x9022);
- Tag const SaturationRecovery(0x0018, 0x9024);
- Tag const SpectrallySelectedSuppression(0x0018, 0x9025);
- Tag const SpectrallySelectedExcitation(0x0018, 0x9026);
- Tag const SpatialPresaturation(0x0018, 0x9027);
- Tag const Tagging(0x0018, 0x9028);
- Tag const OversamplingPhase(0x0018, 0x9029);
- Tag const TagSpacingFirstDimension(0x0018, 0x9030);
- Tag const GeometryOfKSpaceTraversal(0x0018, 0x9032);
- Tag const SegmentedKSpaceTraversal(0x0018, 0x9033);
- Tag const RectilinearPhaseEncodeReordering(0x0018, 0x9034);
- Tag const TagThickness(0x0018, 0x9035);
- Tag const PartialFourierDirection(0x0018, 0x9036);
- Tag const CardiacSynchronizationTechnique(0x0018, 0x9037);
- Tag const ReceiveCoilManufacturerName(0x0018, 0x9041);
- Tag const MRReceiveCoilSequence(0x0018, 0x9042);
- Tag const ReceiveCoilType(0x0018, 0x9043);
- Tag const QuadratureReceiveCoil(0x0018, 0x9044);
- Tag const MultiCoilDefinitionSequence(0x0018, 0x9045);
- Tag const MultiCoilConfiguration(0x0018, 0x9046);
- Tag const MultiCoilElementName(0x0018, 0x9047);
- Tag const MultiCoilElementUsed(0x0018, 0x9048);
- Tag const MRTransmitCoilSequence(0x0018, 0x9049);
- Tag const TransmitCoilManufacturerName(0x0018, 0x9050);
- Tag const TransmitCoilType(0x0018, 0x9051);
- Tag const SpectralWidth(0x0018, 0x9052);
- Tag const ChemicalShiftReference(0x0018, 0x9053);
- Tag const VolumeLocalizationTechnique(0x0018, 0x9054);
- Tag const MRAcquisitionFrequencyEncodingSteps(0x0018, 0x9058);
- Tag const Decoupling(0x0018, 0x9059);
- Tag const DecoupledNucleus(0x0018, 0x9060);
- Tag const DecouplingFrequency(0x0018, 0x9061);
- Tag const DecouplingMethod(0x0018, 0x9062);
- Tag const DecouplingChemicalShiftReference(0x0018, 0x9063);
- Tag const KSpaceFiltering(0x0018, 0x9064);
- Tag const TimeDomainFiltering(0x0018, 0x9065);
- Tag const NumberOfZeroFills(0x0018, 0x9066);
- Tag const BaselineCorrection(0x0018, 0x9067);
- Tag const ParallelReductionFactorInPlane(0x0018, 0x9069);
- Tag const CardiacRRIntervalSpecified(0x0018, 0x9070);
- Tag const AcquisitionDuration(0x0018, 0x9073);
- Tag const FrameAcquisitionDateTime(0x0018, 0x9074);
- Tag const DiffusionDirectionality(0x0018, 0x9075);
- Tag const DiffusionGradientDirectionSequence(0x0018, 0x9076);
- Tag const ParallelAcquisition(0x0018, 0x9077);
- Tag const ParallelAcquisitionTechnique(0x0018, 0x9078);
- Tag const InversionTimes(0x0018, 0x9079);
- Tag const MetaboliteMapDescription(0x0018, 0x9080);
- Tag const PartialFourier(0x0018, 0x9081);
- Tag const EffectiveEchoTime(0x0018, 0x9082);
- Tag const MetaboliteMapCodeSequence(0x0018, 0x9083);
- Tag const ChemicalShiftSequence(0x0018, 0x9084);
- Tag const CardiacSignalSource(0x0018, 0x9085);
- Tag const DiffusionBValue(0x0018, 0x9087);
- Tag const DiffusionGradientOrientation(0x0018, 0x9089);
- Tag const VelocityEncodingDirection(0x0018, 0x9090);
- Tag const VelocityEncodingMinimumValue(0x0018, 0x9091);
- Tag const VelocityEncodingAcquisitionSequence(0x0018, 0x9092);
- Tag const NumberOfKSpaceTrajectories(0x0018, 0x9093);
- Tag const CoverageOfKSpace(0x0018, 0x9094);
- Tag const SpectroscopyAcquisitionPhaseRows(0x0018, 0x9095);
- Tag const ParallelReductionFactorInPlaneRetired(0x0018, 0x9096);
- Tag const TransmitterFrequency(0x0018, 0x9098);
- Tag const ResonantNucleus(0x0018, 0x9100);
- Tag const FrequencyCorrection(0x0018, 0x9101);
- Tag const MRSpectroscopyFOVGeometrySequence(0x0018, 0x9103);
- Tag const SlabThickness(0x0018, 0x9104);
- Tag const SlabOrientation(0x0018, 0x9105);
- Tag const MidSlabPosition(0x0018, 0x9106);
- Tag const MRSpatialSaturationSequence(0x0018, 0x9107);
- Tag const MRTimingAndRelatedParametersSequence(0x0018, 0x9112);
- Tag const MREchoSequence(0x0018, 0x9114);
- Tag const MRModifierSequence(0x0018, 0x9115);
- Tag const MRDiffusionSequence(0x0018, 0x9117);
- Tag const CardiacSynchronizationSequence(0x0018, 0x9118);
- Tag const MRAveragesSequence(0x0018, 0x9119);
- Tag const MRFOVGeometrySequence(0x0018, 0x9125);
- Tag const VolumeLocalizationSequence(0x0018, 0x9126);
- Tag const SpectroscopyAcquisitionDataColumns(0x0018, 0x9127);
- Tag const DiffusionAnisotropyType(0x0018, 0x9147);
- Tag const FrameReferenceDateTime(0x0018, 0x9151);
- Tag const MRMetaboliteMapSequence(0x0018, 0x9152);
- Tag const ParallelReductionFactorOutOfPlane(0x0018, 0x9155);
- Tag const SpectroscopyAcquisitionOutOfPlanePhaseSteps(0x0018, 0x9159);
- Tag const BulkMotionStatus(0x0018, 0x9166);
- Tag const ParallelReductionFactorSecondInPlane(0x0018, 0x9168);
- Tag const CardiacBeatRejectionTechnique(0x0018, 0x9169);
- Tag const RespiratoryMotionCompensationTechnique(0x0018, 0x9170);
- Tag const RespiratorySignalSource(0x0018, 0x9171);
- Tag const BulkMotionCompensationTechnique(0x0018, 0x9172);
- Tag const BulkMotionSignalSource(0x0018, 0x9173);
- Tag const ApplicableSafetyStandardAgency(0x0018, 0x9174);
- Tag const ApplicableSafetyStandardDescription(0x0018, 0x9175);
- Tag const OperatingModeSequence(0x0018, 0x9176);
- Tag const OperatingModeType(0x0018, 0x9177);
- Tag const OperatingMode(0x0018, 0x9178);
- Tag const SpecificAbsorptionRateDefinition(0x0018, 0x9179);
- Tag const GradientOutputType(0x0018, 0x9180);
- Tag const SpecificAbsorptionRateValue(0x0018, 0x9181);
- Tag const GradientOutput(0x0018, 0x9182);
- Tag const FlowCompensationDirection(0x0018, 0x9183);
- Tag const TaggingDelay(0x0018, 0x9184);
- Tag const RespiratoryMotionCompensationTechniqueDescription(0x0018, 0x9185);
- Tag const RespiratorySignalSourceID(0x0018, 0x9186);
- Tag const ChemicalShiftMinimumIntegrationLimitInHz(0x0018, 0x9195);
- Tag const ChemicalShiftMaximumIntegrationLimitInHz(0x0018, 0x9196);
- Tag const MRVelocityEncodingSequence(0x0018, 0x9197);
- Tag const FirstOrderPhaseCorrection(0x0018, 0x9198);
- Tag const WaterReferencedPhaseCorrection(0x0018, 0x9199);
- Tag const MRSpectroscopyAcquisitionType(0x0018, 0x9200);
- Tag const RespiratoryCyclePosition(0x0018, 0x9214);
- Tag const VelocityEncodingMaximumValue(0x0018, 0x9217);
- Tag const TagSpacingSecondDimension(0x0018, 0x9218);
- Tag const TagAngleSecondAxis(0x0018, 0x9219);
- Tag const FrameAcquisitionDuration(0x0018, 0x9220);
- Tag const MRImageFrameTypeSequence(0x0018, 0x9226);
- Tag const MRSpectroscopyFrameTypeSequence(0x0018, 0x9227);
- Tag const MRAcquisitionPhaseEncodingStepsInPlane(0x0018, 0x9231);
- Tag const MRAcquisitionPhaseEncodingStepsOutOfPlane(0x0018, 0x9232);
- Tag const SpectroscopyAcquisitionPhaseColumns(0x0018, 0x9234);
- Tag const CardiacCyclePosition(0x0018, 0x9236);
- Tag const SpecificAbsorptionRateSequence(0x0018, 0x9239);
- Tag const RFEchoTrainLength(0x0018, 0x9240);
- Tag const GradientEchoTrainLength(0x0018, 0x9241);
- Tag const ArterialSpinLabelingContrast(0x0018, 0x9250);
- Tag const MRArterialSpinLabelingSequence(0x0018, 0x9251);
- Tag const ASLTechniqueDescription(0x0018, 0x9252);
- Tag const ASLSlabNumber(0x0018, 0x9253);
- Tag const ASLSlabThickness(0x0018, 0x9254);
- Tag const ASLSlabOrientation(0x0018, 0x9255);
- Tag const ASLMidSlabPosition(0x0018, 0x9256);
- Tag const ASLContext(0x0018, 0x9257);
- Tag const ASLPulseTrainDuration(0x0018, 0x9258);
- Tag const ASLCrusherFlag(0x0018, 0x9259);
- Tag const ASLCrusherFlowLimit(0x0018, 0x925a);
- Tag const ASLCrusherDescription(0x0018, 0x925b);
- Tag const ASLBolusCutoffFlag(0x0018, 0x925c);
- Tag const ASLBolusCutoffTimingSequence(0x0018, 0x925d);
- Tag const ASLBolusCutoffTechnique(0x0018, 0x925e);
- Tag const ASLBolusCutoffDelayTime(0x0018, 0x925f);
- Tag const ASLSlabSequence(0x0018, 0x9260);
- Tag const ChemicalShiftMinimumIntegrationLimitInppm(0x0018, 0x9295);
- Tag const ChemicalShiftMaximumIntegrationLimitInppm(0x0018, 0x9296);
- Tag const WaterReferenceAcquisition(0x0018, 0x9297);
- Tag const EchoPeakPosition(0x0018, 0x9298);
- Tag const CTAcquisitionTypeSequence(0x0018, 0x9301);
- Tag const AcquisitionType(0x0018, 0x9302);
- Tag const TubeAngle(0x0018, 0x9303);
- Tag const CTAcquisitionDetailsSequence(0x0018, 0x9304);
- Tag const RevolutionTime(0x0018, 0x9305);
- Tag const SingleCollimationWidth(0x0018, 0x9306);
- Tag const TotalCollimationWidth(0x0018, 0x9307);
- Tag const CTTableDynamicsSequence(0x0018, 0x9308);
- Tag const TableSpeed(0x0018, 0x9309);
- Tag const TableFeedPerRotation(0x0018, 0x9310);
- Tag const SpiralPitchFactor(0x0018, 0x9311);
- Tag const CTGeometrySequence(0x0018, 0x9312);
- Tag const DataCollectionCenterPatient(0x0018, 0x9313);
- Tag const CTReconstructionSequence(0x0018, 0x9314);
- Tag const ReconstructionAlgorithm(0x0018, 0x9315);
- Tag const ConvolutionKernelGroup(0x0018, 0x9316);
- Tag const ReconstructionFieldOfView(0x0018, 0x9317);
- Tag const ReconstructionTargetCenterPatient(0x0018, 0x9318);
- Tag const ReconstructionAngle(0x0018, 0x9319);
- Tag const ImageFilter(0x0018, 0x9320);
- Tag const CTExposureSequence(0x0018, 0x9321);
- Tag const ReconstructionPixelSpacing(0x0018, 0x9322);
- Tag const ExposureModulationType(0x0018, 0x9323);
- Tag const EstimatedDoseSaving(0x0018, 0x9324);
- Tag const CTXRayDetailsSequence(0x0018, 0x9325);
- Tag const CTPositionSequence(0x0018, 0x9326);
- Tag const TablePosition(0x0018, 0x9327);
- Tag const ExposureTimeInms(0x0018, 0x9328);
- Tag const CTImageFrameTypeSequence(0x0018, 0x9329);
- Tag const XRayTubeCurrentInmA(0x0018, 0x9330);
- Tag const ExposureInmAs(0x0018, 0x9332);
- Tag const ConstantVolumeFlag(0x0018, 0x9333);
- Tag const FluoroscopyFlag(0x0018, 0x9334);
- Tag const DistanceSourceToDataCollectionCenter(0x0018, 0x9335);
- Tag const ContrastBolusAgentNumber(0x0018, 0x9337);
- Tag const ContrastBolusIngredientCodeSequence(0x0018, 0x9338);
- Tag const ContrastAdministrationProfileSequence(0x0018, 0x9340);
- Tag const ContrastBolusUsageSequence(0x0018, 0x9341);
- Tag const ContrastBolusAgentAdministered(0x0018, 0x9342);
- Tag const ContrastBolusAgentDetected(0x0018, 0x9343);
- Tag const ContrastBolusAgentPhase(0x0018, 0x9344);
- Tag const CTDIvol(0x0018, 0x9345);
- Tag const CTDIPhantomTypeCodeSequence(0x0018, 0x9346);
- Tag const CalciumScoringMassFactorPatient(0x0018, 0x9351);
- Tag const CalciumScoringMassFactorDevice(0x0018, 0x9352);
- Tag const EnergyWeightingFactor(0x0018, 0x9353);
- Tag const CTAdditionalXRaySourceSequence(0x0018, 0x9360);
- Tag const ProjectionPixelCalibrationSequence(0x0018, 0x9401);
- Tag const DistanceSourceToIsocenter(0x0018, 0x9402);
- Tag const DistanceObjectToTableTop(0x0018, 0x9403);
- Tag const ObjectPixelSpacingInCenterOfBeam(0x0018, 0x9404);
- Tag const PositionerPositionSequence(0x0018, 0x9405);
- Tag const TablePositionSequence(0x0018, 0x9406);
- Tag const CollimatorShapeSequence(0x0018, 0x9407);
- Tag const PlanesInAcquisition(0x0018, 0x9410);
- Tag const XAXRFFrameCharacteristicsSequence(0x0018, 0x9412);
- Tag const FrameAcquisitionSequence(0x0018, 0x9417);
- Tag const XRayReceptorType(0x0018, 0x9420);
- Tag const AcquisitionProtocolName(0x0018, 0x9423);
- Tag const AcquisitionProtocolDescription(0x0018, 0x9424);
- Tag const ContrastBolusIngredientOpaque(0x0018, 0x9425);
- Tag const DistanceReceptorPlaneToDetectorHousing(0x0018, 0x9426);
- Tag const IntensifierActiveShape(0x0018, 0x9427);
- Tag const IntensifierActiveDimensions(0x0018, 0x9428);
- Tag const PhysicalDetectorSize(0x0018, 0x9429);
- Tag const PositionOfIsocenterProjection(0x0018, 0x9430);
- Tag const FieldOfViewSequence(0x0018, 0x9432);
- Tag const FieldOfViewDescription(0x0018, 0x9433);
- Tag const ExposureControlSensingRegionsSequence(0x0018, 0x9434);
- Tag const ExposureControlSensingRegionShape(0x0018, 0x9435);
- Tag const ExposureControlSensingRegionLeftVerticalEdge(0x0018, 0x9436);
- Tag const ExposureControlSensingRegionRightVerticalEdge(0x0018, 0x9437);
- Tag const ExposureControlSensingRegionUpperHorizontalEdge(0x0018, 0x9438);
- Tag const ExposureControlSensingRegionLowerHorizontalEdge(0x0018, 0x9439);
- Tag const CenterOfCircularExposureControlSensingRegion(0x0018, 0x9440);
- Tag const RadiusOfCircularExposureControlSensingRegion(0x0018, 0x9441);
- Tag const VerticesOfThePolygonalExposureControlSensingRegion(0x0018, 0x9442);
- Tag const ColumnAngulationPatient(0x0018, 0x9447);
- Tag const BeamAngle(0x0018, 0x9449);
- Tag const FrameDetectorParametersSequence(0x0018, 0x9451);
- Tag const CalculatedAnatomyThickness(0x0018, 0x9452);
- Tag const CalibrationSequence(0x0018, 0x9455);
- Tag const ObjectThicknessSequence(0x0018, 0x9456);
- Tag const PlaneIdentification(0x0018, 0x9457);
- Tag const FieldOfViewDimensionsInFloat(0x0018, 0x9461);
- Tag const IsocenterReferenceSystemSequence(0x0018, 0x9462);
- Tag const PositionerIsocenterPrimaryAngle(0x0018, 0x9463);
- Tag const PositionerIsocenterSecondaryAngle(0x0018, 0x9464);
- Tag const PositionerIsocenterDetectorRotationAngle(0x0018, 0x9465);
- Tag const TableXPositionToIsocenter(0x0018, 0x9466);
- Tag const TableYPositionToIsocenter(0x0018, 0x9467);
- Tag const TableZPositionToIsocenter(0x0018, 0x9468);
- Tag const TableHorizontalRotationAngle(0x0018, 0x9469);
- Tag const TableHeadTiltAngle(0x0018, 0x9470);
- Tag const TableCradleTiltAngle(0x0018, 0x9471);
- Tag const FrameDisplayShutterSequence(0x0018, 0x9472);
- Tag const AcquiredImageAreaDoseProduct(0x0018, 0x9473);
- Tag const CArmPositionerTabletopRelationship(0x0018, 0x9474);
- Tag const XRayGeometrySequence(0x0018, 0x9476);
- Tag const IrradiationEventIdentificationSequence(0x0018, 0x9477);
- Tag const XRay3DFrameTypeSequence(0x0018, 0x9504);
- Tag const ContributingSourcesSequence(0x0018, 0x9506);
- Tag const XRay3DAcquisitionSequence(0x0018, 0x9507);
- Tag const PrimaryPositionerScanArc(0x0018, 0x9508);
- Tag const SecondaryPositionerScanArc(0x0018, 0x9509);
- Tag const PrimaryPositionerScanStartAngle(0x0018, 0x9510);
- Tag const SecondaryPositionerScanStartAngle(0x0018, 0x9511);
- Tag const PrimaryPositionerIncrement(0x0018, 0x9514);
- Tag const SecondaryPositionerIncrement(0x0018, 0x9515);
- Tag const StartAcquisitionDateTime(0x0018, 0x9516);
- Tag const EndAcquisitionDateTime(0x0018, 0x9517);
- Tag const PrimaryPositionerIncrementSign(0x0018, 0x9518);
- Tag const SecondaryPositionerIncrementSign(0x0018, 0x9519);
- Tag const ApplicationName(0x0018, 0x9524);
- Tag const ApplicationVersion(0x0018, 0x9525);
- Tag const ApplicationManufacturer(0x0018, 0x9526);
- Tag const AlgorithmType(0x0018, 0x9527);
- Tag const AlgorithmDescription(0x0018, 0x9528);
- Tag const XRay3DReconstructionSequence(0x0018, 0x9530);
- Tag const ReconstructionDescription(0x0018, 0x9531);
- Tag const PerProjectionAcquisitionSequence(0x0018, 0x9538);
- Tag const DetectorPositionSequence(0x0018, 0x9541);
- Tag const XRayAcquisitionDoseSequence(0x0018, 0x9542);
- Tag const XRaySourceIsocenterPrimaryAngle(0x0018, 0x9543);
- Tag const XRaySourceIsocenterSecondaryAngle(0x0018, 0x9544);
- Tag const BreastSupportIsocenterPrimaryAngle(0x0018, 0x9545);
- Tag const BreastSupportIsocenterSecondaryAngle(0x0018, 0x9546);
- Tag const BreastSupportXPositionToIsocenter(0x0018, 0x9547);
- Tag const BreastSupportYPositionToIsocenter(0x0018, 0x9548);
- Tag const BreastSupportZPositionToIsocenter(0x0018, 0x9549);
- Tag const DetectorIsocenterPrimaryAngle(0x0018, 0x9550);
- Tag const DetectorIsocenterSecondaryAngle(0x0018, 0x9551);
- Tag const DetectorXPositionToIsocenter(0x0018, 0x9552);
- Tag const DetectorYPositionToIsocenter(0x0018, 0x9553);
- Tag const DetectorZPositionToIsocenter(0x0018, 0x9554);
- Tag const XRayGridSequence(0x0018, 0x9555);
- Tag const XRayFilterSequence(0x0018, 0x9556);
- Tag const DetectorActiveAreaTLHCPosition(0x0018, 0x9557);
- Tag const DetectorActiveAreaOrientation(0x0018, 0x9558);
- Tag const PositionerPrimaryAngleDirection(0x0018, 0x9559);
- Tag const DiffusionBMatrixSequence(0x0018, 0x9601);
- Tag const DiffusionBValueXX(0x0018, 0x9602);
- Tag const DiffusionBValueXY(0x0018, 0x9603);
- Tag const DiffusionBValueXZ(0x0018, 0x9604);
- Tag const DiffusionBValueYY(0x0018, 0x9605);
- Tag const DiffusionBValueYZ(0x0018, 0x9606);
- Tag const DiffusionBValueZZ(0x0018, 0x9607);
- Tag const DecayCorrectionDateTime(0x0018, 0x9701);
- Tag const StartDensityThreshold(0x0018, 0x9715);
- Tag const StartRelativeDensityDifferenceThreshold(0x0018, 0x9716);
- Tag const StartCardiacTriggerCountThreshold(0x0018, 0x9717);
- Tag const StartRespiratoryTriggerCountThreshold(0x0018, 0x9718);
- Tag const TerminationCountsThreshold(0x0018, 0x9719);
- Tag const TerminationDensityThreshold(0x0018, 0x9720);
- Tag const TerminationRelativeDensityThreshold(0x0018, 0x9721);
- Tag const TerminationTimeThreshold(0x0018, 0x9722);
- Tag const TerminationCardiacTriggerCountThreshold(0x0018, 0x9723);
- Tag const TerminationRespiratoryTriggerCountThreshold(0x0018, 0x9724);
- Tag const DetectorGeometry(0x0018, 0x9725);
- Tag const TransverseDetectorSeparation(0x0018, 0x9726);
- Tag const AxialDetectorDimension(0x0018, 0x9727);
- Tag const RadiopharmaceuticalAgentNumber(0x0018, 0x9729);
- Tag const PETFrameAcquisitionSequence(0x0018, 0x9732);
- Tag const PETDetectorMotionDetailsSequence(0x0018, 0x9733);
- Tag const PETTableDynamicsSequence(0x0018, 0x9734);
- Tag const PETPositionSequence(0x0018, 0x9735);
- Tag const PETFrameCorrectionFactorsSequence(0x0018, 0x9736);
- Tag const RadiopharmaceuticalUsageSequence(0x0018, 0x9737);
- Tag const AttenuationCorrectionSource(0x0018, 0x9738);
- Tag const NumberOfIterations(0x0018, 0x9739);
- Tag const NumberOfSubsets(0x0018, 0x9740);
- Tag const PETReconstructionSequence(0x0018, 0x9749);
- Tag const PETFrameTypeSequence(0x0018, 0x9751);
- Tag const TimeOfFlightInformationUsed(0x0018, 0x9755);
- Tag const ReconstructionType(0x0018, 0x9756);
- Tag const DecayCorrected(0x0018, 0x9758);
- Tag const AttenuationCorrected(0x0018, 0x9759);
- Tag const ScatterCorrected(0x0018, 0x9760);
- Tag const DeadTimeCorrected(0x0018, 0x9761);
- Tag const GantryMotionCorrected(0x0018, 0x9762);
- Tag const PatientMotionCorrected(0x0018, 0x9763);
- Tag const CountLossNormalizationCorrected(0x0018, 0x9764);
- Tag const RandomsCorrected(0x0018, 0x9765);
- Tag const NonUniformRadialSamplingCorrected(0x0018, 0x9766);
- Tag const SensitivityCalibrated(0x0018, 0x9767);
- Tag const DetectorNormalizationCorrection(0x0018, 0x9768);
- Tag const IterativeReconstructionMethod(0x0018, 0x9769);
- Tag const AttenuationCorrectionTemporalRelationship(0x0018, 0x9770);
- Tag const PatientPhysiologicalStateSequence(0x0018, 0x9771);
- Tag const PatientPhysiologicalStateCodeSequence(0x0018, 0x9772);
- Tag const DepthsOfFocus(0x0018, 0x9801);
- Tag const ExcludedIntervalsSequence(0x0018, 0x9803);
- Tag const ExclusionStartDateTime(0x0018, 0x9804);
- Tag const ExclusionDuration(0x0018, 0x9805);
- Tag const USImageDescriptionSequence(0x0018, 0x9806);
- Tag const ImageDataTypeSequence(0x0018, 0x9807);
- Tag const DataType(0x0018, 0x9808);
- Tag const TransducerScanPatternCodeSequence(0x0018, 0x9809);
- Tag const AliasedDataType(0x0018, 0x980b);
- Tag const PositionMeasuringDeviceUsed(0x0018, 0x980c);
- Tag const TransducerGeometryCodeSequence(0x0018, 0x980d);
- Tag const TransducerBeamSteeringCodeSequence(0x0018, 0x980e);
- Tag const TransducerApplicationCodeSequence(0x0018, 0x980f);
- Tag const ZeroVelocityPixelValue(0x0018, 0x9810);
- Tag const ContributingEquipmentSequence(0x0018, 0xa001);
- Tag const ContributionDateTime(0x0018, 0xa002);
- Tag const ContributionDescription(0x0018, 0xa003);
- Tag const StudyInstanceUID(0x0020, 0x000d);
- Tag const SeriesInstanceUID(0x0020, 0x000e);
- Tag const StudyID(0x0020, 0x0010);
- Tag const SeriesNumber(0x0020, 0x0011);
- Tag const AcquisitionNumber(0x0020, 0x0012);
- Tag const InstanceNumber(0x0020, 0x0013);
- Tag const IsotopeNumber(0x0020, 0x0014);
- Tag const PhaseNumber(0x0020, 0x0015);
- Tag const IntervalNumber(0x0020, 0x0016);
- Tag const TimeSlotNumber(0x0020, 0x0017);
- Tag const AngleNumber(0x0020, 0x0018);
- Tag const ItemNumber(0x0020, 0x0019);
- Tag const PatientOrientation(0x0020, 0x0020);
- Tag const OverlayNumber(0x0020, 0x0022);
- Tag const CurveNumber(0x0020, 0x0024);
- Tag const LUTNumber(0x0020, 0x0026);
- Tag const ImagePosition(0x0020, 0x0030);
- Tag const ImagePositionPatient(0x0020, 0x0032);
- Tag const ImageOrientation(0x0020, 0x0035);
- Tag const ImageOrientationPatient(0x0020, 0x0037);
- Tag const Location(0x0020, 0x0050);
- Tag const FrameOfReferenceUID(0x0020, 0x0052);
- Tag const Laterality(0x0020, 0x0060);
- Tag const ImageLaterality(0x0020, 0x0062);
- Tag const ImageGeometryType(0x0020, 0x0070);
- Tag const MaskingImage(0x0020, 0x0080);
- Tag const ReportNumber(0x0020, 0x00aa);
- Tag const TemporalPositionIdentifier(0x0020, 0x0100);
- Tag const NumberOfTemporalPositions(0x0020, 0x0105);
- Tag const TemporalResolution(0x0020, 0x0110);
- Tag const SynchronizationFrameOfReferenceUID(0x0020, 0x0200);
- Tag const SOPInstanceUIDOfConcatenationSource(0x0020, 0x0242);
- Tag const SeriesInStudy(0x0020, 0x1000);
- Tag const AcquisitionsInSeries(0x0020, 0x1001);
- Tag const ImagesInAcquisition(0x0020, 0x1002);
- Tag const ImagesInSeries(0x0020, 0x1003);
- Tag const AcquisitionsInStudy(0x0020, 0x1004);
- Tag const ImagesInStudy(0x0020, 0x1005);
- Tag const Reference(0x0020, 0x1020);
- Tag const PositionReferenceIndicator(0x0020, 0x1040);
- Tag const SliceLocation(0x0020, 0x1041);
- Tag const OtherStudyNumbers(0x0020, 0x1070);
- Tag const NumberOfPatientRelatedStudies(0x0020, 0x1200);
- Tag const NumberOfPatientRelatedSeries(0x0020, 0x1202);
- Tag const NumberOfPatientRelatedInstances(0x0020, 0x1204);
- Tag const NumberOfStudyRelatedSeries(0x0020, 0x1206);
- Tag const NumberOfStudyRelatedInstances(0x0020, 0x1208);
- Tag const NumberOfSeriesRelatedInstances(0x0020, 0x1209);
- Tag const ModifyingDeviceID(0x0020, 0x3401);
- Tag const ModifiedImageID(0x0020, 0x3402);
- Tag const ModifiedImageDate(0x0020, 0x3403);
- Tag const ModifyingDeviceManufacturer(0x0020, 0x3404);
- Tag const ModifiedImageTime(0x0020, 0x3405);
- Tag const ModifiedImageDescription(0x0020, 0x3406);
- Tag const ImageComments(0x0020, 0x4000);
- Tag const OriginalImageIdentification(0x0020, 0x5000);
- Tag const OriginalImageIdentificationNomenclature(0x0020, 0x5002);
- Tag const StackID(0x0020, 0x9056);
- Tag const InStackPositionNumber(0x0020, 0x9057);
- Tag const FrameAnatomySequence(0x0020, 0x9071);
- Tag const FrameLaterality(0x0020, 0x9072);
- Tag const FrameContentSequence(0x0020, 0x9111);
- Tag const PlanePositionSequence(0x0020, 0x9113);
- Tag const PlaneOrientationSequence(0x0020, 0x9116);
- Tag const TemporalPositionIndex(0x0020, 0x9128);
- Tag const NominalCardiacTriggerDelayTime(0x0020, 0x9153);
- Tag const NominalCardiacTriggerTimePriorToRPeak(0x0020, 0x9154);
- Tag const ActualCardiacTriggerTimePriorToRPeak(0x0020, 0x9155);
- Tag const FrameAcquisitionNumber(0x0020, 0x9156);
- Tag const DimensionIndexValues(0x0020, 0x9157);
- Tag const FrameComments(0x0020, 0x9158);
- Tag const ConcatenationUID(0x0020, 0x9161);
- Tag const InConcatenationNumber(0x0020, 0x9162);
- Tag const InConcatenationTotalNumber(0x0020, 0x9163);
- Tag const DimensionOrganizationUID(0x0020, 0x9164);
- Tag const DimensionIndexPointer(0x0020, 0x9165);
- Tag const FunctionalGroupPointer(0x0020, 0x9167);
- Tag const UnassignedSharedConvertedAttributesSequence(0x0020, 0x9170);
- Tag const UnassignedPerFrameConvertedAttributesSequence(0x0020, 0x9171);
- Tag const ConversionSourceAttributesSequence(0x0020, 0x9172);
- Tag const DimensionIndexPrivateCreator(0x0020, 0x9213);
- Tag const DimensionOrganizationSequence(0x0020, 0x9221);
- Tag const DimensionIndexSequence(0x0020, 0x9222);
- Tag const ConcatenationFrameOffsetNumber(0x0020, 0x9228);
- Tag const FunctionalGroupPrivateCreator(0x0020, 0x9238);
- Tag const NominalPercentageOfCardiacPhase(0x0020, 0x9241);
- Tag const NominalPercentageOfRespiratoryPhase(0x0020, 0x9245);
- Tag const StartingRespiratoryAmplitude(0x0020, 0x9246);
- Tag const StartingRespiratoryPhase(0x0020, 0x9247);
- Tag const EndingRespiratoryAmplitude(0x0020, 0x9248);
- Tag const EndingRespiratoryPhase(0x0020, 0x9249);
- Tag const RespiratoryTriggerType(0x0020, 0x9250);
- Tag const RRIntervalTimeNominal(0x0020, 0x9251);
- Tag const ActualCardiacTriggerDelayTime(0x0020, 0x9252);
- Tag const RespiratorySynchronizationSequence(0x0020, 0x9253);
- Tag const RespiratoryIntervalTime(0x0020, 0x9254);
- Tag const NominalRespiratoryTriggerDelayTime(0x0020, 0x9255);
- Tag const RespiratoryTriggerDelayThreshold(0x0020, 0x9256);
- Tag const ActualRespiratoryTriggerDelayTime(0x0020, 0x9257);
- Tag const ImagePositionVolume(0x0020, 0x9301);
- Tag const ImageOrientationVolume(0x0020, 0x9302);
- Tag const UltrasoundAcquisitionGeometry(0x0020, 0x9307);
- Tag const ApexPosition(0x0020, 0x9308);
- Tag const VolumeToTransducerMappingMatrix(0x0020, 0x9309);
- Tag const VolumeToTableMappingMatrix(0x0020, 0x930a);
- Tag const VolumeToTransducerRelationship(0x0020, 0x930b);
- Tag const PatientFrameOfReferenceSource(0x0020, 0x930c);
- Tag const TemporalPositionTimeOffset(0x0020, 0x930d);
- Tag const PlanePositionVolumeSequence(0x0020, 0x930e);
- Tag const PlaneOrientationVolumeSequence(0x0020, 0x930f);
- Tag const TemporalPositionSequence(0x0020, 0x9310);
- Tag const DimensionOrganizationType(0x0020, 0x9311);
- Tag const VolumeFrameOfReferenceUID(0x0020, 0x9312);
- Tag const TableFrameOfReferenceUID(0x0020, 0x9313);
- Tag const DimensionDescriptionLabel(0x0020, 0x9421);
- Tag const PatientOrientationInFrameSequence(0x0020, 0x9450);
- Tag const FrameLabel(0x0020, 0x9453);
- Tag const AcquisitionIndex(0x0020, 0x9518);
- Tag const ContributingSOPInstancesReferenceSequence(0x0020, 0x9529);
- Tag const ReconstructionIndex(0x0020, 0x9536);
- Tag const LightPathFilterPassThroughWavelength(0x0022, 0x0001);
- Tag const LightPathFilterPassBand(0x0022, 0x0002);
- Tag const ImagePathFilterPassThroughWavelength(0x0022, 0x0003);
- Tag const ImagePathFilterPassBand(0x0022, 0x0004);
- Tag const PatientEyeMovementCommanded(0x0022, 0x0005);
- Tag const PatientEyeMovementCommandCodeSequence(0x0022, 0x0006);
- Tag const SphericalLensPower(0x0022, 0x0007);
- Tag const CylinderLensPower(0x0022, 0x0008);
- Tag const CylinderAxis(0x0022, 0x0009);
- Tag const EmmetropicMagnification(0x0022, 0x000a);
- Tag const IntraOcularPressure(0x0022, 0x000b);
- Tag const HorizontalFieldOfView(0x0022, 0x000c);
- Tag const PupilDilated(0x0022, 0x000d);
- Tag const DegreeOfDilation(0x0022, 0x000e);
- Tag const StereoBaselineAngle(0x0022, 0x0010);
- Tag const StereoBaselineDisplacement(0x0022, 0x0011);
- Tag const StereoHorizontalPixelOffset(0x0022, 0x0012);
- Tag const StereoVerticalPixelOffset(0x0022, 0x0013);
- Tag const StereoRotation(0x0022, 0x0014);
- Tag const AcquisitionDeviceTypeCodeSequence(0x0022, 0x0015);
- Tag const IlluminationTypeCodeSequence(0x0022, 0x0016);
- Tag const LightPathFilterTypeStackCodeSequence(0x0022, 0x0017);
- Tag const ImagePathFilterTypeStackCodeSequence(0x0022, 0x0018);
- Tag const LensesCodeSequence(0x0022, 0x0019);
- Tag const ChannelDescriptionCodeSequence(0x0022, 0x001a);
- Tag const RefractiveStateSequence(0x0022, 0x001b);
- Tag const MydriaticAgentCodeSequence(0x0022, 0x001c);
- Tag const RelativeImagePositionCodeSequence(0x0022, 0x001d);
- Tag const CameraAngleOfView(0x0022, 0x001e);
- Tag const StereoPairsSequence(0x0022, 0x0020);
- Tag const LeftImageSequence(0x0022, 0x0021);
- Tag const RightImageSequence(0x0022, 0x0022);
- Tag const AxialLengthOfTheEye(0x0022, 0x0030);
- Tag const OphthalmicFrameLocationSequence(0x0022, 0x0031);
- Tag const ReferenceCoordinates(0x0022, 0x0032);
- Tag const DepthSpatialResolution(0x0022, 0x0035);
- Tag const MaximumDepthDistortion(0x0022, 0x0036);
- Tag const AlongScanSpatialResolution(0x0022, 0x0037);
- Tag const MaximumAlongScanDistortion(0x0022, 0x0038);
- Tag const OphthalmicImageOrientation(0x0022, 0x0039);
- Tag const DepthOfTransverseImage(0x0022, 0x0041);
- Tag const MydriaticAgentConcentrationUnitsSequence(0x0022, 0x0042);
- Tag const AcrossScanSpatialResolution(0x0022, 0x0048);
- Tag const MaximumAcrossScanDistortion(0x0022, 0x0049);
- Tag const MydriaticAgentConcentration(0x0022, 0x004e);
- Tag const IlluminationWaveLength(0x0022, 0x0055);
- Tag const IlluminationPower(0x0022, 0x0056);
- Tag const IlluminationBandwidth(0x0022, 0x0057);
- Tag const MydriaticAgentSequence(0x0022, 0x0058);
- Tag const OphthalmicAxialMeasurementsRightEyeSequence(0x0022, 0x1007);
- Tag const OphthalmicAxialMeasurementsLeftEyeSequence(0x0022, 0x1008);
- Tag const OphthalmicAxialMeasurementsDeviceType(0x0022, 0x1009);
- Tag const OphthalmicAxialLengthMeasurementsType(0x0022, 0x1010);
- Tag const OphthalmicAxialLengthSequence(0x0022, 0x1012);
- Tag const OphthalmicAxialLength(0x0022, 0x1019);
- Tag const LensStatusCodeSequence(0x0022, 0x1024);
- Tag const VitreousStatusCodeSequence(0x0022, 0x1025);
- Tag const IOLFormulaCodeSequence(0x0022, 0x1028);
- Tag const IOLFormulaDetail(0x0022, 0x1029);
- Tag const KeratometerIndex(0x0022, 0x1033);
- Tag const SourceOfOphthalmicAxialLengthCodeSequence(0x0022, 0x1035);
- Tag const TargetRefraction(0x0022, 0x1037);
- Tag const RefractiveProcedureOccurred(0x0022, 0x1039);
- Tag const RefractiveSurgeryTypeCodeSequence(0x0022, 0x1040);
- Tag const OphthalmicUltrasoundMethodCodeSequence(0x0022, 0x1044);
- Tag const OphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1050);
- Tag const IOLPower(0x0022, 0x1053);
- Tag const PredictedRefractiveError(0x0022, 0x1054);
- Tag const OphthalmicAxialLengthVelocity(0x0022, 0x1059);
- Tag const LensStatusDescription(0x0022, 0x1065);
- Tag const VitreousStatusDescription(0x0022, 0x1066);
- Tag const IOLPowerSequence(0x0022, 0x1090);
- Tag const LensConstantSequence(0x0022, 0x1092);
- Tag const IOLManufacturer(0x0022, 0x1093);
- Tag const LensConstantDescription(0x0022, 0x1094);
- Tag const ImplantName(0x0022, 0x1095);
- Tag const KeratometryMeasurementTypeCodeSequence(0x0022, 0x1096);
- Tag const ImplantPartNumber(0x0022, 0x1097);
- Tag const ReferencedOphthalmicAxialMeasurementsSequence(0x0022, 0x1100);
- Tag const OphthalmicAxialLengthMeasurementsSegmentNameCodeSequence(0x0022, 0x1101);
- Tag const RefractiveErrorBeforeRefractiveSurgeryCodeSequence(0x0022, 0x1103);
- Tag const IOLPowerForExactEmmetropia(0x0022, 0x1121);
- Tag const IOLPowerForExactTargetRefraction(0x0022, 0x1122);
- Tag const AnteriorChamberDepthDefinitionCodeSequence(0x0022, 0x1125);
- Tag const LensThicknessSequence(0x0022, 0x1127);
- Tag const AnteriorChamberDepthSequence(0x0022, 0x1128);
- Tag const LensThickness(0x0022, 0x1130);
- Tag const AnteriorChamberDepth(0x0022, 0x1131);
- Tag const SourceOfLensThicknessDataCodeSequence(0x0022, 0x1132);
- Tag const SourceOfAnteriorChamberDepthDataCodeSequence(0x0022, 0x1133);
- Tag const SourceOfRefractiveMeasurementsSequence(0x0022, 0x1134);
- Tag const SourceOfRefractiveMeasurementsCodeSequence(0x0022, 0x1135);
- Tag const OphthalmicAxialLengthMeasurementModified(0x0022, 0x1140);
- Tag const OphthalmicAxialLengthDataSourceCodeSequence(0x0022, 0x1150);
- Tag const OphthalmicAxialLengthAcquisitionMethodCodeSequence(0x0022, 0x1153);
- Tag const SignalToNoiseRatio(0x0022, 0x1155);
- Tag const OphthalmicAxialLengthDataSourceDescription(0x0022, 0x1159);
- Tag const OphthalmicAxialLengthMeasurementsTotalLengthSequence(0x0022, 0x1210);
- Tag const OphthalmicAxialLengthMeasurementsSegmentalLengthSequence(0x0022, 0x1211);
- Tag const OphthalmicAxialLengthMeasurementsLengthSummationSequence(0x0022, 0x1212);
- Tag const UltrasoundOphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1220);
- Tag const OpticalOphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1225);
- Tag const UltrasoundSelectedOphthalmicAxialLengthSequence(0x0022, 0x1230);
- Tag const OphthalmicAxialLengthSelectionMethodCodeSequence(0x0022, 0x1250);
- Tag const OpticalSelectedOphthalmicAxialLengthSequence(0x0022, 0x1255);
- Tag const SelectedSegmentalOphthalmicAxialLengthSequence(0x0022, 0x1257);
- Tag const SelectedTotalOphthalmicAxialLengthSequence(0x0022, 0x1260);
- Tag const OphthalmicAxialLengthQualityMetricSequence(0x0022, 0x1262);
- Tag const OphthalmicAxialLengthQualityMetricTypeCodeSequence(0x0022, 0x1265);
- Tag const OphthalmicAxialLengthQualityMetricTypeDescription(0x0022, 0x1273);
- Tag const IntraocularLensCalculationsRightEyeSequence(0x0022, 0x1300);
- Tag const IntraocularLensCalculationsLeftEyeSequence(0x0022, 0x1310);
- Tag const ReferencedOphthalmicAxialLengthMeasurementQCImageSequence(0x0022, 0x1330);
- Tag const OphthalmicMappingDeviceType(0x0022, 0x1415);
- Tag const AcquisitionMethodCodeSequence(0x0022, 0x1420);
- Tag const AcquisitionMethodAlgorithmSequence(0x0022, 0x1423);
- Tag const OphthalmicThicknessMapTypeCodeSequence(0x0022, 0x1436);
- Tag const OphthalmicThicknessMappingNormalsSequence(0x0022, 0x1443);
- Tag const RetinalThicknessDefinitionCodeSequence(0x0022, 0x1445);
- Tag const PixelValueMappingToCodedConceptSequence(0x0022, 0x1450);
- Tag const MappedPixelValue(0x0022, 0x1452);
- Tag const PixelValueMappingExplanation(0x0022, 0x1454);
- Tag const OphthalmicThicknessMapQualityThresholdSequence(0x0022, 0x1458);
- Tag const OphthalmicThicknessMapThresholdQualityRating(0x0022, 0x1460);
- Tag const AnatomicStructureReferencePoint(0x0022, 0x1463);
- Tag const RegistrationToLocalizerSequence(0x0022, 0x1465);
- Tag const RegisteredLocalizerUnits(0x0022, 0x1466);
- Tag const RegisteredLocalizerTopLeftHandCorner(0x0022, 0x1467);
- Tag const RegisteredLocalizerBottomRightHandCorner(0x0022, 0x1468);
- Tag const OphthalmicThicknessMapQualityRatingSequence(0x0022, 0x1470);
- Tag const RelevantOPTAttributesSequence(0x0022, 0x1472);
- Tag const TransformationMethodCodeSequence(0x0022, 0x1512);
- Tag const TransformationAlgorithmSequence(0x0022, 0x1513);
- Tag const OphthalmicAxialLengthMethod(0x0022, 0x1515);
- Tag const OphthalmicFOV(0x0022, 0x1517);
- Tag const TwoDimensionalToThreeDimensionalMapSequence(0x0022, 0x1518);
- Tag const WideFieldOphthalmicPhotographyQualityRatingSequence(0x0022, 0x1525);
- Tag const WideFieldOphthalmicPhotographyQualityThresholdSequence(0x0022, 0x1526);
- Tag const WideFieldOphthalmicPhotographyThresholdQualityRating(0x0022, 0x1527);
- Tag const XCoordinatesCenterPixelViewAngle(0x0022, 0x1528);
- Tag const YCoordinatesCenterPixelViewAngle(0x0022, 0x1529);
- Tag const NumberOfMapPoints(0x0022, 0x1530);
- Tag const TwoDimensionalToThreeDimensionalMapData(0x0022, 0x1531);
- Tag const VisualFieldHorizontalExtent(0x0024, 0x0010);
- Tag const VisualFieldVerticalExtent(0x0024, 0x0011);
- Tag const VisualFieldShape(0x0024, 0x0012);
- Tag const ScreeningTestModeCodeSequence(0x0024, 0x0016);
- Tag const MaximumStimulusLuminance(0x0024, 0x0018);
- Tag const BackgroundLuminance(0x0024, 0x0020);
- Tag const StimulusColorCodeSequence(0x0024, 0x0021);
- Tag const BackgroundIlluminationColorCodeSequence(0x0024, 0x0024);
- Tag const StimulusArea(0x0024, 0x0025);
- Tag const StimulusPresentationTime(0x0024, 0x0028);
- Tag const FixationSequence(0x0024, 0x0032);
- Tag const FixationMonitoringCodeSequence(0x0024, 0x0033);
- Tag const VisualFieldCatchTrialSequence(0x0024, 0x0034);
- Tag const FixationCheckedQuantity(0x0024, 0x0035);
- Tag const PatientNotProperlyFixatedQuantity(0x0024, 0x0036);
- Tag const PresentedVisualStimuliDataFlag(0x0024, 0x0037);
- Tag const NumberOfVisualStimuli(0x0024, 0x0038);
- Tag const ExcessiveFixationLossesDataFlag(0x0024, 0x0039);
- Tag const ExcessiveFixationLosses(0x0024, 0x0040);
- Tag const StimuliRetestingQuantity(0x0024, 0x0042);
- Tag const CommentsOnPatientPerformanceOfVisualField(0x0024, 0x0044);
- Tag const FalseNegativesEstimateFlag(0x0024, 0x0045);
- Tag const FalseNegativesEstimate(0x0024, 0x0046);
- Tag const NegativeCatchTrialsQuantity(0x0024, 0x0048);
- Tag const FalseNegativesQuantity(0x0024, 0x0050);
- Tag const ExcessiveFalseNegativesDataFlag(0x0024, 0x0051);
- Tag const ExcessiveFalseNegatives(0x0024, 0x0052);
- Tag const FalsePositivesEstimateFlag(0x0024, 0x0053);
- Tag const FalsePositivesEstimate(0x0024, 0x0054);
- Tag const CatchTrialsDataFlag(0x0024, 0x0055);
- Tag const PositiveCatchTrialsQuantity(0x0024, 0x0056);
- Tag const TestPointNormalsDataFlag(0x0024, 0x0057);
- Tag const TestPointNormalsSequence(0x0024, 0x0058);
- Tag const GlobalDeviationProbabilityNormalsFlag(0x0024, 0x0059);
- Tag const FalsePositivesQuantity(0x0024, 0x0060);
- Tag const ExcessiveFalsePositivesDataFlag(0x0024, 0x0061);
- Tag const ExcessiveFalsePositives(0x0024, 0x0062);
- Tag const VisualFieldTestNormalsFlag(0x0024, 0x0063);
- Tag const ResultsNormalsSequence(0x0024, 0x0064);
- Tag const AgeCorrectedSensitivityDeviationAlgorithmSequence(0x0024, 0x0065);
- Tag const GlobalDeviationFromNormal(0x0024, 0x0066);
- Tag const GeneralizedDefectSensitivityDeviationAlgorithmSequence(0x0024, 0x0067);
- Tag const LocalizedDeviationFromNormal(0x0024, 0x0068);
- Tag const PatientReliabilityIndicator(0x0024, 0x0069);
- Tag const VisualFieldMeanSensitivity(0x0024, 0x0070);
- Tag const GlobalDeviationProbability(0x0024, 0x0071);
- Tag const LocalDeviationProbabilityNormalsFlag(0x0024, 0x0072);
- Tag const LocalizedDeviationProbability(0x0024, 0x0073);
- Tag const ShortTermFluctuationCalculated(0x0024, 0x0074);
- Tag const ShortTermFluctuation(0x0024, 0x0075);
- Tag const ShortTermFluctuationProbabilityCalculated(0x0024, 0x0076);
- Tag const ShortTermFluctuationProbability(0x0024, 0x0077);
- Tag const CorrectedLocalizedDeviationFromNormalCalculated(0x0024, 0x0078);
- Tag const CorrectedLocalizedDeviationFromNormal(0x0024, 0x0079);
- Tag const CorrectedLocalizedDeviationFromNormalProbabilityCalculated(0x0024, 0x0080);
- Tag const CorrectedLocalizedDeviationFromNormalProbability(0x0024, 0x0081);
- Tag const GlobalDeviationProbabilitySequence(0x0024, 0x0083);
- Tag const LocalizedDeviationProbabilitySequence(0x0024, 0x0085);
- Tag const FovealSensitivityMeasured(0x0024, 0x0086);
- Tag const FovealSensitivity(0x0024, 0x0087);
- Tag const VisualFieldTestDuration(0x0024, 0x0088);
- Tag const VisualFieldTestPointSequence(0x0024, 0x0089);
- Tag const VisualFieldTestPointXCoordinate(0x0024, 0x0090);
- Tag const VisualFieldTestPointYCoordinate(0x0024, 0x0091);
- Tag const AgeCorrectedSensitivityDeviationValue(0x0024, 0x0092);
- Tag const StimulusResults(0x0024, 0x0093);
- Tag const SensitivityValue(0x0024, 0x0094);
- Tag const RetestStimulusSeen(0x0024, 0x0095);
- Tag const RetestSensitivityValue(0x0024, 0x0096);
- Tag const VisualFieldTestPointNormalsSequence(0x0024, 0x0097);
- Tag const QuantifiedDefect(0x0024, 0x0098);
- Tag const AgeCorrectedSensitivityDeviationProbabilityValue(0x0024, 0x0100);
- Tag const GeneralizedDefectCorrectedSensitivityDeviationFlag(0x0024, 0x0102);
- Tag const GeneralizedDefectCorrectedSensitivityDeviationValue(0x0024, 0x0103);
- Tag const GeneralizedDefectCorrectedSensitivityDeviationProbabilityValue(0x0024, 0x0104);
- Tag const MinimumSensitivityValue(0x0024, 0x0105);
- Tag const BlindSpotLocalized(0x0024, 0x0106);
- Tag const BlindSpotXCoordinate(0x0024, 0x0107);
- Tag const BlindSpotYCoordinate(0x0024, 0x0108);
- Tag const VisualAcuityMeasurementSequence(0x0024, 0x0110);
- Tag const RefractiveParametersUsedOnPatientSequence(0x0024, 0x0112);
- Tag const MeasurementLaterality(0x0024, 0x0113);
- Tag const OphthalmicPatientClinicalInformationLeftEyeSequence(0x0024, 0x0114);
- Tag const OphthalmicPatientClinicalInformationRightEyeSequence(0x0024, 0x0115);
- Tag const FovealPointNormativeDataFlag(0x0024, 0x0117);
- Tag const FovealPointProbabilityValue(0x0024, 0x0118);
- Tag const ScreeningBaselineMeasured(0x0024, 0x0120);
- Tag const ScreeningBaselineMeasuredSequence(0x0024, 0x0122);
- Tag const ScreeningBaselineType(0x0024, 0x0124);
- Tag const ScreeningBaselineValue(0x0024, 0x0126);
- Tag const AlgorithmSource(0x0024, 0x0202);
- Tag const DataSetName(0x0024, 0x0306);
- Tag const DataSetVersion(0x0024, 0x0307);
- Tag const DataSetSource(0x0024, 0x0308);
- Tag const DataSetDescription(0x0024, 0x0309);
- Tag const VisualFieldTestReliabilityGlobalIndexSequence(0x0024, 0x0317);
- Tag const VisualFieldGlobalResultsIndexSequence(0x0024, 0x0320);
- Tag const DataObservationSequence(0x0024, 0x0325);
- Tag const IndexNormalsFlag(0x0024, 0x0338);
- Tag const IndexProbability(0x0024, 0x0341);
- Tag const IndexProbabilitySequence(0x0024, 0x0344);
- Tag const SamplesPerPixel(0x0028, 0x0002);
- Tag const SamplesPerPixelUsed(0x0028, 0x0003);
- Tag const PhotometricInterpretation(0x0028, 0x0004);
- Tag const ImageDimensions(0x0028, 0x0005);
- Tag const PlanarConfiguration(0x0028, 0x0006);
- Tag const NumberOfFrames(0x0028, 0x0008);
- Tag const FrameIncrementPointer(0x0028, 0x0009);
- Tag const FrameDimensionPointer(0x0028, 0x000a);
- Tag const Rows(0x0028, 0x0010);
- Tag const Columns(0x0028, 0x0011);
- Tag const Planes(0x0028, 0x0012);
- Tag const UltrasoundColorDataPresent(0x0028, 0x0014);
- Tag const PixelSpacing(0x0028, 0x0030);
- Tag const ZoomFactor(0x0028, 0x0031);
- Tag const ZoomCenter(0x0028, 0x0032);
- Tag const PixelAspectRatio(0x0028, 0x0034);
- Tag const ImageFormat(0x0028, 0x0040);
- Tag const ManipulatedImage(0x0028, 0x0050);
- Tag const CorrectedImage(0x0028, 0x0051);
- Tag const CompressionRecognitionCode(0x0028, 0x005f);
- Tag const CompressionCode(0x0028, 0x0060);
- Tag const CompressionOriginator(0x0028, 0x0061);
- Tag const CompressionLabel(0x0028, 0x0062);
- Tag const CompressionDescription(0x0028, 0x0063);
- Tag const CompressionSequence(0x0028, 0x0065);
- Tag const CompressionStepPointers(0x0028, 0x0066);
- Tag const RepeatInterval(0x0028, 0x0068);
- Tag const BitsGrouped(0x0028, 0x0069);
- Tag const PerimeterTable(0x0028, 0x0070);
- Tag const PerimeterValue(0x0028, 0x0071);
- Tag const PredictorRows(0x0028, 0x0080);
- Tag const PredictorColumns(0x0028, 0x0081);
- Tag const PredictorConstants(0x0028, 0x0082);
- Tag const BlockedPixels(0x0028, 0x0090);
- Tag const BlockRows(0x0028, 0x0091);
- Tag const BlockColumns(0x0028, 0x0092);
- Tag const RowOverlap(0x0028, 0x0093);
- Tag const ColumnOverlap(0x0028, 0x0094);
- Tag const BitsAllocated(0x0028, 0x0100);
- Tag const BitsStored(0x0028, 0x0101);
- Tag const HighBit(0x0028, 0x0102);
- Tag const PixelRepresentation(0x0028, 0x0103);
- Tag const SmallestValidPixelValue(0x0028, 0x0104);
- Tag const LargestValidPixelValue(0x0028, 0x0105);
- Tag const SmallestImagePixelValue(0x0028, 0x0106);
- Tag const LargestImagePixelValue(0x0028, 0x0107);
- Tag const SmallestPixelValueInSeries(0x0028, 0x0108);
- Tag const LargestPixelValueInSeries(0x0028, 0x0109);
- Tag const SmallestImagePixelValueInPlane(0x0028, 0x0110);
- Tag const LargestImagePixelValueInPlane(0x0028, 0x0111);
- Tag const PixelPaddingValue(0x0028, 0x0120);
- Tag const PixelPaddingRangeLimit(0x0028, 0x0121);
- Tag const FloatPixelPaddingValue(0x0028, 0x0122);
- Tag const DoubleFloatPixelPaddingValue(0x0028, 0x0123);
- Tag const FloatPixelPaddingRangeLimit(0x0028, 0x0124);
- Tag const DoubleFloatPixelPaddingRangeLimit(0x0028, 0x0125);
- Tag const ImageLocation(0x0028, 0x0200);
- Tag const QualityControlImage(0x0028, 0x0300);
- Tag const BurnedInAnnotation(0x0028, 0x0301);
- Tag const RecognizableVisualFeatures(0x0028, 0x0302);
- Tag const LongitudinalTemporalInformationModified(0x0028, 0x0303);
- Tag const ReferencedColorPaletteInstanceUID(0x0028, 0x0304);
- Tag const TransformLabel(0x0028, 0x0400);
- Tag const TransformVersionNumber(0x0028, 0x0401);
- Tag const NumberOfTransformSteps(0x0028, 0x0402);
- Tag const SequenceOfCompressedData(0x0028, 0x0403);
- Tag const DetailsOfCoefficients(0x0028, 0x0404);
- Tag const DCTLabel(0x0028, 0x0700);
- Tag const DataBlockDescription(0x0028, 0x0701);
- Tag const DataBlock(0x0028, 0x0702);
- Tag const NormalizationFactorFormat(0x0028, 0x0710);
- Tag const ZonalMapNumberFormat(0x0028, 0x0720);
- Tag const ZonalMapLocation(0x0028, 0x0721);
- Tag const ZonalMapFormat(0x0028, 0x0722);
- Tag const AdaptiveMapFormat(0x0028, 0x0730);
- Tag const CodeNumberFormat(0x0028, 0x0740);
- Tag const PixelSpacingCalibrationType(0x0028, 0x0a02);
- Tag const PixelSpacingCalibrationDescription(0x0028, 0x0a04);
- Tag const PixelIntensityRelationship(0x0028, 0x1040);
- Tag const PixelIntensityRelationshipSign(0x0028, 0x1041);
- Tag const WindowCenter(0x0028, 0x1050);
- Tag const WindowWidth(0x0028, 0x1051);
- Tag const RescaleIntercept(0x0028, 0x1052);
- Tag const RescaleSlope(0x0028, 0x1053);
- Tag const RescaleType(0x0028, 0x1054);
- Tag const WindowCenterWidthExplanation(0x0028, 0x1055);
- Tag const VOILUTFunction(0x0028, 0x1056);
- Tag const GrayScale(0x0028, 0x1080);
- Tag const RecommendedViewingMode(0x0028, 0x1090);
- Tag const GrayLookupTableDescriptor(0x0028, 0x1100);
- Tag const RedPaletteColorLookupTableDescriptor(0x0028, 0x1101);
- Tag const GreenPaletteColorLookupTableDescriptor(0x0028, 0x1102);
- Tag const BluePaletteColorLookupTableDescriptor(0x0028, 0x1103);
- Tag const AlphaPaletteColorLookupTableDescriptor(0x0028, 0x1104);
- Tag const LargeRedPaletteColorLookupTableDescriptor(0x0028, 0x1111);
- Tag const LargeGreenPaletteColorLookupTableDescriptor(0x0028, 0x1112);
- Tag const LargeBluePaletteColorLookupTableDescriptor(0x0028, 0x1113);
- Tag const PaletteColorLookupTableUID(0x0028, 0x1199);
- Tag const GrayLookupTableData(0x0028, 0x1200);
- Tag const RedPaletteColorLookupTableData(0x0028, 0x1201);
- Tag const GreenPaletteColorLookupTableData(0x0028, 0x1202);
- Tag const BluePaletteColorLookupTableData(0x0028, 0x1203);
- Tag const AlphaPaletteColorLookupTableData(0x0028, 0x1204);
- Tag const LargeRedPaletteColorLookupTableData(0x0028, 0x1211);
- Tag const LargeGreenPaletteColorLookupTableData(0x0028, 0x1212);
- Tag const LargeBluePaletteColorLookupTableData(0x0028, 0x1213);
- Tag const LargePaletteColorLookupTableUID(0x0028, 0x1214);
- Tag const SegmentedRedPaletteColorLookupTableData(0x0028, 0x1221);
- Tag const SegmentedGreenPaletteColorLookupTableData(0x0028, 0x1222);
- Tag const SegmentedBluePaletteColorLookupTableData(0x0028, 0x1223);
- Tag const BreastImplantPresent(0x0028, 0x1300);
- Tag const PartialView(0x0028, 0x1350);
- Tag const PartialViewDescription(0x0028, 0x1351);
- Tag const PartialViewCodeSequence(0x0028, 0x1352);
- Tag const SpatialLocationsPreserved(0x0028, 0x135a);
- Tag const DataFrameAssignmentSequence(0x0028, 0x1401);
- Tag const DataPathAssignment(0x0028, 0x1402);
- Tag const BitsMappedToColorLookupTable(0x0028, 0x1403);
- Tag const BlendingLUT1Sequence(0x0028, 0x1404);
- Tag const BlendingLUT1TransferFunction(0x0028, 0x1405);
- Tag const BlendingWeightConstant(0x0028, 0x1406);
- Tag const BlendingLookupTableDescriptor(0x0028, 0x1407);
- Tag const BlendingLookupTableData(0x0028, 0x1408);
- Tag const EnhancedPaletteColorLookupTableSequence(0x0028, 0x140b);
- Tag const BlendingLUT2Sequence(0x0028, 0x140c);
- Tag const BlendingLUT2TransferFunction(0x0028, 0x140d);
- Tag const DataPathID(0x0028, 0x140e);
- Tag const RGBLUTTransferFunction(0x0028, 0x140f);
- Tag const AlphaLUTTransferFunction(0x0028, 0x1410);
- Tag const ICCProfile(0x0028, 0x2000);
- Tag const LossyImageCompression(0x0028, 0x2110);
- Tag const LossyImageCompressionRatio(0x0028, 0x2112);
- Tag const LossyImageCompressionMethod(0x0028, 0x2114);
- Tag const ModalityLUTSequence(0x0028, 0x3000);
- Tag const LUTDescriptor(0x0028, 0x3002);
- Tag const LUTExplanation(0x0028, 0x3003);
- Tag const ModalityLUTType(0x0028, 0x3004);
- Tag const LUTData(0x0028, 0x3006);
- Tag const VOILUTSequence(0x0028, 0x3010);
- Tag const SoftcopyVOILUTSequence(0x0028, 0x3110);
- Tag const ImagePresentationComments(0x0028, 0x4000);
- Tag const BiPlaneAcquisitionSequence(0x0028, 0x5000);
- Tag const RepresentativeFrameNumber(0x0028, 0x6010);
- Tag const FrameNumbersOfInterest(0x0028, 0x6020);
- Tag const FrameOfInterestDescription(0x0028, 0x6022);
- Tag const FrameOfInterestType(0x0028, 0x6023);
- Tag const MaskPointers(0x0028, 0x6030);
- Tag const RWavePointer(0x0028, 0x6040);
- Tag const MaskSubtractionSequence(0x0028, 0x6100);
- Tag const MaskOperation(0x0028, 0x6101);
- Tag const ApplicableFrameRange(0x0028, 0x6102);
- Tag const MaskFrameNumbers(0x0028, 0x6110);
- Tag const ContrastFrameAveraging(0x0028, 0x6112);
- Tag const MaskSubPixelShift(0x0028, 0x6114);
- Tag const TIDOffset(0x0028, 0x6120);
- Tag const MaskOperationExplanation(0x0028, 0x6190);
- Tag const EquipmentAdministratorSequence(0x0028, 0x7000);
- Tag const NumberOfDisplaySubsystems(0x0028, 0x7001);
- Tag const CurrentConfigurationID(0x0028, 0x7002);
- Tag const DisplaySubsystemID(0x0028, 0x7003);
- Tag const DisplaySubsystemName(0x0028, 0x7004);
- Tag const DisplaySubsystemDescription(0x0028, 0x7005);
- Tag const SystemStatus(0x0028, 0x7006);
- Tag const SystemStatusComment(0x0028, 0x7007);
- Tag const TargetLuminanceCharacteristicsSequence(0x0028, 0x7008);
- Tag const LuminanceCharacteristicsID(0x0028, 0x7009);
- Tag const DisplaySubsystemConfigurationSequence(0x0028, 0x700a);
- Tag const ConfigurationID(0x0028, 0x700b);
- Tag const ConfigurationName(0x0028, 0x700c);
- Tag const ConfigurationDescription(0x0028, 0x700d);
- Tag const ReferencedTargetLuminanceCharacteristicsID(0x0028, 0x700e);
- Tag const QAResultsSequence(0x0028, 0x700f);
- Tag const DisplaySubsystemQAResultsSequence(0x0028, 0x7010);
- Tag const ConfigurationQAResultsSequence(0x0028, 0x7011);
- Tag const MeasurementEquipmentSequence(0x0028, 0x7012);
- Tag const MeasurementFunctions(0x0028, 0x7013);
- Tag const MeasurementEquipmentType(0x0028, 0x7014);
- Tag const VisualEvaluationResultSequence(0x0028, 0x7015);
- Tag const DisplayCalibrationResultSequence(0x0028, 0x7016);
- Tag const DDLValue(0x0028, 0x7017);
- Tag const CIExyWhitePoint(0x0028, 0x7018);
- Tag const DisplayFunctionType(0x0028, 0x7019);
- Tag const GammaValue(0x0028, 0x701a);
- Tag const NumberOfLuminancePoints(0x0028, 0x701b);
- Tag const LuminanceResponseSequence(0x0028, 0x701c);
- Tag const TargetMinimumLuminance(0x0028, 0x701d);
- Tag const TargetMaximumLuminance(0x0028, 0x701e);
- Tag const LuminanceValue(0x0028, 0x701f);
- Tag const LuminanceResponseDescription(0x0028, 0x7020);
- Tag const WhitePointFlag(0x0028, 0x7021);
- Tag const DisplayDeviceTypeCodeSequence(0x0028, 0x7022);
- Tag const DisplaySubsystemSequence(0x0028, 0x7023);
- Tag const LuminanceResultSequence(0x0028, 0x7024);
- Tag const AmbientLightValueSource(0x0028, 0x7025);
- Tag const MeasuredCharacteristics(0x0028, 0x7026);
- Tag const LuminanceUniformityResultSequence(0x0028, 0x7027);
- Tag const VisualEvaluationTestSequence(0x0028, 0x7028);
- Tag const TestResult(0x0028, 0x7029);
- Tag const TestResultComment(0x0028, 0x702a);
- Tag const TestImageValidation(0x0028, 0x702b);
- Tag const TestPatternCodeSequence(0x0028, 0x702c);
- Tag const MeasurementPatternCodeSequence(0x0028, 0x702d);
- Tag const VisualEvaluationMethodCodeSequence(0x0028, 0x702e);
- Tag const PixelDataProviderURL(0x0028, 0x7fe0);
- Tag const DataPointRows(0x0028, 0x9001);
- Tag const DataPointColumns(0x0028, 0x9002);
- Tag const SignalDomainColumns(0x0028, 0x9003);
- Tag const LargestMonochromePixelValue(0x0028, 0x9099);
- Tag const DataRepresentation(0x0028, 0x9108);
- Tag const PixelMeasuresSequence(0x0028, 0x9110);
- Tag const FrameVOILUTSequence(0x0028, 0x9132);
- Tag const PixelValueTransformationSequence(0x0028, 0x9145);
- Tag const SignalDomainRows(0x0028, 0x9235);
- Tag const DisplayFilterPercentage(0x0028, 0x9411);
- Tag const FramePixelShiftSequence(0x0028, 0x9415);
- Tag const SubtractionItemID(0x0028, 0x9416);
- Tag const PixelIntensityRelationshipLUTSequence(0x0028, 0x9422);
- Tag const FramePixelDataPropertiesSequence(0x0028, 0x9443);
- Tag const GeometricalProperties(0x0028, 0x9444);
- Tag const GeometricMaximumDistortion(0x0028, 0x9445);
- Tag const ImageProcessingApplied(0x0028, 0x9446);
- Tag const MaskSelectionMode(0x0028, 0x9454);
- Tag const LUTFunction(0x0028, 0x9474);
- Tag const MaskVisibilityPercentage(0x0028, 0x9478);
- Tag const PixelShiftSequence(0x0028, 0x9501);
- Tag const RegionPixelShiftSequence(0x0028, 0x9502);
- Tag const VerticesOfTheRegion(0x0028, 0x9503);
- Tag const MultiFramePresentationSequence(0x0028, 0x9505);
- Tag const PixelShiftFrameRange(0x0028, 0x9506);
- Tag const LUTFrameRange(0x0028, 0x9507);
- Tag const ImageToEquipmentMappingMatrix(0x0028, 0x9520);
- Tag const EquipmentCoordinateSystemIdentification(0x0028, 0x9537);
- Tag const StudyStatusID(0x0032, 0x000a);
- Tag const StudyPriorityID(0x0032, 0x000c);
- Tag const StudyIDIssuer(0x0032, 0x0012);
- Tag const StudyVerifiedDate(0x0032, 0x0032);
- Tag const StudyVerifiedTime(0x0032, 0x0033);
- Tag const StudyReadDate(0x0032, 0x0034);
- Tag const StudyReadTime(0x0032, 0x0035);
- Tag const ScheduledStudyStartDate(0x0032, 0x1000);
- Tag const ScheduledStudyStartTime(0x0032, 0x1001);
- Tag const ScheduledStudyStopDate(0x0032, 0x1010);
- Tag const ScheduledStudyStopTime(0x0032, 0x1011);
- Tag const ScheduledStudyLocation(0x0032, 0x1020);
- Tag const ScheduledStudyLocationAETitle(0x0032, 0x1021);
- Tag const ReasonForStudy(0x0032, 0x1030);
- Tag const RequestingPhysicianIdentificationSequence(0x0032, 0x1031);
- Tag const RequestingPhysician(0x0032, 0x1032);
- Tag const RequestingService(0x0032, 0x1033);
- Tag const RequestingServiceCodeSequence(0x0032, 0x1034);
- Tag const StudyArrivalDate(0x0032, 0x1040);
- Tag const StudyArrivalTime(0x0032, 0x1041);
- Tag const StudyCompletionDate(0x0032, 0x1050);
- Tag const StudyCompletionTime(0x0032, 0x1051);
- Tag const StudyComponentStatusID(0x0032, 0x1055);
- Tag const RequestedProcedureDescription(0x0032, 0x1060);
- Tag const RequestedProcedureCodeSequence(0x0032, 0x1064);
- Tag const RequestedContrastAgent(0x0032, 0x1070);
- Tag const StudyComments(0x0032, 0x4000);
- Tag const ReferencedPatientAliasSequence(0x0038, 0x0004);
- Tag const VisitStatusID(0x0038, 0x0008);
- Tag const AdmissionID(0x0038, 0x0010);
- Tag const IssuerOfAdmissionID(0x0038, 0x0011);
- Tag const IssuerOfAdmissionIDSequence(0x0038, 0x0014);
- Tag const RouteOfAdmissions(0x0038, 0x0016);
- Tag const ScheduledAdmissionDate(0x0038, 0x001a);
- Tag const ScheduledAdmissionTime(0x0038, 0x001b);
- Tag const ScheduledDischargeDate(0x0038, 0x001c);
- Tag const ScheduledDischargeTime(0x0038, 0x001d);
- Tag const ScheduledPatientInstitutionResidence(0x0038, 0x001e);
- Tag const AdmittingDate(0x0038, 0x0020);
- Tag const AdmittingTime(0x0038, 0x0021);
- Tag const DischargeDate(0x0038, 0x0030);
- Tag const DischargeTime(0x0038, 0x0032);
- Tag const DischargeDiagnosisDescription(0x0038, 0x0040);
- Tag const DischargeDiagnosisCodeSequence(0x0038, 0x0044);
- Tag const SpecialNeeds(0x0038, 0x0050);
- Tag const ServiceEpisodeID(0x0038, 0x0060);
- Tag const IssuerOfServiceEpisodeID(0x0038, 0x0061);
- Tag const ServiceEpisodeDescription(0x0038, 0x0062);
- Tag const IssuerOfServiceEpisodeIDSequence(0x0038, 0x0064);
- Tag const PertinentDocumentsSequence(0x0038, 0x0100);
- Tag const PertinentResourcesSequence(0x0038, 0x0101);
- Tag const ResourceDescription(0x0038, 0x0102);
- Tag const CurrentPatientLocation(0x0038, 0x0300);
- Tag const PatientInstitutionResidence(0x0038, 0x0400);
- Tag const PatientState(0x0038, 0x0500);
- Tag const PatientClinicalTrialParticipationSequence(0x0038, 0x0502);
- Tag const VisitComments(0x0038, 0x4000);
- Tag const WaveformOriginality(0x003a, 0x0004);
- Tag const NumberOfWaveformChannels(0x003a, 0x0005);
- Tag const NumberOfWaveformSamples(0x003a, 0x0010);
- Tag const SamplingFrequency(0x003a, 0x001a);
- Tag const MultiplexGroupLabel(0x003a, 0x0020);
- Tag const ChannelDefinitionSequence(0x003a, 0x0200);
- Tag const WaveformChannelNumber(0x003a, 0x0202);
- Tag const ChannelLabel(0x003a, 0x0203);
- Tag const ChannelStatus(0x003a, 0x0205);
- Tag const ChannelSourceSequence(0x003a, 0x0208);
- Tag const ChannelSourceModifiersSequence(0x003a, 0x0209);
- Tag const SourceWaveformSequence(0x003a, 0x020a);
- Tag const ChannelDerivationDescription(0x003a, 0x020c);
- Tag const ChannelSensitivity(0x003a, 0x0210);
- Tag const ChannelSensitivityUnitsSequence(0x003a, 0x0211);
- Tag const ChannelSensitivityCorrectionFactor(0x003a, 0x0212);
- Tag const ChannelBaseline(0x003a, 0x0213);
- Tag const ChannelTimeSkew(0x003a, 0x0214);
- Tag const ChannelSampleSkew(0x003a, 0x0215);
- Tag const ChannelOffset(0x003a, 0x0218);
- Tag const WaveformBitsStored(0x003a, 0x021a);
- Tag const FilterLowFrequency(0x003a, 0x0220);
- Tag const FilterHighFrequency(0x003a, 0x0221);
- Tag const NotchFilterFrequency(0x003a, 0x0222);
- Tag const NotchFilterBandwidth(0x003a, 0x0223);
- Tag const WaveformDataDisplayScale(0x003a, 0x0230);
- Tag const WaveformDisplayBackgroundCIELabValue(0x003a, 0x0231);
- Tag const WaveformPresentationGroupSequence(0x003a, 0x0240);
- Tag const PresentationGroupNumber(0x003a, 0x0241);
- Tag const ChannelDisplaySequence(0x003a, 0x0242);
- Tag const ChannelRecommendedDisplayCIELabValue(0x003a, 0x0244);
- Tag const ChannelPosition(0x003a, 0x0245);
- Tag const DisplayShadingFlag(0x003a, 0x0246);
- Tag const FractionalChannelDisplayScale(0x003a, 0x0247);
- Tag const AbsoluteChannelDisplayScale(0x003a, 0x0248);
- Tag const MultiplexedAudioChannelsDescriptionCodeSequence(0x003a, 0x0300);
- Tag const ChannelIdentificationCode(0x003a, 0x0301);
- Tag const ChannelMode(0x003a, 0x0302);
- Tag const ScheduledStationAETitle(0x0040, 0x0001);
- Tag const ScheduledProcedureStepStartDate(0x0040, 0x0002);
- Tag const ScheduledProcedureStepStartTime(0x0040, 0x0003);
- Tag const ScheduledProcedureStepEndDate(0x0040, 0x0004);
- Tag const ScheduledProcedureStepEndTime(0x0040, 0x0005);
- Tag const ScheduledPerformingPhysicianName(0x0040, 0x0006);
- Tag const ScheduledProcedureStepDescription(0x0040, 0x0007);
- Tag const ScheduledProtocolCodeSequence(0x0040, 0x0008);
- Tag const ScheduledProcedureStepID(0x0040, 0x0009);
- Tag const StageCodeSequence(0x0040, 0x000a);
- Tag const ScheduledPerformingPhysicianIdentificationSequence(0x0040, 0x000b);
- Tag const ScheduledStationName(0x0040, 0x0010);
- Tag const ScheduledProcedureStepLocation(0x0040, 0x0011);
- Tag const PreMedication(0x0040, 0x0012);
- Tag const ScheduledProcedureStepStatus(0x0040, 0x0020);
- Tag const OrderPlacerIdentifierSequence(0x0040, 0x0026);
- Tag const OrderFillerIdentifierSequence(0x0040, 0x0027);
- Tag const LocalNamespaceEntityID(0x0040, 0x0031);
- Tag const UniversalEntityID(0x0040, 0x0032);
- Tag const UniversalEntityIDType(0x0040, 0x0033);
- Tag const IdentifierTypeCode(0x0040, 0x0035);
- Tag const AssigningFacilitySequence(0x0040, 0x0036);
- Tag const AssigningJurisdictionCodeSequence(0x0040, 0x0039);
- Tag const AssigningAgencyOrDepartmentCodeSequence(0x0040, 0x003a);
- Tag const ScheduledProcedureStepSequence(0x0040, 0x0100);
- Tag const ReferencedNonImageCompositeSOPInstanceSequence(0x0040, 0x0220);
- Tag const PerformedStationAETitle(0x0040, 0x0241);
- Tag const PerformedStationName(0x0040, 0x0242);
- Tag const PerformedLocation(0x0040, 0x0243);
- Tag const PerformedProcedureStepStartDate(0x0040, 0x0244);
- Tag const PerformedProcedureStepStartTime(0x0040, 0x0245);
- Tag const PerformedProcedureStepEndDate(0x0040, 0x0250);
- Tag const PerformedProcedureStepEndTime(0x0040, 0x0251);
- Tag const PerformedProcedureStepStatus(0x0040, 0x0252);
- Tag const PerformedProcedureStepID(0x0040, 0x0253);
- Tag const PerformedProcedureStepDescription(0x0040, 0x0254);
- Tag const PerformedProcedureTypeDescription(0x0040, 0x0255);
- Tag const PerformedProtocolCodeSequence(0x0040, 0x0260);
- Tag const PerformedProtocolType(0x0040, 0x0261);
- Tag const ScheduledStepAttributesSequence(0x0040, 0x0270);
- Tag const RequestAttributesSequence(0x0040, 0x0275);
- Tag const CommentsOnThePerformedProcedureStep(0x0040, 0x0280);
- Tag const PerformedProcedureStepDiscontinuationReasonCodeSequence(0x0040, 0x0281);
- Tag const QuantitySequence(0x0040, 0x0293);
- Tag const Quantity(0x0040, 0x0294);
- Tag const MeasuringUnitsSequence(0x0040, 0x0295);
- Tag const BillingItemSequence(0x0040, 0x0296);
- Tag const TotalTimeOfFluoroscopy(0x0040, 0x0300);
- Tag const TotalNumberOfExposures(0x0040, 0x0301);
- Tag const EntranceDose(0x0040, 0x0302);
- Tag const ExposedArea(0x0040, 0x0303);
- Tag const DistanceSourceToEntrance(0x0040, 0x0306);
- Tag const DistanceSourceToSupport(0x0040, 0x0307);
- Tag const ExposureDoseSequence(0x0040, 0x030e);
- Tag const CommentsOnRadiationDose(0x0040, 0x0310);
- Tag const XRayOutput(0x0040, 0x0312);
- Tag const HalfValueLayer(0x0040, 0x0314);
- Tag const OrganDose(0x0040, 0x0316);
- Tag const OrganExposed(0x0040, 0x0318);
- Tag const BillingProcedureStepSequence(0x0040, 0x0320);
- Tag const FilmConsumptionSequence(0x0040, 0x0321);
- Tag const BillingSuppliesAndDevicesSequence(0x0040, 0x0324);
- Tag const ReferencedProcedureStepSequence(0x0040, 0x0330);
- Tag const PerformedSeriesSequence(0x0040, 0x0340);
- Tag const CommentsOnTheScheduledProcedureStep(0x0040, 0x0400);
- Tag const ProtocolContextSequence(0x0040, 0x0440);
- Tag const ContentItemModifierSequence(0x0040, 0x0441);
- Tag const ScheduledSpecimenSequence(0x0040, 0x0500);
- Tag const SpecimenAccessionNumber(0x0040, 0x050a);
- Tag const ContainerIdentifier(0x0040, 0x0512);
- Tag const IssuerOfTheContainerIdentifierSequence(0x0040, 0x0513);
- Tag const AlternateContainerIdentifierSequence(0x0040, 0x0515);
- Tag const ContainerTypeCodeSequence(0x0040, 0x0518);
- Tag const ContainerDescription(0x0040, 0x051a);
- Tag const ContainerComponentSequence(0x0040, 0x0520);
- Tag const SpecimenSequence(0x0040, 0x0550);
- Tag const SpecimenIdentifier(0x0040, 0x0551);
- Tag const SpecimenDescriptionSequenceTrial(0x0040, 0x0552);
- Tag const SpecimenDescriptionTrial(0x0040, 0x0553);
- Tag const SpecimenUID(0x0040, 0x0554);
- Tag const AcquisitionContextSequence(0x0040, 0x0555);
- Tag const AcquisitionContextDescription(0x0040, 0x0556);
- Tag const SpecimenTypeCodeSequence(0x0040, 0x059a);
- Tag const SpecimenDescriptionSequence(0x0040, 0x0560);
- Tag const IssuerOfTheSpecimenIdentifierSequence(0x0040, 0x0562);
- Tag const SpecimenShortDescription(0x0040, 0x0600);
- Tag const SpecimenDetailedDescription(0x0040, 0x0602);
- Tag const SpecimenPreparationSequence(0x0040, 0x0610);
- Tag const SpecimenPreparationStepContentItemSequence(0x0040, 0x0612);
- Tag const SpecimenLocalizationContentItemSequence(0x0040, 0x0620);
- Tag const SlideIdentifier(0x0040, 0x06fa);
- Tag const ImageCenterPointCoordinatesSequence(0x0040, 0x071a);
- Tag const XOffsetInSlideCoordinateSystem(0x0040, 0x072a);
- Tag const YOffsetInSlideCoordinateSystem(0x0040, 0x073a);
- Tag const ZOffsetInSlideCoordinateSystem(0x0040, 0x074a);
- Tag const PixelSpacingSequence(0x0040, 0x08d8);
- Tag const CoordinateSystemAxisCodeSequence(0x0040, 0x08da);
- Tag const MeasurementUnitsCodeSequence(0x0040, 0x08ea);
- Tag const VitalStainCodeSequenceTrial(0x0040, 0x09f8);
- Tag const RequestedProcedureID(0x0040, 0x1001);
- Tag const ReasonForTheRequestedProcedure(0x0040, 0x1002);
- Tag const RequestedProcedurePriority(0x0040, 0x1003);
- Tag const PatientTransportArrangements(0x0040, 0x1004);
- Tag const RequestedProcedureLocation(0x0040, 0x1005);
- Tag const PlacerOrderNumberProcedure(0x0040, 0x1006);
- Tag const FillerOrderNumberProcedure(0x0040, 0x1007);
- Tag const ConfidentialityCode(0x0040, 0x1008);
- Tag const ReportingPriority(0x0040, 0x1009);
- Tag const ReasonForRequestedProcedureCodeSequence(0x0040, 0x100a);
- Tag const NamesOfIntendedRecipientsOfResults(0x0040, 0x1010);
- Tag const IntendedRecipientsOfResultsIdentificationSequence(0x0040, 0x1011);
- Tag const ReasonForPerformedProcedureCodeSequence(0x0040, 0x1012);
- Tag const RequestedProcedureDescriptionTrial(0x0040, 0x1060);
- Tag const PersonIdentificationCodeSequence(0x0040, 0x1101);
- Tag const PersonAddress(0x0040, 0x1102);
- Tag const PersonTelephoneNumbers(0x0040, 0x1103);
- Tag const RequestedProcedureComments(0x0040, 0x1400);
- Tag const ReasonForTheImagingServiceRequest(0x0040, 0x2001);
- Tag const IssueDateOfImagingServiceRequest(0x0040, 0x2004);
- Tag const IssueTimeOfImagingServiceRequest(0x0040, 0x2005);
- Tag const PlacerOrderNumberImagingServiceRequestRetired(0x0040, 0x2006);
- Tag const FillerOrderNumberImagingServiceRequestRetired(0x0040, 0x2007);
- Tag const OrderEnteredBy(0x0040, 0x2008);
- Tag const OrderEntererLocation(0x0040, 0x2009);
- Tag const OrderCallbackPhoneNumber(0x0040, 0x2010);
- Tag const PlacerOrderNumberImagingServiceRequest(0x0040, 0x2016);
- Tag const FillerOrderNumberImagingServiceRequest(0x0040, 0x2017);
- Tag const ImagingServiceRequestComments(0x0040, 0x2400);
- Tag const ConfidentialityConstraintOnPatientDataDescription(0x0040, 0x3001);
- Tag const GeneralPurposeScheduledProcedureStepStatus(0x0040, 0x4001);
- Tag const GeneralPurposePerformedProcedureStepStatus(0x0040, 0x4002);
- Tag const GeneralPurposeScheduledProcedureStepPriority(0x0040, 0x4003);
- Tag const ScheduledProcessingApplicationsCodeSequence(0x0040, 0x4004);
- Tag const ScheduledProcedureStepStartDateTime(0x0040, 0x4005);
- Tag const MultipleCopiesFlag(0x0040, 0x4006);
- Tag const PerformedProcessingApplicationsCodeSequence(0x0040, 0x4007);
- Tag const HumanPerformerCodeSequence(0x0040, 0x4009);
- Tag const ScheduledProcedureStepModificationDateTime(0x0040, 0x4010);
- Tag const ExpectedCompletionDateTime(0x0040, 0x4011);
- Tag const ResultingGeneralPurposePerformedProcedureStepsSequence(0x0040, 0x4015);
- Tag const ReferencedGeneralPurposeScheduledProcedureStepSequence(0x0040, 0x4016);
- Tag const ScheduledWorkitemCodeSequence(0x0040, 0x4018);
- Tag const PerformedWorkitemCodeSequence(0x0040, 0x4019);
- Tag const InputAvailabilityFlag(0x0040, 0x4020);
- Tag const InputInformationSequence(0x0040, 0x4021);
- Tag const RelevantInformationSequence(0x0040, 0x4022);
- Tag const ReferencedGeneralPurposeScheduledProcedureStepTransactionUID(0x0040, 0x4023);
- Tag const ScheduledStationNameCodeSequence(0x0040, 0x4025);
- Tag const ScheduledStationClassCodeSequence(0x0040, 0x4026);
- Tag const ScheduledStationGeographicLocationCodeSequence(0x0040, 0x4027);
- Tag const PerformedStationNameCodeSequence(0x0040, 0x4028);
- Tag const PerformedStationClassCodeSequence(0x0040, 0x4029);
- Tag const PerformedStationGeographicLocationCodeSequence(0x0040, 0x4030);
- Tag const RequestedSubsequentWorkitemCodeSequence(0x0040, 0x4031);
- Tag const NonDICOMOutputCodeSequence(0x0040, 0x4032);
- Tag const OutputInformationSequence(0x0040, 0x4033);
- Tag const ScheduledHumanPerformersSequence(0x0040, 0x4034);
- Tag const ActualHumanPerformersSequence(0x0040, 0x4035);
- Tag const HumanPerformerOrganization(0x0040, 0x4036);
- Tag const HumanPerformerName(0x0040, 0x4037);
- Tag const RawDataHandling(0x0040, 0x4040);
- Tag const InputReadinessState(0x0040, 0x4041);
- Tag const PerformedProcedureStepStartDateTime(0x0040, 0x4050);
- Tag const PerformedProcedureStepEndDateTime(0x0040, 0x4051);
- Tag const ProcedureStepCancellationDateTime(0x0040, 0x4052);
- Tag const EntranceDoseInmGy(0x0040, 0x8302);
- Tag const ParametricMapFrameTypeSequence(0x0040, 0x9092);
- Tag const ReferencedImageRealWorldValueMappingSequence(0x0040, 0x9094);
- Tag const RealWorldValueMappingSequence(0x0040, 0x9096);
- Tag const PixelValueMappingCodeSequence(0x0040, 0x9098);
- Tag const LUTLabel(0x0040, 0x9210);
- Tag const RealWorldValueLastValueMapped(0x0040, 0x9211);
- Tag const RealWorldValueLUTData(0x0040, 0x9212);
- Tag const RealWorldValueFirstValueMapped(0x0040, 0x9216);
- Tag const QuantityDefinitionSequence(0x0040, 0x9220);
- Tag const RealWorldValueIntercept(0x0040, 0x9224);
- Tag const RealWorldValueSlope(0x0040, 0x9225);
- Tag const FindingsFlagTrial(0x0040, 0xa007);
- Tag const RelationshipType(0x0040, 0xa010);
- Tag const FindingsSequenceTrial(0x0040, 0xa020);
- Tag const FindingsGroupUIDTrial(0x0040, 0xa021);
- Tag const ReferencedFindingsGroupUIDTrial(0x0040, 0xa022);
- Tag const FindingsGroupRecordingDateTrial(0x0040, 0xa023);
- Tag const FindingsGroupRecordingTimeTrial(0x0040, 0xa024);
- Tag const FindingsSourceCategoryCodeSequenceTrial(0x0040, 0xa026);
- Tag const VerifyingOrganization(0x0040, 0xa027);
- Tag const DocumentingOrganizationIdentifierCodeSequenceTrial(0x0040, 0xa028);
- Tag const VerificationDateTime(0x0040, 0xa030);
- Tag const ObservationDateTime(0x0040, 0xa032);
- Tag const ValueType(0x0040, 0xa040);
- Tag const ConceptNameCodeSequence(0x0040, 0xa043);
- Tag const MeasurementPrecisionDescriptionTrial(0x0040, 0xa047);
- Tag const ContinuityOfContent(0x0040, 0xa050);
- Tag const UrgencyOrPriorityAlertsTrial(0x0040, 0xa057);
- Tag const SequencingIndicatorTrial(0x0040, 0xa060);
- Tag const DocumentIdentifierCodeSequenceTrial(0x0040, 0xa066);
- Tag const DocumentAuthorTrial(0x0040, 0xa067);
- Tag const DocumentAuthorIdentifierCodeSequenceTrial(0x0040, 0xa068);
- Tag const IdentifierCodeSequenceTrial(0x0040, 0xa070);
- Tag const VerifyingObserverSequence(0x0040, 0xa073);
- Tag const ObjectBinaryIdentifierTrial(0x0040, 0xa074);
- Tag const VerifyingObserverName(0x0040, 0xa075);
- Tag const DocumentingObserverIdentifierCodeSequenceTrial(0x0040, 0xa076);
- Tag const AuthorObserverSequence(0x0040, 0xa078);
- Tag const ParticipantSequence(0x0040, 0xa07a);
- Tag const CustodialOrganizationSequence(0x0040, 0xa07c);
- Tag const ParticipationType(0x0040, 0xa080);
- Tag const ParticipationDateTime(0x0040, 0xa082);
- Tag const ObserverType(0x0040, 0xa084);
- Tag const ProcedureIdentifierCodeSequenceTrial(0x0040, 0xa085);
- Tag const VerifyingObserverIdentificationCodeSequence(0x0040, 0xa088);
- Tag const ObjectDirectoryBinaryIdentifierTrial(0x0040, 0xa089);
- Tag const EquivalentCDADocumentSequence(0x0040, 0xa090);
- Tag const ReferencedWaveformChannels(0x0040, 0xa0b0);
- Tag const DateOfDocumentOrVerbalTransactionTrial(0x0040, 0xa110);
- Tag const TimeOfDocumentCreationOrVerbalTransactionTrial(0x0040, 0xa112);
- Tag const DateTime(0x0040, 0xa120);
- Tag const Date(0x0040, 0xa121);
- Tag const Time(0x0040, 0xa122);
- Tag const PersonName(0x0040, 0xa123);
- Tag const UID(0x0040, 0xa124);
- Tag const ReportStatusIDTrial(0x0040, 0xa125);
- Tag const TemporalRangeType(0x0040, 0xa130);
- Tag const ReferencedSamplePositions(0x0040, 0xa132);
- Tag const ReferencedFrameNumbers(0x0040, 0xa136);
- Tag const ReferencedTimeOffsets(0x0040, 0xa138);
- Tag const ReferencedDateTime(0x0040, 0xa13a);
- Tag const TextValue(0x0040, 0xa160);
- Tag const FloatingPointValue(0x0040, 0xa161);
- Tag const RationalNumeratorValue(0x0040, 0xa162);
- Tag const RationalDenominatorValue(0x0040, 0xa163);
- Tag const ObservationCategoryCodeSequenceTrial(0x0040, 0xa167);
- Tag const ConceptCodeSequence(0x0040, 0xa168);
- Tag const BibliographicCitationTrial(0x0040, 0xa16a);
- Tag const PurposeOfReferenceCodeSequence(0x0040, 0xa170);
- Tag const ObservationUID(0x0040, 0xa171);
- Tag const ReferencedObservationUIDTrial(0x0040, 0xa172);
- Tag const ReferencedObservationClassTrial(0x0040, 0xa173);
- Tag const ReferencedObjectObservationClassTrial(0x0040, 0xa174);
- Tag const AnnotationGroupNumber(0x0040, 0xa180);
- Tag const ObservationDateTrial(0x0040, 0xa192);
- Tag const ObservationTimeTrial(0x0040, 0xa193);
- Tag const MeasurementAutomationTrial(0x0040, 0xa194);
- Tag const ModifierCodeSequence(0x0040, 0xa195);
- Tag const IdentificationDescriptionTrial(0x0040, 0xa224);
- Tag const CoordinatesSetGeometricTypeTrial(0x0040, 0xa290);
- Tag const AlgorithmCodeSequenceTrial(0x0040, 0xa296);
- Tag const AlgorithmDescriptionTrial(0x0040, 0xa297);
- Tag const PixelCoordinatesSetTrial(0x0040, 0xa29a);
- Tag const MeasuredValueSequence(0x0040, 0xa300);
- Tag const NumericValueQualifierCodeSequence(0x0040, 0xa301);
- Tag const CurrentObserverTrial(0x0040, 0xa307);
- Tag const NumericValue(0x0040, 0xa30a);
- Tag const ReferencedAccessionSequenceTrial(0x0040, 0xa313);
- Tag const ReportStatusCommentTrial(0x0040, 0xa33a);
- Tag const ProcedureContextSequenceTrial(0x0040, 0xa340);
- Tag const VerbalSourceTrial(0x0040, 0xa352);
- Tag const AddressTrial(0x0040, 0xa353);
- Tag const TelephoneNumberTrial(0x0040, 0xa354);
- Tag const VerbalSourceIdentifierCodeSequenceTrial(0x0040, 0xa358);
- Tag const PredecessorDocumentsSequence(0x0040, 0xa360);
- Tag const ReferencedRequestSequence(0x0040, 0xa370);
- Tag const PerformedProcedureCodeSequence(0x0040, 0xa372);
- Tag const CurrentRequestedProcedureEvidenceSequence(0x0040, 0xa375);
- Tag const ReportDetailSequenceTrial(0x0040, 0xa380);
- Tag const PertinentOtherEvidenceSequence(0x0040, 0xa385);
- Tag const HL7StructuredDocumentReferenceSequence(0x0040, 0xa390);
- Tag const ObservationSubjectUIDTrial(0x0040, 0xa402);
- Tag const ObservationSubjectClassTrial(0x0040, 0xa403);
- Tag const ObservationSubjectTypeCodeSequenceTrial(0x0040, 0xa404);
- Tag const CompletionFlag(0x0040, 0xa491);
- Tag const CompletionFlagDescription(0x0040, 0xa492);
- Tag const VerificationFlag(0x0040, 0xa493);
- Tag const ArchiveRequested(0x0040, 0xa494);
- Tag const PreliminaryFlag(0x0040, 0xa496);
- Tag const ContentTemplateSequence(0x0040, 0xa504);
- Tag const IdenticalDocumentsSequence(0x0040, 0xa525);
- Tag const ObservationSubjectContextFlagTrial(0x0040, 0xa600);
- Tag const ObserverContextFlagTrial(0x0040, 0xa601);
- Tag const ProcedureContextFlagTrial(0x0040, 0xa603);
- Tag const ContentSequence(0x0040, 0xa730);
- Tag const RelationshipSequenceTrial(0x0040, 0xa731);
- Tag const RelationshipTypeCodeSequenceTrial(0x0040, 0xa732);
- Tag const LanguageCodeSequenceTrial(0x0040, 0xa744);
- Tag const UniformResourceLocatorTrial(0x0040, 0xa992);
- Tag const WaveformAnnotationSequence(0x0040, 0xb020);
- Tag const TemplateIdentifier(0x0040, 0xdb00);
- Tag const TemplateVersion(0x0040, 0xdb06);
- Tag const TemplateLocalVersion(0x0040, 0xdb07);
- Tag const TemplateExtensionFlag(0x0040, 0xdb0b);
- Tag const TemplateExtensionOrganizationUID(0x0040, 0xdb0c);
- Tag const TemplateExtensionCreatorUID(0x0040, 0xdb0d);
- Tag const ReferencedContentItemIdentifier(0x0040, 0xdb73);
- Tag const HL7InstanceIdentifier(0x0040, 0xe001);
- Tag const HL7DocumentEffectiveTime(0x0040, 0xe004);
- Tag const HL7DocumentTypeCodeSequence(0x0040, 0xe006);
- Tag const DocumentClassCodeSequence(0x0040, 0xe008);
- Tag const RetrieveURI(0x0040, 0xe010);
- Tag const RetrieveLocationUID(0x0040, 0xe011);
- Tag const TypeOfInstances(0x0040, 0xe020);
- Tag const DICOMRetrievalSequence(0x0040, 0xe021);
- Tag const DICOMMediaRetrievalSequence(0x0040, 0xe022);
- Tag const WADORetrievalSequence(0x0040, 0xe023);
- Tag const XDSRetrievalSequence(0x0040, 0xe024);
- Tag const WADORSRetrievalSequence(0x0040, 0xe025);
- Tag const RepositoryUniqueID(0x0040, 0xe030);
- Tag const HomeCommunityID(0x0040, 0xe031);
- Tag const DocumentTitle(0x0042, 0x0010);
- Tag const EncapsulatedDocument(0x0042, 0x0011);
- Tag const MIMETypeOfEncapsulatedDocument(0x0042, 0x0012);
- Tag const SourceInstanceSequence(0x0042, 0x0013);
- Tag const ListOfMIMETypes(0x0042, 0x0014);
- Tag const ProductPackageIdentifier(0x0044, 0x0001);
- Tag const SubstanceAdministrationApproval(0x0044, 0x0002);
- Tag const ApprovalStatusFurtherDescription(0x0044, 0x0003);
- Tag const ApprovalStatusDateTime(0x0044, 0x0004);
- Tag const ProductTypeCodeSequence(0x0044, 0x0007);
- Tag const ProductName(0x0044, 0x0008);
- Tag const ProductDescription(0x0044, 0x0009);
- Tag const ProductLotIdentifier(0x0044, 0x000a);
- Tag const ProductExpirationDateTime(0x0044, 0x000b);
- Tag const SubstanceAdministrationDateTime(0x0044, 0x0010);
- Tag const SubstanceAdministrationNotes(0x0044, 0x0011);
- Tag const SubstanceAdministrationDeviceID(0x0044, 0x0012);
- Tag const ProductParameterSequence(0x0044, 0x0013);
- Tag const SubstanceAdministrationParameterSequence(0x0044, 0x0019);
- Tag const LensDescription(0x0046, 0x0012);
- Tag const RightLensSequence(0x0046, 0x0014);
- Tag const LeftLensSequence(0x0046, 0x0015);
- Tag const UnspecifiedLateralityLensSequence(0x0046, 0x0016);
- Tag const CylinderSequence(0x0046, 0x0018);
- Tag const PrismSequence(0x0046, 0x0028);
- Tag const HorizontalPrismPower(0x0046, 0x0030);
- Tag const HorizontalPrismBase(0x0046, 0x0032);
- Tag const VerticalPrismPower(0x0046, 0x0034);
- Tag const VerticalPrismBase(0x0046, 0x0036);
- Tag const LensSegmentType(0x0046, 0x0038);
- Tag const OpticalTransmittance(0x0046, 0x0040);
- Tag const ChannelWidth(0x0046, 0x0042);
- Tag const PupilSize(0x0046, 0x0044);
- Tag const CornealSize(0x0046, 0x0046);
- Tag const AutorefractionRightEyeSequence(0x0046, 0x0050);
- Tag const AutorefractionLeftEyeSequence(0x0046, 0x0052);
- Tag const DistancePupillaryDistance(0x0046, 0x0060);
- Tag const NearPupillaryDistance(0x0046, 0x0062);
- Tag const IntermediatePupillaryDistance(0x0046, 0x0063);
- Tag const OtherPupillaryDistance(0x0046, 0x0064);
- Tag const KeratometryRightEyeSequence(0x0046, 0x0070);
- Tag const KeratometryLeftEyeSequence(0x0046, 0x0071);
- Tag const SteepKeratometricAxisSequence(0x0046, 0x0074);
- Tag const RadiusOfCurvature(0x0046, 0x0075);
- Tag const KeratometricPower(0x0046, 0x0076);
- Tag const KeratometricAxis(0x0046, 0x0077);
- Tag const FlatKeratometricAxisSequence(0x0046, 0x0080);
- Tag const BackgroundColor(0x0046, 0x0092);
- Tag const Optotype(0x0046, 0x0094);
- Tag const OptotypePresentation(0x0046, 0x0095);
- Tag const SubjectiveRefractionRightEyeSequence(0x0046, 0x0097);
- Tag const SubjectiveRefractionLeftEyeSequence(0x0046, 0x0098);
- Tag const AddNearSequence(0x0046, 0x0100);
- Tag const AddIntermediateSequence(0x0046, 0x0101);
- Tag const AddOtherSequence(0x0046, 0x0102);
- Tag const AddPower(0x0046, 0x0104);
- Tag const ViewingDistance(0x0046, 0x0106);
- Tag const VisualAcuityTypeCodeSequence(0x0046, 0x0121);
- Tag const VisualAcuityRightEyeSequence(0x0046, 0x0122);
- Tag const VisualAcuityLeftEyeSequence(0x0046, 0x0123);
- Tag const VisualAcuityBothEyesOpenSequence(0x0046, 0x0124);
- Tag const ViewingDistanceType(0x0046, 0x0125);
- Tag const VisualAcuityModifiers(0x0046, 0x0135);
- Tag const DecimalVisualAcuity(0x0046, 0x0137);
- Tag const OptotypeDetailedDefinition(0x0046, 0x0139);
- Tag const ReferencedRefractiveMeasurementsSequence(0x0046, 0x0145);
- Tag const SpherePower(0x0046, 0x0146);
- Tag const CylinderPower(0x0046, 0x0147);
- Tag const CornealTopographySurface(0x0046, 0x0201);
- Tag const CornealVertexLocation(0x0046, 0x0202);
- Tag const PupilCentroidXCoordinate(0x0046, 0x0203);
- Tag const PupilCentroidYCoordinate(0x0046, 0x0204);
- Tag const EquivalentPupilRadius(0x0046, 0x0205);
- Tag const CornealTopographyMapTypeCodeSequence(0x0046, 0x0207);
- Tag const VerticesOfTheOutlineOfPupil(0x0046, 0x0208);
- Tag const CornealTopographyMappingNormalsSequence(0x0046, 0x0210);
- Tag const MaximumCornealCurvatureSequence(0x0046, 0x0211);
- Tag const MaximumCornealCurvature(0x0046, 0x0212);
- Tag const MaximumCornealCurvatureLocation(0x0046, 0x0213);
- Tag const MinimumKeratometricSequence(0x0046, 0x0215);
- Tag const SimulatedKeratometricCylinderSequence(0x0046, 0x0218);
- Tag const AverageCornealPower(0x0046, 0x0220);
- Tag const CornealISValue(0x0046, 0x0224);
- Tag const AnalyzedArea(0x0046, 0x0227);
- Tag const SurfaceRegularityIndex(0x0046, 0x0230);
- Tag const SurfaceAsymmetryIndex(0x0046, 0x0232);
- Tag const CornealEccentricityIndex(0x0046, 0x0234);
- Tag const KeratoconusPredictionIndex(0x0046, 0x0236);
- Tag const DecimalPotentialVisualAcuity(0x0046, 0x0238);
- Tag const CornealTopographyMapQualityEvaluation(0x0046, 0x0242);
- Tag const SourceImageCornealProcessedDataSequence(0x0046, 0x0244);
- Tag const CornealPointLocation(0x0046, 0x0247);
- Tag const CornealPointEstimated(0x0046, 0x0248);
- Tag const AxialPower(0x0046, 0x0249);
- Tag const TangentialPower(0x0046, 0x0250);
- Tag const RefractivePower(0x0046, 0x0251);
- Tag const RelativeElevation(0x0046, 0x0252);
- Tag const CornealWavefront(0x0046, 0x0253);
- Tag const ImagedVolumeWidth(0x0048, 0x0001);
- Tag const ImagedVolumeHeight(0x0048, 0x0002);
- Tag const ImagedVolumeDepth(0x0048, 0x0003);
- Tag const TotalPixelMatrixColumns(0x0048, 0x0006);
- Tag const TotalPixelMatrixRows(0x0048, 0x0007);
- Tag const TotalPixelMatrixOriginSequence(0x0048, 0x0008);
- Tag const SpecimenLabelInImage(0x0048, 0x0010);
- Tag const FocusMethod(0x0048, 0x0011);
- Tag const ExtendedDepthOfField(0x0048, 0x0012);
- Tag const NumberOfFocalPlanes(0x0048, 0x0013);
- Tag const DistanceBetweenFocalPlanes(0x0048, 0x0014);
- Tag const RecommendedAbsentPixelCIELabValue(0x0048, 0x0015);
- Tag const IlluminatorTypeCodeSequence(0x0048, 0x0100);
- Tag const ImageOrientationSlide(0x0048, 0x0102);
- Tag const OpticalPathSequence(0x0048, 0x0105);
- Tag const OpticalPathIdentifier(0x0048, 0x0106);
- Tag const OpticalPathDescription(0x0048, 0x0107);
- Tag const IlluminationColorCodeSequence(0x0048, 0x0108);
- Tag const SpecimenReferenceSequence(0x0048, 0x0110);
- Tag const CondenserLensPower(0x0048, 0x0111);
- Tag const ObjectiveLensPower(0x0048, 0x0112);
- Tag const ObjectiveLensNumericalAperture(0x0048, 0x0113);
- Tag const PaletteColorLookupTableSequence(0x0048, 0x0120);
- Tag const ReferencedImageNavigationSequence(0x0048, 0x0200);
- Tag const TopLeftHandCornerOfLocalizerArea(0x0048, 0x0201);
- Tag const BottomRightHandCornerOfLocalizerArea(0x0048, 0x0202);
- Tag const OpticalPathIdentificationSequence(0x0048, 0x0207);
- Tag const PlanePositionSlideSequence(0x0048, 0x021a);
- Tag const ColumnPositionInTotalImagePixelMatrix(0x0048, 0x021e);
- Tag const RowPositionInTotalImagePixelMatrix(0x0048, 0x021f);
- Tag const PixelOriginInterpretation(0x0048, 0x0301);
- Tag const CalibrationImage(0x0050, 0x0004);
- Tag const DeviceSequence(0x0050, 0x0010);
- Tag const ContainerComponentTypeCodeSequence(0x0050, 0x0012);
- Tag const ContainerComponentThickness(0x0050, 0x0013);
- Tag const DeviceLength(0x0050, 0x0014);
- Tag const ContainerComponentWidth(0x0050, 0x0015);
- Tag const DeviceDiameter(0x0050, 0x0016);
- Tag const DeviceDiameterUnits(0x0050, 0x0017);
- Tag const DeviceVolume(0x0050, 0x0018);
- Tag const InterMarkerDistance(0x0050, 0x0019);
- Tag const ContainerComponentMaterial(0x0050, 0x001a);
- Tag const ContainerComponentID(0x0050, 0x001b);
- Tag const ContainerComponentLength(0x0050, 0x001c);
- Tag const ContainerComponentDiameter(0x0050, 0x001d);
- Tag const ContainerComponentDescription(0x0050, 0x001e);
- Tag const DeviceDescription(0x0050, 0x0020);
- Tag const ContrastBolusIngredientPercentByVolume(0x0052, 0x0001);
- Tag const OCTFocalDistance(0x0052, 0x0002);
- Tag const BeamSpotSize(0x0052, 0x0003);
- Tag const EffectiveRefractiveIndex(0x0052, 0x0004);
- Tag const OCTAcquisitionDomain(0x0052, 0x0006);
- Tag const OCTOpticalCenterWavelength(0x0052, 0x0007);
- Tag const AxialResolution(0x0052, 0x0008);
- Tag const RangingDepth(0x0052, 0x0009);
- Tag const ALineRate(0x0052, 0x0011);
- Tag const ALinesPerFrame(0x0052, 0x0012);
- Tag const CatheterRotationalRate(0x0052, 0x0013);
- Tag const ALinePixelSpacing(0x0052, 0x0014);
- Tag const ModeOfPercutaneousAccessSequence(0x0052, 0x0016);
- Tag const IntravascularOCTFrameTypeSequence(0x0052, 0x0025);
- Tag const OCTZOffsetApplied(0x0052, 0x0026);
- Tag const IntravascularFrameContentSequence(0x0052, 0x0027);
- Tag const IntravascularLongitudinalDistance(0x0052, 0x0028);
- Tag const IntravascularOCTFrameContentSequence(0x0052, 0x0029);
- Tag const OCTZOffsetCorrection(0x0052, 0x0030);
- Tag const CatheterDirectionOfRotation(0x0052, 0x0031);
- Tag const SeamLineLocation(0x0052, 0x0033);
- Tag const FirstALineLocation(0x0052, 0x0034);
- Tag const SeamLineIndex(0x0052, 0x0036);
- Tag const NumberOfPaddedALines(0x0052, 0x0038);
- Tag const InterpolationType(0x0052, 0x0039);
- Tag const RefractiveIndexApplied(0x0052, 0x003a);
- Tag const EnergyWindowVector(0x0054, 0x0010);
- Tag const NumberOfEnergyWindows(0x0054, 0x0011);
- Tag const EnergyWindowInformationSequence(0x0054, 0x0012);
- Tag const EnergyWindowRangeSequence(0x0054, 0x0013);
- Tag const EnergyWindowLowerLimit(0x0054, 0x0014);
- Tag const EnergyWindowUpperLimit(0x0054, 0x0015);
- Tag const RadiopharmaceuticalInformationSequence(0x0054, 0x0016);
- Tag const ResidualSyringeCounts(0x0054, 0x0017);
- Tag const EnergyWindowName(0x0054, 0x0018);
- Tag const DetectorVector(0x0054, 0x0020);
- Tag const NumberOfDetectors(0x0054, 0x0021);
- Tag const DetectorInformationSequence(0x0054, 0x0022);
- Tag const PhaseVector(0x0054, 0x0030);
- Tag const NumberOfPhases(0x0054, 0x0031);
- Tag const PhaseInformationSequence(0x0054, 0x0032);
- Tag const NumberOfFramesInPhase(0x0054, 0x0033);
- Tag const PhaseDelay(0x0054, 0x0036);
- Tag const PauseBetweenFrames(0x0054, 0x0038);
- Tag const PhaseDescription(0x0054, 0x0039);
- Tag const RotationVector(0x0054, 0x0050);
- Tag const NumberOfRotations(0x0054, 0x0051);
- Tag const RotationInformationSequence(0x0054, 0x0052);
- Tag const NumberOfFramesInRotation(0x0054, 0x0053);
- Tag const RRIntervalVector(0x0054, 0x0060);
- Tag const NumberOfRRIntervals(0x0054, 0x0061);
- Tag const GatedInformationSequence(0x0054, 0x0062);
- Tag const DataInformationSequence(0x0054, 0x0063);
- Tag const TimeSlotVector(0x0054, 0x0070);
- Tag const NumberOfTimeSlots(0x0054, 0x0071);
- Tag const TimeSlotInformationSequence(0x0054, 0x0072);
- Tag const TimeSlotTime(0x0054, 0x0073);
- Tag const SliceVector(0x0054, 0x0080);
- Tag const NumberOfSlices(0x0054, 0x0081);
- Tag const AngularViewVector(0x0054, 0x0090);
- Tag const TimeSliceVector(0x0054, 0x0100);
- Tag const NumberOfTimeSlices(0x0054, 0x0101);
- Tag const StartAngle(0x0054, 0x0200);
- Tag const TypeOfDetectorMotion(0x0054, 0x0202);
- Tag const TriggerVector(0x0054, 0x0210);
- Tag const NumberOfTriggersInPhase(0x0054, 0x0211);
- Tag const ViewCodeSequence(0x0054, 0x0220);
- Tag const ViewModifierCodeSequence(0x0054, 0x0222);
- Tag const RadionuclideCodeSequence(0x0054, 0x0300);
- Tag const AdministrationRouteCodeSequence(0x0054, 0x0302);
- Tag const RadiopharmaceuticalCodeSequence(0x0054, 0x0304);
- Tag const CalibrationDataSequence(0x0054, 0x0306);
- Tag const EnergyWindowNumber(0x0054, 0x0308);
- Tag const ImageID(0x0054, 0x0400);
- Tag const PatientOrientationCodeSequence(0x0054, 0x0410);
- Tag const PatientOrientationModifierCodeSequence(0x0054, 0x0412);
- Tag const PatientGantryRelationshipCodeSequence(0x0054, 0x0414);
- Tag const SliceProgressionDirection(0x0054, 0x0500);
- Tag const ScanProgressionDirection(0x0054, 0x0501);
- Tag const SeriesType(0x0054, 0x1000);
- Tag const Units(0x0054, 0x1001);
- Tag const CountsSource(0x0054, 0x1002);
- Tag const ReprojectionMethod(0x0054, 0x1004);
- Tag const SUVType(0x0054, 0x1006);
- Tag const RandomsCorrectionMethod(0x0054, 0x1100);
- Tag const AttenuationCorrectionMethod(0x0054, 0x1101);
- Tag const DecayCorrection(0x0054, 0x1102);
- Tag const ReconstructionMethod(0x0054, 0x1103);
- Tag const DetectorLinesOfResponseUsed(0x0054, 0x1104);
- Tag const ScatterCorrectionMethod(0x0054, 0x1105);
- Tag const AxialAcceptance(0x0054, 0x1200);
- Tag const AxialMash(0x0054, 0x1201);
- Tag const TransverseMash(0x0054, 0x1202);
- Tag const DetectorElementSize(0x0054, 0x1203);
- Tag const CoincidenceWindowWidth(0x0054, 0x1210);
- Tag const SecondaryCountsType(0x0054, 0x1220);
- Tag const FrameReferenceTime(0x0054, 0x1300);
- Tag const PrimaryPromptsCountsAccumulated(0x0054, 0x1310);
- Tag const SecondaryCountsAccumulated(0x0054, 0x1311);
- Tag const SliceSensitivityFactor(0x0054, 0x1320);
- Tag const DecayFactor(0x0054, 0x1321);
- Tag const DoseCalibrationFactor(0x0054, 0x1322);
- Tag const ScatterFractionFactor(0x0054, 0x1323);
- Tag const DeadTimeFactor(0x0054, 0x1324);
- Tag const ImageIndex(0x0054, 0x1330);
- Tag const CountsIncluded(0x0054, 0x1400);
- Tag const DeadTimeCorrectionFlag(0x0054, 0x1401);
- Tag const HistogramSequence(0x0060, 0x3000);
- Tag const HistogramNumberOfBins(0x0060, 0x3002);
- Tag const HistogramFirstBinValue(0x0060, 0x3004);
- Tag const HistogramLastBinValue(0x0060, 0x3006);
- Tag const HistogramBinWidth(0x0060, 0x3008);
- Tag const HistogramExplanation(0x0060, 0x3010);
- Tag const HistogramData(0x0060, 0x3020);
- Tag const SegmentationType(0x0062, 0x0001);
- Tag const SegmentSequence(0x0062, 0x0002);
- Tag const SegmentedPropertyCategoryCodeSequence(0x0062, 0x0003);
- Tag const SegmentNumber(0x0062, 0x0004);
- Tag const SegmentLabel(0x0062, 0x0005);
- Tag const SegmentDescription(0x0062, 0x0006);
- Tag const SegmentAlgorithmType(0x0062, 0x0008);
- Tag const SegmentAlgorithmName(0x0062, 0x0009);
- Tag const SegmentIdentificationSequence(0x0062, 0x000a);
- Tag const ReferencedSegmentNumber(0x0062, 0x000b);
- Tag const RecommendedDisplayGrayscaleValue(0x0062, 0x000c);
- Tag const RecommendedDisplayCIELabValue(0x0062, 0x000d);
- Tag const MaximumFractionalValue(0x0062, 0x000e);
- Tag const SegmentedPropertyTypeCodeSequence(0x0062, 0x000f);
- Tag const SegmentationFractionalType(0x0062, 0x0010);
- Tag const SegmentedPropertyTypeModifierCodeSequence(0x0062, 0x0011);
- Tag const UsedSegmentsSequence(0x0062, 0x0012);
- Tag const DeformableRegistrationSequence(0x0064, 0x0002);
- Tag const SourceFrameOfReferenceUID(0x0064, 0x0003);
- Tag const DeformableRegistrationGridSequence(0x0064, 0x0005);
- Tag const GridDimensions(0x0064, 0x0007);
- Tag const GridResolution(0x0064, 0x0008);
- Tag const VectorGridData(0x0064, 0x0009);
- Tag const PreDeformationMatrixRegistrationSequence(0x0064, 0x000f);
- Tag const PostDeformationMatrixRegistrationSequence(0x0064, 0x0010);
- Tag const NumberOfSurfaces(0x0066, 0x0001);
- Tag const SurfaceSequence(0x0066, 0x0002);
- Tag const SurfaceNumber(0x0066, 0x0003);
- Tag const SurfaceComments(0x0066, 0x0004);
- Tag const SurfaceProcessing(0x0066, 0x0009);
- Tag const SurfaceProcessingRatio(0x0066, 0x000a);
- Tag const SurfaceProcessingDescription(0x0066, 0x000b);
- Tag const RecommendedPresentationOpacity(0x0066, 0x000c);
- Tag const RecommendedPresentationType(0x0066, 0x000d);
- Tag const FiniteVolume(0x0066, 0x000e);
- Tag const Manifold(0x0066, 0x0010);
- Tag const SurfacePointsSequence(0x0066, 0x0011);
- Tag const SurfacePointsNormalsSequence(0x0066, 0x0012);
- Tag const SurfaceMeshPrimitivesSequence(0x0066, 0x0013);
- Tag const NumberOfSurfacePoints(0x0066, 0x0015);
- Tag const PointCoordinatesData(0x0066, 0x0016);
- Tag const PointPositionAccuracy(0x0066, 0x0017);
- Tag const MeanPointDistance(0x0066, 0x0018);
- Tag const MaximumPointDistance(0x0066, 0x0019);
- Tag const PointsBoundingBoxCoordinates(0x0066, 0x001a);
- Tag const AxisOfRotation(0x0066, 0x001b);
- Tag const CenterOfRotation(0x0066, 0x001c);
- Tag const NumberOfVectors(0x0066, 0x001e);
- Tag const VectorDimensionality(0x0066, 0x001f);
- Tag const VectorAccuracy(0x0066, 0x0020);
- Tag const VectorCoordinateData(0x0066, 0x0021);
- Tag const TrianglePointIndexList(0x0066, 0x0023);
- Tag const EdgePointIndexList(0x0066, 0x0024);
- Tag const VertexPointIndexList(0x0066, 0x0025);
- Tag const TriangleStripSequence(0x0066, 0x0026);
- Tag const TriangleFanSequence(0x0066, 0x0027);
- Tag const LineSequence(0x0066, 0x0028);
- Tag const PrimitivePointIndexList(0x0066, 0x0029);
- Tag const SurfaceCount(0x0066, 0x002a);
- Tag const ReferencedSurfaceSequence(0x0066, 0x002b);
- Tag const ReferencedSurfaceNumber(0x0066, 0x002c);
- Tag const SegmentSurfaceGenerationAlgorithmIdentificationSequence(0x0066, 0x002d);
- Tag const SegmentSurfaceSourceInstanceSequence(0x0066, 0x002e);
- Tag const AlgorithmFamilyCodeSequence(0x0066, 0x002f);
- Tag const AlgorithmNameCodeSequence(0x0066, 0x0030);
- Tag const AlgorithmVersion(0x0066, 0x0031);
- Tag const AlgorithmParameters(0x0066, 0x0032);
- Tag const FacetSequence(0x0066, 0x0034);
- Tag const SurfaceProcessingAlgorithmIdentificationSequence(0x0066, 0x0035);
- Tag const AlgorithmName(0x0066, 0x0036);
- Tag const RecommendedPointRadius(0x0066, 0x0037);
- Tag const RecommendedLineThickness(0x0066, 0x0038);
- Tag const LongPrimitivePointIndexList(0x0066, 0x0040);
- Tag const LongTrianglePointIndexList(0x0066, 0x0041);
- Tag const LongEdgePointIndexList(0x0066, 0x0042);
- Tag const LongVertexPointIndexList(0x0066, 0x0043);
- Tag const ImplantSize(0x0068, 0x6210);
- Tag const ImplantTemplateVersion(0x0068, 0x6221);
- Tag const ReplacedImplantTemplateSequence(0x0068, 0x6222);
- Tag const ImplantType(0x0068, 0x6223);
- Tag const DerivationImplantTemplateSequence(0x0068, 0x6224);
- Tag const OriginalImplantTemplateSequence(0x0068, 0x6225);
- Tag const EffectiveDateTime(0x0068, 0x6226);
- Tag const ImplantTargetAnatomySequence(0x0068, 0x6230);
- Tag const InformationFromManufacturerSequence(0x0068, 0x6260);
- Tag const NotificationFromManufacturerSequence(0x0068, 0x6265);
- Tag const InformationIssueDateTime(0x0068, 0x6270);
- Tag const InformationSummary(0x0068, 0x6280);
- Tag const ImplantRegulatoryDisapprovalCodeSequence(0x0068, 0x62a0);
- Tag const OverallTemplateSpatialTolerance(0x0068, 0x62a5);
- Tag const HPGLDocumentSequence(0x0068, 0x62c0);
- Tag const HPGLDocumentID(0x0068, 0x62d0);
- Tag const HPGLDocumentLabel(0x0068, 0x62d5);
- Tag const ViewOrientationCodeSequence(0x0068, 0x62e0);
- Tag const ViewOrientationModifier(0x0068, 0x62f0);
- Tag const HPGLDocumentScaling(0x0068, 0x62f2);
- Tag const HPGLDocument(0x0068, 0x6300);
- Tag const HPGLContourPenNumber(0x0068, 0x6310);
- Tag const HPGLPenSequence(0x0068, 0x6320);
- Tag const HPGLPenNumber(0x0068, 0x6330);
- Tag const HPGLPenLabel(0x0068, 0x6340);
- Tag const HPGLPenDescription(0x0068, 0x6345);
- Tag const RecommendedRotationPoint(0x0068, 0x6346);
- Tag const BoundingRectangle(0x0068, 0x6347);
- Tag const ImplantTemplate3DModelSurfaceNumber(0x0068, 0x6350);
- Tag const SurfaceModelDescriptionSequence(0x0068, 0x6360);
- Tag const SurfaceModelLabel(0x0068, 0x6380);
- Tag const SurfaceModelScalingFactor(0x0068, 0x6390);
- Tag const MaterialsCodeSequence(0x0068, 0x63a0);
- Tag const CoatingMaterialsCodeSequence(0x0068, 0x63a4);
- Tag const ImplantTypeCodeSequence(0x0068, 0x63a8);
- Tag const FixationMethodCodeSequence(0x0068, 0x63ac);
- Tag const MatingFeatureSetsSequence(0x0068, 0x63b0);
- Tag const MatingFeatureSetID(0x0068, 0x63c0);
- Tag const MatingFeatureSetLabel(0x0068, 0x63d0);
- Tag const MatingFeatureSequence(0x0068, 0x63e0);
- Tag const MatingFeatureID(0x0068, 0x63f0);
- Tag const MatingFeatureDegreeOfFreedomSequence(0x0068, 0x6400);
- Tag const DegreeOfFreedomID(0x0068, 0x6410);
- Tag const DegreeOfFreedomType(0x0068, 0x6420);
- Tag const TwoDMatingFeatureCoordinatesSequence(0x0068, 0x6430);
- Tag const ReferencedHPGLDocumentID(0x0068, 0x6440);
- Tag const TwoDMatingPoint(0x0068, 0x6450);
- Tag const TwoDMatingAxes(0x0068, 0x6460);
- Tag const TwoDDegreeOfFreedomSequence(0x0068, 0x6470);
- Tag const ThreeDDegreeOfFreedomAxis(0x0068, 0x6490);
- Tag const RangeOfFreedom(0x0068, 0x64a0);
- Tag const ThreeDMatingPoint(0x0068, 0x64c0);
- Tag const ThreeDMatingAxes(0x0068, 0x64d0);
- Tag const TwoDDegreeOfFreedomAxis(0x0068, 0x64f0);
- Tag const PlanningLandmarkPointSequence(0x0068, 0x6500);
- Tag const PlanningLandmarkLineSequence(0x0068, 0x6510);
- Tag const PlanningLandmarkPlaneSequence(0x0068, 0x6520);
- Tag const PlanningLandmarkID(0x0068, 0x6530);
- Tag const PlanningLandmarkDescription(0x0068, 0x6540);
- Tag const PlanningLandmarkIdentificationCodeSequence(0x0068, 0x6545);
- Tag const TwoDPointCoordinatesSequence(0x0068, 0x6550);
- Tag const TwoDPointCoordinates(0x0068, 0x6560);
- Tag const ThreeDPointCoordinates(0x0068, 0x6590);
- Tag const TwoDLineCoordinatesSequence(0x0068, 0x65a0);
- Tag const TwoDLineCoordinates(0x0068, 0x65b0);
- Tag const ThreeDLineCoordinates(0x0068, 0x65d0);
- Tag const TwoDPlaneCoordinatesSequence(0x0068, 0x65e0);
- Tag const TwoDPlaneIntersection(0x0068, 0x65f0);
- Tag const ThreeDPlaneOrigin(0x0068, 0x6610);
- Tag const ThreeDPlaneNormal(0x0068, 0x6620);
- Tag const GraphicAnnotationSequence(0x0070, 0x0001);
- Tag const GraphicLayer(0x0070, 0x0002);
- Tag const BoundingBoxAnnotationUnits(0x0070, 0x0003);
- Tag const AnchorPointAnnotationUnits(0x0070, 0x0004);
- Tag const GraphicAnnotationUnits(0x0070, 0x0005);
- Tag const UnformattedTextValue(0x0070, 0x0006);
- Tag const TextObjectSequence(0x0070, 0x0008);
- Tag const GraphicObjectSequence(0x0070, 0x0009);
- Tag const BoundingBoxTopLeftHandCorner(0x0070, 0x0010);
- Tag const BoundingBoxBottomRightHandCorner(0x0070, 0x0011);
- Tag const BoundingBoxTextHorizontalJustification(0x0070, 0x0012);
- Tag const AnchorPoint(0x0070, 0x0014);
- Tag const AnchorPointVisibility(0x0070, 0x0015);
- Tag const GraphicDimensions(0x0070, 0x0020);
- Tag const NumberOfGraphicPoints(0x0070, 0x0021);
- Tag const GraphicData(0x0070, 0x0022);
- Tag const GraphicType(0x0070, 0x0023);
- Tag const GraphicFilled(0x0070, 0x0024);
- Tag const ImageRotationRetired(0x0070, 0x0040);
- Tag const ImageHorizontalFlip(0x0070, 0x0041);
- Tag const ImageRotation(0x0070, 0x0042);
- Tag const DisplayedAreaTopLeftHandCornerTrial(0x0070, 0x0050);
- Tag const DisplayedAreaBottomRightHandCornerTrial(0x0070, 0x0051);
- Tag const DisplayedAreaTopLeftHandCorner(0x0070, 0x0052);
- Tag const DisplayedAreaBottomRightHandCorner(0x0070, 0x0053);
- Tag const DisplayedAreaSelectionSequence(0x0070, 0x005a);
- Tag const GraphicLayerSequence(0x0070, 0x0060);
- Tag const GraphicLayerOrder(0x0070, 0x0062);
- Tag const GraphicLayerRecommendedDisplayGrayscaleValue(0x0070, 0x0066);
- Tag const GraphicLayerRecommendedDisplayRGBValue(0x0070, 0x0067);
- Tag const GraphicLayerDescription(0x0070, 0x0068);
- Tag const ContentLabel(0x0070, 0x0080);
- Tag const ContentDescription(0x0070, 0x0081);
- Tag const PresentationCreationDate(0x0070, 0x0082);
- Tag const PresentationCreationTime(0x0070, 0x0083);
- Tag const ContentCreatorName(0x0070, 0x0084);
- Tag const ContentCreatorIdentificationCodeSequence(0x0070, 0x0086);
- Tag const AlternateContentDescriptionSequence(0x0070, 0x0087);
- Tag const PresentationSizeMode(0x0070, 0x0100);
- Tag const PresentationPixelSpacing(0x0070, 0x0101);
- Tag const PresentationPixelAspectRatio(0x0070, 0x0102);
- Tag const PresentationPixelMagnificationRatio(0x0070, 0x0103);
- Tag const GraphicGroupLabel(0x0070, 0x0207);
- Tag const GraphicGroupDescription(0x0070, 0x0208);
- Tag const CompoundGraphicSequence(0x0070, 0x0209);
- Tag const CompoundGraphicInstanceID(0x0070, 0x0226);
- Tag const FontName(0x0070, 0x0227);
- Tag const FontNameType(0x0070, 0x0228);
- Tag const CSSFontName(0x0070, 0x0229);
- Tag const RotationAngle(0x0070, 0x0230);
- Tag const TextStyleSequence(0x0070, 0x0231);
- Tag const LineStyleSequence(0x0070, 0x0232);
- Tag const FillStyleSequence(0x0070, 0x0233);
- Tag const GraphicGroupSequence(0x0070, 0x0234);
- Tag const TextColorCIELabValue(0x0070, 0x0241);
- Tag const HorizontalAlignment(0x0070, 0x0242);
- Tag const VerticalAlignment(0x0070, 0x0243);
- Tag const ShadowStyle(0x0070, 0x0244);
- Tag const ShadowOffsetX(0x0070, 0x0245);
- Tag const ShadowOffsetY(0x0070, 0x0246);
- Tag const ShadowColorCIELabValue(0x0070, 0x0247);
- Tag const Underlined(0x0070, 0x0248);
- Tag const Bold(0x0070, 0x0249);
- Tag const Italic(0x0070, 0x0250);
- Tag const PatternOnColorCIELabValue(0x0070, 0x0251);
- Tag const PatternOffColorCIELabValue(0x0070, 0x0252);
- Tag const LineThickness(0x0070, 0x0253);
- Tag const LineDashingStyle(0x0070, 0x0254);
- Tag const LinePattern(0x0070, 0x0255);
- Tag const FillPattern(0x0070, 0x0256);
- Tag const FillMode(0x0070, 0x0257);
- Tag const ShadowOpacity(0x0070, 0x0258);
- Tag const GapLength(0x0070, 0x0261);
- Tag const DiameterOfVisibility(0x0070, 0x0262);
- Tag const RotationPoint(0x0070, 0x0273);
- Tag const TickAlignment(0x0070, 0x0274);
- Tag const ShowTickLabel(0x0070, 0x0278);
- Tag const TickLabelAlignment(0x0070, 0x0279);
- Tag const CompoundGraphicUnits(0x0070, 0x0282);
- Tag const PatternOnOpacity(0x0070, 0x0284);
- Tag const PatternOffOpacity(0x0070, 0x0285);
- Tag const MajorTicksSequence(0x0070, 0x0287);
- Tag const TickPosition(0x0070, 0x0288);
- Tag const TickLabel(0x0070, 0x0289);
- Tag const CompoundGraphicType(0x0070, 0x0294);
- Tag const GraphicGroupID(0x0070, 0x0295);
- Tag const ShapeType(0x0070, 0x0306);
- Tag const RegistrationSequence(0x0070, 0x0308);
- Tag const MatrixRegistrationSequence(0x0070, 0x0309);
- Tag const MatrixSequence(0x0070, 0x030a);
- Tag const FrameOfReferenceTransformationMatrixType(0x0070, 0x030c);
- Tag const RegistrationTypeCodeSequence(0x0070, 0x030d);
- Tag const FiducialDescription(0x0070, 0x030f);
- Tag const FiducialIdentifier(0x0070, 0x0310);
- Tag const FiducialIdentifierCodeSequence(0x0070, 0x0311);
- Tag const ContourUncertaintyRadius(0x0070, 0x0312);
- Tag const UsedFiducialsSequence(0x0070, 0x0314);
- Tag const GraphicCoordinatesDataSequence(0x0070, 0x0318);
- Tag const FiducialUID(0x0070, 0x031a);
- Tag const FiducialSetSequence(0x0070, 0x031c);
- Tag const FiducialSequence(0x0070, 0x031e);
- Tag const GraphicLayerRecommendedDisplayCIELabValue(0x0070, 0x0401);
- Tag const BlendingSequence(0x0070, 0x0402);
- Tag const RelativeOpacity(0x0070, 0x0403);
- Tag const ReferencedSpatialRegistrationSequence(0x0070, 0x0404);
- Tag const BlendingPosition(0x0070, 0x0405);
- Tag const HangingProtocolName(0x0072, 0x0002);
- Tag const HangingProtocolDescription(0x0072, 0x0004);
- Tag const HangingProtocolLevel(0x0072, 0x0006);
- Tag const HangingProtocolCreator(0x0072, 0x0008);
- Tag const HangingProtocolCreationDateTime(0x0072, 0x000a);
- Tag const HangingProtocolDefinitionSequence(0x0072, 0x000c);
- Tag const HangingProtocolUserIdentificationCodeSequence(0x0072, 0x000e);
- Tag const HangingProtocolUserGroupName(0x0072, 0x0010);
- Tag const SourceHangingProtocolSequence(0x0072, 0x0012);
- Tag const NumberOfPriorsReferenced(0x0072, 0x0014);
- Tag const ImageSetsSequence(0x0072, 0x0020);
- Tag const ImageSetSelectorSequence(0x0072, 0x0022);
- Tag const ImageSetSelectorUsageFlag(0x0072, 0x0024);
- Tag const SelectorAttribute(0x0072, 0x0026);
- Tag const SelectorValueNumber(0x0072, 0x0028);
- Tag const TimeBasedImageSetsSequence(0x0072, 0x0030);
- Tag const ImageSetNumber(0x0072, 0x0032);
- Tag const ImageSetSelectorCategory(0x0072, 0x0034);
- Tag const RelativeTime(0x0072, 0x0038);
- Tag const RelativeTimeUnits(0x0072, 0x003a);
- Tag const AbstractPriorValue(0x0072, 0x003c);
- Tag const AbstractPriorCodeSequence(0x0072, 0x003e);
- Tag const ImageSetLabel(0x0072, 0x0040);
- Tag const SelectorAttributeVR(0x0072, 0x0050);
- Tag const SelectorSequencePointer(0x0072, 0x0052);
- Tag const SelectorSequencePointerPrivateCreator(0x0072, 0x0054);
- Tag const SelectorAttributePrivateCreator(0x0072, 0x0056);
- Tag const SelectorATValue(0x0072, 0x0060);
- Tag const SelectorCSValue(0x0072, 0x0062);
- Tag const SelectorISValue(0x0072, 0x0064);
- Tag const SelectorLOValue(0x0072, 0x0066);
- Tag const SelectorLTValue(0x0072, 0x0068);
- Tag const SelectorPNValue(0x0072, 0x006a);
- Tag const SelectorSHValue(0x0072, 0x006c);
- Tag const SelectorSTValue(0x0072, 0x006e);
- Tag const SelectorUTValue(0x0072, 0x0070);
- Tag const SelectorDSValue(0x0072, 0x0072);
- Tag const SelectorFDValue(0x0072, 0x0074);
- Tag const SelectorFLValue(0x0072, 0x0076);
- Tag const SelectorULValue(0x0072, 0x0078);
- Tag const SelectorUSValue(0x0072, 0x007a);
- Tag const SelectorSLValue(0x0072, 0x007c);
- Tag const SelectorSSValue(0x0072, 0x007e);
- Tag const SelectorCodeSequenceValue(0x0072, 0x0080);
- Tag const NumberOfScreens(0x0072, 0x0100);
- Tag const NominalScreenDefinitionSequence(0x0072, 0x0102);
- Tag const NumberOfVerticalPixels(0x0072, 0x0104);
- Tag const NumberOfHorizontalPixels(0x0072, 0x0106);
- Tag const DisplayEnvironmentSpatialPosition(0x0072, 0x0108);
- Tag const ScreenMinimumGrayscaleBitDepth(0x0072, 0x010a);
- Tag const ScreenMinimumColorBitDepth(0x0072, 0x010c);
- Tag const ApplicationMaximumRepaintTime(0x0072, 0x010e);
- Tag const DisplaySetsSequence(0x0072, 0x0200);
- Tag const DisplaySetNumber(0x0072, 0x0202);
- Tag const DisplaySetLabel(0x0072, 0x0203);
- Tag const DisplaySetPresentationGroup(0x0072, 0x0204);
- Tag const DisplaySetPresentationGroupDescription(0x0072, 0x0206);
- Tag const PartialDataDisplayHandling(0x0072, 0x0208);
- Tag const SynchronizedScrollingSequence(0x0072, 0x0210);
- Tag const DisplaySetScrollingGroup(0x0072, 0x0212);
- Tag const NavigationIndicatorSequence(0x0072, 0x0214);
- Tag const NavigationDisplaySet(0x0072, 0x0216);
- Tag const ReferenceDisplaySets(0x0072, 0x0218);
- Tag const ImageBoxesSequence(0x0072, 0x0300);
- Tag const ImageBoxNumber(0x0072, 0x0302);
- Tag const ImageBoxLayoutType(0x0072, 0x0304);
- Tag const ImageBoxTileHorizontalDimension(0x0072, 0x0306);
- Tag const ImageBoxTileVerticalDimension(0x0072, 0x0308);
- Tag const ImageBoxScrollDirection(0x0072, 0x0310);
- Tag const ImageBoxSmallScrollType(0x0072, 0x0312);
- Tag const ImageBoxSmallScrollAmount(0x0072, 0x0314);
- Tag const ImageBoxLargeScrollType(0x0072, 0x0316);
- Tag const ImageBoxLargeScrollAmount(0x0072, 0x0318);
- Tag const ImageBoxOverlapPriority(0x0072, 0x0320);
- Tag const CineRelativeToRealTime(0x0072, 0x0330);
- Tag const FilterOperationsSequence(0x0072, 0x0400);
- Tag const FilterByCategory(0x0072, 0x0402);
- Tag const FilterByAttributePresence(0x0072, 0x0404);
- Tag const FilterByOperator(0x0072, 0x0406);
- Tag const StructuredDisplayBackgroundCIELabValue(0x0072, 0x0420);
- Tag const EmptyImageBoxCIELabValue(0x0072, 0x0421);
- Tag const StructuredDisplayImageBoxSequence(0x0072, 0x0422);
- Tag const StructuredDisplayTextBoxSequence(0x0072, 0x0424);
- Tag const ReferencedFirstFrameSequence(0x0072, 0x0427);
- Tag const ImageBoxSynchronizationSequence(0x0072, 0x0430);
- Tag const SynchronizedImageBoxList(0x0072, 0x0432);
- Tag const TypeOfSynchronization(0x0072, 0x0434);
- Tag const BlendingOperationType(0x0072, 0x0500);
- Tag const ReformattingOperationType(0x0072, 0x0510);
- Tag const ReformattingThickness(0x0072, 0x0512);
- Tag const ReformattingInterval(0x0072, 0x0514);
- Tag const ReformattingOperationInitialViewDirection(0x0072, 0x0516);
- Tag const ThreeDRenderingType(0x0072, 0x0520);
- Tag const SortingOperationsSequence(0x0072, 0x0600);
- Tag const SortByCategory(0x0072, 0x0602);
- Tag const SortingDirection(0x0072, 0x0604);
- Tag const DisplaySetPatientOrientation(0x0072, 0x0700);
- Tag const VOIType(0x0072, 0x0702);
- Tag const PseudoColorType(0x0072, 0x0704);
- Tag const PseudoColorPaletteInstanceReferenceSequence(0x0072, 0x0705);
- Tag const ShowGrayscaleInverted(0x0072, 0x0706);
- Tag const ShowImageTrueSizeFlag(0x0072, 0x0710);
- Tag const ShowGraphicAnnotationFlag(0x0072, 0x0712);
- Tag const ShowPatientDemographicsFlag(0x0072, 0x0714);
- Tag const ShowAcquisitionTechniquesFlag(0x0072, 0x0716);
- Tag const DisplaySetHorizontalJustification(0x0072, 0x0717);
- Tag const DisplaySetVerticalJustification(0x0072, 0x0718);
- Tag const ContinuationStartMeterset(0x0074, 0x0120);
- Tag const ContinuationEndMeterset(0x0074, 0x0121);
- Tag const ProcedureStepState(0x0074, 0x1000);
- Tag const ProcedureStepProgressInformationSequence(0x0074, 0x1002);
- Tag const ProcedureStepProgress(0x0074, 0x1004);
- Tag const ProcedureStepProgressDescription(0x0074, 0x1006);
- Tag const ProcedureStepCommunicationsURISequence(0x0074, 0x1008);
- Tag const ContactURI(0x0074, 0x100a);
- Tag const ContactDisplayName(0x0074, 0x100c);
- Tag const ProcedureStepDiscontinuationReasonCodeSequence(0x0074, 0x100e);
- Tag const BeamTaskSequence(0x0074, 0x1020);
- Tag const BeamTaskType(0x0074, 0x1022);
- Tag const BeamOrderIndexTrial(0x0074, 0x1024);
- Tag const AutosequenceFlag(0x0074, 0x1025);
- Tag const TableTopVerticalAdjustedPosition(0x0074, 0x1026);
- Tag const TableTopLongitudinalAdjustedPosition(0x0074, 0x1027);
- Tag const TableTopLateralAdjustedPosition(0x0074, 0x1028);
- Tag const PatientSupportAdjustedAngle(0x0074, 0x102a);
- Tag const TableTopEccentricAdjustedAngle(0x0074, 0x102b);
- Tag const TableTopPitchAdjustedAngle(0x0074, 0x102c);
- Tag const TableTopRollAdjustedAngle(0x0074, 0x102d);
- Tag const DeliveryVerificationImageSequence(0x0074, 0x1030);
- Tag const VerificationImageTiming(0x0074, 0x1032);
- Tag const DoubleExposureFlag(0x0074, 0x1034);
- Tag const DoubleExposureOrdering(0x0074, 0x1036);
- Tag const DoubleExposureMetersetTrial(0x0074, 0x1038);
- Tag const DoubleExposureFieldDeltaTrial(0x0074, 0x103a);
- Tag const RelatedReferenceRTImageSequence(0x0074, 0x1040);
- Tag const GeneralMachineVerificationSequence(0x0074, 0x1042);
- Tag const ConventionalMachineVerificationSequence(0x0074, 0x1044);
- Tag const IonMachineVerificationSequence(0x0074, 0x1046);
- Tag const FailedAttributesSequence(0x0074, 0x1048);
- Tag const OverriddenAttributesSequence(0x0074, 0x104a);
- Tag const ConventionalControlPointVerificationSequence(0x0074, 0x104c);
- Tag const IonControlPointVerificationSequence(0x0074, 0x104e);
- Tag const AttributeOccurrenceSequence(0x0074, 0x1050);
- Tag const AttributeOccurrencePointer(0x0074, 0x1052);
- Tag const AttributeItemSelector(0x0074, 0x1054);
- Tag const AttributeOccurrencePrivateCreator(0x0074, 0x1056);
- Tag const SelectorSequencePointerItems(0x0074, 0x1057);
- Tag const ScheduledProcedureStepPriority(0x0074, 0x1200);
- Tag const WorklistLabel(0x0074, 0x1202);
- Tag const ProcedureStepLabel(0x0074, 0x1204);
- Tag const ScheduledProcessingParametersSequence(0x0074, 0x1210);
- Tag const PerformedProcessingParametersSequence(0x0074, 0x1212);
- Tag const UnifiedProcedureStepPerformedProcedureSequence(0x0074, 0x1216);
- Tag const RelatedProcedureStepSequence(0x0074, 0x1220);
- Tag const ProcedureStepRelationshipType(0x0074, 0x1222);
- Tag const ReplacedProcedureStepSequence(0x0074, 0x1224);
- Tag const DeletionLock(0x0074, 0x1230);
- Tag const ReceivingAE(0x0074, 0x1234);
- Tag const RequestingAE(0x0074, 0x1236);
- Tag const ReasonForCancellation(0x0074, 0x1238);
- Tag const SCPStatus(0x0074, 0x1242);
- Tag const SubscriptionListStatus(0x0074, 0x1244);
- Tag const UnifiedProcedureStepListStatus(0x0074, 0x1246);
- Tag const BeamOrderIndex(0x0074, 0x1324);
- Tag const DoubleExposureMeterset(0x0074, 0x1338);
- Tag const DoubleExposureFieldDelta(0x0074, 0x133a);
- Tag const ImplantAssemblyTemplateName(0x0076, 0x0001);
- Tag const ImplantAssemblyTemplateIssuer(0x0076, 0x0003);
- Tag const ImplantAssemblyTemplateVersion(0x0076, 0x0006);
- Tag const ReplacedImplantAssemblyTemplateSequence(0x0076, 0x0008);
- Tag const ImplantAssemblyTemplateType(0x0076, 0x000a);
- Tag const OriginalImplantAssemblyTemplateSequence(0x0076, 0x000c);
- Tag const DerivationImplantAssemblyTemplateSequence(0x0076, 0x000e);
- Tag const ImplantAssemblyTemplateTargetAnatomySequence(0x0076, 0x0010);
- Tag const ProcedureTypeCodeSequence(0x0076, 0x0020);
- Tag const SurgicalTechnique(0x0076, 0x0030);
- Tag const ComponentTypesSequence(0x0076, 0x0032);
- Tag const ComponentTypeCodeSequence(0x0076, 0x0034);
- Tag const ExclusiveComponentType(0x0076, 0x0036);
- Tag const MandatoryComponentType(0x0076, 0x0038);
- Tag const ComponentSequence(0x0076, 0x0040);
- Tag const ComponentID(0x0076, 0x0055);
- Tag const ComponentAssemblySequence(0x0076, 0x0060);
- Tag const Component1ReferencedID(0x0076, 0x0070);
- Tag const Component1ReferencedMatingFeatureSetID(0x0076, 0x0080);
- Tag const Component1ReferencedMatingFeatureID(0x0076, 0x0090);
- Tag const Component2ReferencedID(0x0076, 0x00a0);
- Tag const Component2ReferencedMatingFeatureSetID(0x0076, 0x00b0);
- Tag const Component2ReferencedMatingFeatureID(0x0076, 0x00c0);
- Tag const ImplantTemplateGroupName(0x0078, 0x0001);
- Tag const ImplantTemplateGroupDescription(0x0078, 0x0010);
- Tag const ImplantTemplateGroupIssuer(0x0078, 0x0020);
- Tag const ImplantTemplateGroupVersion(0x0078, 0x0024);
- Tag const ReplacedImplantTemplateGroupSequence(0x0078, 0x0026);
- Tag const ImplantTemplateGroupTargetAnatomySequence(0x0078, 0x0028);
- Tag const ImplantTemplateGroupMembersSequence(0x0078, 0x002a);
- Tag const ImplantTemplateGroupMemberID(0x0078, 0x002e);
- Tag const ThreeDImplantTemplateGroupMemberMatchingPoint(0x0078, 0x0050);
- Tag const ThreeDImplantTemplateGroupMemberMatchingAxes(0x0078, 0x0060);
- Tag const ImplantTemplateGroupMemberMatching2DCoordinatesSequence(0x0078, 0x0070);
- Tag const TwoDImplantTemplateGroupMemberMatchingPoint(0x0078, 0x0090);
- Tag const TwoDImplantTemplateGroupMemberMatchingAxes(0x0078, 0x00a0);
- Tag const ImplantTemplateGroupVariationDimensionSequence(0x0078, 0x00b0);
- Tag const ImplantTemplateGroupVariationDimensionName(0x0078, 0x00b2);
- Tag const ImplantTemplateGroupVariationDimensionRankSequence(0x0078, 0x00b4);
- Tag const ReferencedImplantTemplateGroupMemberID(0x0078, 0x00b6);
- Tag const ImplantTemplateGroupVariationDimensionRank(0x0078, 0x00b8);
- Tag const SurfaceScanAcquisitionTypeCodeSequence(0x0080, 0x0001);
- Tag const SurfaceScanModeCodeSequence(0x0080, 0x0002);
- Tag const RegistrationMethodCodeSequence(0x0080, 0x0003);
- Tag const ShotDurationTime(0x0080, 0x0004);
- Tag const ShotOffsetTime(0x0080, 0x0005);
- Tag const SurfacePointPresentationValueData(0x0080, 0x0006);
- Tag const SurfacePointColorCIELabValueData(0x0080, 0x0007);
- Tag const UVMappingSequence(0x0080, 0x0008);
- Tag const TextureLabel(0x0080, 0x0009);
- Tag const UValueData(0x0080, 0x0010);
- Tag const VValueData(0x0080, 0x0011);
- Tag const ReferencedTextureSequence(0x0080, 0x0012);
- Tag const ReferencedSurfaceDataSequence(0x0080, 0x0013);
- Tag const StorageMediaFileSetID(0x0088, 0x0130);
- Tag const StorageMediaFileSetUID(0x0088, 0x0140);
- Tag const IconImageSequence(0x0088, 0x0200);
- Tag const TopicTitle(0x0088, 0x0904);
- Tag const TopicSubject(0x0088, 0x0906);
- Tag const TopicAuthor(0x0088, 0x0910);
- Tag const TopicKeywords(0x0088, 0x0912);
- Tag const SOPInstanceStatus(0x0100, 0x0410);
- Tag const SOPAuthorizationDateTime(0x0100, 0x0420);
- Tag const SOPAuthorizationComment(0x0100, 0x0424);
- Tag const AuthorizationEquipmentCertificationNumber(0x0100, 0x0426);
- Tag const MACIDNumber(0x0400, 0x0005);
- Tag const MACCalculationTransferSyntaxUID(0x0400, 0x0010);
- Tag const MACAlgorithm(0x0400, 0x0015);
- Tag const DataElementsSigned(0x0400, 0x0020);
- Tag const DigitalSignatureUID(0x0400, 0x0100);
- Tag const DigitalSignatureDateTime(0x0400, 0x0105);
- Tag const CertificateType(0x0400, 0x0110);
- Tag const CertificateOfSigner(0x0400, 0x0115);
- Tag const Signature(0x0400, 0x0120);
- Tag const CertifiedTimestampType(0x0400, 0x0305);
- Tag const CertifiedTimestamp(0x0400, 0x0310);
- Tag const DigitalSignaturePurposeCodeSequence(0x0400, 0x0401);
- Tag const ReferencedDigitalSignatureSequence(0x0400, 0x0402);
- Tag const ReferencedSOPInstanceMACSequence(0x0400, 0x0403);
- Tag const MAC(0x0400, 0x0404);
- Tag const EncryptedAttributesSequence(0x0400, 0x0500);
- Tag const EncryptedContentTransferSyntaxUID(0x0400, 0x0510);
- Tag const EncryptedContent(0x0400, 0x0520);
- Tag const ModifiedAttributesSequence(0x0400, 0x0550);
- Tag const OriginalAttributesSequence(0x0400, 0x0561);
- Tag const AttributeModificationDateTime(0x0400, 0x0562);
- Tag const ModifyingSystem(0x0400, 0x0563);
- Tag const SourceOfPreviousValues(0x0400, 0x0564);
- Tag const ReasonForTheAttributeModification(0x0400, 0x0565);
- Tag const NumberOfCopies(0x2000, 0x0010);
- Tag const PrinterConfigurationSequence(0x2000, 0x001e);
- Tag const PrintPriority(0x2000, 0x0020);
- Tag const MediumType(0x2000, 0x0030);
- Tag const FilmDestination(0x2000, 0x0040);
- Tag const FilmSessionLabel(0x2000, 0x0050);
- Tag const MemoryAllocation(0x2000, 0x0060);
- Tag const MaximumMemoryAllocation(0x2000, 0x0061);
- Tag const ColorImagePrintingFlag(0x2000, 0x0062);
- Tag const CollationFlag(0x2000, 0x0063);
- Tag const AnnotationFlag(0x2000, 0x0065);
- Tag const ImageOverlayFlag(0x2000, 0x0067);
- Tag const PresentationLUTFlag(0x2000, 0x0069);
- Tag const ImageBoxPresentationLUTFlag(0x2000, 0x006a);
- Tag const MemoryBitDepth(0x2000, 0x00a0);
- Tag const PrintingBitDepth(0x2000, 0x00a1);
- Tag const MediaInstalledSequence(0x2000, 0x00a2);
- Tag const OtherMediaAvailableSequence(0x2000, 0x00a4);
- Tag const SupportedImageDisplayFormatsSequence(0x2000, 0x00a8);
- Tag const ReferencedFilmBoxSequence(0x2000, 0x0500);
- Tag const ReferencedStoredPrintSequence(0x2000, 0x0510);
- Tag const ImageDisplayFormat(0x2010, 0x0010);
- Tag const AnnotationDisplayFormatID(0x2010, 0x0030);
- Tag const FilmOrientation(0x2010, 0x0040);
- Tag const FilmSizeID(0x2010, 0x0050);
- Tag const PrinterResolutionID(0x2010, 0x0052);
- Tag const DefaultPrinterResolutionID(0x2010, 0x0054);
- Tag const MagnificationType(0x2010, 0x0060);
- Tag const SmoothingType(0x2010, 0x0080);
- Tag const DefaultMagnificationType(0x2010, 0x00a6);
- Tag const OtherMagnificationTypesAvailable(0x2010, 0x00a7);
- Tag const DefaultSmoothingType(0x2010, 0x00a8);
- Tag const OtherSmoothingTypesAvailable(0x2010, 0x00a9);
- Tag const BorderDensity(0x2010, 0x0100);
- Tag const EmptyImageDensity(0x2010, 0x0110);
- Tag const MinDensity(0x2010, 0x0120);
- Tag const MaxDensity(0x2010, 0x0130);
- Tag const Trim(0x2010, 0x0140);
- Tag const ConfigurationInformation(0x2010, 0x0150);
- Tag const ConfigurationInformationDescription(0x2010, 0x0152);
- Tag const MaximumCollatedFilms(0x2010, 0x0154);
- Tag const Illumination(0x2010, 0x015e);
- Tag const ReflectedAmbientLight(0x2010, 0x0160);
- Tag const PrinterPixelSpacing(0x2010, 0x0376);
- Tag const ReferencedFilmSessionSequence(0x2010, 0x0500);
- Tag const ReferencedImageBoxSequence(0x2010, 0x0510);
- Tag const ReferencedBasicAnnotationBoxSequence(0x2010, 0x0520);
- Tag const ImageBoxPosition(0x2020, 0x0010);
- Tag const Polarity(0x2020, 0x0020);
- Tag const RequestedImageSize(0x2020, 0x0030);
- Tag const RequestedDecimateCropBehavior(0x2020, 0x0040);
- Tag const RequestedResolutionID(0x2020, 0x0050);
- Tag const RequestedImageSizeFlag(0x2020, 0x00a0);
- Tag const DecimateCropResult(0x2020, 0x00a2);
- Tag const BasicGrayscaleImageSequence(0x2020, 0x0110);
- Tag const BasicColorImageSequence(0x2020, 0x0111);
- Tag const ReferencedImageOverlayBoxSequence(0x2020, 0x0130);
- Tag const ReferencedVOILUTBoxSequence(0x2020, 0x0140);
- Tag const AnnotationPosition(0x2030, 0x0010);
- Tag const TextString(0x2030, 0x0020);
- Tag const ReferencedOverlayPlaneSequence(0x2040, 0x0010);
- Tag const ReferencedOverlayPlaneGroups(0x2040, 0x0011);
- Tag const OverlayPixelDataSequence(0x2040, 0x0020);
- Tag const OverlayMagnificationType(0x2040, 0x0060);
- Tag const OverlaySmoothingType(0x2040, 0x0070);
- Tag const OverlayOrImageMagnification(0x2040, 0x0072);
- Tag const MagnifyToNumberOfColumns(0x2040, 0x0074);
- Tag const OverlayForegroundDensity(0x2040, 0x0080);
- Tag const OverlayBackgroundDensity(0x2040, 0x0082);
- Tag const OverlayMode(0x2040, 0x0090);
- Tag const ThresholdDensity(0x2040, 0x0100);
- Tag const ReferencedImageBoxSequenceRetired(0x2040, 0x0500);
- Tag const PresentationLUTSequence(0x2050, 0x0010);
- Tag const PresentationLUTShape(0x2050, 0x0020);
- Tag const ReferencedPresentationLUTSequence(0x2050, 0x0500);
- Tag const PrintJobID(0x2100, 0x0010);
- Tag const ExecutionStatus(0x2100, 0x0020);
- Tag const ExecutionStatusInfo(0x2100, 0x0030);
- Tag const CreationDate(0x2100, 0x0040);
- Tag const CreationTime(0x2100, 0x0050);
- Tag const Originator(0x2100, 0x0070);
- Tag const DestinationAE(0x2100, 0x0140);
- Tag const OwnerID(0x2100, 0x0160);
- Tag const NumberOfFilms(0x2100, 0x0170);
- Tag const ReferencedPrintJobSequencePullStoredPrint(0x2100, 0x0500);
- Tag const PrinterStatus(0x2110, 0x0010);
- Tag const PrinterStatusInfo(0x2110, 0x0020);
- Tag const PrinterName(0x2110, 0x0030);
- Tag const PrintQueueID(0x2110, 0x0099);
- Tag const QueueStatus(0x2120, 0x0010);
- Tag const PrintJobDescriptionSequence(0x2120, 0x0050);
- Tag const ReferencedPrintJobSequence(0x2120, 0x0070);
- Tag const PrintManagementCapabilitiesSequence(0x2130, 0x0010);
- Tag const PrinterCharacteristicsSequence(0x2130, 0x0015);
- Tag const FilmBoxContentSequence(0x2130, 0x0030);
- Tag const ImageBoxContentSequence(0x2130, 0x0040);
- Tag const AnnotationContentSequence(0x2130, 0x0050);
- Tag const ImageOverlayBoxContentSequence(0x2130, 0x0060);
- Tag const PresentationLUTContentSequence(0x2130, 0x0080);
- Tag const ProposedStudySequence(0x2130, 0x00a0);
- Tag const OriginalImageSequence(0x2130, 0x00c0);
- Tag const LabelUsingInformationExtractedFromInstances(0x2200, 0x0001);
- Tag const LabelText(0x2200, 0x0002);
- Tag const LabelStyleSelection(0x2200, 0x0003);
- Tag const MediaDisposition(0x2200, 0x0004);
- Tag const BarcodeValue(0x2200, 0x0005);
- Tag const BarcodeSymbology(0x2200, 0x0006);
- Tag const AllowMediaSplitting(0x2200, 0x0007);
- Tag const IncludeNonDICOMObjects(0x2200, 0x0008);
- Tag const IncludeDisplayApplication(0x2200, 0x0009);
- Tag const PreserveCompositeInstancesAfterMediaCreation(0x2200, 0x000a);
- Tag const TotalNumberOfPiecesOfMediaCreated(0x2200, 0x000b);
- Tag const RequestedMediaApplicationProfile(0x2200, 0x000c);
- Tag const ReferencedStorageMediaSequence(0x2200, 0x000d);
- Tag const FailureAttributes(0x2200, 0x000e);
- Tag const AllowLossyCompression(0x2200, 0x000f);
- Tag const RequestPriority(0x2200, 0x0020);
- Tag const RTImageLabel(0x3002, 0x0002);
- Tag const RTImageName(0x3002, 0x0003);
- Tag const RTImageDescription(0x3002, 0x0004);
- Tag const ReportedValuesOrigin(0x3002, 0x000a);
- Tag const RTImagePlane(0x3002, 0x000c);
- Tag const XRayImageReceptorTranslation(0x3002, 0x000d);
- Tag const XRayImageReceptorAngle(0x3002, 0x000e);
- Tag const RTImageOrientation(0x3002, 0x0010);
- Tag const ImagePlanePixelSpacing(0x3002, 0x0011);
- Tag const RTImagePosition(0x3002, 0x0012);
- Tag const RadiationMachineName(0x3002, 0x0020);
- Tag const RadiationMachineSAD(0x3002, 0x0022);
- Tag const RadiationMachineSSD(0x3002, 0x0024);
- Tag const RTImageSID(0x3002, 0x0026);
- Tag const SourceToReferenceObjectDistance(0x3002, 0x0028);
- Tag const FractionNumber(0x3002, 0x0029);
- Tag const ExposureSequence(0x3002, 0x0030);
- Tag const MetersetExposure(0x3002, 0x0032);
- Tag const DiaphragmPosition(0x3002, 0x0034);
- Tag const FluenceMapSequence(0x3002, 0x0040);
- Tag const FluenceDataSource(0x3002, 0x0041);
- Tag const FluenceDataScale(0x3002, 0x0042);
- Tag const PrimaryFluenceModeSequence(0x3002, 0x0050);
- Tag const FluenceMode(0x3002, 0x0051);
- Tag const FluenceModeID(0x3002, 0x0052);
- Tag const DVHType(0x3004, 0x0001);
- Tag const DoseUnits(0x3004, 0x0002);
- Tag const DoseType(0x3004, 0x0004);
- Tag const SpatialTransformOfDose(0x3004, 0x0005);
- Tag const DoseComment(0x3004, 0x0006);
- Tag const NormalizationPoint(0x3004, 0x0008);
- Tag const DoseSummationType(0x3004, 0x000a);
- Tag const GridFrameOffsetVector(0x3004, 0x000c);
- Tag const DoseGridScaling(0x3004, 0x000e);
- Tag const RTDoseROISequence(0x3004, 0x0010);
- Tag const DoseValue(0x3004, 0x0012);
- Tag const TissueHeterogeneityCorrection(0x3004, 0x0014);
- Tag const DVHNormalizationPoint(0x3004, 0x0040);
- Tag const DVHNormalizationDoseValue(0x3004, 0x0042);
- Tag const DVHSequence(0x3004, 0x0050);
- Tag const DVHDoseScaling(0x3004, 0x0052);
- Tag const DVHVolumeUnits(0x3004, 0x0054);
- Tag const DVHNumberOfBins(0x3004, 0x0056);
- Tag const DVHData(0x3004, 0x0058);
- Tag const DVHReferencedROISequence(0x3004, 0x0060);
- Tag const DVHROIContributionType(0x3004, 0x0062);
- Tag const DVHMinimumDose(0x3004, 0x0070);
- Tag const DVHMaximumDose(0x3004, 0x0072);
- Tag const DVHMeanDose(0x3004, 0x0074);
- Tag const StructureSetLabel(0x3006, 0x0002);
- Tag const StructureSetName(0x3006, 0x0004);
- Tag const StructureSetDescription(0x3006, 0x0006);
- Tag const StructureSetDate(0x3006, 0x0008);
- Tag const StructureSetTime(0x3006, 0x0009);
- Tag const ReferencedFrameOfReferenceSequence(0x3006, 0x0010);
- Tag const RTReferencedStudySequence(0x3006, 0x0012);
- Tag const RTReferencedSeriesSequence(0x3006, 0x0014);
- Tag const ContourImageSequence(0x3006, 0x0016);
- Tag const PredecessorStructureSetSequence(0x3006, 0x0018);
- Tag const StructureSetROISequence(0x3006, 0x0020);
- Tag const ROINumber(0x3006, 0x0022);
- Tag const ReferencedFrameOfReferenceUID(0x3006, 0x0024);
- Tag const ROIName(0x3006, 0x0026);
- Tag const ROIDescription(0x3006, 0x0028);
- Tag const ROIDisplayColor(0x3006, 0x002a);
- Tag const ROIVolume(0x3006, 0x002c);
- Tag const RTRelatedROISequence(0x3006, 0x0030);
- Tag const RTROIRelationship(0x3006, 0x0033);
- Tag const ROIGenerationAlgorithm(0x3006, 0x0036);
- Tag const ROIGenerationDescription(0x3006, 0x0038);
- Tag const ROIContourSequence(0x3006, 0x0039);
- Tag const ContourSequence(0x3006, 0x0040);
- Tag const ContourGeometricType(0x3006, 0x0042);
- Tag const ContourSlabThickness(0x3006, 0x0044);
- Tag const ContourOffsetVector(0x3006, 0x0045);
- Tag const NumberOfContourPoints(0x3006, 0x0046);
- Tag const ContourNumber(0x3006, 0x0048);
- Tag const AttachedContours(0x3006, 0x0049);
- Tag const ContourData(0x3006, 0x0050);
- Tag const RTROIObservationsSequence(0x3006, 0x0080);
- Tag const ObservationNumber(0x3006, 0x0082);
- Tag const ReferencedROINumber(0x3006, 0x0084);
- Tag const ROIObservationLabel(0x3006, 0x0085);
- Tag const RTROIIdentificationCodeSequence(0x3006, 0x0086);
- Tag const ROIObservationDescription(0x3006, 0x0088);
- Tag const RelatedRTROIObservationsSequence(0x3006, 0x00a0);
- Tag const RTROIInterpretedType(0x3006, 0x00a4);
- Tag const ROIInterpreter(0x3006, 0x00a6);
- Tag const ROIPhysicalPropertiesSequence(0x3006, 0x00b0);
- Tag const ROIPhysicalProperty(0x3006, 0x00b2);
- Tag const ROIPhysicalPropertyValue(0x3006, 0x00b4);
- Tag const ROIElementalCompositionSequence(0x3006, 0x00b6);
- Tag const ROIElementalCompositionAtomicNumber(0x3006, 0x00b7);
- Tag const ROIElementalCompositionAtomicMassFraction(0x3006, 0x00b8);
- Tag const AdditionalRTROIIdentificationCodeSequence(0x3006, 0x00b9);
- Tag const FrameOfReferenceRelationshipSequence(0x3006, 0x00c0);
- Tag const RelatedFrameOfReferenceUID(0x3006, 0x00c2);
- Tag const FrameOfReferenceTransformationType(0x3006, 0x00c4);
- Tag const FrameOfReferenceTransformationMatrix(0x3006, 0x00c6);
- Tag const FrameOfReferenceTransformationComment(0x3006, 0x00c8);
- Tag const MeasuredDoseReferenceSequence(0x3008, 0x0010);
- Tag const MeasuredDoseDescription(0x3008, 0x0012);
- Tag const MeasuredDoseType(0x3008, 0x0014);
- Tag const MeasuredDoseValue(0x3008, 0x0016);
- Tag const TreatmentSessionBeamSequence(0x3008, 0x0020);
- Tag const TreatmentSessionIonBeamSequence(0x3008, 0x0021);
- Tag const CurrentFractionNumber(0x3008, 0x0022);
- Tag const TreatmentControlPointDate(0x3008, 0x0024);
- Tag const TreatmentControlPointTime(0x3008, 0x0025);
- Tag const TreatmentTerminationStatus(0x3008, 0x002a);
- Tag const TreatmentTerminationCode(0x3008, 0x002b);
- Tag const TreatmentVerificationStatus(0x3008, 0x002c);
- Tag const ReferencedTreatmentRecordSequence(0x3008, 0x0030);
- Tag const SpecifiedPrimaryMeterset(0x3008, 0x0032);
- Tag const SpecifiedSecondaryMeterset(0x3008, 0x0033);
- Tag const DeliveredPrimaryMeterset(0x3008, 0x0036);
- Tag const DeliveredSecondaryMeterset(0x3008, 0x0037);
- Tag const SpecifiedTreatmentTime(0x3008, 0x003a);
- Tag const DeliveredTreatmentTime(0x3008, 0x003b);
- Tag const ControlPointDeliverySequence(0x3008, 0x0040);
- Tag const IonControlPointDeliverySequence(0x3008, 0x0041);
- Tag const SpecifiedMeterset(0x3008, 0x0042);
- Tag const DeliveredMeterset(0x3008, 0x0044);
- Tag const MetersetRateSet(0x3008, 0x0045);
- Tag const MetersetRateDelivered(0x3008, 0x0046);
- Tag const ScanSpotMetersetsDelivered(0x3008, 0x0047);
- Tag const DoseRateDelivered(0x3008, 0x0048);
- Tag const TreatmentSummaryCalculatedDoseReferenceSequence(0x3008, 0x0050);
- Tag const CumulativeDoseToDoseReference(0x3008, 0x0052);
- Tag const FirstTreatmentDate(0x3008, 0x0054);
- Tag const MostRecentTreatmentDate(0x3008, 0x0056);
- Tag const NumberOfFractionsDelivered(0x3008, 0x005a);
- Tag const OverrideSequence(0x3008, 0x0060);
- Tag const ParameterSequencePointer(0x3008, 0x0061);
- Tag const OverrideParameterPointer(0x3008, 0x0062);
- Tag const ParameterItemIndex(0x3008, 0x0063);
- Tag const MeasuredDoseReferenceNumber(0x3008, 0x0064);
- Tag const ParameterPointer(0x3008, 0x0065);
- Tag const OverrideReason(0x3008, 0x0066);
- Tag const CorrectedParameterSequence(0x3008, 0x0068);
- Tag const CorrectionValue(0x3008, 0x006a);
- Tag const CalculatedDoseReferenceSequence(0x3008, 0x0070);
- Tag const CalculatedDoseReferenceNumber(0x3008, 0x0072);
- Tag const CalculatedDoseReferenceDescription(0x3008, 0x0074);
- Tag const CalculatedDoseReferenceDoseValue(0x3008, 0x0076);
- Tag const StartMeterset(0x3008, 0x0078);
- Tag const EndMeterset(0x3008, 0x007a);
- Tag const ReferencedMeasuredDoseReferenceSequence(0x3008, 0x0080);
- Tag const ReferencedMeasuredDoseReferenceNumber(0x3008, 0x0082);
- Tag const ReferencedCalculatedDoseReferenceSequence(0x3008, 0x0090);
- Tag const ReferencedCalculatedDoseReferenceNumber(0x3008, 0x0092);
- Tag const BeamLimitingDeviceLeafPairsSequence(0x3008, 0x00a0);
- Tag const RecordedWedgeSequence(0x3008, 0x00b0);
- Tag const RecordedCompensatorSequence(0x3008, 0x00c0);
- Tag const RecordedBlockSequence(0x3008, 0x00d0);
- Tag const TreatmentSummaryMeasuredDoseReferenceSequence(0x3008, 0x00e0);
- Tag const RecordedSnoutSequence(0x3008, 0x00f0);
- Tag const RecordedRangeShifterSequence(0x3008, 0x00f2);
- Tag const RecordedLateralSpreadingDeviceSequence(0x3008, 0x00f4);
- Tag const RecordedRangeModulatorSequence(0x3008, 0x00f6);
- Tag const RecordedSourceSequence(0x3008, 0x0100);
- Tag const SourceSerialNumber(0x3008, 0x0105);
- Tag const TreatmentSessionApplicationSetupSequence(0x3008, 0x0110);
- Tag const ApplicationSetupCheck(0x3008, 0x0116);
- Tag const RecordedBrachyAccessoryDeviceSequence(0x3008, 0x0120);
- Tag const ReferencedBrachyAccessoryDeviceNumber(0x3008, 0x0122);
- Tag const RecordedChannelSequence(0x3008, 0x0130);
- Tag const SpecifiedChannelTotalTime(0x3008, 0x0132);
- Tag const DeliveredChannelTotalTime(0x3008, 0x0134);
- Tag const SpecifiedNumberOfPulses(0x3008, 0x0136);
- Tag const DeliveredNumberOfPulses(0x3008, 0x0138);
- Tag const SpecifiedPulseRepetitionInterval(0x3008, 0x013a);
- Tag const DeliveredPulseRepetitionInterval(0x3008, 0x013c);
- Tag const RecordedSourceApplicatorSequence(0x3008, 0x0140);
- Tag const ReferencedSourceApplicatorNumber(0x3008, 0x0142);
- Tag const RecordedChannelShieldSequence(0x3008, 0x0150);
- Tag const ReferencedChannelShieldNumber(0x3008, 0x0152);
- Tag const BrachyControlPointDeliveredSequence(0x3008, 0x0160);
- Tag const SafePositionExitDate(0x3008, 0x0162);
- Tag const SafePositionExitTime(0x3008, 0x0164);
- Tag const SafePositionReturnDate(0x3008, 0x0166);
- Tag const SafePositionReturnTime(0x3008, 0x0168);
- Tag const PulseSpecificBrachyControlPointDeliveredSequence(0x3008, 0x0171);
- Tag const PulseNumber(0x3008, 0x0172);
- Tag const BrachyPulseControlPointDeliveredSequence(0x3008, 0x0173);
- Tag const CurrentTreatmentStatus(0x3008, 0x0200);
- Tag const TreatmentStatusComment(0x3008, 0x0202);
- Tag const FractionGroupSummarySequence(0x3008, 0x0220);
- Tag const ReferencedFractionNumber(0x3008, 0x0223);
- Tag const FractionGroupType(0x3008, 0x0224);
- Tag const BeamStopperPosition(0x3008, 0x0230);
- Tag const FractionStatusSummarySequence(0x3008, 0x0240);
- Tag const TreatmentDate(0x3008, 0x0250);
- Tag const TreatmentTime(0x3008, 0x0251);
- Tag const RTPlanLabel(0x300a, 0x0002);
- Tag const RTPlanName(0x300a, 0x0003);
- Tag const RTPlanDescription(0x300a, 0x0004);
- Tag const RTPlanDate(0x300a, 0x0006);
- Tag const RTPlanTime(0x300a, 0x0007);
- Tag const TreatmentProtocols(0x300a, 0x0009);
- Tag const PlanIntent(0x300a, 0x000a);
- Tag const TreatmentSites(0x300a, 0x000b);
- Tag const RTPlanGeometry(0x300a, 0x000c);
- Tag const PrescriptionDescription(0x300a, 0x000e);
- Tag const DoseReferenceSequence(0x300a, 0x0010);
- Tag const DoseReferenceNumber(0x300a, 0x0012);
- Tag const DoseReferenceUID(0x300a, 0x0013);
- Tag const DoseReferenceStructureType(0x300a, 0x0014);
- Tag const NominalBeamEnergyUnit(0x300a, 0x0015);
- Tag const DoseReferenceDescription(0x300a, 0x0016);
- Tag const DoseReferencePointCoordinates(0x300a, 0x0018);
- Tag const NominalPriorDose(0x300a, 0x001a);
- Tag const DoseReferenceType(0x300a, 0x0020);
- Tag const ConstraintWeight(0x300a, 0x0021);
- Tag const DeliveryWarningDose(0x300a, 0x0022);
- Tag const DeliveryMaximumDose(0x300a, 0x0023);
- Tag const TargetMinimumDose(0x300a, 0x0025);
- Tag const TargetPrescriptionDose(0x300a, 0x0026);
- Tag const TargetMaximumDose(0x300a, 0x0027);
- Tag const TargetUnderdoseVolumeFraction(0x300a, 0x0028);
- Tag const OrganAtRiskFullVolumeDose(0x300a, 0x002a);
- Tag const OrganAtRiskLimitDose(0x300a, 0x002b);
- Tag const OrganAtRiskMaximumDose(0x300a, 0x002c);
- Tag const OrganAtRiskOverdoseVolumeFraction(0x300a, 0x002d);
- Tag const ToleranceTableSequence(0x300a, 0x0040);
- Tag const ToleranceTableNumber(0x300a, 0x0042);
- Tag const ToleranceTableLabel(0x300a, 0x0043);
- Tag const GantryAngleTolerance(0x300a, 0x0044);
- Tag const BeamLimitingDeviceAngleTolerance(0x300a, 0x0046);
- Tag const BeamLimitingDeviceToleranceSequence(0x300a, 0x0048);
- Tag const BeamLimitingDevicePositionTolerance(0x300a, 0x004a);
- Tag const SnoutPositionTolerance(0x300a, 0x004b);
- Tag const PatientSupportAngleTolerance(0x300a, 0x004c);
- Tag const TableTopEccentricAngleTolerance(0x300a, 0x004e);
- Tag const TableTopPitchAngleTolerance(0x300a, 0x004f);
- Tag const TableTopRollAngleTolerance(0x300a, 0x0050);
- Tag const TableTopVerticalPositionTolerance(0x300a, 0x0051);
- Tag const TableTopLongitudinalPositionTolerance(0x300a, 0x0052);
- Tag const TableTopLateralPositionTolerance(0x300a, 0x0053);
- Tag const RTPlanRelationship(0x300a, 0x0055);
- Tag const FractionGroupSequence(0x300a, 0x0070);
- Tag const FractionGroupNumber(0x300a, 0x0071);
- Tag const FractionGroupDescription(0x300a, 0x0072);
- Tag const NumberOfFractionsPlanned(0x300a, 0x0078);
- Tag const NumberOfFractionPatternDigitsPerDay(0x300a, 0x0079);
- Tag const RepeatFractionCycleLength(0x300a, 0x007a);
- Tag const FractionPattern(0x300a, 0x007b);
- Tag const NumberOfBeams(0x300a, 0x0080);
- Tag const BeamDoseSpecificationPoint(0x300a, 0x0082);
- Tag const BeamDose(0x300a, 0x0084);
- Tag const BeamMeterset(0x300a, 0x0086);
- Tag const BeamDosePointDepth(0x300a, 0x0088);
- Tag const BeamDosePointEquivalentDepth(0x300a, 0x0089);
- Tag const BeamDosePointSSD(0x300a, 0x008a);
- Tag const BeamDoseMeaning(0x300a, 0x008b);
- Tag const BeamDoseVerificationControlPointSequence(0x300a, 0x008c);
- Tag const AverageBeamDosePointDepth(0x300a, 0x008d);
- Tag const AverageBeamDosePointEquivalentDepth(0x300a, 0x008e);
- Tag const AverageBeamDosePointSSD(0x300a, 0x008f);
- Tag const NumberOfBrachyApplicationSetups(0x300a, 0x00a0);
- Tag const BrachyApplicationSetupDoseSpecificationPoint(0x300a, 0x00a2);
- Tag const BrachyApplicationSetupDose(0x300a, 0x00a4);
- Tag const BeamSequence(0x300a, 0x00b0);
- Tag const TreatmentMachineName(0x300a, 0x00b2);
- Tag const PrimaryDosimeterUnit(0x300a, 0x00b3);
- Tag const SourceAxisDistance(0x300a, 0x00b4);
- Tag const BeamLimitingDeviceSequence(0x300a, 0x00b6);
- Tag const RTBeamLimitingDeviceType(0x300a, 0x00b8);
- Tag const SourceToBeamLimitingDeviceDistance(0x300a, 0x00ba);
- Tag const IsocenterToBeamLimitingDeviceDistance(0x300a, 0x00bb);
- Tag const NumberOfLeafJawPairs(0x300a, 0x00bc);
- Tag const LeafPositionBoundaries(0x300a, 0x00be);
- Tag const BeamNumber(0x300a, 0x00c0);
- Tag const BeamName(0x300a, 0x00c2);
- Tag const BeamDescription(0x300a, 0x00c3);
- Tag const BeamType(0x300a, 0x00c4);
- Tag const BeamDeliveryDurationLimit(0x300a, 0x00c5);
- Tag const RadiationType(0x300a, 0x00c6);
- Tag const HighDoseTechniqueType(0x300a, 0x00c7);
- Tag const ReferenceImageNumber(0x300a, 0x00c8);
- Tag const PlannedVerificationImageSequence(0x300a, 0x00ca);
- Tag const ImagingDeviceSpecificAcquisitionParameters(0x300a, 0x00cc);
- Tag const TreatmentDeliveryType(0x300a, 0x00ce);
- Tag const NumberOfWedges(0x300a, 0x00d0);
- Tag const WedgeSequence(0x300a, 0x00d1);
- Tag const WedgeNumber(0x300a, 0x00d2);
- Tag const WedgeType(0x300a, 0x00d3);
- Tag const WedgeID(0x300a, 0x00d4);
- Tag const WedgeAngle(0x300a, 0x00d5);
- Tag const WedgeFactor(0x300a, 0x00d6);
- Tag const TotalWedgeTrayWaterEquivalentThickness(0x300a, 0x00d7);
- Tag const WedgeOrientation(0x300a, 0x00d8);
- Tag const IsocenterToWedgeTrayDistance(0x300a, 0x00d9);
- Tag const SourceToWedgeTrayDistance(0x300a, 0x00da);
- Tag const WedgeThinEdgePosition(0x300a, 0x00db);
- Tag const BolusID(0x300a, 0x00dc);
- Tag const BolusDescription(0x300a, 0x00dd);
- Tag const EffectiveWedgeAngle(0x300a, 0x00de);
- Tag const NumberOfCompensators(0x300a, 0x00e0);
- Tag const MaterialID(0x300a, 0x00e1);
- Tag const TotalCompensatorTrayFactor(0x300a, 0x00e2);
- Tag const CompensatorSequence(0x300a, 0x00e3);
- Tag const CompensatorNumber(0x300a, 0x00e4);
- Tag const CompensatorID(0x300a, 0x00e5);
- Tag const SourceToCompensatorTrayDistance(0x300a, 0x00e6);
- Tag const CompensatorRows(0x300a, 0x00e7);
- Tag const CompensatorColumns(0x300a, 0x00e8);
- Tag const CompensatorPixelSpacing(0x300a, 0x00e9);
- Tag const CompensatorPosition(0x300a, 0x00ea);
- Tag const CompensatorTransmissionData(0x300a, 0x00eb);
- Tag const CompensatorThicknessData(0x300a, 0x00ec);
- Tag const NumberOfBoli(0x300a, 0x00ed);
- Tag const CompensatorType(0x300a, 0x00ee);
- Tag const CompensatorTrayID(0x300a, 0x00ef);
- Tag const NumberOfBlocks(0x300a, 0x00f0);
- Tag const TotalBlockTrayFactor(0x300a, 0x00f2);
- Tag const TotalBlockTrayWaterEquivalentThickness(0x300a, 0x00f3);
- Tag const BlockSequence(0x300a, 0x00f4);
- Tag const BlockTrayID(0x300a, 0x00f5);
- Tag const SourceToBlockTrayDistance(0x300a, 0x00f6);
- Tag const IsocenterToBlockTrayDistance(0x300a, 0x00f7);
- Tag const BlockType(0x300a, 0x00f8);
- Tag const AccessoryCode(0x300a, 0x00f9);
- Tag const BlockDivergence(0x300a, 0x00fa);
- Tag const BlockMountingPosition(0x300a, 0x00fb);
- Tag const BlockNumber(0x300a, 0x00fc);
- Tag const BlockName(0x300a, 0x00fe);
- Tag const BlockThickness(0x300a, 0x0100);
- Tag const BlockTransmission(0x300a, 0x0102);
- Tag const BlockNumberOfPoints(0x300a, 0x0104);
- Tag const BlockData(0x300a, 0x0106);
- Tag const ApplicatorSequence(0x300a, 0x0107);
- Tag const ApplicatorID(0x300a, 0x0108);
- Tag const ApplicatorType(0x300a, 0x0109);
- Tag const ApplicatorDescription(0x300a, 0x010a);
- Tag const CumulativeDoseReferenceCoefficient(0x300a, 0x010c);
- Tag const FinalCumulativeMetersetWeight(0x300a, 0x010e);
- Tag const NumberOfControlPoints(0x300a, 0x0110);
- Tag const ControlPointSequence(0x300a, 0x0111);
- Tag const ControlPointIndex(0x300a, 0x0112);
- Tag const NominalBeamEnergy(0x300a, 0x0114);
- Tag const DoseRateSet(0x300a, 0x0115);
- Tag const WedgePositionSequence(0x300a, 0x0116);
- Tag const WedgePosition(0x300a, 0x0118);
- Tag const BeamLimitingDevicePositionSequence(0x300a, 0x011a);
- Tag const LeafJawPositions(0x300a, 0x011c);
- Tag const GantryAngle(0x300a, 0x011e);
- Tag const GantryRotationDirection(0x300a, 0x011f);
- Tag const BeamLimitingDeviceAngle(0x300a, 0x0120);
- Tag const BeamLimitingDeviceRotationDirection(0x300a, 0x0121);
- Tag const PatientSupportAngle(0x300a, 0x0122);
- Tag const PatientSupportRotationDirection(0x300a, 0x0123);
- Tag const TableTopEccentricAxisDistance(0x300a, 0x0124);
- Tag const TableTopEccentricAngle(0x300a, 0x0125);
- Tag const TableTopEccentricRotationDirection(0x300a, 0x0126);
- Tag const TableTopVerticalPosition(0x300a, 0x0128);
- Tag const TableTopLongitudinalPosition(0x300a, 0x0129);
- Tag const TableTopLateralPosition(0x300a, 0x012a);
- Tag const IsocenterPosition(0x300a, 0x012c);
- Tag const SurfaceEntryPoint(0x300a, 0x012e);
- Tag const SourceToSurfaceDistance(0x300a, 0x0130);
- Tag const AverageBeamDosePointSourceToExternalContourSurfaceDistance(0x300a, 0x0131);
- Tag const SourceToExternalContourDistance(0x300a, 0x0132);
- Tag const ExternalContourEntryPoint(0x300a, 0x0133);
- Tag const CumulativeMetersetWeight(0x300a, 0x0134);
- Tag const TableTopPitchAngle(0x300a, 0x0140);
- Tag const TableTopPitchRotationDirection(0x300a, 0x0142);
- Tag const TableTopRollAngle(0x300a, 0x0144);
- Tag const TableTopRollRotationDirection(0x300a, 0x0146);
- Tag const HeadFixationAngle(0x300a, 0x0148);
- Tag const GantryPitchAngle(0x300a, 0x014a);
- Tag const GantryPitchRotationDirection(0x300a, 0x014c);
- Tag const GantryPitchAngleTolerance(0x300a, 0x014e);
- Tag const PatientSetupSequence(0x300a, 0x0180);
- Tag const PatientSetupNumber(0x300a, 0x0182);
- Tag const PatientSetupLabel(0x300a, 0x0183);
- Tag const PatientAdditionalPosition(0x300a, 0x0184);
- Tag const FixationDeviceSequence(0x300a, 0x0190);
- Tag const FixationDeviceType(0x300a, 0x0192);
- Tag const FixationDeviceLabel(0x300a, 0x0194);
- Tag const FixationDeviceDescription(0x300a, 0x0196);
- Tag const FixationDevicePosition(0x300a, 0x0198);
- Tag const FixationDevicePitchAngle(0x300a, 0x0199);
- Tag const FixationDeviceRollAngle(0x300a, 0x019a);
- Tag const ShieldingDeviceSequence(0x300a, 0x01a0);
- Tag const ShieldingDeviceType(0x300a, 0x01a2);
- Tag const ShieldingDeviceLabel(0x300a, 0x01a4);
- Tag const ShieldingDeviceDescription(0x300a, 0x01a6);
- Tag const ShieldingDevicePosition(0x300a, 0x01a8);
- Tag const SetupTechnique(0x300a, 0x01b0);
- Tag const SetupTechniqueDescription(0x300a, 0x01b2);
- Tag const SetupDeviceSequence(0x300a, 0x01b4);
- Tag const SetupDeviceType(0x300a, 0x01b6);
- Tag const SetupDeviceLabel(0x300a, 0x01b8);
- Tag const SetupDeviceDescription(0x300a, 0x01ba);
- Tag const SetupDeviceParameter(0x300a, 0x01bc);
- Tag const SetupReferenceDescription(0x300a, 0x01d0);
- Tag const TableTopVerticalSetupDisplacement(0x300a, 0x01d2);
- Tag const TableTopLongitudinalSetupDisplacement(0x300a, 0x01d4);
- Tag const TableTopLateralSetupDisplacement(0x300a, 0x01d6);
- Tag const BrachyTreatmentTechnique(0x300a, 0x0200);
- Tag const BrachyTreatmentType(0x300a, 0x0202);
- Tag const TreatmentMachineSequence(0x300a, 0x0206);
- Tag const SourceSequence(0x300a, 0x0210);
- Tag const SourceNumber(0x300a, 0x0212);
- Tag const SourceType(0x300a, 0x0214);
- Tag const SourceManufacturer(0x300a, 0x0216);
- Tag const ActiveSourceDiameter(0x300a, 0x0218);
- Tag const ActiveSourceLength(0x300a, 0x021a);
- Tag const SourceModelID(0x300a, 0x021b);
- Tag const SourceDescription(0x300a, 0x021c);
- Tag const SourceEncapsulationNominalThickness(0x300a, 0x0222);
- Tag const SourceEncapsulationNominalTransmission(0x300a, 0x0224);
- Tag const SourceIsotopeName(0x300a, 0x0226);
- Tag const SourceIsotopeHalfLife(0x300a, 0x0228);
- Tag const SourceStrengthUnits(0x300a, 0x0229);
- Tag const ReferenceAirKermaRate(0x300a, 0x022a);
- Tag const SourceStrength(0x300a, 0x022b);
- Tag const SourceStrengthReferenceDate(0x300a, 0x022c);
- Tag const SourceStrengthReferenceTime(0x300a, 0x022e);
- Tag const ApplicationSetupSequence(0x300a, 0x0230);
- Tag const ApplicationSetupType(0x300a, 0x0232);
- Tag const ApplicationSetupNumber(0x300a, 0x0234);
- Tag const ApplicationSetupName(0x300a, 0x0236);
- Tag const ApplicationSetupManufacturer(0x300a, 0x0238);
- Tag const TemplateNumber(0x300a, 0x0240);
- Tag const TemplateType(0x300a, 0x0242);
- Tag const TemplateName(0x300a, 0x0244);
- Tag const TotalReferenceAirKerma(0x300a, 0x0250);
- Tag const BrachyAccessoryDeviceSequence(0x300a, 0x0260);
- Tag const BrachyAccessoryDeviceNumber(0x300a, 0x0262);
- Tag const BrachyAccessoryDeviceID(0x300a, 0x0263);
- Tag const BrachyAccessoryDeviceType(0x300a, 0x0264);
- Tag const BrachyAccessoryDeviceName(0x300a, 0x0266);
- Tag const BrachyAccessoryDeviceNominalThickness(0x300a, 0x026a);
- Tag const BrachyAccessoryDeviceNominalTransmission(0x300a, 0x026c);
- Tag const ChannelSequence(0x300a, 0x0280);
- Tag const ChannelNumber(0x300a, 0x0282);
- Tag const ChannelLength(0x300a, 0x0284);
- Tag const ChannelTotalTime(0x300a, 0x0286);
- Tag const SourceMovementType(0x300a, 0x0288);
- Tag const NumberOfPulses(0x300a, 0x028a);
- Tag const PulseRepetitionInterval(0x300a, 0x028c);
- Tag const SourceApplicatorNumber(0x300a, 0x0290);
- Tag const SourceApplicatorID(0x300a, 0x0291);
- Tag const SourceApplicatorType(0x300a, 0x0292);
- Tag const SourceApplicatorName(0x300a, 0x0294);
- Tag const SourceApplicatorLength(0x300a, 0x0296);
- Tag const SourceApplicatorManufacturer(0x300a, 0x0298);
- Tag const SourceApplicatorWallNominalThickness(0x300a, 0x029c);
- Tag const SourceApplicatorWallNominalTransmission(0x300a, 0x029e);
- Tag const SourceApplicatorStepSize(0x300a, 0x02a0);
- Tag const TransferTubeNumber(0x300a, 0x02a2);
- Tag const TransferTubeLength(0x300a, 0x02a4);
- Tag const ChannelShieldSequence(0x300a, 0x02b0);
- Tag const ChannelShieldNumber(0x300a, 0x02b2);
- Tag const ChannelShieldID(0x300a, 0x02b3);
- Tag const ChannelShieldName(0x300a, 0x02b4);
- Tag const ChannelShieldNominalThickness(0x300a, 0x02b8);
- Tag const ChannelShieldNominalTransmission(0x300a, 0x02ba);
- Tag const FinalCumulativeTimeWeight(0x300a, 0x02c8);
- Tag const BrachyControlPointSequence(0x300a, 0x02d0);
- Tag const ControlPointRelativePosition(0x300a, 0x02d2);
- Tag const ControlPoint3DPosition(0x300a, 0x02d4);
- Tag const CumulativeTimeWeight(0x300a, 0x02d6);
- Tag const CompensatorDivergence(0x300a, 0x02e0);
- Tag const CompensatorMountingPosition(0x300a, 0x02e1);
- Tag const SourceToCompensatorDistance(0x300a, 0x02e2);
- Tag const TotalCompensatorTrayWaterEquivalentThickness(0x300a, 0x02e3);
- Tag const IsocenterToCompensatorTrayDistance(0x300a, 0x02e4);
- Tag const CompensatorColumnOffset(0x300a, 0x02e5);
- Tag const IsocenterToCompensatorDistances(0x300a, 0x02e6);
- Tag const CompensatorRelativeStoppingPowerRatio(0x300a, 0x02e7);
- Tag const CompensatorMillingToolDiameter(0x300a, 0x02e8);
- Tag const IonRangeCompensatorSequence(0x300a, 0x02ea);
- Tag const CompensatorDescription(0x300a, 0x02eb);
- Tag const RadiationMassNumber(0x300a, 0x0302);
- Tag const RadiationAtomicNumber(0x300a, 0x0304);
- Tag const RadiationChargeState(0x300a, 0x0306);
- Tag const ScanMode(0x300a, 0x0308);
- Tag const VirtualSourceAxisDistances(0x300a, 0x030a);
- Tag const SnoutSequence(0x300a, 0x030c);
- Tag const SnoutPosition(0x300a, 0x030d);
- Tag const SnoutID(0x300a, 0x030f);
- Tag const NumberOfRangeShifters(0x300a, 0x0312);
- Tag const RangeShifterSequence(0x300a, 0x0314);
- Tag const RangeShifterNumber(0x300a, 0x0316);
- Tag const RangeShifterID(0x300a, 0x0318);
- Tag const RangeShifterType(0x300a, 0x0320);
- Tag const RangeShifterDescription(0x300a, 0x0322);
- Tag const NumberOfLateralSpreadingDevices(0x300a, 0x0330);
- Tag const LateralSpreadingDeviceSequence(0x300a, 0x0332);
- Tag const LateralSpreadingDeviceNumber(0x300a, 0x0334);
- Tag const LateralSpreadingDeviceID(0x300a, 0x0336);
- Tag const LateralSpreadingDeviceType(0x300a, 0x0338);
- Tag const LateralSpreadingDeviceDescription(0x300a, 0x033a);
- Tag const LateralSpreadingDeviceWaterEquivalentThickness(0x300a, 0x033c);
- Tag const NumberOfRangeModulators(0x300a, 0x0340);
- Tag const RangeModulatorSequence(0x300a, 0x0342);
- Tag const RangeModulatorNumber(0x300a, 0x0344);
- Tag const RangeModulatorID(0x300a, 0x0346);
- Tag const RangeModulatorType(0x300a, 0x0348);
- Tag const RangeModulatorDescription(0x300a, 0x034a);
- Tag const BeamCurrentModulationID(0x300a, 0x034c);
- Tag const PatientSupportType(0x300a, 0x0350);
- Tag const PatientSupportID(0x300a, 0x0352);
- Tag const PatientSupportAccessoryCode(0x300a, 0x0354);
- Tag const FixationLightAzimuthalAngle(0x300a, 0x0356);
- Tag const FixationLightPolarAngle(0x300a, 0x0358);
- Tag const MetersetRate(0x300a, 0x035a);
- Tag const RangeShifterSettingsSequence(0x300a, 0x0360);
- Tag const RangeShifterSetting(0x300a, 0x0362);
- Tag const IsocenterToRangeShifterDistance(0x300a, 0x0364);
- Tag const RangeShifterWaterEquivalentThickness(0x300a, 0x0366);
- Tag const LateralSpreadingDeviceSettingsSequence(0x300a, 0x0370);
- Tag const LateralSpreadingDeviceSetting(0x300a, 0x0372);
- Tag const IsocenterToLateralSpreadingDeviceDistance(0x300a, 0x0374);
- Tag const RangeModulatorSettingsSequence(0x300a, 0x0380);
- Tag const RangeModulatorGatingStartValue(0x300a, 0x0382);
- Tag const RangeModulatorGatingStopValue(0x300a, 0x0384);
- Tag const RangeModulatorGatingStartWaterEquivalentThickness(0x300a, 0x0386);
- Tag const RangeModulatorGatingStopWaterEquivalentThickness(0x300a, 0x0388);
- Tag const IsocenterToRangeModulatorDistance(0x300a, 0x038a);
- Tag const ScanSpotTuneID(0x300a, 0x0390);
- Tag const NumberOfScanSpotPositions(0x300a, 0x0392);
- Tag const ScanSpotPositionMap(0x300a, 0x0394);
- Tag const ScanSpotMetersetWeights(0x300a, 0x0396);
- Tag const ScanningSpotSize(0x300a, 0x0398);
- Tag const NumberOfPaintings(0x300a, 0x039a);
- Tag const IonToleranceTableSequence(0x300a, 0x03a0);
- Tag const IonBeamSequence(0x300a, 0x03a2);
- Tag const IonBeamLimitingDeviceSequence(0x300a, 0x03a4);
- Tag const IonBlockSequence(0x300a, 0x03a6);
- Tag const IonControlPointSequence(0x300a, 0x03a8);
- Tag const IonWedgeSequence(0x300a, 0x03aa);
- Tag const IonWedgePositionSequence(0x300a, 0x03ac);
- Tag const ReferencedSetupImageSequence(0x300a, 0x0401);
- Tag const SetupImageComment(0x300a, 0x0402);
- Tag const MotionSynchronizationSequence(0x300a, 0x0410);
- Tag const ControlPointOrientation(0x300a, 0x0412);
- Tag const GeneralAccessorySequence(0x300a, 0x0420);
- Tag const GeneralAccessoryID(0x300a, 0x0421);
- Tag const GeneralAccessoryDescription(0x300a, 0x0422);
- Tag const GeneralAccessoryType(0x300a, 0x0423);
- Tag const GeneralAccessoryNumber(0x300a, 0x0424);
- Tag const SourceToGeneralAccessoryDistance(0x300a, 0x0425);
- Tag const ApplicatorGeometrySequence(0x300a, 0x0431);
- Tag const ApplicatorApertureShape(0x300a, 0x0432);
- Tag const ApplicatorOpening(0x300a, 0x0433);
- Tag const ApplicatorOpeningX(0x300a, 0x0434);
- Tag const ApplicatorOpeningY(0x300a, 0x0435);
- Tag const SourceToApplicatorMountingPositionDistance(0x300a, 0x0436);
- Tag const NumberOfBlockSlabItems(0x300a, 0x0440);
- Tag const BlockSlabSequence(0x300a, 0x0441);
- Tag const BlockSlabThickness(0x300a, 0x0442);
- Tag const BlockSlabNumber(0x300a, 0x0443);
- Tag const DeviceMotionControlSequence(0x300a, 0x0450);
- Tag const DeviceMotionExecutionMode(0x300a, 0x0451);
- Tag const DeviceMotionObservationMode(0x300a, 0x0452);
- Tag const DeviceMotionParameterCodeSequence(0x300a, 0x0453);
- Tag const ReferencedRTPlanSequence(0x300c, 0x0002);
- Tag const ReferencedBeamSequence(0x300c, 0x0004);
- Tag const ReferencedBeamNumber(0x300c, 0x0006);
- Tag const ReferencedReferenceImageNumber(0x300c, 0x0007);
- Tag const StartCumulativeMetersetWeight(0x300c, 0x0008);
- Tag const EndCumulativeMetersetWeight(0x300c, 0x0009);
- Tag const ReferencedBrachyApplicationSetupSequence(0x300c, 0x000a);
- Tag const ReferencedBrachyApplicationSetupNumber(0x300c, 0x000c);
- Tag const ReferencedSourceNumber(0x300c, 0x000e);
- Tag const ReferencedFractionGroupSequence(0x300c, 0x0020);
- Tag const ReferencedFractionGroupNumber(0x300c, 0x0022);
- Tag const ReferencedVerificationImageSequence(0x300c, 0x0040);
- Tag const ReferencedReferenceImageSequence(0x300c, 0x0042);
- Tag const ReferencedDoseReferenceSequence(0x300c, 0x0050);
- Tag const ReferencedDoseReferenceNumber(0x300c, 0x0051);
- Tag const BrachyReferencedDoseReferenceSequence(0x300c, 0x0055);
- Tag const ReferencedStructureSetSequence(0x300c, 0x0060);
- Tag const ReferencedPatientSetupNumber(0x300c, 0x006a);
- Tag const ReferencedDoseSequence(0x300c, 0x0080);
- Tag const ReferencedToleranceTableNumber(0x300c, 0x00a0);
- Tag const ReferencedBolusSequence(0x300c, 0x00b0);
- Tag const ReferencedWedgeNumber(0x300c, 0x00c0);
- Tag const ReferencedCompensatorNumber(0x300c, 0x00d0);
- Tag const ReferencedBlockNumber(0x300c, 0x00e0);
- Tag const ReferencedControlPointIndex(0x300c, 0x00f0);
- Tag const ReferencedControlPointSequence(0x300c, 0x00f2);
- Tag const ReferencedStartControlPointIndex(0x300c, 0x00f4);
- Tag const ReferencedStopControlPointIndex(0x300c, 0x00f6);
- Tag const ReferencedRangeShifterNumber(0x300c, 0x0100);
- Tag const ReferencedLateralSpreadingDeviceNumber(0x300c, 0x0102);
- Tag const ReferencedRangeModulatorNumber(0x300c, 0x0104);
- Tag const ApprovalStatus(0x300e, 0x0002);
- Tag const ReviewDate(0x300e, 0x0004);
- Tag const ReviewTime(0x300e, 0x0005);
- Tag const ReviewerName(0x300e, 0x0008);
- Tag const Arbitrary(0x4000, 0x0010);
- Tag const TextComments(0x4000, 0x4000);
- Tag const ResultsID(0x4008, 0x0040);
- Tag const ResultsIDIssuer(0x4008, 0x0042);
- Tag const ReferencedInterpretationSequence(0x4008, 0x0050);
- Tag const ReportProductionStatusTrial(0x4008, 0x00ff);
- Tag const InterpretationRecordedDate(0x4008, 0x0100);
- Tag const InterpretationRecordedTime(0x4008, 0x0101);
- Tag const InterpretationRecorder(0x4008, 0x0102);
- Tag const ReferenceToRecordedSound(0x4008, 0x0103);
- Tag const InterpretationTranscriptionDate(0x4008, 0x0108);
- Tag const InterpretationTranscriptionTime(0x4008, 0x0109);
- Tag const InterpretationTranscriber(0x4008, 0x010a);
- Tag const InterpretationText(0x4008, 0x010b);
- Tag const InterpretationAuthor(0x4008, 0x010c);
- Tag const InterpretationApproverSequence(0x4008, 0x0111);
- Tag const InterpretationApprovalDate(0x4008, 0x0112);
- Tag const InterpretationApprovalTime(0x4008, 0x0113);
- Tag const PhysicianApprovingInterpretation(0x4008, 0x0114);
- Tag const InterpretationDiagnosisDescription(0x4008, 0x0115);
- Tag const InterpretationDiagnosisCodeSequence(0x4008, 0x0117);
- Tag const ResultsDistributionListSequence(0x4008, 0x0118);
- Tag const DistributionName(0x4008, 0x0119);
- Tag const DistributionAddress(0x4008, 0x011a);
- Tag const InterpretationID(0x4008, 0x0200);
- Tag const InterpretationIDIssuer(0x4008, 0x0202);
- Tag const InterpretationTypeID(0x4008, 0x0210);
- Tag const InterpretationStatusID(0x4008, 0x0212);
- Tag const Impressions(0x4008, 0x0300);
- Tag const ResultsComments(0x4008, 0x4000);
- Tag const LowEnergyDetectors(0x4010, 0x0001);
- Tag const HighEnergyDetectors(0x4010, 0x0002);
- Tag const DetectorGeometrySequence(0x4010, 0x0004);
- Tag const ThreatROIVoxelSequence(0x4010, 0x1001);
- Tag const ThreatROIBase(0x4010, 0x1004);
- Tag const ThreatROIExtents(0x4010, 0x1005);
- Tag const ThreatROIBitmap(0x4010, 0x1006);
- Tag const RouteSegmentID(0x4010, 0x1007);
- Tag const GantryType(0x4010, 0x1008);
- Tag const OOIOwnerType(0x4010, 0x1009);
- Tag const RouteSegmentSequence(0x4010, 0x100a);
- Tag const PotentialThreatObjectID(0x4010, 0x1010);
- Tag const ThreatSequence(0x4010, 0x1011);
- Tag const ThreatCategory(0x4010, 0x1012);
- Tag const ThreatCategoryDescription(0x4010, 0x1013);
- Tag const ATDAbilityAssessment(0x4010, 0x1014);
- Tag const ATDAssessmentFlag(0x4010, 0x1015);
- Tag const ATDAssessmentProbability(0x4010, 0x1016);
- Tag const Mass(0x4010, 0x1017);
- Tag const Density(0x4010, 0x1018);
- Tag const ZEffective(0x4010, 0x1019);
- Tag const BoardingPassID(0x4010, 0x101a);
- Tag const CenterOfMass(0x4010, 0x101b);
- Tag const CenterOfPTO(0x4010, 0x101c);
- Tag const BoundingPolygon(0x4010, 0x101d);
- Tag const RouteSegmentStartLocationID(0x4010, 0x101e);
- Tag const RouteSegmentEndLocationID(0x4010, 0x101f);
- Tag const RouteSegmentLocationIDType(0x4010, 0x1020);
- Tag const AbortReason(0x4010, 0x1021);
- Tag const VolumeOfPTO(0x4010, 0x1023);
- Tag const AbortFlag(0x4010, 0x1024);
- Tag const RouteSegmentStartTime(0x4010, 0x1025);
- Tag const RouteSegmentEndTime(0x4010, 0x1026);
- Tag const TDRType(0x4010, 0x1027);
- Tag const InternationalRouteSegment(0x4010, 0x1028);
- Tag const ThreatDetectionAlgorithmandVersion(0x4010, 0x1029);
- Tag const AssignedLocation(0x4010, 0x102a);
- Tag const AlarmDecisionTime(0x4010, 0x102b);
- Tag const AlarmDecision(0x4010, 0x1031);
- Tag const NumberOfTotalObjects(0x4010, 0x1033);
- Tag const NumberOfAlarmObjects(0x4010, 0x1034);
- Tag const PTORepresentationSequence(0x4010, 0x1037);
- Tag const ATDAssessmentSequence(0x4010, 0x1038);
- Tag const TIPType(0x4010, 0x1039);
- Tag const DICOSVersion(0x4010, 0x103a);
- Tag const OOIOwnerCreationTime(0x4010, 0x1041);
- Tag const OOIType(0x4010, 0x1042);
- Tag const OOISize(0x4010, 0x1043);
- Tag const AcquisitionStatus(0x4010, 0x1044);
- Tag const BasisMaterialsCodeSequence(0x4010, 0x1045);
- Tag const PhantomType(0x4010, 0x1046);
- Tag const OOIOwnerSequence(0x4010, 0x1047);
- Tag const ScanType(0x4010, 0x1048);
- Tag const ItineraryID(0x4010, 0x1051);
- Tag const ItineraryIDType(0x4010, 0x1052);
- Tag const ItineraryIDAssigningAuthority(0x4010, 0x1053);
- Tag const RouteID(0x4010, 0x1054);
- Tag const RouteIDAssigningAuthority(0x4010, 0x1055);
- Tag const InboundArrivalType(0x4010, 0x1056);
- Tag const CarrierID(0x4010, 0x1058);
- Tag const CarrierIDAssigningAuthority(0x4010, 0x1059);
- Tag const SourceOrientation(0x4010, 0x1060);
- Tag const SourcePosition(0x4010, 0x1061);
- Tag const BeltHeight(0x4010, 0x1062);
- Tag const AlgorithmRoutingCodeSequence(0x4010, 0x1064);
- Tag const TransportClassification(0x4010, 0x1067);
- Tag const OOITypeDescriptor(0x4010, 0x1068);
- Tag const TotalProcessingTime(0x4010, 0x1069);
- Tag const DetectorCalibrationData(0x4010, 0x106c);
- Tag const AdditionalScreeningPerformed(0x4010, 0x106d);
- Tag const AdditionalInspectionSelectionCriteria(0x4010, 0x106e);
- Tag const AdditionalInspectionMethodSequence(0x4010, 0x106f);
- Tag const AITDeviceType(0x4010, 0x1070);
- Tag const QRMeasurementsSequence(0x4010, 0x1071);
- Tag const TargetMaterialSequence(0x4010, 0x1072);
- Tag const SNRThreshold(0x4010, 0x1073);
- Tag const ImageScaleRepresentation(0x4010, 0x1075);
- Tag const ReferencedPTOSequence(0x4010, 0x1076);
- Tag const ReferencedTDRInstanceSequence(0x4010, 0x1077);
- Tag const PTOLocationDescription(0x4010, 0x1078);
- Tag const AnomalyLocatorIndicatorSequence(0x4010, 0x1079);
- Tag const AnomalyLocatorIndicator(0x4010, 0x107a);
- Tag const PTORegionSequence(0x4010, 0x107b);
- Tag const InspectionSelectionCriteria(0x4010, 0x107c);
- Tag const SecondaryInspectionMethodSequence(0x4010, 0x107d);
- Tag const PRCSToRCSOrientation(0x4010, 0x107e);
- Tag const MACParametersSequence(0x4ffe, 0x0001);
- Tag const SharedFunctionalGroupsSequence(0x5200, 0x9229);
- Tag const PerFrameFunctionalGroupsSequence(0x5200, 0x9230);
- Tag const WaveformSequence(0x5400, 0x0100);
- Tag const ChannelMinimumValue(0x5400, 0x0110);
- Tag const ChannelMaximumValue(0x5400, 0x0112);
- Tag const WaveformBitsAllocated(0x5400, 0x1004);
- Tag const WaveformSampleInterpretation(0x5400, 0x1006);
- Tag const WaveformPaddingValue(0x5400, 0x100a);
- Tag const WaveformData(0x5400, 0x1010);
- Tag const FirstOrderPhaseCorrectionAngle(0x5600, 0x0010);
- Tag const SpectroscopyData(0x5600, 0x0020);
- Tag const FloatPixelData(0x7fe0, 0x0008);
- Tag const DoubleFloatPixelData(0x7fe0, 0x0009);
- Tag const PixelData(0x7fe0, 0x0010);
- Tag const CoefficientsSDVN(0x7fe0, 0x0020);
- Tag const CoefficientsSDHN(0x7fe0, 0x0030);
- Tag const CoefficientsSDDN(0x7fe0, 0x0040);
- Tag const DigitalSignaturesSequence(0xfffa, 0xfffa);
- Tag const DataSetTrailingPadding(0xfffc, 0xfffc);
- Tag const Item(0xfffe, 0xe000);
- Tag const ItemDelimitationItem(0xfffe, 0xe00d);
- Tag const SequenceDelimitationItem(0xfffe, 0xe0dd);
+Tag const CommandGroupLength(0x0000, 0x0000);
+Tag const AffectedSOPClassUID(0x0000, 0x0002);
+Tag const RequestedSOPClassUID(0x0000, 0x0003);
+Tag const CommandField(0x0000, 0x0100);
+Tag const MessageID(0x0000, 0x0110);
+Tag const MessageIDBeingRespondedTo(0x0000, 0x0120);
+Tag const MoveDestination(0x0000, 0x0600);
+Tag const Priority(0x0000, 0x0700);
+Tag const CommandDataSetType(0x0000, 0x0800);
+Tag const Status(0x0000, 0x0900);
+Tag const OffendingElement(0x0000, 0x0901);
+Tag const ErrorComment(0x0000, 0x0902);
+Tag const ErrorID(0x0000, 0x0903);
+Tag const AffectedSOPInstanceUID(0x0000, 0x1000);
+Tag const RequestedSOPInstanceUID(0x0000, 0x1001);
+Tag const EventTypeID(0x0000, 0x1002);
+Tag const AttributeIdentifierList(0x0000, 0x1005);
+Tag const ActionTypeID(0x0000, 0x1008);
+Tag const NumberOfRemainingSuboperations(0x0000, 0x1020);
+Tag const NumberOfCompletedSuboperations(0x0000, 0x1021);
+Tag const NumberOfFailedSuboperations(0x0000, 0x1022);
+Tag const NumberOfWarningSuboperations(0x0000, 0x1023);
+Tag const MoveOriginatorApplicationEntityTitle(0x0000, 0x1030);
+Tag const MoveOriginatorMessageID(0x0000, 0x1031);
+Tag const FileMetaInformationGroupLength(0x0002, 0x0000);
+Tag const FileMetaInformationVersion(0x0002, 0x0001);
+Tag const MediaStorageSOPClassUID(0x0002, 0x0002);
+Tag const MediaStorageSOPInstanceUID(0x0002, 0x0003);
+Tag const TransferSyntaxUID(0x0002, 0x0010);
+Tag const ImplementationClassUID(0x0002, 0x0012);
+Tag const ImplementationVersionName(0x0002, 0x0013);
+Tag const SourceApplicationEntityTitle(0x0002, 0x0016);
+Tag const SendingApplicationEntityTitle(0x0002, 0x0017);
+Tag const ReceivingApplicationEntityTitle(0x0002, 0x0018);
+Tag const PrivateInformationCreatorUID(0x0002, 0x0100);
+Tag const PrivateInformation(0x0002, 0x0102);
+Tag const FileSetID(0x0004, 0x1130);
+Tag const FileSetDescriptorFileID(0x0004, 0x1141);
+Tag const SpecificCharacterSetOfFileSetDescriptorFile(0x0004, 0x1142);
+Tag const OffsetOfTheFirstDirectoryRecordOfTheRootDirectoryEntity(0x0004, 0x1200);
+Tag const OffsetOfTheLastDirectoryRecordOfTheRootDirectoryEntity(0x0004, 0x1202);
+Tag const FileSetConsistencyFlag(0x0004, 0x1212);
+Tag const DirectoryRecordSequence(0x0004, 0x1220);
+Tag const OffsetOfTheNextDirectoryRecord(0x0004, 0x1400);
+Tag const RecordInUseFlag(0x0004, 0x1410);
+Tag const OffsetOfReferencedLowerLevelDirectoryEntity(0x0004, 0x1420);
+Tag const DirectoryRecordType(0x0004, 0x1430);
+Tag const PrivateRecordUID(0x0004, 0x1432);
+Tag const ReferencedFileID(0x0004, 0x1500);
+Tag const MRDRDirectoryRecordOffset(0x0004, 0x1504);
+Tag const ReferencedSOPClassUIDInFile(0x0004, 0x1510);
+Tag const ReferencedSOPInstanceUIDInFile(0x0004, 0x1511);
+Tag const ReferencedTransferSyntaxUIDInFile(0x0004, 0x1512);
+Tag const ReferencedRelatedGeneralSOPClassUIDInFile(0x0004, 0x151a);
+Tag const NumberOfReferences(0x0004, 0x1600);
+Tag const LengthToEnd(0x0008, 0x0001);
+Tag const SpecificCharacterSet(0x0008, 0x0005);
+Tag const LanguageCodeSequence(0x0008, 0x0006);
+Tag const ImageType(0x0008, 0x0008);
+Tag const RecognitionCode(0x0008, 0x0010);
+Tag const InstanceCreationDate(0x0008, 0x0012);
+Tag const InstanceCreationTime(0x0008, 0x0013);
+Tag const InstanceCreatorUID(0x0008, 0x0014);
+Tag const InstanceCoercionDateTime(0x0008, 0x0015);
+Tag const SOPClassUID(0x0008, 0x0016);
+Tag const SOPInstanceUID(0x0008, 0x0018);
+Tag const RelatedGeneralSOPClassUID(0x0008, 0x001a);
+Tag const OriginalSpecializedSOPClassUID(0x0008, 0x001b);
+Tag const StudyDate(0x0008, 0x0020);
+Tag const SeriesDate(0x0008, 0x0021);
+Tag const AcquisitionDate(0x0008, 0x0022);
+Tag const ContentDate(0x0008, 0x0023);
+Tag const OverlayDate(0x0008, 0x0024);
+Tag const CurveDate(0x0008, 0x0025);
+Tag const AcquisitionDateTime(0x0008, 0x002a);
+Tag const StudyTime(0x0008, 0x0030);
+Tag const SeriesTime(0x0008, 0x0031);
+Tag const AcquisitionTime(0x0008, 0x0032);
+Tag const ContentTime(0x0008, 0x0033);
+Tag const OverlayTime(0x0008, 0x0034);
+Tag const CurveTime(0x0008, 0x0035);
+Tag const DataSetType(0x0008, 0x0040);
+Tag const DataSetSubtype(0x0008, 0x0041);
+Tag const NuclearMedicineSeriesType(0x0008, 0x0042);
+Tag const AccessionNumber(0x0008, 0x0050);
+Tag const IssuerOfAccessionNumberSequence(0x0008, 0x0051);
+Tag const QueryRetrieveLevel(0x0008, 0x0052);
+Tag const QueryRetrieveView(0x0008, 0x0053);
+Tag const RetrieveAETitle(0x0008, 0x0054);
+Tag const InstanceAvailability(0x0008, 0x0056);
+Tag const FailedSOPInstanceUIDList(0x0008, 0x0058);
+Tag const Modality(0x0008, 0x0060);
+Tag const ModalitiesInStudy(0x0008, 0x0061);
+Tag const SOPClassesInStudy(0x0008, 0x0062);
+Tag const ConversionType(0x0008, 0x0064);
+Tag const PresentationIntentType(0x0008, 0x0068);
+Tag const Manufacturer(0x0008, 0x0070);
+Tag const InstitutionName(0x0008, 0x0080);
+Tag const InstitutionAddress(0x0008, 0x0081);
+Tag const InstitutionCodeSequence(0x0008, 0x0082);
+Tag const ReferringPhysicianName(0x0008, 0x0090);
+Tag const ReferringPhysicianAddress(0x0008, 0x0092);
+Tag const ReferringPhysicianTelephoneNumbers(0x0008, 0x0094);
+Tag const ReferringPhysicianIdentificationSequence(0x0008, 0x0096);
+Tag const ConsultingPhysicianName(0x0008, 0x009c);
+Tag const ConsultingPhysicianIdentificationSequence(0x0008, 0x009d);
+Tag const CodeValue(0x0008, 0x0100);
+Tag const ExtendedCodeValue(0x0008, 0x0101);
+Tag const CodingSchemeDesignator(0x0008, 0x0102);
+Tag const CodingSchemeVersion(0x0008, 0x0103);
+Tag const CodeMeaning(0x0008, 0x0104);
+Tag const MappingResource(0x0008, 0x0105);
+Tag const ContextGroupVersion(0x0008, 0x0106);
+Tag const ContextGroupLocalVersion(0x0008, 0x0107);
+Tag const ExtendedCodeMeaning(0x0008, 0x0108);
+Tag const ContextGroupExtensionFlag(0x0008, 0x010b);
+Tag const CodingSchemeUID(0x0008, 0x010c);
+Tag const ContextGroupExtensionCreatorUID(0x0008, 0x010d);
+Tag const ContextIdentifier(0x0008, 0x010f);
+Tag const CodingSchemeIdentificationSequence(0x0008, 0x0110);
+Tag const CodingSchemeRegistry(0x0008, 0x0112);
+Tag const CodingSchemeExternalID(0x0008, 0x0114);
+Tag const CodingSchemeName(0x0008, 0x0115);
+Tag const CodingSchemeResponsibleOrganization(0x0008, 0x0116);
+Tag const ContextUID(0x0008, 0x0117);
+Tag const MappingResourceUID(0x0008, 0x0118);
+Tag const LongCodeValue(0x0008, 0x0119);
+Tag const URNCodeValue(0x0008, 0x0120);
+Tag const EquivalentCodeSequence(0x0008, 0x0121);
+Tag const TimezoneOffsetFromUTC(0x0008, 0x0201);
+Tag const PrivateDataElementCharacteristicsSequence(0x0008, 0x0300);
+Tag const PrivateGroupReference(0x0008, 0x0301);
+Tag const PrivateCreatorReference(0x0008, 0x0302);
+Tag const BlockIdentifyingInformationStatus(0x0008, 0x0303);
+Tag const NonidentifyingPrivateElements(0x0008, 0x0304);
+Tag const IdentifyingPrivateElements(0x0008, 0x0306);
+Tag const DeidentificationActionSequence(0x0008, 0x0305);
+Tag const DeidentificationAction(0x0008, 0x0307);
+Tag const NetworkID(0x0008, 0x1000);
+Tag const StationName(0x0008, 0x1010);
+Tag const StudyDescription(0x0008, 0x1030);
+Tag const ProcedureCodeSequence(0x0008, 0x1032);
+Tag const SeriesDescription(0x0008, 0x103e);
+Tag const SeriesDescriptionCodeSequence(0x0008, 0x103f);
+Tag const InstitutionalDepartmentName(0x0008, 0x1040);
+Tag const PhysiciansOfRecord(0x0008, 0x1048);
+Tag const PhysiciansOfRecordIdentificationSequence(0x0008, 0x1049);
+Tag const PerformingPhysicianName(0x0008, 0x1050);
+Tag const PerformingPhysicianIdentificationSequence(0x0008, 0x1052);
+Tag const NameOfPhysiciansReadingStudy(0x0008, 0x1060);
+Tag const PhysiciansReadingStudyIdentificationSequence(0x0008, 0x1062);
+Tag const OperatorsName(0x0008, 0x1070);
+Tag const OperatorIdentificationSequence(0x0008, 0x1072);
+Tag const AdmittingDiagnosesDescription(0x0008, 0x1080);
+Tag const AdmittingDiagnosesCodeSequence(0x0008, 0x1084);
+Tag const ManufacturerModelName(0x0008, 0x1090);
+Tag const ReferencedResultsSequence(0x0008, 0x1100);
+Tag const ReferencedStudySequence(0x0008, 0x1110);
+Tag const ReferencedPerformedProcedureStepSequence(0x0008, 0x1111);
+Tag const ReferencedSeriesSequence(0x0008, 0x1115);
+Tag const ReferencedPatientSequence(0x0008, 0x1120);
+Tag const ReferencedVisitSequence(0x0008, 0x1125);
+Tag const ReferencedOverlaySequence(0x0008, 0x1130);
+Tag const ReferencedStereometricInstanceSequence(0x0008, 0x1134);
+Tag const ReferencedWaveformSequence(0x0008, 0x113a);
+Tag const ReferencedImageSequence(0x0008, 0x1140);
+Tag const ReferencedCurveSequence(0x0008, 0x1145);
+Tag const ReferencedInstanceSequence(0x0008, 0x114a);
+Tag const ReferencedRealWorldValueMappingInstanceSequence(0x0008, 0x114b);
+Tag const ReferencedSOPClassUID(0x0008, 0x1150);
+Tag const ReferencedSOPInstanceUID(0x0008, 0x1155);
+Tag const SOPClassesSupported(0x0008, 0x115a);
+Tag const ReferencedFrameNumber(0x0008, 0x1160);
+Tag const SimpleFrameList(0x0008, 0x1161);
+Tag const CalculatedFrameList(0x0008, 0x1162);
+Tag const TimeRange(0x0008, 0x1163);
+Tag const FrameExtractionSequence(0x0008, 0x1164);
+Tag const MultiFrameSourceSOPInstanceUID(0x0008, 0x1167);
+Tag const RetrieveURL(0x0008, 0x1190);
+Tag const TransactionUID(0x0008, 0x1195);
+Tag const WarningReason(0x0008, 0x1196);
+Tag const FailureReason(0x0008, 0x1197);
+Tag const FailedSOPSequence(0x0008, 0x1198);
+Tag const ReferencedSOPSequence(0x0008, 0x1199);
+Tag const StudiesContainingOtherReferencedInstancesSequence(0x0008, 0x1200);
+Tag const RelatedSeriesSequence(0x0008, 0x1250);
+Tag const LossyImageCompressionRetired(0x0008, 0x2110);
+Tag const DerivationDescription(0x0008, 0x2111);
+Tag const SourceImageSequence(0x0008, 0x2112);
+Tag const StageName(0x0008, 0x2120);
+Tag const StageNumber(0x0008, 0x2122);
+Tag const NumberOfStages(0x0008, 0x2124);
+Tag const ViewName(0x0008, 0x2127);
+Tag const ViewNumber(0x0008, 0x2128);
+Tag const NumberOfEventTimers(0x0008, 0x2129);
+Tag const NumberOfViewsInStage(0x0008, 0x212a);
+Tag const EventElapsedTimes(0x0008, 0x2130);
+Tag const EventTimerNames(0x0008, 0x2132);
+Tag const EventTimerSequence(0x0008, 0x2133);
+Tag const EventTimeOffset(0x0008, 0x2134);
+Tag const EventCodeSequence(0x0008, 0x2135);
+Tag const StartTrim(0x0008, 0x2142);
+Tag const StopTrim(0x0008, 0x2143);
+Tag const RecommendedDisplayFrameRate(0x0008, 0x2144);
+Tag const TransducerPosition(0x0008, 0x2200);
+Tag const TransducerOrientation(0x0008, 0x2204);
+Tag const AnatomicStructure(0x0008, 0x2208);
+Tag const AnatomicRegionSequence(0x0008, 0x2218);
+Tag const AnatomicRegionModifierSequence(0x0008, 0x2220);
+Tag const PrimaryAnatomicStructureSequence(0x0008, 0x2228);
+Tag const AnatomicStructureSpaceOrRegionSequence(0x0008, 0x2229);
+Tag const PrimaryAnatomicStructureModifierSequence(0x0008, 0x2230);
+Tag const TransducerPositionSequence(0x0008, 0x2240);
+Tag const TransducerPositionModifierSequence(0x0008, 0x2242);
+Tag const TransducerOrientationSequence(0x0008, 0x2244);
+Tag const TransducerOrientationModifierSequence(0x0008, 0x2246);
+Tag const AnatomicStructureSpaceOrRegionCodeSequenceTrial(0x0008, 0x2251);
+Tag const AnatomicPortalOfEntranceCodeSequenceTrial(0x0008, 0x2253);
+Tag const AnatomicApproachDirectionCodeSequenceTrial(0x0008, 0x2255);
+Tag const AnatomicPerspectiveDescriptionTrial(0x0008, 0x2256);
+Tag const AnatomicPerspectiveCodeSequenceTrial(0x0008, 0x2257);
+Tag const AnatomicLocationOfExaminingInstrumentDescriptionTrial(0x0008, 0x2258);
+Tag const AnatomicLocationOfExaminingInstrumentCodeSequenceTrial(0x0008, 0x2259);
+Tag const AnatomicStructureSpaceOrRegionModifierCodeSequenceTrial(0x0008, 0x225a);
+Tag const OnAxisBackgroundAnatomicStructureCodeSequenceTrial(0x0008, 0x225c);
+Tag const AlternateRepresentationSequence(0x0008, 0x3001);
+Tag const IrradiationEventUID(0x0008, 0x3010);
+Tag const SourceIrradiationEventSequence(0x0008, 0x3011);
+Tag const RadiopharmaceuticalAdministrationEventUID(0x0008, 0x3012);
+Tag const IdentifyingComments(0x0008, 0x4000);
+Tag const FrameType(0x0008, 0x9007);
+Tag const ReferencedImageEvidenceSequence(0x0008, 0x9092);
+Tag const ReferencedRawDataSequence(0x0008, 0x9121);
+Tag const CreatorVersionUID(0x0008, 0x9123);
+Tag const DerivationImageSequence(0x0008, 0x9124);
+Tag const SourceImageEvidenceSequence(0x0008, 0x9154);
+Tag const PixelPresentation(0x0008, 0x9205);
+Tag const VolumetricProperties(0x0008, 0x9206);
+Tag const VolumeBasedCalculationTechnique(0x0008, 0x9207);
+Tag const ComplexImageComponent(0x0008, 0x9208);
+Tag const AcquisitionContrast(0x0008, 0x9209);
+Tag const DerivationCodeSequence(0x0008, 0x9215);
+Tag const ReferencedPresentationStateSequence(0x0008, 0x9237);
+Tag const ReferencedOtherPlaneSequence(0x0008, 0x9410);
+Tag const FrameDisplaySequence(0x0008, 0x9458);
+Tag const RecommendedDisplayFrameRateInFloat(0x0008, 0x9459);
+Tag const SkipFrameRangeFlag(0x0008, 0x9460);
+Tag const PatientName(0x0010, 0x0010);
+Tag const PatientID(0x0010, 0x0020);
+Tag const IssuerOfPatientID(0x0010, 0x0021);
+Tag const TypeOfPatientID(0x0010, 0x0022);
+Tag const IssuerOfPatientIDQualifiersSequence(0x0010, 0x0024);
+Tag const PatientBirthDate(0x0010, 0x0030);
+Tag const PatientBirthTime(0x0010, 0x0032);
+Tag const PatientSex(0x0010, 0x0040);
+Tag const PatientInsurancePlanCodeSequence(0x0010, 0x0050);
+Tag const PatientPrimaryLanguageCodeSequence(0x0010, 0x0101);
+Tag const PatientPrimaryLanguageModifierCodeSequence(0x0010, 0x0102);
+Tag const QualityControlSubject(0x0010, 0x0200);
+Tag const QualityControlSubjectTypeCodeSequence(0x0010, 0x0201);
+Tag const OtherPatientIDs(0x0010, 0x1000);
+Tag const OtherPatientNames(0x0010, 0x1001);
+Tag const OtherPatientIDsSequence(0x0010, 0x1002);
+Tag const PatientBirthName(0x0010, 0x1005);
+Tag const PatientAge(0x0010, 0x1010);
+Tag const PatientSize(0x0010, 0x1020);
+Tag const PatientSizeCodeSequence(0x0010, 0x1021);
+Tag const PatientWeight(0x0010, 0x1030);
+Tag const PatientAddress(0x0010, 0x1040);
+Tag const InsurancePlanIdentification(0x0010, 0x1050);
+Tag const PatientMotherBirthName(0x0010, 0x1060);
+Tag const MilitaryRank(0x0010, 0x1080);
+Tag const BranchOfService(0x0010, 0x1081);
+Tag const MedicalRecordLocator(0x0010, 0x1090);
+Tag const ReferencedPatientPhotoSequence(0x0010, 0x1100);
+Tag const MedicalAlerts(0x0010, 0x2000);
+Tag const Allergies(0x0010, 0x2110);
+Tag const CountryOfResidence(0x0010, 0x2150);
+Tag const RegionOfResidence(0x0010, 0x2152);
+Tag const PatientTelephoneNumbers(0x0010, 0x2154);
+Tag const PatientTelecomInformation(0x0010, 0x2155);
+Tag const EthnicGroup(0x0010, 0x2160);
+Tag const Occupation(0x0010, 0x2180);
+Tag const SmokingStatus(0x0010, 0x21a0);
+Tag const AdditionalPatientHistory(0x0010, 0x21b0);
+Tag const PregnancyStatus(0x0010, 0x21c0);
+Tag const LastMenstrualDate(0x0010, 0x21d0);
+Tag const PatientReligiousPreference(0x0010, 0x21f0);
+Tag const PatientSpeciesDescription(0x0010, 0x2201);
+Tag const PatientSpeciesCodeSequence(0x0010, 0x2202);
+Tag const PatientSexNeutered(0x0010, 0x2203);
+Tag const AnatomicalOrientationType(0x0010, 0x2210);
+Tag const PatientBreedDescription(0x0010, 0x2292);
+Tag const PatientBreedCodeSequence(0x0010, 0x2293);
+Tag const BreedRegistrationSequence(0x0010, 0x2294);
+Tag const BreedRegistrationNumber(0x0010, 0x2295);
+Tag const BreedRegistryCodeSequence(0x0010, 0x2296);
+Tag const ResponsiblePerson(0x0010, 0x2297);
+Tag const ResponsiblePersonRole(0x0010, 0x2298);
+Tag const ResponsibleOrganization(0x0010, 0x2299);
+Tag const PatientComments(0x0010, 0x4000);
+Tag const ExaminedBodyThickness(0x0010, 0x9431);
+Tag const ClinicalTrialSponsorName(0x0012, 0x0010);
+Tag const ClinicalTrialProtocolID(0x0012, 0x0020);
+Tag const ClinicalTrialProtocolName(0x0012, 0x0021);
+Tag const ClinicalTrialSiteID(0x0012, 0x0030);
+Tag const ClinicalTrialSiteName(0x0012, 0x0031);
+Tag const ClinicalTrialSubjectID(0x0012, 0x0040);
+Tag const ClinicalTrialSubjectReadingID(0x0012, 0x0042);
+Tag const ClinicalTrialTimePointID(0x0012, 0x0050);
+Tag const ClinicalTrialTimePointDescription(0x0012, 0x0051);
+Tag const ClinicalTrialCoordinatingCenterName(0x0012, 0x0060);
+Tag const PatientIdentityRemoved(0x0012, 0x0062);
+Tag const DeidentificationMethod(0x0012, 0x0063);
+Tag const DeidentificationMethodCodeSequence(0x0012, 0x0064);
+Tag const ClinicalTrialSeriesID(0x0012, 0x0071);
+Tag const ClinicalTrialSeriesDescription(0x0012, 0x0072);
+Tag const ClinicalTrialProtocolEthicsCommitteeName(0x0012, 0x0081);
+Tag const ClinicalTrialProtocolEthicsCommitteeApprovalNumber(0x0012, 0x0082);
+Tag const ConsentForClinicalTrialUseSequence(0x0012, 0x0083);
+Tag const DistributionType(0x0012, 0x0084);
+Tag const ConsentForDistributionFlag(0x0012, 0x0085);
+Tag const CADFileFormat(0x0014, 0x0023);
+Tag const ComponentReferenceSystem(0x0014, 0x0024);
+Tag const ComponentManufacturingProcedure(0x0014, 0x0025);
+Tag const ComponentManufacturer(0x0014, 0x0028);
+Tag const MaterialThickness(0x0014, 0x0030);
+Tag const MaterialPipeDiameter(0x0014, 0x0032);
+Tag const MaterialIsolationDiameter(0x0014, 0x0034);
+Tag const MaterialGrade(0x0014, 0x0042);
+Tag const MaterialPropertiesDescription(0x0014, 0x0044);
+Tag const MaterialPropertiesFileFormatRetired(0x0014, 0x0045);
+Tag const MaterialNotes(0x0014, 0x0046);
+Tag const ComponentShape(0x0014, 0x0050);
+Tag const CurvatureType(0x0014, 0x0052);
+Tag const OuterDiameter(0x0014, 0x0054);
+Tag const InnerDiameter(0x0014, 0x0056);
+Tag const ActualEnvironmentalConditions(0x0014, 0x1010);
+Tag const ExpiryDate(0x0014, 0x1020);
+Tag const EnvironmentalConditions(0x0014, 0x1040);
+Tag const EvaluatorSequence(0x0014, 0x2002);
+Tag const EvaluatorNumber(0x0014, 0x2004);
+Tag const EvaluatorName(0x0014, 0x2006);
+Tag const EvaluationAttempt(0x0014, 0x2008);
+Tag const IndicationSequence(0x0014, 0x2012);
+Tag const IndicationNumber(0x0014, 0x2014);
+Tag const IndicationLabel(0x0014, 0x2016);
+Tag const IndicationDescription(0x0014, 0x2018);
+Tag const IndicationType(0x0014, 0x201a);
+Tag const IndicationDisposition(0x0014, 0x201c);
+Tag const IndicationROISequence(0x0014, 0x201e);
+Tag const IndicationPhysicalPropertySequence(0x0014, 0x2030);
+Tag const PropertyLabel(0x0014, 0x2032);
+Tag const CoordinateSystemNumberOfAxes(0x0014, 0x2202);
+Tag const CoordinateSystemAxesSequence(0x0014, 0x2204);
+Tag const CoordinateSystemAxisDescription(0x0014, 0x2206);
+Tag const CoordinateSystemDataSetMapping(0x0014, 0x2208);
+Tag const CoordinateSystemAxisNumber(0x0014, 0x220a);
+Tag const CoordinateSystemAxisType(0x0014, 0x220c);
+Tag const CoordinateSystemAxisUnits(0x0014, 0x220e);
+Tag const CoordinateSystemAxisValues(0x0014, 0x2210);
+Tag const CoordinateSystemTransformSequence(0x0014, 0x2220);
+Tag const TransformDescription(0x0014, 0x2222);
+Tag const TransformNumberOfAxes(0x0014, 0x2224);
+Tag const TransformOrderOfAxes(0x0014, 0x2226);
+Tag const TransformedAxisUnits(0x0014, 0x2228);
+Tag const CoordinateSystemTransformRotationAndScaleMatrix(0x0014, 0x222a);
+Tag const CoordinateSystemTransformTranslationMatrix(0x0014, 0x222c);
+Tag const InternalDetectorFrameTime(0x0014, 0x3011);
+Tag const NumberOfFramesIntegrated(0x0014, 0x3012);
+Tag const DetectorTemperatureSequence(0x0014, 0x3020);
+Tag const SensorName(0x0014, 0x3022);
+Tag const HorizontalOffsetOfSensor(0x0014, 0x3024);
+Tag const VerticalOffsetOfSensor(0x0014, 0x3026);
+Tag const SensorTemperature(0x0014, 0x3028);
+Tag const DarkCurrentSequence(0x0014, 0x3040);
+Tag const DarkCurrentCounts(0x0014, 0x3050);
+Tag const GainCorrectionReferenceSequence(0x0014, 0x3060);
+Tag const AirCounts(0x0014, 0x3070);
+Tag const KVUsedInGainCalibration(0x0014, 0x3071);
+Tag const MAUsedInGainCalibration(0x0014, 0x3072);
+Tag const NumberOfFramesUsedForIntegration(0x0014, 0x3073);
+Tag const FilterMaterialUsedInGainCalibration(0x0014, 0x3074);
+Tag const FilterThicknessUsedInGainCalibration(0x0014, 0x3075);
+Tag const DateOfGainCalibration(0x0014, 0x3076);
+Tag const TimeOfGainCalibration(0x0014, 0x3077);
+Tag const BadPixelImage(0x0014, 0x3080);
+Tag const CalibrationNotes(0x0014, 0x3099);
+Tag const PulserEquipmentSequence(0x0014, 0x4002);
+Tag const PulserType(0x0014, 0x4004);
+Tag const PulserNotes(0x0014, 0x4006);
+Tag const ReceiverEquipmentSequence(0x0014, 0x4008);
+Tag const AmplifierType(0x0014, 0x400a);
+Tag const ReceiverNotes(0x0014, 0x400c);
+Tag const PreAmplifierEquipmentSequence(0x0014, 0x400e);
+Tag const PreAmplifierNotes(0x0014, 0x400f);
+Tag const TransmitTransducerSequence(0x0014, 0x4010);
+Tag const ReceiveTransducerSequence(0x0014, 0x4011);
+Tag const NumberOfElements(0x0014, 0x4012);
+Tag const ElementShape(0x0014, 0x4013);
+Tag const ElementDimensionA(0x0014, 0x4014);
+Tag const ElementDimensionB(0x0014, 0x4015);
+Tag const ElementPitchA(0x0014, 0x4016);
+Tag const MeasuredBeamDimensionA(0x0014, 0x4017);
+Tag const MeasuredBeamDimensionB(0x0014, 0x4018);
+Tag const LocationOfMeasuredBeamDiameter(0x0014, 0x4019);
+Tag const NominalFrequency(0x0014, 0x401a);
+Tag const MeasuredCenterFrequency(0x0014, 0x401b);
+Tag const MeasuredBandwidth(0x0014, 0x401c);
+Tag const ElementPitchB(0x0014, 0x401d);
+Tag const PulserSettingsSequence(0x0014, 0x4020);
+Tag const PulseWidth(0x0014, 0x4022);
+Tag const ExcitationFrequency(0x0014, 0x4024);
+Tag const ModulationType(0x0014, 0x4026);
+Tag const Damping(0x0014, 0x4028);
+Tag const ReceiverSettingsSequence(0x0014, 0x4030);
+Tag const AcquiredSoundpathLength(0x0014, 0x4031);
+Tag const AcquisitionCompressionType(0x0014, 0x4032);
+Tag const AcquisitionSampleSize(0x0014, 0x4033);
+Tag const RectifierSmoothing(0x0014, 0x4034);
+Tag const DACSequence(0x0014, 0x4035);
+Tag const DACType(0x0014, 0x4036);
+Tag const DACGainPoints(0x0014, 0x4038);
+Tag const DACTimePoints(0x0014, 0x403a);
+Tag const DACAmplitude(0x0014, 0x403c);
+Tag const PreAmplifierSettingsSequence(0x0014, 0x4040);
+Tag const TransmitTransducerSettingsSequence(0x0014, 0x4050);
+Tag const ReceiveTransducerSettingsSequence(0x0014, 0x4051);
+Tag const IncidentAngle(0x0014, 0x4052);
+Tag const CouplingTechnique(0x0014, 0x4054);
+Tag const CouplingMedium(0x0014, 0x4056);
+Tag const CouplingVelocity(0x0014, 0x4057);
+Tag const ProbeCenterLocationX(0x0014, 0x4058);
+Tag const ProbeCenterLocationZ(0x0014, 0x4059);
+Tag const SoundPathLength(0x0014, 0x405a);
+Tag const DelayLawIdentifier(0x0014, 0x405c);
+Tag const GateSettingsSequence(0x0014, 0x4060);
+Tag const GateThreshold(0x0014, 0x4062);
+Tag const VelocityOfSound(0x0014, 0x4064);
+Tag const CalibrationSettingsSequence(0x0014, 0x4070);
+Tag const CalibrationProcedure(0x0014, 0x4072);
+Tag const ProcedureVersion(0x0014, 0x4074);
+Tag const ProcedureCreationDate(0x0014, 0x4076);
+Tag const ProcedureExpirationDate(0x0014, 0x4078);
+Tag const ProcedureLastModifiedDate(0x0014, 0x407a);
+Tag const CalibrationTime(0x0014, 0x407c);
+Tag const CalibrationDate(0x0014, 0x407e);
+Tag const ProbeDriveEquipmentSequence(0x0014, 0x4080);
+Tag const DriveType(0x0014, 0x4081);
+Tag const ProbeDriveNotes(0x0014, 0x4082);
+Tag const DriveProbeSequence(0x0014, 0x4083);
+Tag const ProbeInductance(0x0014, 0x4084);
+Tag const ProbeResistance(0x0014, 0x4085);
+Tag const ReceiveProbeSequence(0x0014, 0x4086);
+Tag const ProbeDriveSettingsSequence(0x0014, 0x4087);
+Tag const BridgeResistors(0x0014, 0x4088);
+Tag const ProbeOrientationAngle(0x0014, 0x4089);
+Tag const UserSelectedGainY(0x0014, 0x408b);
+Tag const UserSelectedPhase(0x0014, 0x408c);
+Tag const UserSelectedOffsetX(0x0014, 0x408d);
+Tag const UserSelectedOffsetY(0x0014, 0x408e);
+Tag const ChannelSettingsSequence(0x0014, 0x4091);
+Tag const ChannelThreshold(0x0014, 0x4092);
+Tag const ScannerSettingsSequence(0x0014, 0x409a);
+Tag const ScanProcedure(0x0014, 0x409b);
+Tag const TranslationRateX(0x0014, 0x409c);
+Tag const TranslationRateY(0x0014, 0x409d);
+Tag const ChannelOverlap(0x0014, 0x409f);
+Tag const ImageQualityIndicatorType(0x0014, 0x40a0);
+Tag const ImageQualityIndicatorMaterial(0x0014, 0x40a1);
+Tag const ImageQualityIndicatorSize(0x0014, 0x40a2);
+Tag const LINACEnergy(0x0014, 0x5002);
+Tag const LINACOutput(0x0014, 0x5004);
+Tag const ActiveAperture(0x0014, 0x5100);
+Tag const TotalAperture(0x0014, 0x5101);
+Tag const ApertureElevation(0x0014, 0x5102);
+Tag const MainLobeAngle(0x0014, 0x5103);
+Tag const MainRoofAngle(0x0014, 0x5104);
+Tag const ConnectorType(0x0014, 0x5105);
+Tag const WedgeModelNumber(0x0014, 0x5106);
+Tag const WedgeAngleFloat(0x0014, 0x5107);
+Tag const WedgeRoofAngle(0x0014, 0x5108);
+Tag const WedgeElement1Position(0x0014, 0x5109);
+Tag const WedgeMaterialVelocity(0x0014, 0x510a);
+Tag const WedgeMaterial(0x0014, 0x510b);
+Tag const WedgeOffsetZ(0x0014, 0x510c);
+Tag const WedgeOriginOffsetX(0x0014, 0x510d);
+Tag const WedgeTimeDelay(0x0014, 0x510e);
+Tag const WedgeName(0x0014, 0x510f);
+Tag const WedgeManufacturerName(0x0014, 0x5110);
+Tag const WedgeDescription(0x0014, 0x5111);
+Tag const NominalBeamAngle(0x0014, 0x5112);
+Tag const WedgeOffsetX(0x0014, 0x5113);
+Tag const WedgeOffsetY(0x0014, 0x5114);
+Tag const WedgeTotalLength(0x0014, 0x5115);
+Tag const WedgeInContactLength(0x0014, 0x5116);
+Tag const WedgeFrontGap(0x0014, 0x5117);
+Tag const WedgeTotalHeight(0x0014, 0x5118);
+Tag const WedgeFrontHeight(0x0014, 0x5119);
+Tag const WedgeRearHeight(0x0014, 0x511a);
+Tag const WedgeTotalWidth(0x0014, 0x511b);
+Tag const WedgeInContactWidth(0x0014, 0x511c);
+Tag const WedgeChamferHeight(0x0014, 0x511d);
+Tag const WedgeCurve(0x0014, 0x511e);
+Tag const RadiusAlongWedge(0x0014, 0x511f);
+Tag const ContrastBolusAgent(0x0018, 0x0010);
+Tag const ContrastBolusAgentSequence(0x0018, 0x0012);
+Tag const ContrastBolusT1Relaxivity(0x0018, 0x0013);
+Tag const ContrastBolusAdministrationRouteSequence(0x0018, 0x0014);
+Tag const BodyPartExamined(0x0018, 0x0015);
+Tag const ScanningSequence(0x0018, 0x0020);
+Tag const SequenceVariant(0x0018, 0x0021);
+Tag const ScanOptions(0x0018, 0x0022);
+Tag const MRAcquisitionType(0x0018, 0x0023);
+Tag const SequenceName(0x0018, 0x0024);
+Tag const AngioFlag(0x0018, 0x0025);
+Tag const InterventionDrugInformationSequence(0x0018, 0x0026);
+Tag const InterventionDrugStopTime(0x0018, 0x0027);
+Tag const InterventionDrugDose(0x0018, 0x0028);
+Tag const InterventionDrugCodeSequence(0x0018, 0x0029);
+Tag const AdditionalDrugSequence(0x0018, 0x002a);
+Tag const Radionuclide(0x0018, 0x0030);
+Tag const Radiopharmaceutical(0x0018, 0x0031);
+Tag const EnergyWindowCenterline(0x0018, 0x0032);
+Tag const EnergyWindowTotalWidth(0x0018, 0x0033);
+Tag const InterventionDrugName(0x0018, 0x0034);
+Tag const InterventionDrugStartTime(0x0018, 0x0035);
+Tag const InterventionSequence(0x0018, 0x0036);
+Tag const TherapyType(0x0018, 0x0037);
+Tag const InterventionStatus(0x0018, 0x0038);
+Tag const TherapyDescription(0x0018, 0x0039);
+Tag const InterventionDescription(0x0018, 0x003a);
+Tag const CineRate(0x0018, 0x0040);
+Tag const InitialCineRunState(0x0018, 0x0042);
+Tag const SliceThickness(0x0018, 0x0050);
+Tag const KVP(0x0018, 0x0060);
+Tag const CountsAccumulated(0x0018, 0x0070);
+Tag const AcquisitionTerminationCondition(0x0018, 0x0071);
+Tag const EffectiveDuration(0x0018, 0x0072);
+Tag const AcquisitionStartCondition(0x0018, 0x0073);
+Tag const AcquisitionStartConditionData(0x0018, 0x0074);
+Tag const AcquisitionTerminationConditionData(0x0018, 0x0075);
+Tag const RepetitionTime(0x0018, 0x0080);
+Tag const EchoTime(0x0018, 0x0081);
+Tag const InversionTime(0x0018, 0x0082);
+Tag const NumberOfAverages(0x0018, 0x0083);
+Tag const ImagingFrequency(0x0018, 0x0084);
+Tag const ImagedNucleus(0x0018, 0x0085);
+Tag const EchoNumbers(0x0018, 0x0086);
+Tag const MagneticFieldStrength(0x0018, 0x0087);
+Tag const SpacingBetweenSlices(0x0018, 0x0088);
+Tag const NumberOfPhaseEncodingSteps(0x0018, 0x0089);
+Tag const DataCollectionDiameter(0x0018, 0x0090);
+Tag const EchoTrainLength(0x0018, 0x0091);
+Tag const PercentSampling(0x0018, 0x0093);
+Tag const PercentPhaseFieldOfView(0x0018, 0x0094);
+Tag const PixelBandwidth(0x0018, 0x0095);
+Tag const DeviceSerialNumber(0x0018, 0x1000);
+Tag const DeviceUID(0x0018, 0x1002);
+Tag const DeviceID(0x0018, 0x1003);
+Tag const PlateID(0x0018, 0x1004);
+Tag const GeneratorID(0x0018, 0x1005);
+Tag const GridID(0x0018, 0x1006);
+Tag const CassetteID(0x0018, 0x1007);
+Tag const GantryID(0x0018, 0x1008);
+Tag const SecondaryCaptureDeviceID(0x0018, 0x1010);
+Tag const HardcopyCreationDeviceID(0x0018, 0x1011);
+Tag const DateOfSecondaryCapture(0x0018, 0x1012);
+Tag const TimeOfSecondaryCapture(0x0018, 0x1014);
+Tag const SecondaryCaptureDeviceManufacturer(0x0018, 0x1016);
+Tag const HardcopyDeviceManufacturer(0x0018, 0x1017);
+Tag const SecondaryCaptureDeviceManufacturerModelName(0x0018, 0x1018);
+Tag const SecondaryCaptureDeviceSoftwareVersions(0x0018, 0x1019);
+Tag const HardcopyDeviceSoftwareVersion(0x0018, 0x101a);
+Tag const HardcopyDeviceManufacturerModelName(0x0018, 0x101b);
+Tag const SoftwareVersions(0x0018, 0x1020);
+Tag const VideoImageFormatAcquired(0x0018, 0x1022);
+Tag const DigitalImageFormatAcquired(0x0018, 0x1023);
+Tag const ProtocolName(0x0018, 0x1030);
+Tag const ContrastBolusRoute(0x0018, 0x1040);
+Tag const ContrastBolusVolume(0x0018, 0x1041);
+Tag const ContrastBolusStartTime(0x0018, 0x1042);
+Tag const ContrastBolusStopTime(0x0018, 0x1043);
+Tag const ContrastBolusTotalDose(0x0018, 0x1044);
+Tag const SyringeCounts(0x0018, 0x1045);
+Tag const ContrastFlowRate(0x0018, 0x1046);
+Tag const ContrastFlowDuration(0x0018, 0x1047);
+Tag const ContrastBolusIngredient(0x0018, 0x1048);
+Tag const ContrastBolusIngredientConcentration(0x0018, 0x1049);
+Tag const SpatialResolution(0x0018, 0x1050);
+Tag const TriggerTime(0x0018, 0x1060);
+Tag const TriggerSourceOrType(0x0018, 0x1061);
+Tag const NominalInterval(0x0018, 0x1062);
+Tag const FrameTime(0x0018, 0x1063);
+Tag const CardiacFramingType(0x0018, 0x1064);
+Tag const FrameTimeVector(0x0018, 0x1065);
+Tag const FrameDelay(0x0018, 0x1066);
+Tag const ImageTriggerDelay(0x0018, 0x1067);
+Tag const MultiplexGroupTimeOffset(0x0018, 0x1068);
+Tag const TriggerTimeOffset(0x0018, 0x1069);
+Tag const SynchronizationTrigger(0x0018, 0x106a);
+Tag const SynchronizationChannel(0x0018, 0x106c);
+Tag const TriggerSamplePosition(0x0018, 0x106e);
+Tag const RadiopharmaceuticalRoute(0x0018, 0x1070);
+Tag const RadiopharmaceuticalVolume(0x0018, 0x1071);
+Tag const RadiopharmaceuticalStartTime(0x0018, 0x1072);
+Tag const RadiopharmaceuticalStopTime(0x0018, 0x1073);
+Tag const RadionuclideTotalDose(0x0018, 0x1074);
+Tag const RadionuclideHalfLife(0x0018, 0x1075);
+Tag const RadionuclidePositronFraction(0x0018, 0x1076);
+Tag const RadiopharmaceuticalSpecificActivity(0x0018, 0x1077);
+Tag const RadiopharmaceuticalStartDateTime(0x0018, 0x1078);
+Tag const RadiopharmaceuticalStopDateTime(0x0018, 0x1079);
+Tag const BeatRejectionFlag(0x0018, 0x1080);
+Tag const LowRRValue(0x0018, 0x1081);
+Tag const HighRRValue(0x0018, 0x1082);
+Tag const IntervalsAcquired(0x0018, 0x1083);
+Tag const IntervalsRejected(0x0018, 0x1084);
+Tag const PVCRejection(0x0018, 0x1085);
+Tag const SkipBeats(0x0018, 0x1086);
+Tag const HeartRate(0x0018, 0x1088);
+Tag const CardiacNumberOfImages(0x0018, 0x1090);
+Tag const TriggerWindow(0x0018, 0x1094);
+Tag const ReconstructionDiameter(0x0018, 0x1100);
+Tag const DistanceSourceToDetector(0x0018, 0x1110);
+Tag const DistanceSourceToPatient(0x0018, 0x1111);
+Tag const EstimatedRadiographicMagnificationFactor(0x0018, 0x1114);
+Tag const GantryDetectorTilt(0x0018, 0x1120);
+Tag const GantryDetectorSlew(0x0018, 0x1121);
+Tag const TableHeight(0x0018, 0x1130);
+Tag const TableTraverse(0x0018, 0x1131);
+Tag const TableMotion(0x0018, 0x1134);
+Tag const TableVerticalIncrement(0x0018, 0x1135);
+Tag const TableLateralIncrement(0x0018, 0x1136);
+Tag const TableLongitudinalIncrement(0x0018, 0x1137);
+Tag const TableAngle(0x0018, 0x1138);
+Tag const TableType(0x0018, 0x113a);
+Tag const RotationDirection(0x0018, 0x1140);
+Tag const AngularPosition(0x0018, 0x1141);
+Tag const RadialPosition(0x0018, 0x1142);
+Tag const ScanArc(0x0018, 0x1143);
+Tag const AngularStep(0x0018, 0x1144);
+Tag const CenterOfRotationOffset(0x0018, 0x1145);
+Tag const RotationOffset(0x0018, 0x1146);
+Tag const FieldOfViewShape(0x0018, 0x1147);
+Tag const FieldOfViewDimensions(0x0018, 0x1149);
+Tag const ExposureTime(0x0018, 0x1150);
+Tag const XRayTubeCurrent(0x0018, 0x1151);
+Tag const Exposure(0x0018, 0x1152);
+Tag const ExposureInuAs(0x0018, 0x1153);
+Tag const AveragePulseWidth(0x0018, 0x1154);
+Tag const RadiationSetting(0x0018, 0x1155);
+Tag const RectificationType(0x0018, 0x1156);
+Tag const RadiationMode(0x0018, 0x115a);
+Tag const ImageAndFluoroscopyAreaDoseProduct(0x0018, 0x115e);
+Tag const FilterType(0x0018, 0x1160);
+Tag const TypeOfFilters(0x0018, 0x1161);
+Tag const IntensifierSize(0x0018, 0x1162);
+Tag const ImagerPixelSpacing(0x0018, 0x1164);
+Tag const Grid(0x0018, 0x1166);
+Tag const GeneratorPower(0x0018, 0x1170);
+Tag const CollimatorGridName(0x0018, 0x1180);
+Tag const CollimatorType(0x0018, 0x1181);
+Tag const FocalDistance(0x0018, 0x1182);
+Tag const XFocusCenter(0x0018, 0x1183);
+Tag const YFocusCenter(0x0018, 0x1184);
+Tag const FocalSpots(0x0018, 0x1190);
+Tag const AnodeTargetMaterial(0x0018, 0x1191);
+Tag const BodyPartThickness(0x0018, 0x11a0);
+Tag const CompressionForce(0x0018, 0x11a2);
+Tag const PaddleDescription(0x0018, 0x11a4);
+Tag const DateOfLastCalibration(0x0018, 0x1200);
+Tag const TimeOfLastCalibration(0x0018, 0x1201);
+Tag const DateTimeOfLastCalibration(0x0018, 0x1202);
+Tag const ConvolutionKernel(0x0018, 0x1210);
+Tag const UpperLowerPixelValues(0x0018, 0x1240);
+Tag const ActualFrameDuration(0x0018, 0x1242);
+Tag const CountRate(0x0018, 0x1243);
+Tag const PreferredPlaybackSequencing(0x0018, 0x1244);
+Tag const ReceiveCoilName(0x0018, 0x1250);
+Tag const TransmitCoilName(0x0018, 0x1251);
+Tag const PlateType(0x0018, 0x1260);
+Tag const PhosphorType(0x0018, 0x1261);
+Tag const ScanVelocity(0x0018, 0x1300);
+Tag const WholeBodyTechnique(0x0018, 0x1301);
+Tag const ScanLength(0x0018, 0x1302);
+Tag const AcquisitionMatrix(0x0018, 0x1310);
+Tag const InPlanePhaseEncodingDirection(0x0018, 0x1312);
+Tag const FlipAngle(0x0018, 0x1314);
+Tag const VariableFlipAngleFlag(0x0018, 0x1315);
+Tag const SAR(0x0018, 0x1316);
+Tag const dBdt(0x0018, 0x1318);
+Tag const AcquisitionDeviceProcessingDescription(0x0018, 0x1400);
+Tag const AcquisitionDeviceProcessingCode(0x0018, 0x1401);
+Tag const CassetteOrientation(0x0018, 0x1402);
+Tag const CassetteSize(0x0018, 0x1403);
+Tag const ExposuresOnPlate(0x0018, 0x1404);
+Tag const RelativeXRayExposure(0x0018, 0x1405);
+Tag const ExposureIndex(0x0018, 0x1411);
+Tag const TargetExposureIndex(0x0018, 0x1412);
+Tag const DeviationIndex(0x0018, 0x1413);
+Tag const ColumnAngulation(0x0018, 0x1450);
+Tag const TomoLayerHeight(0x0018, 0x1460);
+Tag const TomoAngle(0x0018, 0x1470);
+Tag const TomoTime(0x0018, 0x1480);
+Tag const TomoType(0x0018, 0x1490);
+Tag const TomoClass(0x0018, 0x1491);
+Tag const NumberOfTomosynthesisSourceImages(0x0018, 0x1495);
+Tag const PositionerMotion(0x0018, 0x1500);
+Tag const PositionerType(0x0018, 0x1508);
+Tag const PositionerPrimaryAngle(0x0018, 0x1510);
+Tag const PositionerSecondaryAngle(0x0018, 0x1511);
+Tag const PositionerPrimaryAngleIncrement(0x0018, 0x1520);
+Tag const PositionerSecondaryAngleIncrement(0x0018, 0x1521);
+Tag const DetectorPrimaryAngle(0x0018, 0x1530);
+Tag const DetectorSecondaryAngle(0x0018, 0x1531);
+Tag const ShutterShape(0x0018, 0x1600);
+Tag const ShutterLeftVerticalEdge(0x0018, 0x1602);
+Tag const ShutterRightVerticalEdge(0x0018, 0x1604);
+Tag const ShutterUpperHorizontalEdge(0x0018, 0x1606);
+Tag const ShutterLowerHorizontalEdge(0x0018, 0x1608);
+Tag const CenterOfCircularShutter(0x0018, 0x1610);
+Tag const RadiusOfCircularShutter(0x0018, 0x1612);
+Tag const VerticesOfThePolygonalShutter(0x0018, 0x1620);
+Tag const ShutterPresentationValue(0x0018, 0x1622);
+Tag const ShutterOverlayGroup(0x0018, 0x1623);
+Tag const ShutterPresentationColorCIELabValue(0x0018, 0x1624);
+Tag const CollimatorShape(0x0018, 0x1700);
+Tag const CollimatorLeftVerticalEdge(0x0018, 0x1702);
+Tag const CollimatorRightVerticalEdge(0x0018, 0x1704);
+Tag const CollimatorUpperHorizontalEdge(0x0018, 0x1706);
+Tag const CollimatorLowerHorizontalEdge(0x0018, 0x1708);
+Tag const CenterOfCircularCollimator(0x0018, 0x1710);
+Tag const RadiusOfCircularCollimator(0x0018, 0x1712);
+Tag const VerticesOfThePolygonalCollimator(0x0018, 0x1720);
+Tag const AcquisitionTimeSynchronized(0x0018, 0x1800);
+Tag const TimeSource(0x0018, 0x1801);
+Tag const TimeDistributionProtocol(0x0018, 0x1802);
+Tag const NTPSourceAddress(0x0018, 0x1803);
+Tag const PageNumberVector(0x0018, 0x2001);
+Tag const FrameLabelVector(0x0018, 0x2002);
+Tag const FramePrimaryAngleVector(0x0018, 0x2003);
+Tag const FrameSecondaryAngleVector(0x0018, 0x2004);
+Tag const SliceLocationVector(0x0018, 0x2005);
+Tag const DisplayWindowLabelVector(0x0018, 0x2006);
+Tag const NominalScannedPixelSpacing(0x0018, 0x2010);
+Tag const DigitizingDeviceTransportDirection(0x0018, 0x2020);
+Tag const RotationOfScannedFilm(0x0018, 0x2030);
+Tag const BiopsyTargetSequence(0x0018, 0x2041);
+Tag const TargetUID(0x0018, 0x2042);
+Tag const LocalizingCursorPosition(0x0018, 0x2043);
+Tag const CalculatedTargetPosition(0x0018, 0x2044);
+Tag const TargetLabel(0x0018, 0x2045);
+Tag const DisplayedZValue(0x0018, 0x2046);
+Tag const IVUSAcquisition(0x0018, 0x3100);
+Tag const IVUSPullbackRate(0x0018, 0x3101);
+Tag const IVUSGatedRate(0x0018, 0x3102);
+Tag const IVUSPullbackStartFrameNumber(0x0018, 0x3103);
+Tag const IVUSPullbackStopFrameNumber(0x0018, 0x3104);
+Tag const LesionNumber(0x0018, 0x3105);
+Tag const AcquisitionComments(0x0018, 0x4000);
+Tag const OutputPower(0x0018, 0x5000);
+Tag const TransducerData(0x0018, 0x5010);
+Tag const FocusDepth(0x0018, 0x5012);
+Tag const ProcessingFunction(0x0018, 0x5020);
+Tag const PostprocessingFunction(0x0018, 0x5021);
+Tag const MechanicalIndex(0x0018, 0x5022);
+Tag const BoneThermalIndex(0x0018, 0x5024);
+Tag const CranialThermalIndex(0x0018, 0x5026);
+Tag const SoftTissueThermalIndex(0x0018, 0x5027);
+Tag const SoftTissueFocusThermalIndex(0x0018, 0x5028);
+Tag const SoftTissueSurfaceThermalIndex(0x0018, 0x5029);
+Tag const DynamicRange(0x0018, 0x5030);
+Tag const TotalGain(0x0018, 0x5040);
+Tag const DepthOfScanField(0x0018, 0x5050);
+Tag const PatientPosition(0x0018, 0x5100);
+Tag const ViewPosition(0x0018, 0x5101);
+Tag const ProjectionEponymousNameCodeSequence(0x0018, 0x5104);
+Tag const ImageTransformationMatrix(0x0018, 0x5210);
+Tag const ImageTranslationVector(0x0018, 0x5212);
+Tag const Sensitivity(0x0018, 0x6000);
+Tag const SequenceOfUltrasoundRegions(0x0018, 0x6011);
+Tag const RegionSpatialFormat(0x0018, 0x6012);
+Tag const RegionDataType(0x0018, 0x6014);
+Tag const RegionFlags(0x0018, 0x6016);
+Tag const RegionLocationMinX0(0x0018, 0x6018);
+Tag const RegionLocationMinY0(0x0018, 0x601a);
+Tag const RegionLocationMaxX1(0x0018, 0x601c);
+Tag const RegionLocationMaxY1(0x0018, 0x601e);
+Tag const ReferencePixelX0(0x0018, 0x6020);
+Tag const ReferencePixelY0(0x0018, 0x6022);
+Tag const PhysicalUnitsXDirection(0x0018, 0x6024);
+Tag const PhysicalUnitsYDirection(0x0018, 0x6026);
+Tag const ReferencePixelPhysicalValueX(0x0018, 0x6028);
+Tag const ReferencePixelPhysicalValueY(0x0018, 0x602a);
+Tag const PhysicalDeltaX(0x0018, 0x602c);
+Tag const PhysicalDeltaY(0x0018, 0x602e);
+Tag const TransducerFrequency(0x0018, 0x6030);
+Tag const TransducerType(0x0018, 0x6031);
+Tag const PulseRepetitionFrequency(0x0018, 0x6032);
+Tag const DopplerCorrectionAngle(0x0018, 0x6034);
+Tag const SteeringAngle(0x0018, 0x6036);
+Tag const DopplerSampleVolumeXPositionRetired(0x0018, 0x6038);
+Tag const DopplerSampleVolumeXPosition(0x0018, 0x6039);
+Tag const DopplerSampleVolumeYPositionRetired(0x0018, 0x603a);
+Tag const DopplerSampleVolumeYPosition(0x0018, 0x603b);
+Tag const TMLinePositionX0Retired(0x0018, 0x603c);
+Tag const TMLinePositionX0(0x0018, 0x603d);
+Tag const TMLinePositionY0Retired(0x0018, 0x603e);
+Tag const TMLinePositionY0(0x0018, 0x603f);
+Tag const TMLinePositionX1Retired(0x0018, 0x6040);
+Tag const TMLinePositionX1(0x0018, 0x6041);
+Tag const TMLinePositionY1Retired(0x0018, 0x6042);
+Tag const TMLinePositionY1(0x0018, 0x6043);
+Tag const PixelComponentOrganization(0x0018, 0x6044);
+Tag const PixelComponentMask(0x0018, 0x6046);
+Tag const PixelComponentRangeStart(0x0018, 0x6048);
+Tag const PixelComponentRangeStop(0x0018, 0x604a);
+Tag const PixelComponentPhysicalUnits(0x0018, 0x604c);
+Tag const PixelComponentDataType(0x0018, 0x604e);
+Tag const NumberOfTableBreakPoints(0x0018, 0x6050);
+Tag const TableOfXBreakPoints(0x0018, 0x6052);
+Tag const TableOfYBreakPoints(0x0018, 0x6054);
+Tag const NumberOfTableEntries(0x0018, 0x6056);
+Tag const TableOfPixelValues(0x0018, 0x6058);
+Tag const TableOfParameterValues(0x0018, 0x605a);
+Tag const RWaveTimeVector(0x0018, 0x6060);
+Tag const DetectorConditionsNominalFlag(0x0018, 0x7000);
+Tag const DetectorTemperature(0x0018, 0x7001);
+Tag const DetectorType(0x0018, 0x7004);
+Tag const DetectorConfiguration(0x0018, 0x7005);
+Tag const DetectorDescription(0x0018, 0x7006);
+Tag const DetectorMode(0x0018, 0x7008);
+Tag const DetectorID(0x0018, 0x700a);
+Tag const DateOfLastDetectorCalibration(0x0018, 0x700c);
+Tag const TimeOfLastDetectorCalibration(0x0018, 0x700e);
+Tag const ExposuresOnDetectorSinceLastCalibration(0x0018, 0x7010);
+Tag const ExposuresOnDetectorSinceManufactured(0x0018, 0x7011);
+Tag const DetectorTimeSinceLastExposure(0x0018, 0x7012);
+Tag const DetectorActiveTime(0x0018, 0x7014);
+Tag const DetectorActivationOffsetFromExposure(0x0018, 0x7016);
+Tag const DetectorBinning(0x0018, 0x701a);
+Tag const DetectorElementPhysicalSize(0x0018, 0x7020);
+Tag const DetectorElementSpacing(0x0018, 0x7022);
+Tag const DetectorActiveShape(0x0018, 0x7024);
+Tag const DetectorActiveDimensions(0x0018, 0x7026);
+Tag const DetectorActiveOrigin(0x0018, 0x7028);
+Tag const DetectorManufacturerName(0x0018, 0x702a);
+Tag const DetectorManufacturerModelName(0x0018, 0x702b);
+Tag const FieldOfViewOrigin(0x0018, 0x7030);
+Tag const FieldOfViewRotation(0x0018, 0x7032);
+Tag const FieldOfViewHorizontalFlip(0x0018, 0x7034);
+Tag const PixelDataAreaOriginRelativeToFOV(0x0018, 0x7036);
+Tag const PixelDataAreaRotationAngleRelativeToFOV(0x0018, 0x7038);
+Tag const GridAbsorbingMaterial(0x0018, 0x7040);
+Tag const GridSpacingMaterial(0x0018, 0x7041);
+Tag const GridThickness(0x0018, 0x7042);
+Tag const GridPitch(0x0018, 0x7044);
+Tag const GridAspectRatio(0x0018, 0x7046);
+Tag const GridPeriod(0x0018, 0x7048);
+Tag const GridFocalDistance(0x0018, 0x704c);
+Tag const FilterMaterial(0x0018, 0x7050);
+Tag const FilterThicknessMinimum(0x0018, 0x7052);
+Tag const FilterThicknessMaximum(0x0018, 0x7054);
+Tag const FilterBeamPathLengthMinimum(0x0018, 0x7056);
+Tag const FilterBeamPathLengthMaximum(0x0018, 0x7058);
+Tag const ExposureControlMode(0x0018, 0x7060);
+Tag const ExposureControlModeDescription(0x0018, 0x7062);
+Tag const ExposureStatus(0x0018, 0x7064);
+Tag const PhototimerSetting(0x0018, 0x7065);
+Tag const ExposureTimeInuS(0x0018, 0x8150);
+Tag const XRayTubeCurrentInuA(0x0018, 0x8151);
+Tag const ContentQualification(0x0018, 0x9004);
+Tag const PulseSequenceName(0x0018, 0x9005);
+Tag const MRImagingModifierSequence(0x0018, 0x9006);
+Tag const EchoPulseSequence(0x0018, 0x9008);
+Tag const InversionRecovery(0x0018, 0x9009);
+Tag const FlowCompensation(0x0018, 0x9010);
+Tag const MultipleSpinEcho(0x0018, 0x9011);
+Tag const MultiPlanarExcitation(0x0018, 0x9012);
+Tag const PhaseContrast(0x0018, 0x9014);
+Tag const TimeOfFlightContrast(0x0018, 0x9015);
+Tag const Spoiling(0x0018, 0x9016);
+Tag const SteadyStatePulseSequence(0x0018, 0x9017);
+Tag const EchoPlanarPulseSequence(0x0018, 0x9018);
+Tag const TagAngleFirstAxis(0x0018, 0x9019);
+Tag const MagnetizationTransfer(0x0018, 0x9020);
+Tag const T2Preparation(0x0018, 0x9021);
+Tag const BloodSignalNulling(0x0018, 0x9022);
+Tag const SaturationRecovery(0x0018, 0x9024);
+Tag const SpectrallySelectedSuppression(0x0018, 0x9025);
+Tag const SpectrallySelectedExcitation(0x0018, 0x9026);
+Tag const SpatialPresaturation(0x0018, 0x9027);
+Tag const Tagging(0x0018, 0x9028);
+Tag const OversamplingPhase(0x0018, 0x9029);
+Tag const TagSpacingFirstDimension(0x0018, 0x9030);
+Tag const GeometryOfKSpaceTraversal(0x0018, 0x9032);
+Tag const SegmentedKSpaceTraversal(0x0018, 0x9033);
+Tag const RectilinearPhaseEncodeReordering(0x0018, 0x9034);
+Tag const TagThickness(0x0018, 0x9035);
+Tag const PartialFourierDirection(0x0018, 0x9036);
+Tag const CardiacSynchronizationTechnique(0x0018, 0x9037);
+Tag const ReceiveCoilManufacturerName(0x0018, 0x9041);
+Tag const MRReceiveCoilSequence(0x0018, 0x9042);
+Tag const ReceiveCoilType(0x0018, 0x9043);
+Tag const QuadratureReceiveCoil(0x0018, 0x9044);
+Tag const MultiCoilDefinitionSequence(0x0018, 0x9045);
+Tag const MultiCoilConfiguration(0x0018, 0x9046);
+Tag const MultiCoilElementName(0x0018, 0x9047);
+Tag const MultiCoilElementUsed(0x0018, 0x9048);
+Tag const MRTransmitCoilSequence(0x0018, 0x9049);
+Tag const TransmitCoilManufacturerName(0x0018, 0x9050);
+Tag const TransmitCoilType(0x0018, 0x9051);
+Tag const SpectralWidth(0x0018, 0x9052);
+Tag const ChemicalShiftReference(0x0018, 0x9053);
+Tag const VolumeLocalizationTechnique(0x0018, 0x9054);
+Tag const MRAcquisitionFrequencyEncodingSteps(0x0018, 0x9058);
+Tag const Decoupling(0x0018, 0x9059);
+Tag const DecoupledNucleus(0x0018, 0x9060);
+Tag const DecouplingFrequency(0x0018, 0x9061);
+Tag const DecouplingMethod(0x0018, 0x9062);
+Tag const DecouplingChemicalShiftReference(0x0018, 0x9063);
+Tag const KSpaceFiltering(0x0018, 0x9064);
+Tag const TimeDomainFiltering(0x0018, 0x9065);
+Tag const NumberOfZeroFills(0x0018, 0x9066);
+Tag const BaselineCorrection(0x0018, 0x9067);
+Tag const ParallelReductionFactorInPlane(0x0018, 0x9069);
+Tag const CardiacRRIntervalSpecified(0x0018, 0x9070);
+Tag const AcquisitionDuration(0x0018, 0x9073);
+Tag const FrameAcquisitionDateTime(0x0018, 0x9074);
+Tag const DiffusionDirectionality(0x0018, 0x9075);
+Tag const DiffusionGradientDirectionSequence(0x0018, 0x9076);
+Tag const ParallelAcquisition(0x0018, 0x9077);
+Tag const ParallelAcquisitionTechnique(0x0018, 0x9078);
+Tag const InversionTimes(0x0018, 0x9079);
+Tag const MetaboliteMapDescription(0x0018, 0x9080);
+Tag const PartialFourier(0x0018, 0x9081);
+Tag const EffectiveEchoTime(0x0018, 0x9082);
+Tag const MetaboliteMapCodeSequence(0x0018, 0x9083);
+Tag const ChemicalShiftSequence(0x0018, 0x9084);
+Tag const CardiacSignalSource(0x0018, 0x9085);
+Tag const DiffusionBValue(0x0018, 0x9087);
+Tag const DiffusionGradientOrientation(0x0018, 0x9089);
+Tag const VelocityEncodingDirection(0x0018, 0x9090);
+Tag const VelocityEncodingMinimumValue(0x0018, 0x9091);
+Tag const VelocityEncodingAcquisitionSequence(0x0018, 0x9092);
+Tag const NumberOfKSpaceTrajectories(0x0018, 0x9093);
+Tag const CoverageOfKSpace(0x0018, 0x9094);
+Tag const SpectroscopyAcquisitionPhaseRows(0x0018, 0x9095);
+Tag const ParallelReductionFactorInPlaneRetired(0x0018, 0x9096);
+Tag const TransmitterFrequency(0x0018, 0x9098);
+Tag const ResonantNucleus(0x0018, 0x9100);
+Tag const FrequencyCorrection(0x0018, 0x9101);
+Tag const MRSpectroscopyFOVGeometrySequence(0x0018, 0x9103);
+Tag const SlabThickness(0x0018, 0x9104);
+Tag const SlabOrientation(0x0018, 0x9105);
+Tag const MidSlabPosition(0x0018, 0x9106);
+Tag const MRSpatialSaturationSequence(0x0018, 0x9107);
+Tag const MRTimingAndRelatedParametersSequence(0x0018, 0x9112);
+Tag const MREchoSequence(0x0018, 0x9114);
+Tag const MRModifierSequence(0x0018, 0x9115);
+Tag const MRDiffusionSequence(0x0018, 0x9117);
+Tag const CardiacSynchronizationSequence(0x0018, 0x9118);
+Tag const MRAveragesSequence(0x0018, 0x9119);
+Tag const MRFOVGeometrySequence(0x0018, 0x9125);
+Tag const VolumeLocalizationSequence(0x0018, 0x9126);
+Tag const SpectroscopyAcquisitionDataColumns(0x0018, 0x9127);
+Tag const DiffusionAnisotropyType(0x0018, 0x9147);
+Tag const FrameReferenceDateTime(0x0018, 0x9151);
+Tag const MRMetaboliteMapSequence(0x0018, 0x9152);
+Tag const ParallelReductionFactorOutOfPlane(0x0018, 0x9155);
+Tag const SpectroscopyAcquisitionOutOfPlanePhaseSteps(0x0018, 0x9159);
+Tag const BulkMotionStatus(0x0018, 0x9166);
+Tag const ParallelReductionFactorSecondInPlane(0x0018, 0x9168);
+Tag const CardiacBeatRejectionTechnique(0x0018, 0x9169);
+Tag const RespiratoryMotionCompensationTechnique(0x0018, 0x9170);
+Tag const RespiratorySignalSource(0x0018, 0x9171);
+Tag const BulkMotionCompensationTechnique(0x0018, 0x9172);
+Tag const BulkMotionSignalSource(0x0018, 0x9173);
+Tag const ApplicableSafetyStandardAgency(0x0018, 0x9174);
+Tag const ApplicableSafetyStandardDescription(0x0018, 0x9175);
+Tag const OperatingModeSequence(0x0018, 0x9176);
+Tag const OperatingModeType(0x0018, 0x9177);
+Tag const OperatingMode(0x0018, 0x9178);
+Tag const SpecificAbsorptionRateDefinition(0x0018, 0x9179);
+Tag const GradientOutputType(0x0018, 0x9180);
+Tag const SpecificAbsorptionRateValue(0x0018, 0x9181);
+Tag const GradientOutput(0x0018, 0x9182);
+Tag const FlowCompensationDirection(0x0018, 0x9183);
+Tag const TaggingDelay(0x0018, 0x9184);
+Tag const RespiratoryMotionCompensationTechniqueDescription(0x0018, 0x9185);
+Tag const RespiratorySignalSourceID(0x0018, 0x9186);
+Tag const ChemicalShiftMinimumIntegrationLimitInHz(0x0018, 0x9195);
+Tag const ChemicalShiftMaximumIntegrationLimitInHz(0x0018, 0x9196);
+Tag const MRVelocityEncodingSequence(0x0018, 0x9197);
+Tag const FirstOrderPhaseCorrection(0x0018, 0x9198);
+Tag const WaterReferencedPhaseCorrection(0x0018, 0x9199);
+Tag const MRSpectroscopyAcquisitionType(0x0018, 0x9200);
+Tag const RespiratoryCyclePosition(0x0018, 0x9214);
+Tag const VelocityEncodingMaximumValue(0x0018, 0x9217);
+Tag const TagSpacingSecondDimension(0x0018, 0x9218);
+Tag const TagAngleSecondAxis(0x0018, 0x9219);
+Tag const FrameAcquisitionDuration(0x0018, 0x9220);
+Tag const MRImageFrameTypeSequence(0x0018, 0x9226);
+Tag const MRSpectroscopyFrameTypeSequence(0x0018, 0x9227);
+Tag const MRAcquisitionPhaseEncodingStepsInPlane(0x0018, 0x9231);
+Tag const MRAcquisitionPhaseEncodingStepsOutOfPlane(0x0018, 0x9232);
+Tag const SpectroscopyAcquisitionPhaseColumns(0x0018, 0x9234);
+Tag const CardiacCyclePosition(0x0018, 0x9236);
+Tag const SpecificAbsorptionRateSequence(0x0018, 0x9239);
+Tag const RFEchoTrainLength(0x0018, 0x9240);
+Tag const GradientEchoTrainLength(0x0018, 0x9241);
+Tag const ArterialSpinLabelingContrast(0x0018, 0x9250);
+Tag const MRArterialSpinLabelingSequence(0x0018, 0x9251);
+Tag const ASLTechniqueDescription(0x0018, 0x9252);
+Tag const ASLSlabNumber(0x0018, 0x9253);
+Tag const ASLSlabThickness(0x0018, 0x9254);
+Tag const ASLSlabOrientation(0x0018, 0x9255);
+Tag const ASLMidSlabPosition(0x0018, 0x9256);
+Tag const ASLContext(0x0018, 0x9257);
+Tag const ASLPulseTrainDuration(0x0018, 0x9258);
+Tag const ASLCrusherFlag(0x0018, 0x9259);
+Tag const ASLCrusherFlowLimit(0x0018, 0x925a);
+Tag const ASLCrusherDescription(0x0018, 0x925b);
+Tag const ASLBolusCutoffFlag(0x0018, 0x925c);
+Tag const ASLBolusCutoffTimingSequence(0x0018, 0x925d);
+Tag const ASLBolusCutoffTechnique(0x0018, 0x925e);
+Tag const ASLBolusCutoffDelayTime(0x0018, 0x925f);
+Tag const ASLSlabSequence(0x0018, 0x9260);
+Tag const ChemicalShiftMinimumIntegrationLimitInppm(0x0018, 0x9295);
+Tag const ChemicalShiftMaximumIntegrationLimitInppm(0x0018, 0x9296);
+Tag const WaterReferenceAcquisition(0x0018, 0x9297);
+Tag const EchoPeakPosition(0x0018, 0x9298);
+Tag const CTAcquisitionTypeSequence(0x0018, 0x9301);
+Tag const AcquisitionType(0x0018, 0x9302);
+Tag const TubeAngle(0x0018, 0x9303);
+Tag const CTAcquisitionDetailsSequence(0x0018, 0x9304);
+Tag const RevolutionTime(0x0018, 0x9305);
+Tag const SingleCollimationWidth(0x0018, 0x9306);
+Tag const TotalCollimationWidth(0x0018, 0x9307);
+Tag const CTTableDynamicsSequence(0x0018, 0x9308);
+Tag const TableSpeed(0x0018, 0x9309);
+Tag const TableFeedPerRotation(0x0018, 0x9310);
+Tag const SpiralPitchFactor(0x0018, 0x9311);
+Tag const CTGeometrySequence(0x0018, 0x9312);
+Tag const DataCollectionCenterPatient(0x0018, 0x9313);
+Tag const CTReconstructionSequence(0x0018, 0x9314);
+Tag const ReconstructionAlgorithm(0x0018, 0x9315);
+Tag const ConvolutionKernelGroup(0x0018, 0x9316);
+Tag const ReconstructionFieldOfView(0x0018, 0x9317);
+Tag const ReconstructionTargetCenterPatient(0x0018, 0x9318);
+Tag const ReconstructionAngle(0x0018, 0x9319);
+Tag const ImageFilter(0x0018, 0x9320);
+Tag const CTExposureSequence(0x0018, 0x9321);
+Tag const ReconstructionPixelSpacing(0x0018, 0x9322);
+Tag const ExposureModulationType(0x0018, 0x9323);
+Tag const EstimatedDoseSaving(0x0018, 0x9324);
+Tag const CTXRayDetailsSequence(0x0018, 0x9325);
+Tag const CTPositionSequence(0x0018, 0x9326);
+Tag const TablePosition(0x0018, 0x9327);
+Tag const ExposureTimeInms(0x0018, 0x9328);
+Tag const CTImageFrameTypeSequence(0x0018, 0x9329);
+Tag const XRayTubeCurrentInmA(0x0018, 0x9330);
+Tag const ExposureInmAs(0x0018, 0x9332);
+Tag const ConstantVolumeFlag(0x0018, 0x9333);
+Tag const FluoroscopyFlag(0x0018, 0x9334);
+Tag const DistanceSourceToDataCollectionCenter(0x0018, 0x9335);
+Tag const ContrastBolusAgentNumber(0x0018, 0x9337);
+Tag const ContrastBolusIngredientCodeSequence(0x0018, 0x9338);
+Tag const ContrastAdministrationProfileSequence(0x0018, 0x9340);
+Tag const ContrastBolusUsageSequence(0x0018, 0x9341);
+Tag const ContrastBolusAgentAdministered(0x0018, 0x9342);
+Tag const ContrastBolusAgentDetected(0x0018, 0x9343);
+Tag const ContrastBolusAgentPhase(0x0018, 0x9344);
+Tag const CTDIvol(0x0018, 0x9345);
+Tag const CTDIPhantomTypeCodeSequence(0x0018, 0x9346);
+Tag const CalciumScoringMassFactorPatient(0x0018, 0x9351);
+Tag const CalciumScoringMassFactorDevice(0x0018, 0x9352);
+Tag const EnergyWeightingFactor(0x0018, 0x9353);
+Tag const CTAdditionalXRaySourceSequence(0x0018, 0x9360);
+Tag const ProjectionPixelCalibrationSequence(0x0018, 0x9401);
+Tag const DistanceSourceToIsocenter(0x0018, 0x9402);
+Tag const DistanceObjectToTableTop(0x0018, 0x9403);
+Tag const ObjectPixelSpacingInCenterOfBeam(0x0018, 0x9404);
+Tag const PositionerPositionSequence(0x0018, 0x9405);
+Tag const TablePositionSequence(0x0018, 0x9406);
+Tag const CollimatorShapeSequence(0x0018, 0x9407);
+Tag const PlanesInAcquisition(0x0018, 0x9410);
+Tag const XAXRFFrameCharacteristicsSequence(0x0018, 0x9412);
+Tag const FrameAcquisitionSequence(0x0018, 0x9417);
+Tag const XRayReceptorType(0x0018, 0x9420);
+Tag const AcquisitionProtocolName(0x0018, 0x9423);
+Tag const AcquisitionProtocolDescription(0x0018, 0x9424);
+Tag const ContrastBolusIngredientOpaque(0x0018, 0x9425);
+Tag const DistanceReceptorPlaneToDetectorHousing(0x0018, 0x9426);
+Tag const IntensifierActiveShape(0x0018, 0x9427);
+Tag const IntensifierActiveDimensions(0x0018, 0x9428);
+Tag const PhysicalDetectorSize(0x0018, 0x9429);
+Tag const PositionOfIsocenterProjection(0x0018, 0x9430);
+Tag const FieldOfViewSequence(0x0018, 0x9432);
+Tag const FieldOfViewDescription(0x0018, 0x9433);
+Tag const ExposureControlSensingRegionsSequence(0x0018, 0x9434);
+Tag const ExposureControlSensingRegionShape(0x0018, 0x9435);
+Tag const ExposureControlSensingRegionLeftVerticalEdge(0x0018, 0x9436);
+Tag const ExposureControlSensingRegionRightVerticalEdge(0x0018, 0x9437);
+Tag const ExposureControlSensingRegionUpperHorizontalEdge(0x0018, 0x9438);
+Tag const ExposureControlSensingRegionLowerHorizontalEdge(0x0018, 0x9439);
+Tag const CenterOfCircularExposureControlSensingRegion(0x0018, 0x9440);
+Tag const RadiusOfCircularExposureControlSensingRegion(0x0018, 0x9441);
+Tag const VerticesOfThePolygonalExposureControlSensingRegion(0x0018, 0x9442);
+Tag const ColumnAngulationPatient(0x0018, 0x9447);
+Tag const BeamAngle(0x0018, 0x9449);
+Tag const FrameDetectorParametersSequence(0x0018, 0x9451);
+Tag const CalculatedAnatomyThickness(0x0018, 0x9452);
+Tag const CalibrationSequence(0x0018, 0x9455);
+Tag const ObjectThicknessSequence(0x0018, 0x9456);
+Tag const PlaneIdentification(0x0018, 0x9457);
+Tag const FieldOfViewDimensionsInFloat(0x0018, 0x9461);
+Tag const IsocenterReferenceSystemSequence(0x0018, 0x9462);
+Tag const PositionerIsocenterPrimaryAngle(0x0018, 0x9463);
+Tag const PositionerIsocenterSecondaryAngle(0x0018, 0x9464);
+Tag const PositionerIsocenterDetectorRotationAngle(0x0018, 0x9465);
+Tag const TableXPositionToIsocenter(0x0018, 0x9466);
+Tag const TableYPositionToIsocenter(0x0018, 0x9467);
+Tag const TableZPositionToIsocenter(0x0018, 0x9468);
+Tag const TableHorizontalRotationAngle(0x0018, 0x9469);
+Tag const TableHeadTiltAngle(0x0018, 0x9470);
+Tag const TableCradleTiltAngle(0x0018, 0x9471);
+Tag const FrameDisplayShutterSequence(0x0018, 0x9472);
+Tag const AcquiredImageAreaDoseProduct(0x0018, 0x9473);
+Tag const CArmPositionerTabletopRelationship(0x0018, 0x9474);
+Tag const XRayGeometrySequence(0x0018, 0x9476);
+Tag const IrradiationEventIdentificationSequence(0x0018, 0x9477);
+Tag const XRay3DFrameTypeSequence(0x0018, 0x9504);
+Tag const ContributingSourcesSequence(0x0018, 0x9506);
+Tag const XRay3DAcquisitionSequence(0x0018, 0x9507);
+Tag const PrimaryPositionerScanArc(0x0018, 0x9508);
+Tag const SecondaryPositionerScanArc(0x0018, 0x9509);
+Tag const PrimaryPositionerScanStartAngle(0x0018, 0x9510);
+Tag const SecondaryPositionerScanStartAngle(0x0018, 0x9511);
+Tag const PrimaryPositionerIncrement(0x0018, 0x9514);
+Tag const SecondaryPositionerIncrement(0x0018, 0x9515);
+Tag const StartAcquisitionDateTime(0x0018, 0x9516);
+Tag const EndAcquisitionDateTime(0x0018, 0x9517);
+Tag const PrimaryPositionerIncrementSign(0x0018, 0x9518);
+Tag const SecondaryPositionerIncrementSign(0x0018, 0x9519);
+Tag const ApplicationName(0x0018, 0x9524);
+Tag const ApplicationVersion(0x0018, 0x9525);
+Tag const ApplicationManufacturer(0x0018, 0x9526);
+Tag const AlgorithmType(0x0018, 0x9527);
+Tag const AlgorithmDescription(0x0018, 0x9528);
+Tag const XRay3DReconstructionSequence(0x0018, 0x9530);
+Tag const ReconstructionDescription(0x0018, 0x9531);
+Tag const PerProjectionAcquisitionSequence(0x0018, 0x9538);
+Tag const DetectorPositionSequence(0x0018, 0x9541);
+Tag const XRayAcquisitionDoseSequence(0x0018, 0x9542);
+Tag const XRaySourceIsocenterPrimaryAngle(0x0018, 0x9543);
+Tag const XRaySourceIsocenterSecondaryAngle(0x0018, 0x9544);
+Tag const BreastSupportIsocenterPrimaryAngle(0x0018, 0x9545);
+Tag const BreastSupportIsocenterSecondaryAngle(0x0018, 0x9546);
+Tag const BreastSupportXPositionToIsocenter(0x0018, 0x9547);
+Tag const BreastSupportYPositionToIsocenter(0x0018, 0x9548);
+Tag const BreastSupportZPositionToIsocenter(0x0018, 0x9549);
+Tag const DetectorIsocenterPrimaryAngle(0x0018, 0x9550);
+Tag const DetectorIsocenterSecondaryAngle(0x0018, 0x9551);
+Tag const DetectorXPositionToIsocenter(0x0018, 0x9552);
+Tag const DetectorYPositionToIsocenter(0x0018, 0x9553);
+Tag const DetectorZPositionToIsocenter(0x0018, 0x9554);
+Tag const XRayGridSequence(0x0018, 0x9555);
+Tag const XRayFilterSequence(0x0018, 0x9556);
+Tag const DetectorActiveAreaTLHCPosition(0x0018, 0x9557);
+Tag const DetectorActiveAreaOrientation(0x0018, 0x9558);
+Tag const PositionerPrimaryAngleDirection(0x0018, 0x9559);
+Tag const DiffusionBMatrixSequence(0x0018, 0x9601);
+Tag const DiffusionBValueXX(0x0018, 0x9602);
+Tag const DiffusionBValueXY(0x0018, 0x9603);
+Tag const DiffusionBValueXZ(0x0018, 0x9604);
+Tag const DiffusionBValueYY(0x0018, 0x9605);
+Tag const DiffusionBValueYZ(0x0018, 0x9606);
+Tag const DiffusionBValueZZ(0x0018, 0x9607);
+Tag const DecayCorrectionDateTime(0x0018, 0x9701);
+Tag const StartDensityThreshold(0x0018, 0x9715);
+Tag const StartRelativeDensityDifferenceThreshold(0x0018, 0x9716);
+Tag const StartCardiacTriggerCountThreshold(0x0018, 0x9717);
+Tag const StartRespiratoryTriggerCountThreshold(0x0018, 0x9718);
+Tag const TerminationCountsThreshold(0x0018, 0x9719);
+Tag const TerminationDensityThreshold(0x0018, 0x9720);
+Tag const TerminationRelativeDensityThreshold(0x0018, 0x9721);
+Tag const TerminationTimeThreshold(0x0018, 0x9722);
+Tag const TerminationCardiacTriggerCountThreshold(0x0018, 0x9723);
+Tag const TerminationRespiratoryTriggerCountThreshold(0x0018, 0x9724);
+Tag const DetectorGeometry(0x0018, 0x9725);
+Tag const TransverseDetectorSeparation(0x0018, 0x9726);
+Tag const AxialDetectorDimension(0x0018, 0x9727);
+Tag const RadiopharmaceuticalAgentNumber(0x0018, 0x9729);
+Tag const PETFrameAcquisitionSequence(0x0018, 0x9732);
+Tag const PETDetectorMotionDetailsSequence(0x0018, 0x9733);
+Tag const PETTableDynamicsSequence(0x0018, 0x9734);
+Tag const PETPositionSequence(0x0018, 0x9735);
+Tag const PETFrameCorrectionFactorsSequence(0x0018, 0x9736);
+Tag const RadiopharmaceuticalUsageSequence(0x0018, 0x9737);
+Tag const AttenuationCorrectionSource(0x0018, 0x9738);
+Tag const NumberOfIterations(0x0018, 0x9739);
+Tag const NumberOfSubsets(0x0018, 0x9740);
+Tag const PETReconstructionSequence(0x0018, 0x9749);
+Tag const PETFrameTypeSequence(0x0018, 0x9751);
+Tag const TimeOfFlightInformationUsed(0x0018, 0x9755);
+Tag const ReconstructionType(0x0018, 0x9756);
+Tag const DecayCorrected(0x0018, 0x9758);
+Tag const AttenuationCorrected(0x0018, 0x9759);
+Tag const ScatterCorrected(0x0018, 0x9760);
+Tag const DeadTimeCorrected(0x0018, 0x9761);
+Tag const GantryMotionCorrected(0x0018, 0x9762);
+Tag const PatientMotionCorrected(0x0018, 0x9763);
+Tag const CountLossNormalizationCorrected(0x0018, 0x9764);
+Tag const RandomsCorrected(0x0018, 0x9765);
+Tag const NonUniformRadialSamplingCorrected(0x0018, 0x9766);
+Tag const SensitivityCalibrated(0x0018, 0x9767);
+Tag const DetectorNormalizationCorrection(0x0018, 0x9768);
+Tag const IterativeReconstructionMethod(0x0018, 0x9769);
+Tag const AttenuationCorrectionTemporalRelationship(0x0018, 0x9770);
+Tag const PatientPhysiologicalStateSequence(0x0018, 0x9771);
+Tag const PatientPhysiologicalStateCodeSequence(0x0018, 0x9772);
+Tag const DepthsOfFocus(0x0018, 0x9801);
+Tag const ExcludedIntervalsSequence(0x0018, 0x9803);
+Tag const ExclusionStartDateTime(0x0018, 0x9804);
+Tag const ExclusionDuration(0x0018, 0x9805);
+Tag const USImageDescriptionSequence(0x0018, 0x9806);
+Tag const ImageDataTypeSequence(0x0018, 0x9807);
+Tag const DataType(0x0018, 0x9808);
+Tag const TransducerScanPatternCodeSequence(0x0018, 0x9809);
+Tag const AliasedDataType(0x0018, 0x980b);
+Tag const PositionMeasuringDeviceUsed(0x0018, 0x980c);
+Tag const TransducerGeometryCodeSequence(0x0018, 0x980d);
+Tag const TransducerBeamSteeringCodeSequence(0x0018, 0x980e);
+Tag const TransducerApplicationCodeSequence(0x0018, 0x980f);
+Tag const ZeroVelocityPixelValue(0x0018, 0x9810);
+Tag const ContributingEquipmentSequence(0x0018, 0xa001);
+Tag const ContributionDateTime(0x0018, 0xa002);
+Tag const ContributionDescription(0x0018, 0xa003);
+Tag const StudyInstanceUID(0x0020, 0x000d);
+Tag const SeriesInstanceUID(0x0020, 0x000e);
+Tag const StudyID(0x0020, 0x0010);
+Tag const SeriesNumber(0x0020, 0x0011);
+Tag const AcquisitionNumber(0x0020, 0x0012);
+Tag const InstanceNumber(0x0020, 0x0013);
+Tag const IsotopeNumber(0x0020, 0x0014);
+Tag const PhaseNumber(0x0020, 0x0015);
+Tag const IntervalNumber(0x0020, 0x0016);
+Tag const TimeSlotNumber(0x0020, 0x0017);
+Tag const AngleNumber(0x0020, 0x0018);
+Tag const ItemNumber(0x0020, 0x0019);
+Tag const PatientOrientation(0x0020, 0x0020);
+Tag const OverlayNumber(0x0020, 0x0022);
+Tag const CurveNumber(0x0020, 0x0024);
+Tag const LUTNumber(0x0020, 0x0026);
+Tag const ImagePosition(0x0020, 0x0030);
+Tag const ImagePositionPatient(0x0020, 0x0032);
+Tag const ImageOrientation(0x0020, 0x0035);
+Tag const ImageOrientationPatient(0x0020, 0x0037);
+Tag const Location(0x0020, 0x0050);
+Tag const FrameOfReferenceUID(0x0020, 0x0052);
+Tag const Laterality(0x0020, 0x0060);
+Tag const ImageLaterality(0x0020, 0x0062);
+Tag const ImageGeometryType(0x0020, 0x0070);
+Tag const MaskingImage(0x0020, 0x0080);
+Tag const ReportNumber(0x0020, 0x00aa);
+Tag const TemporalPositionIdentifier(0x0020, 0x0100);
+Tag const NumberOfTemporalPositions(0x0020, 0x0105);
+Tag const TemporalResolution(0x0020, 0x0110);
+Tag const SynchronizationFrameOfReferenceUID(0x0020, 0x0200);
+Tag const SOPInstanceUIDOfConcatenationSource(0x0020, 0x0242);
+Tag const SeriesInStudy(0x0020, 0x1000);
+Tag const AcquisitionsInSeries(0x0020, 0x1001);
+Tag const ImagesInAcquisition(0x0020, 0x1002);
+Tag const ImagesInSeries(0x0020, 0x1003);
+Tag const AcquisitionsInStudy(0x0020, 0x1004);
+Tag const ImagesInStudy(0x0020, 0x1005);
+Tag const Reference(0x0020, 0x1020);
+Tag const PositionReferenceIndicator(0x0020, 0x1040);
+Tag const SliceLocation(0x0020, 0x1041);
+Tag const OtherStudyNumbers(0x0020, 0x1070);
+Tag const NumberOfPatientRelatedStudies(0x0020, 0x1200);
+Tag const NumberOfPatientRelatedSeries(0x0020, 0x1202);
+Tag const NumberOfPatientRelatedInstances(0x0020, 0x1204);
+Tag const NumberOfStudyRelatedSeries(0x0020, 0x1206);
+Tag const NumberOfStudyRelatedInstances(0x0020, 0x1208);
+Tag const NumberOfSeriesRelatedInstances(0x0020, 0x1209);
+Tag const ModifyingDeviceID(0x0020, 0x3401);
+Tag const ModifiedImageID(0x0020, 0x3402);
+Tag const ModifiedImageDate(0x0020, 0x3403);
+Tag const ModifyingDeviceManufacturer(0x0020, 0x3404);
+Tag const ModifiedImageTime(0x0020, 0x3405);
+Tag const ModifiedImageDescription(0x0020, 0x3406);
+Tag const ImageComments(0x0020, 0x4000);
+Tag const OriginalImageIdentification(0x0020, 0x5000);
+Tag const OriginalImageIdentificationNomenclature(0x0020, 0x5002);
+Tag const StackID(0x0020, 0x9056);
+Tag const InStackPositionNumber(0x0020, 0x9057);
+Tag const FrameAnatomySequence(0x0020, 0x9071);
+Tag const FrameLaterality(0x0020, 0x9072);
+Tag const FrameContentSequence(0x0020, 0x9111);
+Tag const PlanePositionSequence(0x0020, 0x9113);
+Tag const PlaneOrientationSequence(0x0020, 0x9116);
+Tag const TemporalPositionIndex(0x0020, 0x9128);
+Tag const NominalCardiacTriggerDelayTime(0x0020, 0x9153);
+Tag const NominalCardiacTriggerTimePriorToRPeak(0x0020, 0x9154);
+Tag const ActualCardiacTriggerTimePriorToRPeak(0x0020, 0x9155);
+Tag const FrameAcquisitionNumber(0x0020, 0x9156);
+Tag const DimensionIndexValues(0x0020, 0x9157);
+Tag const FrameComments(0x0020, 0x9158);
+Tag const ConcatenationUID(0x0020, 0x9161);
+Tag const InConcatenationNumber(0x0020, 0x9162);
+Tag const InConcatenationTotalNumber(0x0020, 0x9163);
+Tag const DimensionOrganizationUID(0x0020, 0x9164);
+Tag const DimensionIndexPointer(0x0020, 0x9165);
+Tag const FunctionalGroupPointer(0x0020, 0x9167);
+Tag const UnassignedSharedConvertedAttributesSequence(0x0020, 0x9170);
+Tag const UnassignedPerFrameConvertedAttributesSequence(0x0020, 0x9171);
+Tag const ConversionSourceAttributesSequence(0x0020, 0x9172);
+Tag const DimensionIndexPrivateCreator(0x0020, 0x9213);
+Tag const DimensionOrganizationSequence(0x0020, 0x9221);
+Tag const DimensionIndexSequence(0x0020, 0x9222);
+Tag const ConcatenationFrameOffsetNumber(0x0020, 0x9228);
+Tag const FunctionalGroupPrivateCreator(0x0020, 0x9238);
+Tag const NominalPercentageOfCardiacPhase(0x0020, 0x9241);
+Tag const NominalPercentageOfRespiratoryPhase(0x0020, 0x9245);
+Tag const StartingRespiratoryAmplitude(0x0020, 0x9246);
+Tag const StartingRespiratoryPhase(0x0020, 0x9247);
+Tag const EndingRespiratoryAmplitude(0x0020, 0x9248);
+Tag const EndingRespiratoryPhase(0x0020, 0x9249);
+Tag const RespiratoryTriggerType(0x0020, 0x9250);
+Tag const RRIntervalTimeNominal(0x0020, 0x9251);
+Tag const ActualCardiacTriggerDelayTime(0x0020, 0x9252);
+Tag const RespiratorySynchronizationSequence(0x0020, 0x9253);
+Tag const RespiratoryIntervalTime(0x0020, 0x9254);
+Tag const NominalRespiratoryTriggerDelayTime(0x0020, 0x9255);
+Tag const RespiratoryTriggerDelayThreshold(0x0020, 0x9256);
+Tag const ActualRespiratoryTriggerDelayTime(0x0020, 0x9257);
+Tag const ImagePositionVolume(0x0020, 0x9301);
+Tag const ImageOrientationVolume(0x0020, 0x9302);
+Tag const UltrasoundAcquisitionGeometry(0x0020, 0x9307);
+Tag const ApexPosition(0x0020, 0x9308);
+Tag const VolumeToTransducerMappingMatrix(0x0020, 0x9309);
+Tag const VolumeToTableMappingMatrix(0x0020, 0x930a);
+Tag const VolumeToTransducerRelationship(0x0020, 0x930b);
+Tag const PatientFrameOfReferenceSource(0x0020, 0x930c);
+Tag const TemporalPositionTimeOffset(0x0020, 0x930d);
+Tag const PlanePositionVolumeSequence(0x0020, 0x930e);
+Tag const PlaneOrientationVolumeSequence(0x0020, 0x930f);
+Tag const TemporalPositionSequence(0x0020, 0x9310);
+Tag const DimensionOrganizationType(0x0020, 0x9311);
+Tag const VolumeFrameOfReferenceUID(0x0020, 0x9312);
+Tag const TableFrameOfReferenceUID(0x0020, 0x9313);
+Tag const DimensionDescriptionLabel(0x0020, 0x9421);
+Tag const PatientOrientationInFrameSequence(0x0020, 0x9450);
+Tag const FrameLabel(0x0020, 0x9453);
+Tag const AcquisitionIndex(0x0020, 0x9518);
+Tag const ContributingSOPInstancesReferenceSequence(0x0020, 0x9529);
+Tag const ReconstructionIndex(0x0020, 0x9536);
+Tag const LightPathFilterPassThroughWavelength(0x0022, 0x0001);
+Tag const LightPathFilterPassBand(0x0022, 0x0002);
+Tag const ImagePathFilterPassThroughWavelength(0x0022, 0x0003);
+Tag const ImagePathFilterPassBand(0x0022, 0x0004);
+Tag const PatientEyeMovementCommanded(0x0022, 0x0005);
+Tag const PatientEyeMovementCommandCodeSequence(0x0022, 0x0006);
+Tag const SphericalLensPower(0x0022, 0x0007);
+Tag const CylinderLensPower(0x0022, 0x0008);
+Tag const CylinderAxis(0x0022, 0x0009);
+Tag const EmmetropicMagnification(0x0022, 0x000a);
+Tag const IntraOcularPressure(0x0022, 0x000b);
+Tag const HorizontalFieldOfView(0x0022, 0x000c);
+Tag const PupilDilated(0x0022, 0x000d);
+Tag const DegreeOfDilation(0x0022, 0x000e);
+Tag const StereoBaselineAngle(0x0022, 0x0010);
+Tag const StereoBaselineDisplacement(0x0022, 0x0011);
+Tag const StereoHorizontalPixelOffset(0x0022, 0x0012);
+Tag const StereoVerticalPixelOffset(0x0022, 0x0013);
+Tag const StereoRotation(0x0022, 0x0014);
+Tag const AcquisitionDeviceTypeCodeSequence(0x0022, 0x0015);
+Tag const IlluminationTypeCodeSequence(0x0022, 0x0016);
+Tag const LightPathFilterTypeStackCodeSequence(0x0022, 0x0017);
+Tag const ImagePathFilterTypeStackCodeSequence(0x0022, 0x0018);
+Tag const LensesCodeSequence(0x0022, 0x0019);
+Tag const ChannelDescriptionCodeSequence(0x0022, 0x001a);
+Tag const RefractiveStateSequence(0x0022, 0x001b);
+Tag const MydriaticAgentCodeSequence(0x0022, 0x001c);
+Tag const RelativeImagePositionCodeSequence(0x0022, 0x001d);
+Tag const CameraAngleOfView(0x0022, 0x001e);
+Tag const StereoPairsSequence(0x0022, 0x0020);
+Tag const LeftImageSequence(0x0022, 0x0021);
+Tag const RightImageSequence(0x0022, 0x0022);
+Tag const StereoPairsPresent(0x0022, 0x0028);
+Tag const AxialLengthOfTheEye(0x0022, 0x0030);
+Tag const OphthalmicFrameLocationSequence(0x0022, 0x0031);
+Tag const ReferenceCoordinates(0x0022, 0x0032);
+Tag const DepthSpatialResolution(0x0022, 0x0035);
+Tag const MaximumDepthDistortion(0x0022, 0x0036);
+Tag const AlongScanSpatialResolution(0x0022, 0x0037);
+Tag const MaximumAlongScanDistortion(0x0022, 0x0038);
+Tag const OphthalmicImageOrientation(0x0022, 0x0039);
+Tag const DepthOfTransverseImage(0x0022, 0x0041);
+Tag const MydriaticAgentConcentrationUnitsSequence(0x0022, 0x0042);
+Tag const AcrossScanSpatialResolution(0x0022, 0x0048);
+Tag const MaximumAcrossScanDistortion(0x0022, 0x0049);
+Tag const MydriaticAgentConcentration(0x0022, 0x004e);
+Tag const IlluminationWaveLength(0x0022, 0x0055);
+Tag const IlluminationPower(0x0022, 0x0056);
+Tag const IlluminationBandwidth(0x0022, 0x0057);
+Tag const MydriaticAgentSequence(0x0022, 0x0058);
+Tag const OphthalmicAxialMeasurementsRightEyeSequence(0x0022, 0x1007);
+Tag const OphthalmicAxialMeasurementsLeftEyeSequence(0x0022, 0x1008);
+Tag const OphthalmicAxialMeasurementsDeviceType(0x0022, 0x1009);
+Tag const OphthalmicAxialLengthMeasurementsType(0x0022, 0x1010);
+Tag const OphthalmicAxialLengthSequence(0x0022, 0x1012);
+Tag const OphthalmicAxialLength(0x0022, 0x1019);
+Tag const LensStatusCodeSequence(0x0022, 0x1024);
+Tag const VitreousStatusCodeSequence(0x0022, 0x1025);
+Tag const IOLFormulaCodeSequence(0x0022, 0x1028);
+Tag const IOLFormulaDetail(0x0022, 0x1029);
+Tag const KeratometerIndex(0x0022, 0x1033);
+Tag const SourceOfOphthalmicAxialLengthCodeSequence(0x0022, 0x1035);
+Tag const TargetRefraction(0x0022, 0x1037);
+Tag const RefractiveProcedureOccurred(0x0022, 0x1039);
+Tag const RefractiveSurgeryTypeCodeSequence(0x0022, 0x1040);
+Tag const OphthalmicUltrasoundMethodCodeSequence(0x0022, 0x1044);
+Tag const OphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1050);
+Tag const IOLPower(0x0022, 0x1053);
+Tag const PredictedRefractiveError(0x0022, 0x1054);
+Tag const OphthalmicAxialLengthVelocity(0x0022, 0x1059);
+Tag const LensStatusDescription(0x0022, 0x1065);
+Tag const VitreousStatusDescription(0x0022, 0x1066);
+Tag const IOLPowerSequence(0x0022, 0x1090);
+Tag const LensConstantSequence(0x0022, 0x1092);
+Tag const IOLManufacturer(0x0022, 0x1093);
+Tag const LensConstantDescription(0x0022, 0x1094);
+Tag const ImplantName(0x0022, 0x1095);
+Tag const KeratometryMeasurementTypeCodeSequence(0x0022, 0x1096);
+Tag const ImplantPartNumber(0x0022, 0x1097);
+Tag const ReferencedOphthalmicAxialMeasurementsSequence(0x0022, 0x1100);
+Tag const OphthalmicAxialLengthMeasurementsSegmentNameCodeSequence(0x0022, 0x1101);
+Tag const RefractiveErrorBeforeRefractiveSurgeryCodeSequence(0x0022, 0x1103);
+Tag const IOLPowerForExactEmmetropia(0x0022, 0x1121);
+Tag const IOLPowerForExactTargetRefraction(0x0022, 0x1122);
+Tag const AnteriorChamberDepthDefinitionCodeSequence(0x0022, 0x1125);
+Tag const LensThicknessSequence(0x0022, 0x1127);
+Tag const AnteriorChamberDepthSequence(0x0022, 0x1128);
+Tag const LensThickness(0x0022, 0x1130);
+Tag const AnteriorChamberDepth(0x0022, 0x1131);
+Tag const SourceOfLensThicknessDataCodeSequence(0x0022, 0x1132);
+Tag const SourceOfAnteriorChamberDepthDataCodeSequence(0x0022, 0x1133);
+Tag const SourceOfRefractiveMeasurementsSequence(0x0022, 0x1134);
+Tag const SourceOfRefractiveMeasurementsCodeSequence(0x0022, 0x1135);
+Tag const OphthalmicAxialLengthMeasurementModified(0x0022, 0x1140);
+Tag const OphthalmicAxialLengthDataSourceCodeSequence(0x0022, 0x1150);
+Tag const OphthalmicAxialLengthAcquisitionMethodCodeSequence(0x0022, 0x1153);
+Tag const SignalToNoiseRatio(0x0022, 0x1155);
+Tag const OphthalmicAxialLengthDataSourceDescription(0x0022, 0x1159);
+Tag const OphthalmicAxialLengthMeasurementsTotalLengthSequence(0x0022, 0x1210);
+Tag const OphthalmicAxialLengthMeasurementsSegmentalLengthSequence(0x0022, 0x1211);
+Tag const OphthalmicAxialLengthMeasurementsLengthSummationSequence(0x0022, 0x1212);
+Tag const UltrasoundOphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1220);
+Tag const OpticalOphthalmicAxialLengthMeasurementsSequence(0x0022, 0x1225);
+Tag const UltrasoundSelectedOphthalmicAxialLengthSequence(0x0022, 0x1230);
+Tag const OphthalmicAxialLengthSelectionMethodCodeSequence(0x0022, 0x1250);
+Tag const OpticalSelectedOphthalmicAxialLengthSequence(0x0022, 0x1255);
+Tag const SelectedSegmentalOphthalmicAxialLengthSequence(0x0022, 0x1257);
+Tag const SelectedTotalOphthalmicAxialLengthSequence(0x0022, 0x1260);
+Tag const OphthalmicAxialLengthQualityMetricSequence(0x0022, 0x1262);
+Tag const OphthalmicAxialLengthQualityMetricTypeCodeSequence(0x0022, 0x1265);
+Tag const OphthalmicAxialLengthQualityMetricTypeDescription(0x0022, 0x1273);
+Tag const IntraocularLensCalculationsRightEyeSequence(0x0022, 0x1300);
+Tag const IntraocularLensCalculationsLeftEyeSequence(0x0022, 0x1310);
+Tag const ReferencedOphthalmicAxialLengthMeasurementQCImageSequence(0x0022, 0x1330);
+Tag const OphthalmicMappingDeviceType(0x0022, 0x1415);
+Tag const AcquisitionMethodCodeSequence(0x0022, 0x1420);
+Tag const AcquisitionMethodAlgorithmSequence(0x0022, 0x1423);
+Tag const OphthalmicThicknessMapTypeCodeSequence(0x0022, 0x1436);
+Tag const OphthalmicThicknessMappingNormalsSequence(0x0022, 0x1443);
+Tag const RetinalThicknessDefinitionCodeSequence(0x0022, 0x1445);
+Tag const PixelValueMappingToCodedConceptSequence(0x0022, 0x1450);
+Tag const MappedPixelValue(0x0022, 0x1452);
+Tag const PixelValueMappingExplanation(0x0022, 0x1454);
+Tag const OphthalmicThicknessMapQualityThresholdSequence(0x0022, 0x1458);
+Tag const OphthalmicThicknessMapThresholdQualityRating(0x0022, 0x1460);
+Tag const AnatomicStructureReferencePoint(0x0022, 0x1463);
+Tag const RegistrationToLocalizerSequence(0x0022, 0x1465);
+Tag const RegisteredLocalizerUnits(0x0022, 0x1466);
+Tag const RegisteredLocalizerTopLeftHandCorner(0x0022, 0x1467);
+Tag const RegisteredLocalizerBottomRightHandCorner(0x0022, 0x1468);
+Tag const OphthalmicThicknessMapQualityRatingSequence(0x0022, 0x1470);
+Tag const RelevantOPTAttributesSequence(0x0022, 0x1472);
+Tag const TransformationMethodCodeSequence(0x0022, 0x1512);
+Tag const TransformationAlgorithmSequence(0x0022, 0x1513);
+Tag const OphthalmicAxialLengthMethod(0x0022, 0x1515);
+Tag const OphthalmicFOV(0x0022, 0x1517);
+Tag const TwoDimensionalToThreeDimensionalMapSequence(0x0022, 0x1518);
+Tag const WideFieldOphthalmicPhotographyQualityRatingSequence(0x0022, 0x1525);
+Tag const WideFieldOphthalmicPhotographyQualityThresholdSequence(0x0022, 0x1526);
+Tag const WideFieldOphthalmicPhotographyThresholdQualityRating(0x0022, 0x1527);
+Tag const XCoordinatesCenterPixelViewAngle(0x0022, 0x1528);
+Tag const YCoordinatesCenterPixelViewAngle(0x0022, 0x1529);
+Tag const NumberOfMapPoints(0x0022, 0x1530);
+Tag const TwoDimensionalToThreeDimensionalMapData(0x0022, 0x1531);
+Tag const VisualFieldHorizontalExtent(0x0024, 0x0010);
+Tag const VisualFieldVerticalExtent(0x0024, 0x0011);
+Tag const VisualFieldShape(0x0024, 0x0012);
+Tag const ScreeningTestModeCodeSequence(0x0024, 0x0016);
+Tag const MaximumStimulusLuminance(0x0024, 0x0018);
+Tag const BackgroundLuminance(0x0024, 0x0020);
+Tag const StimulusColorCodeSequence(0x0024, 0x0021);
+Tag const BackgroundIlluminationColorCodeSequence(0x0024, 0x0024);
+Tag const StimulusArea(0x0024, 0x0025);
+Tag const StimulusPresentationTime(0x0024, 0x0028);
+Tag const FixationSequence(0x0024, 0x0032);
+Tag const FixationMonitoringCodeSequence(0x0024, 0x0033);
+Tag const VisualFieldCatchTrialSequence(0x0024, 0x0034);
+Tag const FixationCheckedQuantity(0x0024, 0x0035);
+Tag const PatientNotProperlyFixatedQuantity(0x0024, 0x0036);
+Tag const PresentedVisualStimuliDataFlag(0x0024, 0x0037);
+Tag const NumberOfVisualStimuli(0x0024, 0x0038);
+Tag const ExcessiveFixationLossesDataFlag(0x0024, 0x0039);
+Tag const ExcessiveFixationLosses(0x0024, 0x0040);
+Tag const StimuliRetestingQuantity(0x0024, 0x0042);
+Tag const CommentsOnPatientPerformanceOfVisualField(0x0024, 0x0044);
+Tag const FalseNegativesEstimateFlag(0x0024, 0x0045);
+Tag const FalseNegativesEstimate(0x0024, 0x0046);
+Tag const NegativeCatchTrialsQuantity(0x0024, 0x0048);
+Tag const FalseNegativesQuantity(0x0024, 0x0050);
+Tag const ExcessiveFalseNegativesDataFlag(0x0024, 0x0051);
+Tag const ExcessiveFalseNegatives(0x0024, 0x0052);
+Tag const FalsePositivesEstimateFlag(0x0024, 0x0053);
+Tag const FalsePositivesEstimate(0x0024, 0x0054);
+Tag const CatchTrialsDataFlag(0x0024, 0x0055);
+Tag const PositiveCatchTrialsQuantity(0x0024, 0x0056);
+Tag const TestPointNormalsDataFlag(0x0024, 0x0057);
+Tag const TestPointNormalsSequence(0x0024, 0x0058);
+Tag const GlobalDeviationProbabilityNormalsFlag(0x0024, 0x0059);
+Tag const FalsePositivesQuantity(0x0024, 0x0060);
+Tag const ExcessiveFalsePositivesDataFlag(0x0024, 0x0061);
+Tag const ExcessiveFalsePositives(0x0024, 0x0062);
+Tag const VisualFieldTestNormalsFlag(0x0024, 0x0063);
+Tag const ResultsNormalsSequence(0x0024, 0x0064);
+Tag const AgeCorrectedSensitivityDeviationAlgorithmSequence(0x0024, 0x0065);
+Tag const GlobalDeviationFromNormal(0x0024, 0x0066);
+Tag const GeneralizedDefectSensitivityDeviationAlgorithmSequence(0x0024, 0x0067);
+Tag const LocalizedDeviationFromNormal(0x0024, 0x0068);
+Tag const PatientReliabilityIndicator(0x0024, 0x0069);
+Tag const VisualFieldMeanSensitivity(0x0024, 0x0070);
+Tag const GlobalDeviationProbability(0x0024, 0x0071);
+Tag const LocalDeviationProbabilityNormalsFlag(0x0024, 0x0072);
+Tag const LocalizedDeviationProbability(0x0024, 0x0073);
+Tag const ShortTermFluctuationCalculated(0x0024, 0x0074);
+Tag const ShortTermFluctuation(0x0024, 0x0075);
+Tag const ShortTermFluctuationProbabilityCalculated(0x0024, 0x0076);
+Tag const ShortTermFluctuationProbability(0x0024, 0x0077);
+Tag const CorrectedLocalizedDeviationFromNormalCalculated(0x0024, 0x0078);
+Tag const CorrectedLocalizedDeviationFromNormal(0x0024, 0x0079);
+Tag const CorrectedLocalizedDeviationFromNormalProbabilityCalculated(0x0024, 0x0080);
+Tag const CorrectedLocalizedDeviationFromNormalProbability(0x0024, 0x0081);
+Tag const GlobalDeviationProbabilitySequence(0x0024, 0x0083);
+Tag const LocalizedDeviationProbabilitySequence(0x0024, 0x0085);
+Tag const FovealSensitivityMeasured(0x0024, 0x0086);
+Tag const FovealSensitivity(0x0024, 0x0087);
+Tag const VisualFieldTestDuration(0x0024, 0x0088);
+Tag const VisualFieldTestPointSequence(0x0024, 0x0089);
+Tag const VisualFieldTestPointXCoordinate(0x0024, 0x0090);
+Tag const VisualFieldTestPointYCoordinate(0x0024, 0x0091);
+Tag const AgeCorrectedSensitivityDeviationValue(0x0024, 0x0092);
+Tag const StimulusResults(0x0024, 0x0093);
+Tag const SensitivityValue(0x0024, 0x0094);
+Tag const RetestStimulusSeen(0x0024, 0x0095);
+Tag const RetestSensitivityValue(0x0024, 0x0096);
+Tag const VisualFieldTestPointNormalsSequence(0x0024, 0x0097);
+Tag const QuantifiedDefect(0x0024, 0x0098);
+Tag const AgeCorrectedSensitivityDeviationProbabilityValue(0x0024, 0x0100);
+Tag const GeneralizedDefectCorrectedSensitivityDeviationFlag(0x0024, 0x0102);
+Tag const GeneralizedDefectCorrectedSensitivityDeviationValue(0x0024, 0x0103);
+Tag const GeneralizedDefectCorrectedSensitivityDeviationProbabilityValue(0x0024, 0x0104);
+Tag const MinimumSensitivityValue(0x0024, 0x0105);
+Tag const BlindSpotLocalized(0x0024, 0x0106);
+Tag const BlindSpotXCoordinate(0x0024, 0x0107);
+Tag const BlindSpotYCoordinate(0x0024, 0x0108);
+Tag const VisualAcuityMeasurementSequence(0x0024, 0x0110);
+Tag const RefractiveParametersUsedOnPatientSequence(0x0024, 0x0112);
+Tag const MeasurementLaterality(0x0024, 0x0113);
+Tag const OphthalmicPatientClinicalInformationLeftEyeSequence(0x0024, 0x0114);
+Tag const OphthalmicPatientClinicalInformationRightEyeSequence(0x0024, 0x0115);
+Tag const FovealPointNormativeDataFlag(0x0024, 0x0117);
+Tag const FovealPointProbabilityValue(0x0024, 0x0118);
+Tag const ScreeningBaselineMeasured(0x0024, 0x0120);
+Tag const ScreeningBaselineMeasuredSequence(0x0024, 0x0122);
+Tag const ScreeningBaselineType(0x0024, 0x0124);
+Tag const ScreeningBaselineValue(0x0024, 0x0126);
+Tag const AlgorithmSource(0x0024, 0x0202);
+Tag const DataSetName(0x0024, 0x0306);
+Tag const DataSetVersion(0x0024, 0x0307);
+Tag const DataSetSource(0x0024, 0x0308);
+Tag const DataSetDescription(0x0024, 0x0309);
+Tag const VisualFieldTestReliabilityGlobalIndexSequence(0x0024, 0x0317);
+Tag const VisualFieldGlobalResultsIndexSequence(0x0024, 0x0320);
+Tag const DataObservationSequence(0x0024, 0x0325);
+Tag const IndexNormalsFlag(0x0024, 0x0338);
+Tag const IndexProbability(0x0024, 0x0341);
+Tag const IndexProbabilitySequence(0x0024, 0x0344);
+Tag const SamplesPerPixel(0x0028, 0x0002);
+Tag const SamplesPerPixelUsed(0x0028, 0x0003);
+Tag const PhotometricInterpretation(0x0028, 0x0004);
+Tag const ImageDimensions(0x0028, 0x0005);
+Tag const PlanarConfiguration(0x0028, 0x0006);
+Tag const NumberOfFrames(0x0028, 0x0008);
+Tag const FrameIncrementPointer(0x0028, 0x0009);
+Tag const FrameDimensionPointer(0x0028, 0x000a);
+Tag const Rows(0x0028, 0x0010);
+Tag const Columns(0x0028, 0x0011);
+Tag const Planes(0x0028, 0x0012);
+Tag const UltrasoundColorDataPresent(0x0028, 0x0014);
+Tag const PixelSpacing(0x0028, 0x0030);
+Tag const ZoomFactor(0x0028, 0x0031);
+Tag const ZoomCenter(0x0028, 0x0032);
+Tag const PixelAspectRatio(0x0028, 0x0034);
+Tag const ImageFormat(0x0028, 0x0040);
+Tag const ManipulatedImage(0x0028, 0x0050);
+Tag const CorrectedImage(0x0028, 0x0051);
+Tag const CompressionRecognitionCode(0x0028, 0x005f);
+Tag const CompressionCode(0x0028, 0x0060);
+Tag const CompressionOriginator(0x0028, 0x0061);
+Tag const CompressionLabel(0x0028, 0x0062);
+Tag const CompressionDescription(0x0028, 0x0063);
+Tag const CompressionSequence(0x0028, 0x0065);
+Tag const CompressionStepPointers(0x0028, 0x0066);
+Tag const RepeatInterval(0x0028, 0x0068);
+Tag const BitsGrouped(0x0028, 0x0069);
+Tag const PerimeterTable(0x0028, 0x0070);
+Tag const PerimeterValue(0x0028, 0x0071);
+Tag const PredictorRows(0x0028, 0x0080);
+Tag const PredictorColumns(0x0028, 0x0081);
+Tag const PredictorConstants(0x0028, 0x0082);
+Tag const BlockedPixels(0x0028, 0x0090);
+Tag const BlockRows(0x0028, 0x0091);
+Tag const BlockColumns(0x0028, 0x0092);
+Tag const RowOverlap(0x0028, 0x0093);
+Tag const ColumnOverlap(0x0028, 0x0094);
+Tag const BitsAllocated(0x0028, 0x0100);
+Tag const BitsStored(0x0028, 0x0101);
+Tag const HighBit(0x0028, 0x0102);
+Tag const PixelRepresentation(0x0028, 0x0103);
+Tag const SmallestValidPixelValue(0x0028, 0x0104);
+Tag const LargestValidPixelValue(0x0028, 0x0105);
+Tag const SmallestImagePixelValue(0x0028, 0x0106);
+Tag const LargestImagePixelValue(0x0028, 0x0107);
+Tag const SmallestPixelValueInSeries(0x0028, 0x0108);
+Tag const LargestPixelValueInSeries(0x0028, 0x0109);
+Tag const SmallestImagePixelValueInPlane(0x0028, 0x0110);
+Tag const LargestImagePixelValueInPlane(0x0028, 0x0111);
+Tag const PixelPaddingValue(0x0028, 0x0120);
+Tag const PixelPaddingRangeLimit(0x0028, 0x0121);
+Tag const FloatPixelPaddingValue(0x0028, 0x0122);
+Tag const DoubleFloatPixelPaddingValue(0x0028, 0x0123);
+Tag const FloatPixelPaddingRangeLimit(0x0028, 0x0124);
+Tag const DoubleFloatPixelPaddingRangeLimit(0x0028, 0x0125);
+Tag const ImageLocation(0x0028, 0x0200);
+Tag const QualityControlImage(0x0028, 0x0300);
+Tag const BurnedInAnnotation(0x0028, 0x0301);
+Tag const RecognizableVisualFeatures(0x0028, 0x0302);
+Tag const LongitudinalTemporalInformationModified(0x0028, 0x0303);
+Tag const ReferencedColorPaletteInstanceUID(0x0028, 0x0304);
+Tag const TransformLabel(0x0028, 0x0400);
+Tag const TransformVersionNumber(0x0028, 0x0401);
+Tag const NumberOfTransformSteps(0x0028, 0x0402);
+Tag const SequenceOfCompressedData(0x0028, 0x0403);
+Tag const DetailsOfCoefficients(0x0028, 0x0404);
+Tag const DCTLabel(0x0028, 0x0700);
+Tag const DataBlockDescription(0x0028, 0x0701);
+Tag const DataBlock(0x0028, 0x0702);
+Tag const NormalizationFactorFormat(0x0028, 0x0710);
+Tag const ZonalMapNumberFormat(0x0028, 0x0720);
+Tag const ZonalMapLocation(0x0028, 0x0721);
+Tag const ZonalMapFormat(0x0028, 0x0722);
+Tag const AdaptiveMapFormat(0x0028, 0x0730);
+Tag const CodeNumberFormat(0x0028, 0x0740);
+Tag const PixelSpacingCalibrationType(0x0028, 0x0a02);
+Tag const PixelSpacingCalibrationDescription(0x0028, 0x0a04);
+Tag const PixelIntensityRelationship(0x0028, 0x1040);
+Tag const PixelIntensityRelationshipSign(0x0028, 0x1041);
+Tag const WindowCenter(0x0028, 0x1050);
+Tag const WindowWidth(0x0028, 0x1051);
+Tag const RescaleIntercept(0x0028, 0x1052);
+Tag const RescaleSlope(0x0028, 0x1053);
+Tag const RescaleType(0x0028, 0x1054);
+Tag const WindowCenterWidthExplanation(0x0028, 0x1055);
+Tag const VOILUTFunction(0x0028, 0x1056);
+Tag const GrayScale(0x0028, 0x1080);
+Tag const RecommendedViewingMode(0x0028, 0x1090);
+Tag const GrayLookupTableDescriptor(0x0028, 0x1100);
+Tag const RedPaletteColorLookupTableDescriptor(0x0028, 0x1101);
+Tag const GreenPaletteColorLookupTableDescriptor(0x0028, 0x1102);
+Tag const BluePaletteColorLookupTableDescriptor(0x0028, 0x1103);
+Tag const AlphaPaletteColorLookupTableDescriptor(0x0028, 0x1104);
+Tag const LargeRedPaletteColorLookupTableDescriptor(0x0028, 0x1111);
+Tag const LargeGreenPaletteColorLookupTableDescriptor(0x0028, 0x1112);
+Tag const LargeBluePaletteColorLookupTableDescriptor(0x0028, 0x1113);
+Tag const PaletteColorLookupTableUID(0x0028, 0x1199);
+Tag const GrayLookupTableData(0x0028, 0x1200);
+Tag const RedPaletteColorLookupTableData(0x0028, 0x1201);
+Tag const GreenPaletteColorLookupTableData(0x0028, 0x1202);
+Tag const BluePaletteColorLookupTableData(0x0028, 0x1203);
+Tag const AlphaPaletteColorLookupTableData(0x0028, 0x1204);
+Tag const LargeRedPaletteColorLookupTableData(0x0028, 0x1211);
+Tag const LargeGreenPaletteColorLookupTableData(0x0028, 0x1212);
+Tag const LargeBluePaletteColorLookupTableData(0x0028, 0x1213);
+Tag const LargePaletteColorLookupTableUID(0x0028, 0x1214);
+Tag const SegmentedRedPaletteColorLookupTableData(0x0028, 0x1221);
+Tag const SegmentedGreenPaletteColorLookupTableData(0x0028, 0x1222);
+Tag const SegmentedBluePaletteColorLookupTableData(0x0028, 0x1223);
+Tag const BreastImplantPresent(0x0028, 0x1300);
+Tag const PartialView(0x0028, 0x1350);
+Tag const PartialViewDescription(0x0028, 0x1351);
+Tag const PartialViewCodeSequence(0x0028, 0x1352);
+Tag const SpatialLocationsPreserved(0x0028, 0x135a);
+Tag const DataFrameAssignmentSequence(0x0028, 0x1401);
+Tag const DataPathAssignment(0x0028, 0x1402);
+Tag const BitsMappedToColorLookupTable(0x0028, 0x1403);
+Tag const BlendingLUT1Sequence(0x0028, 0x1404);
+Tag const BlendingLUT1TransferFunction(0x0028, 0x1405);
+Tag const BlendingWeightConstant(0x0028, 0x1406);
+Tag const BlendingLookupTableDescriptor(0x0028, 0x1407);
+Tag const BlendingLookupTableData(0x0028, 0x1408);
+Tag const EnhancedPaletteColorLookupTableSequence(0x0028, 0x140b);
+Tag const BlendingLUT2Sequence(0x0028, 0x140c);
+Tag const BlendingLUT2TransferFunction(0x0028, 0x140d);
+Tag const DataPathID(0x0028, 0x140e);
+Tag const RGBLUTTransferFunction(0x0028, 0x140f);
+Tag const AlphaLUTTransferFunction(0x0028, 0x1410);
+Tag const ICCProfile(0x0028, 0x2000);
+Tag const LossyImageCompression(0x0028, 0x2110);
+Tag const LossyImageCompressionRatio(0x0028, 0x2112);
+Tag const LossyImageCompressionMethod(0x0028, 0x2114);
+Tag const ModalityLUTSequence(0x0028, 0x3000);
+Tag const LUTDescriptor(0x0028, 0x3002);
+Tag const LUTExplanation(0x0028, 0x3003);
+Tag const ModalityLUTType(0x0028, 0x3004);
+Tag const LUTData(0x0028, 0x3006);
+Tag const VOILUTSequence(0x0028, 0x3010);
+Tag const SoftcopyVOILUTSequence(0x0028, 0x3110);
+Tag const ImagePresentationComments(0x0028, 0x4000);
+Tag const BiPlaneAcquisitionSequence(0x0028, 0x5000);
+Tag const RepresentativeFrameNumber(0x0028, 0x6010);
+Tag const FrameNumbersOfInterest(0x0028, 0x6020);
+Tag const FrameOfInterestDescription(0x0028, 0x6022);
+Tag const FrameOfInterestType(0x0028, 0x6023);
+Tag const MaskPointers(0x0028, 0x6030);
+Tag const RWavePointer(0x0028, 0x6040);
+Tag const MaskSubtractionSequence(0x0028, 0x6100);
+Tag const MaskOperation(0x0028, 0x6101);
+Tag const ApplicableFrameRange(0x0028, 0x6102);
+Tag const MaskFrameNumbers(0x0028, 0x6110);
+Tag const ContrastFrameAveraging(0x0028, 0x6112);
+Tag const MaskSubPixelShift(0x0028, 0x6114);
+Tag const TIDOffset(0x0028, 0x6120);
+Tag const MaskOperationExplanation(0x0028, 0x6190);
+Tag const EquipmentAdministratorSequence(0x0028, 0x7000);
+Tag const NumberOfDisplaySubsystems(0x0028, 0x7001);
+Tag const CurrentConfigurationID(0x0028, 0x7002);
+Tag const DisplaySubsystemID(0x0028, 0x7003);
+Tag const DisplaySubsystemName(0x0028, 0x7004);
+Tag const DisplaySubsystemDescription(0x0028, 0x7005);
+Tag const SystemStatus(0x0028, 0x7006);
+Tag const SystemStatusComment(0x0028, 0x7007);
+Tag const TargetLuminanceCharacteristicsSequence(0x0028, 0x7008);
+Tag const LuminanceCharacteristicsID(0x0028, 0x7009);
+Tag const DisplaySubsystemConfigurationSequence(0x0028, 0x700a);
+Tag const ConfigurationID(0x0028, 0x700b);
+Tag const ConfigurationName(0x0028, 0x700c);
+Tag const ConfigurationDescription(0x0028, 0x700d);
+Tag const ReferencedTargetLuminanceCharacteristicsID(0x0028, 0x700e);
+Tag const QAResultsSequence(0x0028, 0x700f);
+Tag const DisplaySubsystemQAResultsSequence(0x0028, 0x7010);
+Tag const ConfigurationQAResultsSequence(0x0028, 0x7011);
+Tag const MeasurementEquipmentSequence(0x0028, 0x7012);
+Tag const MeasurementFunctions(0x0028, 0x7013);
+Tag const MeasurementEquipmentType(0x0028, 0x7014);
+Tag const VisualEvaluationResultSequence(0x0028, 0x7015);
+Tag const DisplayCalibrationResultSequence(0x0028, 0x7016);
+Tag const DDLValue(0x0028, 0x7017);
+Tag const CIExyWhitePoint(0x0028, 0x7018);
+Tag const DisplayFunctionType(0x0028, 0x7019);
+Tag const GammaValue(0x0028, 0x701a);
+Tag const NumberOfLuminancePoints(0x0028, 0x701b);
+Tag const LuminanceResponseSequence(0x0028, 0x701c);
+Tag const TargetMinimumLuminance(0x0028, 0x701d);
+Tag const TargetMaximumLuminance(0x0028, 0x701e);
+Tag const LuminanceValue(0x0028, 0x701f);
+Tag const LuminanceResponseDescription(0x0028, 0x7020);
+Tag const WhitePointFlag(0x0028, 0x7021);
+Tag const DisplayDeviceTypeCodeSequence(0x0028, 0x7022);
+Tag const DisplaySubsystemSequence(0x0028, 0x7023);
+Tag const LuminanceResultSequence(0x0028, 0x7024);
+Tag const AmbientLightValueSource(0x0028, 0x7025);
+Tag const MeasuredCharacteristics(0x0028, 0x7026);
+Tag const LuminanceUniformityResultSequence(0x0028, 0x7027);
+Tag const VisualEvaluationTestSequence(0x0028, 0x7028);
+Tag const TestResult(0x0028, 0x7029);
+Tag const TestResultComment(0x0028, 0x702a);
+Tag const TestImageValidation(0x0028, 0x702b);
+Tag const TestPatternCodeSequence(0x0028, 0x702c);
+Tag const MeasurementPatternCodeSequence(0x0028, 0x702d);
+Tag const VisualEvaluationMethodCodeSequence(0x0028, 0x702e);
+Tag const PixelDataProviderURL(0x0028, 0x7fe0);
+Tag const DataPointRows(0x0028, 0x9001);
+Tag const DataPointColumns(0x0028, 0x9002);
+Tag const SignalDomainColumns(0x0028, 0x9003);
+Tag const LargestMonochromePixelValue(0x0028, 0x9099);
+Tag const DataRepresentation(0x0028, 0x9108);
+Tag const PixelMeasuresSequence(0x0028, 0x9110);
+Tag const FrameVOILUTSequence(0x0028, 0x9132);
+Tag const PixelValueTransformationSequence(0x0028, 0x9145);
+Tag const SignalDomainRows(0x0028, 0x9235);
+Tag const DisplayFilterPercentage(0x0028, 0x9411);
+Tag const FramePixelShiftSequence(0x0028, 0x9415);
+Tag const SubtractionItemID(0x0028, 0x9416);
+Tag const PixelIntensityRelationshipLUTSequence(0x0028, 0x9422);
+Tag const FramePixelDataPropertiesSequence(0x0028, 0x9443);
+Tag const GeometricalProperties(0x0028, 0x9444);
+Tag const GeometricMaximumDistortion(0x0028, 0x9445);
+Tag const ImageProcessingApplied(0x0028, 0x9446);
+Tag const MaskSelectionMode(0x0028, 0x9454);
+Tag const LUTFunction(0x0028, 0x9474);
+Tag const MaskVisibilityPercentage(0x0028, 0x9478);
+Tag const PixelShiftSequence(0x0028, 0x9501);
+Tag const RegionPixelShiftSequence(0x0028, 0x9502);
+Tag const VerticesOfTheRegion(0x0028, 0x9503);
+Tag const MultiFramePresentationSequence(0x0028, 0x9505);
+Tag const PixelShiftFrameRange(0x0028, 0x9506);
+Tag const LUTFrameRange(0x0028, 0x9507);
+Tag const ImageToEquipmentMappingMatrix(0x0028, 0x9520);
+Tag const EquipmentCoordinateSystemIdentification(0x0028, 0x9537);
+Tag const StudyStatusID(0x0032, 0x000a);
+Tag const StudyPriorityID(0x0032, 0x000c);
+Tag const StudyIDIssuer(0x0032, 0x0012);
+Tag const StudyVerifiedDate(0x0032, 0x0032);
+Tag const StudyVerifiedTime(0x0032, 0x0033);
+Tag const StudyReadDate(0x0032, 0x0034);
+Tag const StudyReadTime(0x0032, 0x0035);
+Tag const ScheduledStudyStartDate(0x0032, 0x1000);
+Tag const ScheduledStudyStartTime(0x0032, 0x1001);
+Tag const ScheduledStudyStopDate(0x0032, 0x1010);
+Tag const ScheduledStudyStopTime(0x0032, 0x1011);
+Tag const ScheduledStudyLocation(0x0032, 0x1020);
+Tag const ScheduledStudyLocationAETitle(0x0032, 0x1021);
+Tag const ReasonForStudy(0x0032, 0x1030);
+Tag const RequestingPhysicianIdentificationSequence(0x0032, 0x1031);
+Tag const RequestingPhysician(0x0032, 0x1032);
+Tag const RequestingService(0x0032, 0x1033);
+Tag const RequestingServiceCodeSequence(0x0032, 0x1034);
+Tag const StudyArrivalDate(0x0032, 0x1040);
+Tag const StudyArrivalTime(0x0032, 0x1041);
+Tag const StudyCompletionDate(0x0032, 0x1050);
+Tag const StudyCompletionTime(0x0032, 0x1051);
+Tag const StudyComponentStatusID(0x0032, 0x1055);
+Tag const RequestedProcedureDescription(0x0032, 0x1060);
+Tag const RequestedProcedureCodeSequence(0x0032, 0x1064);
+Tag const RequestedContrastAgent(0x0032, 0x1070);
+Tag const StudyComments(0x0032, 0x4000);
+Tag const ReferencedPatientAliasSequence(0x0038, 0x0004);
+Tag const VisitStatusID(0x0038, 0x0008);
+Tag const AdmissionID(0x0038, 0x0010);
+Tag const IssuerOfAdmissionID(0x0038, 0x0011);
+Tag const IssuerOfAdmissionIDSequence(0x0038, 0x0014);
+Tag const RouteOfAdmissions(0x0038, 0x0016);
+Tag const ScheduledAdmissionDate(0x0038, 0x001a);
+Tag const ScheduledAdmissionTime(0x0038, 0x001b);
+Tag const ScheduledDischargeDate(0x0038, 0x001c);
+Tag const ScheduledDischargeTime(0x0038, 0x001d);
+Tag const ScheduledPatientInstitutionResidence(0x0038, 0x001e);
+Tag const AdmittingDate(0x0038, 0x0020);
+Tag const AdmittingTime(0x0038, 0x0021);
+Tag const DischargeDate(0x0038, 0x0030);
+Tag const DischargeTime(0x0038, 0x0032);
+Tag const DischargeDiagnosisDescription(0x0038, 0x0040);
+Tag const DischargeDiagnosisCodeSequence(0x0038, 0x0044);
+Tag const SpecialNeeds(0x0038, 0x0050);
+Tag const ServiceEpisodeID(0x0038, 0x0060);
+Tag const IssuerOfServiceEpisodeID(0x0038, 0x0061);
+Tag const ServiceEpisodeDescription(0x0038, 0x0062);
+Tag const IssuerOfServiceEpisodeIDSequence(0x0038, 0x0064);
+Tag const PertinentDocumentsSequence(0x0038, 0x0100);
+Tag const PertinentResourcesSequence(0x0038, 0x0101);
+Tag const ResourceDescription(0x0038, 0x0102);
+Tag const CurrentPatientLocation(0x0038, 0x0300);
+Tag const PatientInstitutionResidence(0x0038, 0x0400);
+Tag const PatientState(0x0038, 0x0500);
+Tag const PatientClinicalTrialParticipationSequence(0x0038, 0x0502);
+Tag const VisitComments(0x0038, 0x4000);
+Tag const WaveformOriginality(0x003a, 0x0004);
+Tag const NumberOfWaveformChannels(0x003a, 0x0005);
+Tag const NumberOfWaveformSamples(0x003a, 0x0010);
+Tag const SamplingFrequency(0x003a, 0x001a);
+Tag const MultiplexGroupLabel(0x003a, 0x0020);
+Tag const ChannelDefinitionSequence(0x003a, 0x0200);
+Tag const WaveformChannelNumber(0x003a, 0x0202);
+Tag const ChannelLabel(0x003a, 0x0203);
+Tag const ChannelStatus(0x003a, 0x0205);
+Tag const ChannelSourceSequence(0x003a, 0x0208);
+Tag const ChannelSourceModifiersSequence(0x003a, 0x0209);
+Tag const SourceWaveformSequence(0x003a, 0x020a);
+Tag const ChannelDerivationDescription(0x003a, 0x020c);
+Tag const ChannelSensitivity(0x003a, 0x0210);
+Tag const ChannelSensitivityUnitsSequence(0x003a, 0x0211);
+Tag const ChannelSensitivityCorrectionFactor(0x003a, 0x0212);
+Tag const ChannelBaseline(0x003a, 0x0213);
+Tag const ChannelTimeSkew(0x003a, 0x0214);
+Tag const ChannelSampleSkew(0x003a, 0x0215);
+Tag const ChannelOffset(0x003a, 0x0218);
+Tag const WaveformBitsStored(0x003a, 0x021a);
+Tag const FilterLowFrequency(0x003a, 0x0220);
+Tag const FilterHighFrequency(0x003a, 0x0221);
+Tag const NotchFilterFrequency(0x003a, 0x0222);
+Tag const NotchFilterBandwidth(0x003a, 0x0223);
+Tag const WaveformDataDisplayScale(0x003a, 0x0230);
+Tag const WaveformDisplayBackgroundCIELabValue(0x003a, 0x0231);
+Tag const WaveformPresentationGroupSequence(0x003a, 0x0240);
+Tag const PresentationGroupNumber(0x003a, 0x0241);
+Tag const ChannelDisplaySequence(0x003a, 0x0242);
+Tag const ChannelRecommendedDisplayCIELabValue(0x003a, 0x0244);
+Tag const ChannelPosition(0x003a, 0x0245);
+Tag const DisplayShadingFlag(0x003a, 0x0246);
+Tag const FractionalChannelDisplayScale(0x003a, 0x0247);
+Tag const AbsoluteChannelDisplayScale(0x003a, 0x0248);
+Tag const MultiplexedAudioChannelsDescriptionCodeSequence(0x003a, 0x0300);
+Tag const ChannelIdentificationCode(0x003a, 0x0301);
+Tag const ChannelMode(0x003a, 0x0302);
+Tag const ScheduledStationAETitle(0x0040, 0x0001);
+Tag const ScheduledProcedureStepStartDate(0x0040, 0x0002);
+Tag const ScheduledProcedureStepStartTime(0x0040, 0x0003);
+Tag const ScheduledProcedureStepEndDate(0x0040, 0x0004);
+Tag const ScheduledProcedureStepEndTime(0x0040, 0x0005);
+Tag const ScheduledPerformingPhysicianName(0x0040, 0x0006);
+Tag const ScheduledProcedureStepDescription(0x0040, 0x0007);
+Tag const ScheduledProtocolCodeSequence(0x0040, 0x0008);
+Tag const ScheduledProcedureStepID(0x0040, 0x0009);
+Tag const StageCodeSequence(0x0040, 0x000a);
+Tag const ScheduledPerformingPhysicianIdentificationSequence(0x0040, 0x000b);
+Tag const ScheduledStationName(0x0040, 0x0010);
+Tag const ScheduledProcedureStepLocation(0x0040, 0x0011);
+Tag const PreMedication(0x0040, 0x0012);
+Tag const ScheduledProcedureStepStatus(0x0040, 0x0020);
+Tag const OrderPlacerIdentifierSequence(0x0040, 0x0026);
+Tag const OrderFillerIdentifierSequence(0x0040, 0x0027);
+Tag const LocalNamespaceEntityID(0x0040, 0x0031);
+Tag const UniversalEntityID(0x0040, 0x0032);
+Tag const UniversalEntityIDType(0x0040, 0x0033);
+Tag const IdentifierTypeCode(0x0040, 0x0035);
+Tag const AssigningFacilitySequence(0x0040, 0x0036);
+Tag const AssigningJurisdictionCodeSequence(0x0040, 0x0039);
+Tag const AssigningAgencyOrDepartmentCodeSequence(0x0040, 0x003a);
+Tag const ScheduledProcedureStepSequence(0x0040, 0x0100);
+Tag const ReferencedNonImageCompositeSOPInstanceSequence(0x0040, 0x0220);
+Tag const PerformedStationAETitle(0x0040, 0x0241);
+Tag const PerformedStationName(0x0040, 0x0242);
+Tag const PerformedLocation(0x0040, 0x0243);
+Tag const PerformedProcedureStepStartDate(0x0040, 0x0244);
+Tag const PerformedProcedureStepStartTime(0x0040, 0x0245);
+Tag const PerformedProcedureStepEndDate(0x0040, 0x0250);
+Tag const PerformedProcedureStepEndTime(0x0040, 0x0251);
+Tag const PerformedProcedureStepStatus(0x0040, 0x0252);
+Tag const PerformedProcedureStepID(0x0040, 0x0253);
+Tag const PerformedProcedureStepDescription(0x0040, 0x0254);
+Tag const PerformedProcedureTypeDescription(0x0040, 0x0255);
+Tag const PerformedProtocolCodeSequence(0x0040, 0x0260);
+Tag const PerformedProtocolType(0x0040, 0x0261);
+Tag const ScheduledStepAttributesSequence(0x0040, 0x0270);
+Tag const RequestAttributesSequence(0x0040, 0x0275);
+Tag const CommentsOnThePerformedProcedureStep(0x0040, 0x0280);
+Tag const PerformedProcedureStepDiscontinuationReasonCodeSequence(0x0040, 0x0281);
+Tag const QuantitySequence(0x0040, 0x0293);
+Tag const Quantity(0x0040, 0x0294);
+Tag const MeasuringUnitsSequence(0x0040, 0x0295);
+Tag const BillingItemSequence(0x0040, 0x0296);
+Tag const TotalTimeOfFluoroscopy(0x0040, 0x0300);
+Tag const TotalNumberOfExposures(0x0040, 0x0301);
+Tag const EntranceDose(0x0040, 0x0302);
+Tag const ExposedArea(0x0040, 0x0303);
+Tag const DistanceSourceToEntrance(0x0040, 0x0306);
+Tag const DistanceSourceToSupport(0x0040, 0x0307);
+Tag const ExposureDoseSequence(0x0040, 0x030e);
+Tag const CommentsOnRadiationDose(0x0040, 0x0310);
+Tag const XRayOutput(0x0040, 0x0312);
+Tag const HalfValueLayer(0x0040, 0x0314);
+Tag const OrganDose(0x0040, 0x0316);
+Tag const OrganExposed(0x0040, 0x0318);
+Tag const BillingProcedureStepSequence(0x0040, 0x0320);
+Tag const FilmConsumptionSequence(0x0040, 0x0321);
+Tag const BillingSuppliesAndDevicesSequence(0x0040, 0x0324);
+Tag const ReferencedProcedureStepSequence(0x0040, 0x0330);
+Tag const PerformedSeriesSequence(0x0040, 0x0340);
+Tag const CommentsOnTheScheduledProcedureStep(0x0040, 0x0400);
+Tag const ProtocolContextSequence(0x0040, 0x0440);
+Tag const ContentItemModifierSequence(0x0040, 0x0441);
+Tag const ScheduledSpecimenSequence(0x0040, 0x0500);
+Tag const SpecimenAccessionNumber(0x0040, 0x050a);
+Tag const ContainerIdentifier(0x0040, 0x0512);
+Tag const IssuerOfTheContainerIdentifierSequence(0x0040, 0x0513);
+Tag const AlternateContainerIdentifierSequence(0x0040, 0x0515);
+Tag const ContainerTypeCodeSequence(0x0040, 0x0518);
+Tag const ContainerDescription(0x0040, 0x051a);
+Tag const ContainerComponentSequence(0x0040, 0x0520);
+Tag const SpecimenSequence(0x0040, 0x0550);
+Tag const SpecimenIdentifier(0x0040, 0x0551);
+Tag const SpecimenDescriptionSequenceTrial(0x0040, 0x0552);
+Tag const SpecimenDescriptionTrial(0x0040, 0x0553);
+Tag const SpecimenUID(0x0040, 0x0554);
+Tag const AcquisitionContextSequence(0x0040, 0x0555);
+Tag const AcquisitionContextDescription(0x0040, 0x0556);
+Tag const SpecimenTypeCodeSequence(0x0040, 0x059a);
+Tag const SpecimenDescriptionSequence(0x0040, 0x0560);
+Tag const IssuerOfTheSpecimenIdentifierSequence(0x0040, 0x0562);
+Tag const SpecimenShortDescription(0x0040, 0x0600);
+Tag const SpecimenDetailedDescription(0x0040, 0x0602);
+Tag const SpecimenPreparationSequence(0x0040, 0x0610);
+Tag const SpecimenPreparationStepContentItemSequence(0x0040, 0x0612);
+Tag const SpecimenLocalizationContentItemSequence(0x0040, 0x0620);
+Tag const SlideIdentifier(0x0040, 0x06fa);
+Tag const ImageCenterPointCoordinatesSequence(0x0040, 0x071a);
+Tag const XOffsetInSlideCoordinateSystem(0x0040, 0x072a);
+Tag const YOffsetInSlideCoordinateSystem(0x0040, 0x073a);
+Tag const ZOffsetInSlideCoordinateSystem(0x0040, 0x074a);
+Tag const PixelSpacingSequence(0x0040, 0x08d8);
+Tag const CoordinateSystemAxisCodeSequence(0x0040, 0x08da);
+Tag const MeasurementUnitsCodeSequence(0x0040, 0x08ea);
+Tag const VitalStainCodeSequenceTrial(0x0040, 0x09f8);
+Tag const RequestedProcedureID(0x0040, 0x1001);
+Tag const ReasonForTheRequestedProcedure(0x0040, 0x1002);
+Tag const RequestedProcedurePriority(0x0040, 0x1003);
+Tag const PatientTransportArrangements(0x0040, 0x1004);
+Tag const RequestedProcedureLocation(0x0040, 0x1005);
+Tag const PlacerOrderNumberProcedure(0x0040, 0x1006);
+Tag const FillerOrderNumberProcedure(0x0040, 0x1007);
+Tag const ConfidentialityCode(0x0040, 0x1008);
+Tag const ReportingPriority(0x0040, 0x1009);
+Tag const ReasonForRequestedProcedureCodeSequence(0x0040, 0x100a);
+Tag const NamesOfIntendedRecipientsOfResults(0x0040, 0x1010);
+Tag const IntendedRecipientsOfResultsIdentificationSequence(0x0040, 0x1011);
+Tag const ReasonForPerformedProcedureCodeSequence(0x0040, 0x1012);
+Tag const RequestedProcedureDescriptionTrial(0x0040, 0x1060);
+Tag const PersonIdentificationCodeSequence(0x0040, 0x1101);
+Tag const PersonAddress(0x0040, 0x1102);
+Tag const PersonTelephoneNumbers(0x0040, 0x1103);
+Tag const PersonTelecomInformation(0x0040, 0x1104);
+Tag const RequestedProcedureComments(0x0040, 0x1400);
+Tag const ReasonForTheImagingServiceRequest(0x0040, 0x2001);
+Tag const IssueDateOfImagingServiceRequest(0x0040, 0x2004);
+Tag const IssueTimeOfImagingServiceRequest(0x0040, 0x2005);
+Tag const PlacerOrderNumberImagingServiceRequestRetired(0x0040, 0x2006);
+Tag const FillerOrderNumberImagingServiceRequestRetired(0x0040, 0x2007);
+Tag const OrderEnteredBy(0x0040, 0x2008);
+Tag const OrderEntererLocation(0x0040, 0x2009);
+Tag const OrderCallbackPhoneNumber(0x0040, 0x2010);
+Tag const OrderCallbackTelecomInformation(0x0040, 0x2011);
+Tag const PlacerOrderNumberImagingServiceRequest(0x0040, 0x2016);
+Tag const FillerOrderNumberImagingServiceRequest(0x0040, 0x2017);
+Tag const ImagingServiceRequestComments(0x0040, 0x2400);
+Tag const ConfidentialityConstraintOnPatientDataDescription(0x0040, 0x3001);
+Tag const GeneralPurposeScheduledProcedureStepStatus(0x0040, 0x4001);
+Tag const GeneralPurposePerformedProcedureStepStatus(0x0040, 0x4002);
+Tag const GeneralPurposeScheduledProcedureStepPriority(0x0040, 0x4003);
+Tag const ScheduledProcessingApplicationsCodeSequence(0x0040, 0x4004);
+Tag const ScheduledProcedureStepStartDateTime(0x0040, 0x4005);
+Tag const MultipleCopiesFlag(0x0040, 0x4006);
+Tag const PerformedProcessingApplicationsCodeSequence(0x0040, 0x4007);
+Tag const HumanPerformerCodeSequence(0x0040, 0x4009);
+Tag const ScheduledProcedureStepModificationDateTime(0x0040, 0x4010);
+Tag const ExpectedCompletionDateTime(0x0040, 0x4011);
+Tag const ResultingGeneralPurposePerformedProcedureStepsSequence(0x0040, 0x4015);
+Tag const ReferencedGeneralPurposeScheduledProcedureStepSequence(0x0040, 0x4016);
+Tag const ScheduledWorkitemCodeSequence(0x0040, 0x4018);
+Tag const PerformedWorkitemCodeSequence(0x0040, 0x4019);
+Tag const InputAvailabilityFlag(0x0040, 0x4020);
+Tag const InputInformationSequence(0x0040, 0x4021);
+Tag const RelevantInformationSequence(0x0040, 0x4022);
+Tag const ReferencedGeneralPurposeScheduledProcedureStepTransactionUID(0x0040, 0x4023);
+Tag const ScheduledStationNameCodeSequence(0x0040, 0x4025);
+Tag const ScheduledStationClassCodeSequence(0x0040, 0x4026);
+Tag const ScheduledStationGeographicLocationCodeSequence(0x0040, 0x4027);
+Tag const PerformedStationNameCodeSequence(0x0040, 0x4028);
+Tag const PerformedStationClassCodeSequence(0x0040, 0x4029);
+Tag const PerformedStationGeographicLocationCodeSequence(0x0040, 0x4030);
+Tag const RequestedSubsequentWorkitemCodeSequence(0x0040, 0x4031);
+Tag const NonDICOMOutputCodeSequence(0x0040, 0x4032);
+Tag const OutputInformationSequence(0x0040, 0x4033);
+Tag const ScheduledHumanPerformersSequence(0x0040, 0x4034);
+Tag const ActualHumanPerformersSequence(0x0040, 0x4035);
+Tag const HumanPerformerOrganization(0x0040, 0x4036);
+Tag const HumanPerformerName(0x0040, 0x4037);
+Tag const RawDataHandling(0x0040, 0x4040);
+Tag const InputReadinessState(0x0040, 0x4041);
+Tag const PerformedProcedureStepStartDateTime(0x0040, 0x4050);
+Tag const PerformedProcedureStepEndDateTime(0x0040, 0x4051);
+Tag const ProcedureStepCancellationDateTime(0x0040, 0x4052);
+Tag const EntranceDoseInmGy(0x0040, 0x8302);
+Tag const ParametricMapFrameTypeSequence(0x0040, 0x9092);
+Tag const ReferencedImageRealWorldValueMappingSequence(0x0040, 0x9094);
+Tag const RealWorldValueMappingSequence(0x0040, 0x9096);
+Tag const PixelValueMappingCodeSequence(0x0040, 0x9098);
+Tag const LUTLabel(0x0040, 0x9210);
+Tag const RealWorldValueLastValueMapped(0x0040, 0x9211);
+Tag const RealWorldValueLUTData(0x0040, 0x9212);
+Tag const RealWorldValueFirstValueMapped(0x0040, 0x9216);
+Tag const QuantityDefinitionSequence(0x0040, 0x9220);
+Tag const RealWorldValueIntercept(0x0040, 0x9224);
+Tag const RealWorldValueSlope(0x0040, 0x9225);
+Tag const FindingsFlagTrial(0x0040, 0xa007);
+Tag const RelationshipType(0x0040, 0xa010);
+Tag const FindingsSequenceTrial(0x0040, 0xa020);
+Tag const FindingsGroupUIDTrial(0x0040, 0xa021);
+Tag const ReferencedFindingsGroupUIDTrial(0x0040, 0xa022);
+Tag const FindingsGroupRecordingDateTrial(0x0040, 0xa023);
+Tag const FindingsGroupRecordingTimeTrial(0x0040, 0xa024);
+Tag const FindingsSourceCategoryCodeSequenceTrial(0x0040, 0xa026);
+Tag const VerifyingOrganization(0x0040, 0xa027);
+Tag const DocumentingOrganizationIdentifierCodeSequenceTrial(0x0040, 0xa028);
+Tag const VerificationDateTime(0x0040, 0xa030);
+Tag const ObservationDateTime(0x0040, 0xa032);
+Tag const ValueType(0x0040, 0xa040);
+Tag const ConceptNameCodeSequence(0x0040, 0xa043);
+Tag const MeasurementPrecisionDescriptionTrial(0x0040, 0xa047);
+Tag const ContinuityOfContent(0x0040, 0xa050);
+Tag const UrgencyOrPriorityAlertsTrial(0x0040, 0xa057);
+Tag const SequencingIndicatorTrial(0x0040, 0xa060);
+Tag const DocumentIdentifierCodeSequenceTrial(0x0040, 0xa066);
+Tag const DocumentAuthorTrial(0x0040, 0xa067);
+Tag const DocumentAuthorIdentifierCodeSequenceTrial(0x0040, 0xa068);
+Tag const IdentifierCodeSequenceTrial(0x0040, 0xa070);
+Tag const VerifyingObserverSequence(0x0040, 0xa073);
+Tag const ObjectBinaryIdentifierTrial(0x0040, 0xa074);
+Tag const VerifyingObserverName(0x0040, 0xa075);
+Tag const DocumentingObserverIdentifierCodeSequenceTrial(0x0040, 0xa076);
+Tag const AuthorObserverSequence(0x0040, 0xa078);
+Tag const ParticipantSequence(0x0040, 0xa07a);
+Tag const CustodialOrganizationSequence(0x0040, 0xa07c);
+Tag const ParticipationType(0x0040, 0xa080);
+Tag const ParticipationDateTime(0x0040, 0xa082);
+Tag const ObserverType(0x0040, 0xa084);
+Tag const ProcedureIdentifierCodeSequenceTrial(0x0040, 0xa085);
+Tag const VerifyingObserverIdentificationCodeSequence(0x0040, 0xa088);
+Tag const ObjectDirectoryBinaryIdentifierTrial(0x0040, 0xa089);
+Tag const EquivalentCDADocumentSequence(0x0040, 0xa090);
+Tag const ReferencedWaveformChannels(0x0040, 0xa0b0);
+Tag const DateOfDocumentOrVerbalTransactionTrial(0x0040, 0xa110);
+Tag const TimeOfDocumentCreationOrVerbalTransactionTrial(0x0040, 0xa112);
+Tag const DateTime(0x0040, 0xa120);
+Tag const Date(0x0040, 0xa121);
+Tag const Time(0x0040, 0xa122);
+Tag const PersonName(0x0040, 0xa123);
+Tag const UID(0x0040, 0xa124);
+Tag const ReportStatusIDTrial(0x0040, 0xa125);
+Tag const TemporalRangeType(0x0040, 0xa130);
+Tag const ReferencedSamplePositions(0x0040, 0xa132);
+Tag const ReferencedFrameNumbers(0x0040, 0xa136);
+Tag const ReferencedTimeOffsets(0x0040, 0xa138);
+Tag const ReferencedDateTime(0x0040, 0xa13a);
+Tag const TextValue(0x0040, 0xa160);
+Tag const FloatingPointValue(0x0040, 0xa161);
+Tag const RationalNumeratorValue(0x0040, 0xa162);
+Tag const RationalDenominatorValue(0x0040, 0xa163);
+Tag const ObservationCategoryCodeSequenceTrial(0x0040, 0xa167);
+Tag const ConceptCodeSequence(0x0040, 0xa168);
+Tag const BibliographicCitationTrial(0x0040, 0xa16a);
+Tag const PurposeOfReferenceCodeSequence(0x0040, 0xa170);
+Tag const ObservationUID(0x0040, 0xa171);
+Tag const ReferencedObservationUIDTrial(0x0040, 0xa172);
+Tag const ReferencedObservationClassTrial(0x0040, 0xa173);
+Tag const ReferencedObjectObservationClassTrial(0x0040, 0xa174);
+Tag const AnnotationGroupNumber(0x0040, 0xa180);
+Tag const ObservationDateTrial(0x0040, 0xa192);
+Tag const ObservationTimeTrial(0x0040, 0xa193);
+Tag const MeasurementAutomationTrial(0x0040, 0xa194);
+Tag const ModifierCodeSequence(0x0040, 0xa195);
+Tag const IdentificationDescriptionTrial(0x0040, 0xa224);
+Tag const CoordinatesSetGeometricTypeTrial(0x0040, 0xa290);
+Tag const AlgorithmCodeSequenceTrial(0x0040, 0xa296);
+Tag const AlgorithmDescriptionTrial(0x0040, 0xa297);
+Tag const PixelCoordinatesSetTrial(0x0040, 0xa29a);
+Tag const MeasuredValueSequence(0x0040, 0xa300);
+Tag const NumericValueQualifierCodeSequence(0x0040, 0xa301);
+Tag const CurrentObserverTrial(0x0040, 0xa307);
+Tag const NumericValue(0x0040, 0xa30a);
+Tag const ReferencedAccessionSequenceTrial(0x0040, 0xa313);
+Tag const ReportStatusCommentTrial(0x0040, 0xa33a);
+Tag const ProcedureContextSequenceTrial(0x0040, 0xa340);
+Tag const VerbalSourceTrial(0x0040, 0xa352);
+Tag const AddressTrial(0x0040, 0xa353);
+Tag const TelephoneNumberTrial(0x0040, 0xa354);
+Tag const VerbalSourceIdentifierCodeSequenceTrial(0x0040, 0xa358);
+Tag const PredecessorDocumentsSequence(0x0040, 0xa360);
+Tag const ReferencedRequestSequence(0x0040, 0xa370);
+Tag const PerformedProcedureCodeSequence(0x0040, 0xa372);
+Tag const CurrentRequestedProcedureEvidenceSequence(0x0040, 0xa375);
+Tag const ReportDetailSequenceTrial(0x0040, 0xa380);
+Tag const PertinentOtherEvidenceSequence(0x0040, 0xa385);
+Tag const HL7StructuredDocumentReferenceSequence(0x0040, 0xa390);
+Tag const ObservationSubjectUIDTrial(0x0040, 0xa402);
+Tag const ObservationSubjectClassTrial(0x0040, 0xa403);
+Tag const ObservationSubjectTypeCodeSequenceTrial(0x0040, 0xa404);
+Tag const CompletionFlag(0x0040, 0xa491);
+Tag const CompletionFlagDescription(0x0040, 0xa492);
+Tag const VerificationFlag(0x0040, 0xa493);
+Tag const ArchiveRequested(0x0040, 0xa494);
+Tag const PreliminaryFlag(0x0040, 0xa496);
+Tag const ContentTemplateSequence(0x0040, 0xa504);
+Tag const IdenticalDocumentsSequence(0x0040, 0xa525);
+Tag const ObservationSubjectContextFlagTrial(0x0040, 0xa600);
+Tag const ObserverContextFlagTrial(0x0040, 0xa601);
+Tag const ProcedureContextFlagTrial(0x0040, 0xa603);
+Tag const ContentSequence(0x0040, 0xa730);
+Tag const RelationshipSequenceTrial(0x0040, 0xa731);
+Tag const RelationshipTypeCodeSequenceTrial(0x0040, 0xa732);
+Tag const LanguageCodeSequenceTrial(0x0040, 0xa744);
+Tag const UniformResourceLocatorTrial(0x0040, 0xa992);
+Tag const WaveformAnnotationSequence(0x0040, 0xb020);
+Tag const TemplateIdentifier(0x0040, 0xdb00);
+Tag const TemplateVersion(0x0040, 0xdb06);
+Tag const TemplateLocalVersion(0x0040, 0xdb07);
+Tag const TemplateExtensionFlag(0x0040, 0xdb0b);
+Tag const TemplateExtensionOrganizationUID(0x0040, 0xdb0c);
+Tag const TemplateExtensionCreatorUID(0x0040, 0xdb0d);
+Tag const ReferencedContentItemIdentifier(0x0040, 0xdb73);
+Tag const HL7InstanceIdentifier(0x0040, 0xe001);
+Tag const HL7DocumentEffectiveTime(0x0040, 0xe004);
+Tag const HL7DocumentTypeCodeSequence(0x0040, 0xe006);
+Tag const DocumentClassCodeSequence(0x0040, 0xe008);
+Tag const RetrieveURI(0x0040, 0xe010);
+Tag const RetrieveLocationUID(0x0040, 0xe011);
+Tag const TypeOfInstances(0x0040, 0xe020);
+Tag const DICOMRetrievalSequence(0x0040, 0xe021);
+Tag const DICOMMediaRetrievalSequence(0x0040, 0xe022);
+Tag const WADORetrievalSequence(0x0040, 0xe023);
+Tag const XDSRetrievalSequence(0x0040, 0xe024);
+Tag const WADORSRetrievalSequence(0x0040, 0xe025);
+Tag const RepositoryUniqueID(0x0040, 0xe030);
+Tag const HomeCommunityID(0x0040, 0xe031);
+Tag const DocumentTitle(0x0042, 0x0010);
+Tag const EncapsulatedDocument(0x0042, 0x0011);
+Tag const MIMETypeOfEncapsulatedDocument(0x0042, 0x0012);
+Tag const SourceInstanceSequence(0x0042, 0x0013);
+Tag const ListOfMIMETypes(0x0042, 0x0014);
+Tag const ProductPackageIdentifier(0x0044, 0x0001);
+Tag const SubstanceAdministrationApproval(0x0044, 0x0002);
+Tag const ApprovalStatusFurtherDescription(0x0044, 0x0003);
+Tag const ApprovalStatusDateTime(0x0044, 0x0004);
+Tag const ProductTypeCodeSequence(0x0044, 0x0007);
+Tag const ProductName(0x0044, 0x0008);
+Tag const ProductDescription(0x0044, 0x0009);
+Tag const ProductLotIdentifier(0x0044, 0x000a);
+Tag const ProductExpirationDateTime(0x0044, 0x000b);
+Tag const SubstanceAdministrationDateTime(0x0044, 0x0010);
+Tag const SubstanceAdministrationNotes(0x0044, 0x0011);
+Tag const SubstanceAdministrationDeviceID(0x0044, 0x0012);
+Tag const ProductParameterSequence(0x0044, 0x0013);
+Tag const SubstanceAdministrationParameterSequence(0x0044, 0x0019);
+Tag const LensDescription(0x0046, 0x0012);
+Tag const RightLensSequence(0x0046, 0x0014);
+Tag const LeftLensSequence(0x0046, 0x0015);
+Tag const UnspecifiedLateralityLensSequence(0x0046, 0x0016);
+Tag const CylinderSequence(0x0046, 0x0018);
+Tag const PrismSequence(0x0046, 0x0028);
+Tag const HorizontalPrismPower(0x0046, 0x0030);
+Tag const HorizontalPrismBase(0x0046, 0x0032);
+Tag const VerticalPrismPower(0x0046, 0x0034);
+Tag const VerticalPrismBase(0x0046, 0x0036);
+Tag const LensSegmentType(0x0046, 0x0038);
+Tag const OpticalTransmittance(0x0046, 0x0040);
+Tag const ChannelWidth(0x0046, 0x0042);
+Tag const PupilSize(0x0046, 0x0044);
+Tag const CornealSize(0x0046, 0x0046);
+Tag const AutorefractionRightEyeSequence(0x0046, 0x0050);
+Tag const AutorefractionLeftEyeSequence(0x0046, 0x0052);
+Tag const DistancePupillaryDistance(0x0046, 0x0060);
+Tag const NearPupillaryDistance(0x0046, 0x0062);
+Tag const IntermediatePupillaryDistance(0x0046, 0x0063);
+Tag const OtherPupillaryDistance(0x0046, 0x0064);
+Tag const KeratometryRightEyeSequence(0x0046, 0x0070);
+Tag const KeratometryLeftEyeSequence(0x0046, 0x0071);
+Tag const SteepKeratometricAxisSequence(0x0046, 0x0074);
+Tag const RadiusOfCurvature(0x0046, 0x0075);
+Tag const KeratometricPower(0x0046, 0x0076);
+Tag const KeratometricAxis(0x0046, 0x0077);
+Tag const FlatKeratometricAxisSequence(0x0046, 0x0080);
+Tag const BackgroundColor(0x0046, 0x0092);
+Tag const Optotype(0x0046, 0x0094);
+Tag const OptotypePresentation(0x0046, 0x0095);
+Tag const SubjectiveRefractionRightEyeSequence(0x0046, 0x0097);
+Tag const SubjectiveRefractionLeftEyeSequence(0x0046, 0x0098);
+Tag const AddNearSequence(0x0046, 0x0100);
+Tag const AddIntermediateSequence(0x0046, 0x0101);
+Tag const AddOtherSequence(0x0046, 0x0102);
+Tag const AddPower(0x0046, 0x0104);
+Tag const ViewingDistance(0x0046, 0x0106);
+Tag const VisualAcuityTypeCodeSequence(0x0046, 0x0121);
+Tag const VisualAcuityRightEyeSequence(0x0046, 0x0122);
+Tag const VisualAcuityLeftEyeSequence(0x0046, 0x0123);
+Tag const VisualAcuityBothEyesOpenSequence(0x0046, 0x0124);
+Tag const ViewingDistanceType(0x0046, 0x0125);
+Tag const VisualAcuityModifiers(0x0046, 0x0135);
+Tag const DecimalVisualAcuity(0x0046, 0x0137);
+Tag const OptotypeDetailedDefinition(0x0046, 0x0139);
+Tag const ReferencedRefractiveMeasurementsSequence(0x0046, 0x0145);
+Tag const SpherePower(0x0046, 0x0146);
+Tag const CylinderPower(0x0046, 0x0147);
+Tag const CornealTopographySurface(0x0046, 0x0201);
+Tag const CornealVertexLocation(0x0046, 0x0202);
+Tag const PupilCentroidXCoordinate(0x0046, 0x0203);
+Tag const PupilCentroidYCoordinate(0x0046, 0x0204);
+Tag const EquivalentPupilRadius(0x0046, 0x0205);
+Tag const CornealTopographyMapTypeCodeSequence(0x0046, 0x0207);
+Tag const VerticesOfTheOutlineOfPupil(0x0046, 0x0208);
+Tag const CornealTopographyMappingNormalsSequence(0x0046, 0x0210);
+Tag const MaximumCornealCurvatureSequence(0x0046, 0x0211);
+Tag const MaximumCornealCurvature(0x0046, 0x0212);
+Tag const MaximumCornealCurvatureLocation(0x0046, 0x0213);
+Tag const MinimumKeratometricSequence(0x0046, 0x0215);
+Tag const SimulatedKeratometricCylinderSequence(0x0046, 0x0218);
+Tag const AverageCornealPower(0x0046, 0x0220);
+Tag const CornealISValue(0x0046, 0x0224);
+Tag const AnalyzedArea(0x0046, 0x0227);
+Tag const SurfaceRegularityIndex(0x0046, 0x0230);
+Tag const SurfaceAsymmetryIndex(0x0046, 0x0232);
+Tag const CornealEccentricityIndex(0x0046, 0x0234);
+Tag const KeratoconusPredictionIndex(0x0046, 0x0236);
+Tag const DecimalPotentialVisualAcuity(0x0046, 0x0238);
+Tag const CornealTopographyMapQualityEvaluation(0x0046, 0x0242);
+Tag const SourceImageCornealProcessedDataSequence(0x0046, 0x0244);
+Tag const CornealPointLocation(0x0046, 0x0247);
+Tag const CornealPointEstimated(0x0046, 0x0248);
+Tag const AxialPower(0x0046, 0x0249);
+Tag const TangentialPower(0x0046, 0x0250);
+Tag const RefractivePower(0x0046, 0x0251);
+Tag const RelativeElevation(0x0046, 0x0252);
+Tag const CornealWavefront(0x0046, 0x0253);
+Tag const ImagedVolumeWidth(0x0048, 0x0001);
+Tag const ImagedVolumeHeight(0x0048, 0x0002);
+Tag const ImagedVolumeDepth(0x0048, 0x0003);
+Tag const TotalPixelMatrixColumns(0x0048, 0x0006);
+Tag const TotalPixelMatrixRows(0x0048, 0x0007);
+Tag const TotalPixelMatrixOriginSequence(0x0048, 0x0008);
+Tag const SpecimenLabelInImage(0x0048, 0x0010);
+Tag const FocusMethod(0x0048, 0x0011);
+Tag const ExtendedDepthOfField(0x0048, 0x0012);
+Tag const NumberOfFocalPlanes(0x0048, 0x0013);
+Tag const DistanceBetweenFocalPlanes(0x0048, 0x0014);
+Tag const RecommendedAbsentPixelCIELabValue(0x0048, 0x0015);
+Tag const IlluminatorTypeCodeSequence(0x0048, 0x0100);
+Tag const ImageOrientationSlide(0x0048, 0x0102);
+Tag const OpticalPathSequence(0x0048, 0x0105);
+Tag const OpticalPathIdentifier(0x0048, 0x0106);
+Tag const OpticalPathDescription(0x0048, 0x0107);
+Tag const IlluminationColorCodeSequence(0x0048, 0x0108);
+Tag const SpecimenReferenceSequence(0x0048, 0x0110);
+Tag const CondenserLensPower(0x0048, 0x0111);
+Tag const ObjectiveLensPower(0x0048, 0x0112);
+Tag const ObjectiveLensNumericalAperture(0x0048, 0x0113);
+Tag const PaletteColorLookupTableSequence(0x0048, 0x0120);
+Tag const ReferencedImageNavigationSequence(0x0048, 0x0200);
+Tag const TopLeftHandCornerOfLocalizerArea(0x0048, 0x0201);
+Tag const BottomRightHandCornerOfLocalizerArea(0x0048, 0x0202);
+Tag const OpticalPathIdentificationSequence(0x0048, 0x0207);
+Tag const PlanePositionSlideSequence(0x0048, 0x021a);
+Tag const ColumnPositionInTotalImagePixelMatrix(0x0048, 0x021e);
+Tag const RowPositionInTotalImagePixelMatrix(0x0048, 0x021f);
+Tag const PixelOriginInterpretation(0x0048, 0x0301);
+Tag const CalibrationImage(0x0050, 0x0004);
+Tag const DeviceSequence(0x0050, 0x0010);
+Tag const ContainerComponentTypeCodeSequence(0x0050, 0x0012);
+Tag const ContainerComponentThickness(0x0050, 0x0013);
+Tag const DeviceLength(0x0050, 0x0014);
+Tag const ContainerComponentWidth(0x0050, 0x0015);
+Tag const DeviceDiameter(0x0050, 0x0016);
+Tag const DeviceDiameterUnits(0x0050, 0x0017);
+Tag const DeviceVolume(0x0050, 0x0018);
+Tag const InterMarkerDistance(0x0050, 0x0019);
+Tag const ContainerComponentMaterial(0x0050, 0x001a);
+Tag const ContainerComponentID(0x0050, 0x001b);
+Tag const ContainerComponentLength(0x0050, 0x001c);
+Tag const ContainerComponentDiameter(0x0050, 0x001d);
+Tag const ContainerComponentDescription(0x0050, 0x001e);
+Tag const DeviceDescription(0x0050, 0x0020);
+Tag const ContrastBolusIngredientPercentByVolume(0x0052, 0x0001);
+Tag const OCTFocalDistance(0x0052, 0x0002);
+Tag const BeamSpotSize(0x0052, 0x0003);
+Tag const EffectiveRefractiveIndex(0x0052, 0x0004);
+Tag const OCTAcquisitionDomain(0x0052, 0x0006);
+Tag const OCTOpticalCenterWavelength(0x0052, 0x0007);
+Tag const AxialResolution(0x0052, 0x0008);
+Tag const RangingDepth(0x0052, 0x0009);
+Tag const ALineRate(0x0052, 0x0011);
+Tag const ALinesPerFrame(0x0052, 0x0012);
+Tag const CatheterRotationalRate(0x0052, 0x0013);
+Tag const ALinePixelSpacing(0x0052, 0x0014);
+Tag const ModeOfPercutaneousAccessSequence(0x0052, 0x0016);
+Tag const IntravascularOCTFrameTypeSequence(0x0052, 0x0025);
+Tag const OCTZOffsetApplied(0x0052, 0x0026);
+Tag const IntravascularFrameContentSequence(0x0052, 0x0027);
+Tag const IntravascularLongitudinalDistance(0x0052, 0x0028);
+Tag const IntravascularOCTFrameContentSequence(0x0052, 0x0029);
+Tag const OCTZOffsetCorrection(0x0052, 0x0030);
+Tag const CatheterDirectionOfRotation(0x0052, 0x0031);
+Tag const SeamLineLocation(0x0052, 0x0033);
+Tag const FirstALineLocation(0x0052, 0x0034);
+Tag const SeamLineIndex(0x0052, 0x0036);
+Tag const NumberOfPaddedALines(0x0052, 0x0038);
+Tag const InterpolationType(0x0052, 0x0039);
+Tag const RefractiveIndexApplied(0x0052, 0x003a);
+Tag const EnergyWindowVector(0x0054, 0x0010);
+Tag const NumberOfEnergyWindows(0x0054, 0x0011);
+Tag const EnergyWindowInformationSequence(0x0054, 0x0012);
+Tag const EnergyWindowRangeSequence(0x0054, 0x0013);
+Tag const EnergyWindowLowerLimit(0x0054, 0x0014);
+Tag const EnergyWindowUpperLimit(0x0054, 0x0015);
+Tag const RadiopharmaceuticalInformationSequence(0x0054, 0x0016);
+Tag const ResidualSyringeCounts(0x0054, 0x0017);
+Tag const EnergyWindowName(0x0054, 0x0018);
+Tag const DetectorVector(0x0054, 0x0020);
+Tag const NumberOfDetectors(0x0054, 0x0021);
+Tag const DetectorInformationSequence(0x0054, 0x0022);
+Tag const PhaseVector(0x0054, 0x0030);
+Tag const NumberOfPhases(0x0054, 0x0031);
+Tag const PhaseInformationSequence(0x0054, 0x0032);
+Tag const NumberOfFramesInPhase(0x0054, 0x0033);
+Tag const PhaseDelay(0x0054, 0x0036);
+Tag const PauseBetweenFrames(0x0054, 0x0038);
+Tag const PhaseDescription(0x0054, 0x0039);
+Tag const RotationVector(0x0054, 0x0050);
+Tag const NumberOfRotations(0x0054, 0x0051);
+Tag const RotationInformationSequence(0x0054, 0x0052);
+Tag const NumberOfFramesInRotation(0x0054, 0x0053);
+Tag const RRIntervalVector(0x0054, 0x0060);
+Tag const NumberOfRRIntervals(0x0054, 0x0061);
+Tag const GatedInformationSequence(0x0054, 0x0062);
+Tag const DataInformationSequence(0x0054, 0x0063);
+Tag const TimeSlotVector(0x0054, 0x0070);
+Tag const NumberOfTimeSlots(0x0054, 0x0071);
+Tag const TimeSlotInformationSequence(0x0054, 0x0072);
+Tag const TimeSlotTime(0x0054, 0x0073);
+Tag const SliceVector(0x0054, 0x0080);
+Tag const NumberOfSlices(0x0054, 0x0081);
+Tag const AngularViewVector(0x0054, 0x0090);
+Tag const TimeSliceVector(0x0054, 0x0100);
+Tag const NumberOfTimeSlices(0x0054, 0x0101);
+Tag const StartAngle(0x0054, 0x0200);
+Tag const TypeOfDetectorMotion(0x0054, 0x0202);
+Tag const TriggerVector(0x0054, 0x0210);
+Tag const NumberOfTriggersInPhase(0x0054, 0x0211);
+Tag const ViewCodeSequence(0x0054, 0x0220);
+Tag const ViewModifierCodeSequence(0x0054, 0x0222);
+Tag const RadionuclideCodeSequence(0x0054, 0x0300);
+Tag const AdministrationRouteCodeSequence(0x0054, 0x0302);
+Tag const RadiopharmaceuticalCodeSequence(0x0054, 0x0304);
+Tag const CalibrationDataSequence(0x0054, 0x0306);
+Tag const EnergyWindowNumber(0x0054, 0x0308);
+Tag const ImageID(0x0054, 0x0400);
+Tag const PatientOrientationCodeSequence(0x0054, 0x0410);
+Tag const PatientOrientationModifierCodeSequence(0x0054, 0x0412);
+Tag const PatientGantryRelationshipCodeSequence(0x0054, 0x0414);
+Tag const SliceProgressionDirection(0x0054, 0x0500);
+Tag const ScanProgressionDirection(0x0054, 0x0501);
+Tag const SeriesType(0x0054, 0x1000);
+Tag const Units(0x0054, 0x1001);
+Tag const CountsSource(0x0054, 0x1002);
+Tag const ReprojectionMethod(0x0054, 0x1004);
+Tag const SUVType(0x0054, 0x1006);
+Tag const RandomsCorrectionMethod(0x0054, 0x1100);
+Tag const AttenuationCorrectionMethod(0x0054, 0x1101);
+Tag const DecayCorrection(0x0054, 0x1102);
+Tag const ReconstructionMethod(0x0054, 0x1103);
+Tag const DetectorLinesOfResponseUsed(0x0054, 0x1104);
+Tag const ScatterCorrectionMethod(0x0054, 0x1105);
+Tag const AxialAcceptance(0x0054, 0x1200);
+Tag const AxialMash(0x0054, 0x1201);
+Tag const TransverseMash(0x0054, 0x1202);
+Tag const DetectorElementSize(0x0054, 0x1203);
+Tag const CoincidenceWindowWidth(0x0054, 0x1210);
+Tag const SecondaryCountsType(0x0054, 0x1220);
+Tag const FrameReferenceTime(0x0054, 0x1300);
+Tag const PrimaryPromptsCountsAccumulated(0x0054, 0x1310);
+Tag const SecondaryCountsAccumulated(0x0054, 0x1311);
+Tag const SliceSensitivityFactor(0x0054, 0x1320);
+Tag const DecayFactor(0x0054, 0x1321);
+Tag const DoseCalibrationFactor(0x0054, 0x1322);
+Tag const ScatterFractionFactor(0x0054, 0x1323);
+Tag const DeadTimeFactor(0x0054, 0x1324);
+Tag const ImageIndex(0x0054, 0x1330);
+Tag const CountsIncluded(0x0054, 0x1400);
+Tag const DeadTimeCorrectionFlag(0x0054, 0x1401);
+Tag const HistogramSequence(0x0060, 0x3000);
+Tag const HistogramNumberOfBins(0x0060, 0x3002);
+Tag const HistogramFirstBinValue(0x0060, 0x3004);
+Tag const HistogramLastBinValue(0x0060, 0x3006);
+Tag const HistogramBinWidth(0x0060, 0x3008);
+Tag const HistogramExplanation(0x0060, 0x3010);
+Tag const HistogramData(0x0060, 0x3020);
+Tag const SegmentationType(0x0062, 0x0001);
+Tag const SegmentSequence(0x0062, 0x0002);
+Tag const SegmentedPropertyCategoryCodeSequence(0x0062, 0x0003);
+Tag const SegmentNumber(0x0062, 0x0004);
+Tag const SegmentLabel(0x0062, 0x0005);
+Tag const SegmentDescription(0x0062, 0x0006);
+Tag const SegmentAlgorithmType(0x0062, 0x0008);
+Tag const SegmentAlgorithmName(0x0062, 0x0009);
+Tag const SegmentIdentificationSequence(0x0062, 0x000a);
+Tag const ReferencedSegmentNumber(0x0062, 0x000b);
+Tag const RecommendedDisplayGrayscaleValue(0x0062, 0x000c);
+Tag const RecommendedDisplayCIELabValue(0x0062, 0x000d);
+Tag const MaximumFractionalValue(0x0062, 0x000e);
+Tag const SegmentedPropertyTypeCodeSequence(0x0062, 0x000f);
+Tag const SegmentationFractionalType(0x0062, 0x0010);
+Tag const SegmentedPropertyTypeModifierCodeSequence(0x0062, 0x0011);
+Tag const UsedSegmentsSequence(0x0062, 0x0012);
+Tag const DeformableRegistrationSequence(0x0064, 0x0002);
+Tag const SourceFrameOfReferenceUID(0x0064, 0x0003);
+Tag const DeformableRegistrationGridSequence(0x0064, 0x0005);
+Tag const GridDimensions(0x0064, 0x0007);
+Tag const GridResolution(0x0064, 0x0008);
+Tag const VectorGridData(0x0064, 0x0009);
+Tag const PreDeformationMatrixRegistrationSequence(0x0064, 0x000f);
+Tag const PostDeformationMatrixRegistrationSequence(0x0064, 0x0010);
+Tag const NumberOfSurfaces(0x0066, 0x0001);
+Tag const SurfaceSequence(0x0066, 0x0002);
+Tag const SurfaceNumber(0x0066, 0x0003);
+Tag const SurfaceComments(0x0066, 0x0004);
+Tag const SurfaceProcessing(0x0066, 0x0009);
+Tag const SurfaceProcessingRatio(0x0066, 0x000a);
+Tag const SurfaceProcessingDescription(0x0066, 0x000b);
+Tag const RecommendedPresentationOpacity(0x0066, 0x000c);
+Tag const RecommendedPresentationType(0x0066, 0x000d);
+Tag const FiniteVolume(0x0066, 0x000e);
+Tag const Manifold(0x0066, 0x0010);
+Tag const SurfacePointsSequence(0x0066, 0x0011);
+Tag const SurfacePointsNormalsSequence(0x0066, 0x0012);
+Tag const SurfaceMeshPrimitivesSequence(0x0066, 0x0013);
+Tag const NumberOfSurfacePoints(0x0066, 0x0015);
+Tag const PointCoordinatesData(0x0066, 0x0016);
+Tag const PointPositionAccuracy(0x0066, 0x0017);
+Tag const MeanPointDistance(0x0066, 0x0018);
+Tag const MaximumPointDistance(0x0066, 0x0019);
+Tag const PointsBoundingBoxCoordinates(0x0066, 0x001a);
+Tag const AxisOfRotation(0x0066, 0x001b);
+Tag const CenterOfRotation(0x0066, 0x001c);
+Tag const NumberOfVectors(0x0066, 0x001e);
+Tag const VectorDimensionality(0x0066, 0x001f);
+Tag const VectorAccuracy(0x0066, 0x0020);
+Tag const VectorCoordinateData(0x0066, 0x0021);
+Tag const TrianglePointIndexList(0x0066, 0x0023);
+Tag const EdgePointIndexList(0x0066, 0x0024);
+Tag const VertexPointIndexList(0x0066, 0x0025);
+Tag const TriangleStripSequence(0x0066, 0x0026);
+Tag const TriangleFanSequence(0x0066, 0x0027);
+Tag const LineSequence(0x0066, 0x0028);
+Tag const PrimitivePointIndexList(0x0066, 0x0029);
+Tag const SurfaceCount(0x0066, 0x002a);
+Tag const ReferencedSurfaceSequence(0x0066, 0x002b);
+Tag const ReferencedSurfaceNumber(0x0066, 0x002c);
+Tag const SegmentSurfaceGenerationAlgorithmIdentificationSequence(0x0066, 0x002d);
+Tag const SegmentSurfaceSourceInstanceSequence(0x0066, 0x002e);
+Tag const AlgorithmFamilyCodeSequence(0x0066, 0x002f);
+Tag const AlgorithmNameCodeSequence(0x0066, 0x0030);
+Tag const AlgorithmVersion(0x0066, 0x0031);
+Tag const AlgorithmParameters(0x0066, 0x0032);
+Tag const FacetSequence(0x0066, 0x0034);
+Tag const SurfaceProcessingAlgorithmIdentificationSequence(0x0066, 0x0035);
+Tag const AlgorithmName(0x0066, 0x0036);
+Tag const RecommendedPointRadius(0x0066, 0x0037);
+Tag const RecommendedLineThickness(0x0066, 0x0038);
+Tag const LongPrimitivePointIndexList(0x0066, 0x0040);
+Tag const LongTrianglePointIndexList(0x0066, 0x0041);
+Tag const LongEdgePointIndexList(0x0066, 0x0042);
+Tag const LongVertexPointIndexList(0x0066, 0x0043);
+Tag const ImplantSize(0x0068, 0x6210);
+Tag const ImplantTemplateVersion(0x0068, 0x6221);
+Tag const ReplacedImplantTemplateSequence(0x0068, 0x6222);
+Tag const ImplantType(0x0068, 0x6223);
+Tag const DerivationImplantTemplateSequence(0x0068, 0x6224);
+Tag const OriginalImplantTemplateSequence(0x0068, 0x6225);
+Tag const EffectiveDateTime(0x0068, 0x6226);
+Tag const ImplantTargetAnatomySequence(0x0068, 0x6230);
+Tag const InformationFromManufacturerSequence(0x0068, 0x6260);
+Tag const NotificationFromManufacturerSequence(0x0068, 0x6265);
+Tag const InformationIssueDateTime(0x0068, 0x6270);
+Tag const InformationSummary(0x0068, 0x6280);
+Tag const ImplantRegulatoryDisapprovalCodeSequence(0x0068, 0x62a0);
+Tag const OverallTemplateSpatialTolerance(0x0068, 0x62a5);
+Tag const HPGLDocumentSequence(0x0068, 0x62c0);
+Tag const HPGLDocumentID(0x0068, 0x62d0);
+Tag const HPGLDocumentLabel(0x0068, 0x62d5);
+Tag const ViewOrientationCodeSequence(0x0068, 0x62e0);
+Tag const ViewOrientationModifier(0x0068, 0x62f0);
+Tag const HPGLDocumentScaling(0x0068, 0x62f2);
+Tag const HPGLDocument(0x0068, 0x6300);
+Tag const HPGLContourPenNumber(0x0068, 0x6310);
+Tag const HPGLPenSequence(0x0068, 0x6320);
+Tag const HPGLPenNumber(0x0068, 0x6330);
+Tag const HPGLPenLabel(0x0068, 0x6340);
+Tag const HPGLPenDescription(0x0068, 0x6345);
+Tag const RecommendedRotationPoint(0x0068, 0x6346);
+Tag const BoundingRectangle(0x0068, 0x6347);
+Tag const ImplantTemplate3DModelSurfaceNumber(0x0068, 0x6350);
+Tag const SurfaceModelDescriptionSequence(0x0068, 0x6360);
+Tag const SurfaceModelLabel(0x0068, 0x6380);
+Tag const SurfaceModelScalingFactor(0x0068, 0x6390);
+Tag const MaterialsCodeSequence(0x0068, 0x63a0);
+Tag const CoatingMaterialsCodeSequence(0x0068, 0x63a4);
+Tag const ImplantTypeCodeSequence(0x0068, 0x63a8);
+Tag const FixationMethodCodeSequence(0x0068, 0x63ac);
+Tag const MatingFeatureSetsSequence(0x0068, 0x63b0);
+Tag const MatingFeatureSetID(0x0068, 0x63c0);
+Tag const MatingFeatureSetLabel(0x0068, 0x63d0);
+Tag const MatingFeatureSequence(0x0068, 0x63e0);
+Tag const MatingFeatureID(0x0068, 0x63f0);
+Tag const MatingFeatureDegreeOfFreedomSequence(0x0068, 0x6400);
+Tag const DegreeOfFreedomID(0x0068, 0x6410);
+Tag const DegreeOfFreedomType(0x0068, 0x6420);
+Tag const TwoDMatingFeatureCoordinatesSequence(0x0068, 0x6430);
+Tag const ReferencedHPGLDocumentID(0x0068, 0x6440);
+Tag const TwoDMatingPoint(0x0068, 0x6450);
+Tag const TwoDMatingAxes(0x0068, 0x6460);
+Tag const TwoDDegreeOfFreedomSequence(0x0068, 0x6470);
+Tag const ThreeDDegreeOfFreedomAxis(0x0068, 0x6490);
+Tag const RangeOfFreedom(0x0068, 0x64a0);
+Tag const ThreeDMatingPoint(0x0068, 0x64c0);
+Tag const ThreeDMatingAxes(0x0068, 0x64d0);
+Tag const TwoDDegreeOfFreedomAxis(0x0068, 0x64f0);
+Tag const PlanningLandmarkPointSequence(0x0068, 0x6500);
+Tag const PlanningLandmarkLineSequence(0x0068, 0x6510);
+Tag const PlanningLandmarkPlaneSequence(0x0068, 0x6520);
+Tag const PlanningLandmarkID(0x0068, 0x6530);
+Tag const PlanningLandmarkDescription(0x0068, 0x6540);
+Tag const PlanningLandmarkIdentificationCodeSequence(0x0068, 0x6545);
+Tag const TwoDPointCoordinatesSequence(0x0068, 0x6550);
+Tag const TwoDPointCoordinates(0x0068, 0x6560);
+Tag const ThreeDPointCoordinates(0x0068, 0x6590);
+Tag const TwoDLineCoordinatesSequence(0x0068, 0x65a0);
+Tag const TwoDLineCoordinates(0x0068, 0x65b0);
+Tag const ThreeDLineCoordinates(0x0068, 0x65d0);
+Tag const TwoDPlaneCoordinatesSequence(0x0068, 0x65e0);
+Tag const TwoDPlaneIntersection(0x0068, 0x65f0);
+Tag const ThreeDPlaneOrigin(0x0068, 0x6610);
+Tag const ThreeDPlaneNormal(0x0068, 0x6620);
+Tag const GraphicAnnotationSequence(0x0070, 0x0001);
+Tag const GraphicLayer(0x0070, 0x0002);
+Tag const BoundingBoxAnnotationUnits(0x0070, 0x0003);
+Tag const AnchorPointAnnotationUnits(0x0070, 0x0004);
+Tag const GraphicAnnotationUnits(0x0070, 0x0005);
+Tag const UnformattedTextValue(0x0070, 0x0006);
+Tag const TextObjectSequence(0x0070, 0x0008);
+Tag const GraphicObjectSequence(0x0070, 0x0009);
+Tag const BoundingBoxTopLeftHandCorner(0x0070, 0x0010);
+Tag const BoundingBoxBottomRightHandCorner(0x0070, 0x0011);
+Tag const BoundingBoxTextHorizontalJustification(0x0070, 0x0012);
+Tag const AnchorPoint(0x0070, 0x0014);
+Tag const AnchorPointVisibility(0x0070, 0x0015);
+Tag const GraphicDimensions(0x0070, 0x0020);
+Tag const NumberOfGraphicPoints(0x0070, 0x0021);
+Tag const GraphicData(0x0070, 0x0022);
+Tag const GraphicType(0x0070, 0x0023);
+Tag const GraphicFilled(0x0070, 0x0024);
+Tag const ImageRotationRetired(0x0070, 0x0040);
+Tag const ImageHorizontalFlip(0x0070, 0x0041);
+Tag const ImageRotation(0x0070, 0x0042);
+Tag const DisplayedAreaTopLeftHandCornerTrial(0x0070, 0x0050);
+Tag const DisplayedAreaBottomRightHandCornerTrial(0x0070, 0x0051);
+Tag const DisplayedAreaTopLeftHandCorner(0x0070, 0x0052);
+Tag const DisplayedAreaBottomRightHandCorner(0x0070, 0x0053);
+Tag const DisplayedAreaSelectionSequence(0x0070, 0x005a);
+Tag const GraphicLayerSequence(0x0070, 0x0060);
+Tag const GraphicLayerOrder(0x0070, 0x0062);
+Tag const GraphicLayerRecommendedDisplayGrayscaleValue(0x0070, 0x0066);
+Tag const GraphicLayerRecommendedDisplayRGBValue(0x0070, 0x0067);
+Tag const GraphicLayerDescription(0x0070, 0x0068);
+Tag const ContentLabel(0x0070, 0x0080);
+Tag const ContentDescription(0x0070, 0x0081);
+Tag const PresentationCreationDate(0x0070, 0x0082);
+Tag const PresentationCreationTime(0x0070, 0x0083);
+Tag const ContentCreatorName(0x0070, 0x0084);
+Tag const ContentCreatorIdentificationCodeSequence(0x0070, 0x0086);
+Tag const AlternateContentDescriptionSequence(0x0070, 0x0087);
+Tag const PresentationSizeMode(0x0070, 0x0100);
+Tag const PresentationPixelSpacing(0x0070, 0x0101);
+Tag const PresentationPixelAspectRatio(0x0070, 0x0102);
+Tag const PresentationPixelMagnificationRatio(0x0070, 0x0103);
+Tag const GraphicGroupLabel(0x0070, 0x0207);
+Tag const GraphicGroupDescription(0x0070, 0x0208);
+Tag const CompoundGraphicSequence(0x0070, 0x0209);
+Tag const CompoundGraphicInstanceID(0x0070, 0x0226);
+Tag const FontName(0x0070, 0x0227);
+Tag const FontNameType(0x0070, 0x0228);
+Tag const CSSFontName(0x0070, 0x0229);
+Tag const RotationAngle(0x0070, 0x0230);
+Tag const TextStyleSequence(0x0070, 0x0231);
+Tag const LineStyleSequence(0x0070, 0x0232);
+Tag const FillStyleSequence(0x0070, 0x0233);
+Tag const GraphicGroupSequence(0x0070, 0x0234);
+Tag const TextColorCIELabValue(0x0070, 0x0241);
+Tag const HorizontalAlignment(0x0070, 0x0242);
+Tag const VerticalAlignment(0x0070, 0x0243);
+Tag const ShadowStyle(0x0070, 0x0244);
+Tag const ShadowOffsetX(0x0070, 0x0245);
+Tag const ShadowOffsetY(0x0070, 0x0246);
+Tag const ShadowColorCIELabValue(0x0070, 0x0247);
+Tag const Underlined(0x0070, 0x0248);
+Tag const Bold(0x0070, 0x0249);
+Tag const Italic(0x0070, 0x0250);
+Tag const PatternOnColorCIELabValue(0x0070, 0x0251);
+Tag const PatternOffColorCIELabValue(0x0070, 0x0252);
+Tag const LineThickness(0x0070, 0x0253);
+Tag const LineDashingStyle(0x0070, 0x0254);
+Tag const LinePattern(0x0070, 0x0255);
+Tag const FillPattern(0x0070, 0x0256);
+Tag const FillMode(0x0070, 0x0257);
+Tag const ShadowOpacity(0x0070, 0x0258);
+Tag const GapLength(0x0070, 0x0261);
+Tag const DiameterOfVisibility(0x0070, 0x0262);
+Tag const RotationPoint(0x0070, 0x0273);
+Tag const TickAlignment(0x0070, 0x0274);
+Tag const ShowTickLabel(0x0070, 0x0278);
+Tag const TickLabelAlignment(0x0070, 0x0279);
+Tag const CompoundGraphicUnits(0x0070, 0x0282);
+Tag const PatternOnOpacity(0x0070, 0x0284);
+Tag const PatternOffOpacity(0x0070, 0x0285);
+Tag const MajorTicksSequence(0x0070, 0x0287);
+Tag const TickPosition(0x0070, 0x0288);
+Tag const TickLabel(0x0070, 0x0289);
+Tag const CompoundGraphicType(0x0070, 0x0294);
+Tag const GraphicGroupID(0x0070, 0x0295);
+Tag const ShapeType(0x0070, 0x0306);
+Tag const RegistrationSequence(0x0070, 0x0308);
+Tag const MatrixRegistrationSequence(0x0070, 0x0309);
+Tag const MatrixSequence(0x0070, 0x030a);
+Tag const FrameOfReferenceTransformationMatrixType(0x0070, 0x030c);
+Tag const RegistrationTypeCodeSequence(0x0070, 0x030d);
+Tag const FiducialDescription(0x0070, 0x030f);
+Tag const FiducialIdentifier(0x0070, 0x0310);
+Tag const FiducialIdentifierCodeSequence(0x0070, 0x0311);
+Tag const ContourUncertaintyRadius(0x0070, 0x0312);
+Tag const UsedFiducialsSequence(0x0070, 0x0314);
+Tag const GraphicCoordinatesDataSequence(0x0070, 0x0318);
+Tag const FiducialUID(0x0070, 0x031a);
+Tag const FiducialSetSequence(0x0070, 0x031c);
+Tag const FiducialSequence(0x0070, 0x031e);
+Tag const GraphicLayerRecommendedDisplayCIELabValue(0x0070, 0x0401);
+Tag const BlendingSequence(0x0070, 0x0402);
+Tag const RelativeOpacity(0x0070, 0x0403);
+Tag const ReferencedSpatialRegistrationSequence(0x0070, 0x0404);
+Tag const BlendingPosition(0x0070, 0x0405);
+Tag const HangingProtocolName(0x0072, 0x0002);
+Tag const HangingProtocolDescription(0x0072, 0x0004);
+Tag const HangingProtocolLevel(0x0072, 0x0006);
+Tag const HangingProtocolCreator(0x0072, 0x0008);
+Tag const HangingProtocolCreationDateTime(0x0072, 0x000a);
+Tag const HangingProtocolDefinitionSequence(0x0072, 0x000c);
+Tag const HangingProtocolUserIdentificationCodeSequence(0x0072, 0x000e);
+Tag const HangingProtocolUserGroupName(0x0072, 0x0010);
+Tag const SourceHangingProtocolSequence(0x0072, 0x0012);
+Tag const NumberOfPriorsReferenced(0x0072, 0x0014);
+Tag const ImageSetsSequence(0x0072, 0x0020);
+Tag const ImageSetSelectorSequence(0x0072, 0x0022);
+Tag const ImageSetSelectorUsageFlag(0x0072, 0x0024);
+Tag const SelectorAttribute(0x0072, 0x0026);
+Tag const SelectorValueNumber(0x0072, 0x0028);
+Tag const TimeBasedImageSetsSequence(0x0072, 0x0030);
+Tag const ImageSetNumber(0x0072, 0x0032);
+Tag const ImageSetSelectorCategory(0x0072, 0x0034);
+Tag const RelativeTime(0x0072, 0x0038);
+Tag const RelativeTimeUnits(0x0072, 0x003a);
+Tag const AbstractPriorValue(0x0072, 0x003c);
+Tag const AbstractPriorCodeSequence(0x0072, 0x003e);
+Tag const ImageSetLabel(0x0072, 0x0040);
+Tag const SelectorAttributeVR(0x0072, 0x0050);
+Tag const SelectorSequencePointer(0x0072, 0x0052);
+Tag const SelectorSequencePointerPrivateCreator(0x0072, 0x0054);
+Tag const SelectorAttributePrivateCreator(0x0072, 0x0056);
+Tag const SelectorATValue(0x0072, 0x0060);
+Tag const SelectorCSValue(0x0072, 0x0062);
+Tag const SelectorISValue(0x0072, 0x0064);
+Tag const SelectorLOValue(0x0072, 0x0066);
+Tag const SelectorLTValue(0x0072, 0x0068);
+Tag const SelectorPNValue(0x0072, 0x006a);
+Tag const SelectorSHValue(0x0072, 0x006c);
+Tag const SelectorSTValue(0x0072, 0x006e);
+Tag const SelectorUTValue(0x0072, 0x0070);
+Tag const SelectorDSValue(0x0072, 0x0072);
+Tag const SelectorFDValue(0x0072, 0x0074);
+Tag const SelectorFLValue(0x0072, 0x0076);
+Tag const SelectorULValue(0x0072, 0x0078);
+Tag const SelectorUSValue(0x0072, 0x007a);
+Tag const SelectorSLValue(0x0072, 0x007c);
+Tag const SelectorSSValue(0x0072, 0x007e);
+Tag const SelectorUIValue(0x0072, 0x007f);
+Tag const SelectorCodeSequenceValue(0x0072, 0x0080);
+Tag const NumberOfScreens(0x0072, 0x0100);
+Tag const NominalScreenDefinitionSequence(0x0072, 0x0102);
+Tag const NumberOfVerticalPixels(0x0072, 0x0104);
+Tag const NumberOfHorizontalPixels(0x0072, 0x0106);
+Tag const DisplayEnvironmentSpatialPosition(0x0072, 0x0108);
+Tag const ScreenMinimumGrayscaleBitDepth(0x0072, 0x010a);
+Tag const ScreenMinimumColorBitDepth(0x0072, 0x010c);
+Tag const ApplicationMaximumRepaintTime(0x0072, 0x010e);
+Tag const DisplaySetsSequence(0x0072, 0x0200);
+Tag const DisplaySetNumber(0x0072, 0x0202);
+Tag const DisplaySetLabel(0x0072, 0x0203);
+Tag const DisplaySetPresentationGroup(0x0072, 0x0204);
+Tag const DisplaySetPresentationGroupDescription(0x0072, 0x0206);
+Tag const PartialDataDisplayHandling(0x0072, 0x0208);
+Tag const SynchronizedScrollingSequence(0x0072, 0x0210);
+Tag const DisplaySetScrollingGroup(0x0072, 0x0212);
+Tag const NavigationIndicatorSequence(0x0072, 0x0214);
+Tag const NavigationDisplaySet(0x0072, 0x0216);
+Tag const ReferenceDisplaySets(0x0072, 0x0218);
+Tag const ImageBoxesSequence(0x0072, 0x0300);
+Tag const ImageBoxNumber(0x0072, 0x0302);
+Tag const ImageBoxLayoutType(0x0072, 0x0304);
+Tag const ImageBoxTileHorizontalDimension(0x0072, 0x0306);
+Tag const ImageBoxTileVerticalDimension(0x0072, 0x0308);
+Tag const ImageBoxScrollDirection(0x0072, 0x0310);
+Tag const ImageBoxSmallScrollType(0x0072, 0x0312);
+Tag const ImageBoxSmallScrollAmount(0x0072, 0x0314);
+Tag const ImageBoxLargeScrollType(0x0072, 0x0316);
+Tag const ImageBoxLargeScrollAmount(0x0072, 0x0318);
+Tag const ImageBoxOverlapPriority(0x0072, 0x0320);
+Tag const CineRelativeToRealTime(0x0072, 0x0330);
+Tag const FilterOperationsSequence(0x0072, 0x0400);
+Tag const FilterByCategory(0x0072, 0x0402);
+Tag const FilterByAttributePresence(0x0072, 0x0404);
+Tag const FilterByOperator(0x0072, 0x0406);
+Tag const StructuredDisplayBackgroundCIELabValue(0x0072, 0x0420);
+Tag const EmptyImageBoxCIELabValue(0x0072, 0x0421);
+Tag const StructuredDisplayImageBoxSequence(0x0072, 0x0422);
+Tag const StructuredDisplayTextBoxSequence(0x0072, 0x0424);
+Tag const ReferencedFirstFrameSequence(0x0072, 0x0427);
+Tag const ImageBoxSynchronizationSequence(0x0072, 0x0430);
+Tag const SynchronizedImageBoxList(0x0072, 0x0432);
+Tag const TypeOfSynchronization(0x0072, 0x0434);
+Tag const BlendingOperationType(0x0072, 0x0500);
+Tag const ReformattingOperationType(0x0072, 0x0510);
+Tag const ReformattingThickness(0x0072, 0x0512);
+Tag const ReformattingInterval(0x0072, 0x0514);
+Tag const ReformattingOperationInitialViewDirection(0x0072, 0x0516);
+Tag const ThreeDRenderingType(0x0072, 0x0520);
+Tag const SortingOperationsSequence(0x0072, 0x0600);
+Tag const SortByCategory(0x0072, 0x0602);
+Tag const SortingDirection(0x0072, 0x0604);
+Tag const DisplaySetPatientOrientation(0x0072, 0x0700);
+Tag const VOIType(0x0072, 0x0702);
+Tag const PseudoColorType(0x0072, 0x0704);
+Tag const PseudoColorPaletteInstanceReferenceSequence(0x0072, 0x0705);
+Tag const ShowGrayscaleInverted(0x0072, 0x0706);
+Tag const ShowImageTrueSizeFlag(0x0072, 0x0710);
+Tag const ShowGraphicAnnotationFlag(0x0072, 0x0712);
+Tag const ShowPatientDemographicsFlag(0x0072, 0x0714);
+Tag const ShowAcquisitionTechniquesFlag(0x0072, 0x0716);
+Tag const DisplaySetHorizontalJustification(0x0072, 0x0717);
+Tag const DisplaySetVerticalJustification(0x0072, 0x0718);
+Tag const ContinuationStartMeterset(0x0074, 0x0120);
+Tag const ContinuationEndMeterset(0x0074, 0x0121);
+Tag const ProcedureStepState(0x0074, 0x1000);
+Tag const ProcedureStepProgressInformationSequence(0x0074, 0x1002);
+Tag const ProcedureStepProgress(0x0074, 0x1004);
+Tag const ProcedureStepProgressDescription(0x0074, 0x1006);
+Tag const ProcedureStepCommunicationsURISequence(0x0074, 0x1008);
+Tag const ContactURI(0x0074, 0x100a);
+Tag const ContactDisplayName(0x0074, 0x100c);
+Tag const ProcedureStepDiscontinuationReasonCodeSequence(0x0074, 0x100e);
+Tag const BeamTaskSequence(0x0074, 0x1020);
+Tag const BeamTaskType(0x0074, 0x1022);
+Tag const BeamOrderIndexTrial(0x0074, 0x1024);
+Tag const AutosequenceFlag(0x0074, 0x1025);
+Tag const TableTopVerticalAdjustedPosition(0x0074, 0x1026);
+Tag const TableTopLongitudinalAdjustedPosition(0x0074, 0x1027);
+Tag const TableTopLateralAdjustedPosition(0x0074, 0x1028);
+Tag const PatientSupportAdjustedAngle(0x0074, 0x102a);
+Tag const TableTopEccentricAdjustedAngle(0x0074, 0x102b);
+Tag const TableTopPitchAdjustedAngle(0x0074, 0x102c);
+Tag const TableTopRollAdjustedAngle(0x0074, 0x102d);
+Tag const DeliveryVerificationImageSequence(0x0074, 0x1030);
+Tag const VerificationImageTiming(0x0074, 0x1032);
+Tag const DoubleExposureFlag(0x0074, 0x1034);
+Tag const DoubleExposureOrdering(0x0074, 0x1036);
+Tag const DoubleExposureMetersetTrial(0x0074, 0x1038);
+Tag const DoubleExposureFieldDeltaTrial(0x0074, 0x103a);
+Tag const RelatedReferenceRTImageSequence(0x0074, 0x1040);
+Tag const GeneralMachineVerificationSequence(0x0074, 0x1042);
+Tag const ConventionalMachineVerificationSequence(0x0074, 0x1044);
+Tag const IonMachineVerificationSequence(0x0074, 0x1046);
+Tag const FailedAttributesSequence(0x0074, 0x1048);
+Tag const OverriddenAttributesSequence(0x0074, 0x104a);
+Tag const ConventionalControlPointVerificationSequence(0x0074, 0x104c);
+Tag const IonControlPointVerificationSequence(0x0074, 0x104e);
+Tag const AttributeOccurrenceSequence(0x0074, 0x1050);
+Tag const AttributeOccurrencePointer(0x0074, 0x1052);
+Tag const AttributeItemSelector(0x0074, 0x1054);
+Tag const AttributeOccurrencePrivateCreator(0x0074, 0x1056);
+Tag const SelectorSequencePointerItems(0x0074, 0x1057);
+Tag const ScheduledProcedureStepPriority(0x0074, 0x1200);
+Tag const WorklistLabel(0x0074, 0x1202);
+Tag const ProcedureStepLabel(0x0074, 0x1204);
+Tag const ScheduledProcessingParametersSequence(0x0074, 0x1210);
+Tag const PerformedProcessingParametersSequence(0x0074, 0x1212);
+Tag const UnifiedProcedureStepPerformedProcedureSequence(0x0074, 0x1216);
+Tag const RelatedProcedureStepSequence(0x0074, 0x1220);
+Tag const ProcedureStepRelationshipType(0x0074, 0x1222);
+Tag const ReplacedProcedureStepSequence(0x0074, 0x1224);
+Tag const DeletionLock(0x0074, 0x1230);
+Tag const ReceivingAE(0x0074, 0x1234);
+Tag const RequestingAE(0x0074, 0x1236);
+Tag const ReasonForCancellation(0x0074, 0x1238);
+Tag const SCPStatus(0x0074, 0x1242);
+Tag const SubscriptionListStatus(0x0074, 0x1244);
+Tag const UnifiedProcedureStepListStatus(0x0074, 0x1246);
+Tag const BeamOrderIndex(0x0074, 0x1324);
+Tag const DoubleExposureMeterset(0x0074, 0x1338);
+Tag const DoubleExposureFieldDelta(0x0074, 0x133a);
+Tag const ImplantAssemblyTemplateName(0x0076, 0x0001);
+Tag const ImplantAssemblyTemplateIssuer(0x0076, 0x0003);
+Tag const ImplantAssemblyTemplateVersion(0x0076, 0x0006);
+Tag const ReplacedImplantAssemblyTemplateSequence(0x0076, 0x0008);
+Tag const ImplantAssemblyTemplateType(0x0076, 0x000a);
+Tag const OriginalImplantAssemblyTemplateSequence(0x0076, 0x000c);
+Tag const DerivationImplantAssemblyTemplateSequence(0x0076, 0x000e);
+Tag const ImplantAssemblyTemplateTargetAnatomySequence(0x0076, 0x0010);
+Tag const ProcedureTypeCodeSequence(0x0076, 0x0020);
+Tag const SurgicalTechnique(0x0076, 0x0030);
+Tag const ComponentTypesSequence(0x0076, 0x0032);
+Tag const ComponentTypeCodeSequence(0x0076, 0x0034);
+Tag const ExclusiveComponentType(0x0076, 0x0036);
+Tag const MandatoryComponentType(0x0076, 0x0038);
+Tag const ComponentSequence(0x0076, 0x0040);
+Tag const ComponentID(0x0076, 0x0055);
+Tag const ComponentAssemblySequence(0x0076, 0x0060);
+Tag const Component1ReferencedID(0x0076, 0x0070);
+Tag const Component1ReferencedMatingFeatureSetID(0x0076, 0x0080);
+Tag const Component1ReferencedMatingFeatureID(0x0076, 0x0090);
+Tag const Component2ReferencedID(0x0076, 0x00a0);
+Tag const Component2ReferencedMatingFeatureSetID(0x0076, 0x00b0);
+Tag const Component2ReferencedMatingFeatureID(0x0076, 0x00c0);
+Tag const ImplantTemplateGroupName(0x0078, 0x0001);
+Tag const ImplantTemplateGroupDescription(0x0078, 0x0010);
+Tag const ImplantTemplateGroupIssuer(0x0078, 0x0020);
+Tag const ImplantTemplateGroupVersion(0x0078, 0x0024);
+Tag const ReplacedImplantTemplateGroupSequence(0x0078, 0x0026);
+Tag const ImplantTemplateGroupTargetAnatomySequence(0x0078, 0x0028);
+Tag const ImplantTemplateGroupMembersSequence(0x0078, 0x002a);
+Tag const ImplantTemplateGroupMemberID(0x0078, 0x002e);
+Tag const ThreeDImplantTemplateGroupMemberMatchingPoint(0x0078, 0x0050);
+Tag const ThreeDImplantTemplateGroupMemberMatchingAxes(0x0078, 0x0060);
+Tag const ImplantTemplateGroupMemberMatching2DCoordinatesSequence(0x0078, 0x0070);
+Tag const TwoDImplantTemplateGroupMemberMatchingPoint(0x0078, 0x0090);
+Tag const TwoDImplantTemplateGroupMemberMatchingAxes(0x0078, 0x00a0);
+Tag const ImplantTemplateGroupVariationDimensionSequence(0x0078, 0x00b0);
+Tag const ImplantTemplateGroupVariationDimensionName(0x0078, 0x00b2);
+Tag const ImplantTemplateGroupVariationDimensionRankSequence(0x0078, 0x00b4);
+Tag const ReferencedImplantTemplateGroupMemberID(0x0078, 0x00b6);
+Tag const ImplantTemplateGroupVariationDimensionRank(0x0078, 0x00b8);
+Tag const SurfaceScanAcquisitionTypeCodeSequence(0x0080, 0x0001);
+Tag const SurfaceScanModeCodeSequence(0x0080, 0x0002);
+Tag const RegistrationMethodCodeSequence(0x0080, 0x0003);
+Tag const ShotDurationTime(0x0080, 0x0004);
+Tag const ShotOffsetTime(0x0080, 0x0005);
+Tag const SurfacePointPresentationValueData(0x0080, 0x0006);
+Tag const SurfacePointColorCIELabValueData(0x0080, 0x0007);
+Tag const UVMappingSequence(0x0080, 0x0008);
+Tag const TextureLabel(0x0080, 0x0009);
+Tag const UValueData(0x0080, 0x0010);
+Tag const VValueData(0x0080, 0x0011);
+Tag const ReferencedTextureSequence(0x0080, 0x0012);
+Tag const ReferencedSurfaceDataSequence(0x0080, 0x0013);
+Tag const StorageMediaFileSetID(0x0088, 0x0130);
+Tag const StorageMediaFileSetUID(0x0088, 0x0140);
+Tag const IconImageSequence(0x0088, 0x0200);
+Tag const TopicTitle(0x0088, 0x0904);
+Tag const TopicSubject(0x0088, 0x0906);
+Tag const TopicAuthor(0x0088, 0x0910);
+Tag const TopicKeywords(0x0088, 0x0912);
+Tag const SOPInstanceStatus(0x0100, 0x0410);
+Tag const SOPAuthorizationDateTime(0x0100, 0x0420);
+Tag const SOPAuthorizationComment(0x0100, 0x0424);
+Tag const AuthorizationEquipmentCertificationNumber(0x0100, 0x0426);
+Tag const MACIDNumber(0x0400, 0x0005);
+Tag const MACCalculationTransferSyntaxUID(0x0400, 0x0010);
+Tag const MACAlgorithm(0x0400, 0x0015);
+Tag const DataElementsSigned(0x0400, 0x0020);
+Tag const DigitalSignatureUID(0x0400, 0x0100);
+Tag const DigitalSignatureDateTime(0x0400, 0x0105);
+Tag const CertificateType(0x0400, 0x0110);
+Tag const CertificateOfSigner(0x0400, 0x0115);
+Tag const Signature(0x0400, 0x0120);
+Tag const CertifiedTimestampType(0x0400, 0x0305);
+Tag const CertifiedTimestamp(0x0400, 0x0310);
+Tag const DigitalSignaturePurposeCodeSequence(0x0400, 0x0401);
+Tag const ReferencedDigitalSignatureSequence(0x0400, 0x0402);
+Tag const ReferencedSOPInstanceMACSequence(0x0400, 0x0403);
+Tag const MAC(0x0400, 0x0404);
+Tag const EncryptedAttributesSequence(0x0400, 0x0500);
+Tag const EncryptedContentTransferSyntaxUID(0x0400, 0x0510);
+Tag const EncryptedContent(0x0400, 0x0520);
+Tag const ModifiedAttributesSequence(0x0400, 0x0550);
+Tag const OriginalAttributesSequence(0x0400, 0x0561);
+Tag const AttributeModificationDateTime(0x0400, 0x0562);
+Tag const ModifyingSystem(0x0400, 0x0563);
+Tag const SourceOfPreviousValues(0x0400, 0x0564);
+Tag const ReasonForTheAttributeModification(0x0400, 0x0565);
+Tag const NumberOfCopies(0x2000, 0x0010);
+Tag const PrinterConfigurationSequence(0x2000, 0x001e);
+Tag const PrintPriority(0x2000, 0x0020);
+Tag const MediumType(0x2000, 0x0030);
+Tag const FilmDestination(0x2000, 0x0040);
+Tag const FilmSessionLabel(0x2000, 0x0050);
+Tag const MemoryAllocation(0x2000, 0x0060);
+Tag const MaximumMemoryAllocation(0x2000, 0x0061);
+Tag const ColorImagePrintingFlag(0x2000, 0x0062);
+Tag const CollationFlag(0x2000, 0x0063);
+Tag const AnnotationFlag(0x2000, 0x0065);
+Tag const ImageOverlayFlag(0x2000, 0x0067);
+Tag const PresentationLUTFlag(0x2000, 0x0069);
+Tag const ImageBoxPresentationLUTFlag(0x2000, 0x006a);
+Tag const MemoryBitDepth(0x2000, 0x00a0);
+Tag const PrintingBitDepth(0x2000, 0x00a1);
+Tag const MediaInstalledSequence(0x2000, 0x00a2);
+Tag const OtherMediaAvailableSequence(0x2000, 0x00a4);
+Tag const SupportedImageDisplayFormatsSequence(0x2000, 0x00a8);
+Tag const ReferencedFilmBoxSequence(0x2000, 0x0500);
+Tag const ReferencedStoredPrintSequence(0x2000, 0x0510);
+Tag const ImageDisplayFormat(0x2010, 0x0010);
+Tag const AnnotationDisplayFormatID(0x2010, 0x0030);
+Tag const FilmOrientation(0x2010, 0x0040);
+Tag const FilmSizeID(0x2010, 0x0050);
+Tag const PrinterResolutionID(0x2010, 0x0052);
+Tag const DefaultPrinterResolutionID(0x2010, 0x0054);
+Tag const MagnificationType(0x2010, 0x0060);
+Tag const SmoothingType(0x2010, 0x0080);
+Tag const DefaultMagnificationType(0x2010, 0x00a6);
+Tag const OtherMagnificationTypesAvailable(0x2010, 0x00a7);
+Tag const DefaultSmoothingType(0x2010, 0x00a8);
+Tag const OtherSmoothingTypesAvailable(0x2010, 0x00a9);
+Tag const BorderDensity(0x2010, 0x0100);
+Tag const EmptyImageDensity(0x2010, 0x0110);
+Tag const MinDensity(0x2010, 0x0120);
+Tag const MaxDensity(0x2010, 0x0130);
+Tag const Trim(0x2010, 0x0140);
+Tag const ConfigurationInformation(0x2010, 0x0150);
+Tag const ConfigurationInformationDescription(0x2010, 0x0152);
+Tag const MaximumCollatedFilms(0x2010, 0x0154);
+Tag const Illumination(0x2010, 0x015e);
+Tag const ReflectedAmbientLight(0x2010, 0x0160);
+Tag const PrinterPixelSpacing(0x2010, 0x0376);
+Tag const ReferencedFilmSessionSequence(0x2010, 0x0500);
+Tag const ReferencedImageBoxSequence(0x2010, 0x0510);
+Tag const ReferencedBasicAnnotationBoxSequence(0x2010, 0x0520);
+Tag const ImageBoxPosition(0x2020, 0x0010);
+Tag const Polarity(0x2020, 0x0020);
+Tag const RequestedImageSize(0x2020, 0x0030);
+Tag const RequestedDecimateCropBehavior(0x2020, 0x0040);
+Tag const RequestedResolutionID(0x2020, 0x0050);
+Tag const RequestedImageSizeFlag(0x2020, 0x00a0);
+Tag const DecimateCropResult(0x2020, 0x00a2);
+Tag const BasicGrayscaleImageSequence(0x2020, 0x0110);
+Tag const BasicColorImageSequence(0x2020, 0x0111);
+Tag const ReferencedImageOverlayBoxSequence(0x2020, 0x0130);
+Tag const ReferencedVOILUTBoxSequence(0x2020, 0x0140);
+Tag const AnnotationPosition(0x2030, 0x0010);
+Tag const TextString(0x2030, 0x0020);
+Tag const ReferencedOverlayPlaneSequence(0x2040, 0x0010);
+Tag const ReferencedOverlayPlaneGroups(0x2040, 0x0011);
+Tag const OverlayPixelDataSequence(0x2040, 0x0020);
+Tag const OverlayMagnificationType(0x2040, 0x0060);
+Tag const OverlaySmoothingType(0x2040, 0x0070);
+Tag const OverlayOrImageMagnification(0x2040, 0x0072);
+Tag const MagnifyToNumberOfColumns(0x2040, 0x0074);
+Tag const OverlayForegroundDensity(0x2040, 0x0080);
+Tag const OverlayBackgroundDensity(0x2040, 0x0082);
+Tag const OverlayMode(0x2040, 0x0090);
+Tag const ThresholdDensity(0x2040, 0x0100);
+Tag const ReferencedImageBoxSequenceRetired(0x2040, 0x0500);
+Tag const PresentationLUTSequence(0x2050, 0x0010);
+Tag const PresentationLUTShape(0x2050, 0x0020);
+Tag const ReferencedPresentationLUTSequence(0x2050, 0x0500);
+Tag const PrintJobID(0x2100, 0x0010);
+Tag const ExecutionStatus(0x2100, 0x0020);
+Tag const ExecutionStatusInfo(0x2100, 0x0030);
+Tag const CreationDate(0x2100, 0x0040);
+Tag const CreationTime(0x2100, 0x0050);
+Tag const Originator(0x2100, 0x0070);
+Tag const DestinationAE(0x2100, 0x0140);
+Tag const OwnerID(0x2100, 0x0160);
+Tag const NumberOfFilms(0x2100, 0x0170);
+Tag const ReferencedPrintJobSequencePullStoredPrint(0x2100, 0x0500);
+Tag const PrinterStatus(0x2110, 0x0010);
+Tag const PrinterStatusInfo(0x2110, 0x0020);
+Tag const PrinterName(0x2110, 0x0030);
+Tag const PrintQueueID(0x2110, 0x0099);
+Tag const QueueStatus(0x2120, 0x0010);
+Tag const PrintJobDescriptionSequence(0x2120, 0x0050);
+Tag const ReferencedPrintJobSequence(0x2120, 0x0070);
+Tag const PrintManagementCapabilitiesSequence(0x2130, 0x0010);
+Tag const PrinterCharacteristicsSequence(0x2130, 0x0015);
+Tag const FilmBoxContentSequence(0x2130, 0x0030);
+Tag const ImageBoxContentSequence(0x2130, 0x0040);
+Tag const AnnotationContentSequence(0x2130, 0x0050);
+Tag const ImageOverlayBoxContentSequence(0x2130, 0x0060);
+Tag const PresentationLUTContentSequence(0x2130, 0x0080);
+Tag const ProposedStudySequence(0x2130, 0x00a0);
+Tag const OriginalImageSequence(0x2130, 0x00c0);
+Tag const LabelUsingInformationExtractedFromInstances(0x2200, 0x0001);
+Tag const LabelText(0x2200, 0x0002);
+Tag const LabelStyleSelection(0x2200, 0x0003);
+Tag const MediaDisposition(0x2200, 0x0004);
+Tag const BarcodeValue(0x2200, 0x0005);
+Tag const BarcodeSymbology(0x2200, 0x0006);
+Tag const AllowMediaSplitting(0x2200, 0x0007);
+Tag const IncludeNonDICOMObjects(0x2200, 0x0008);
+Tag const IncludeDisplayApplication(0x2200, 0x0009);
+Tag const PreserveCompositeInstancesAfterMediaCreation(0x2200, 0x000a);
+Tag const TotalNumberOfPiecesOfMediaCreated(0x2200, 0x000b);
+Tag const RequestedMediaApplicationProfile(0x2200, 0x000c);
+Tag const ReferencedStorageMediaSequence(0x2200, 0x000d);
+Tag const FailureAttributes(0x2200, 0x000e);
+Tag const AllowLossyCompression(0x2200, 0x000f);
+Tag const RequestPriority(0x2200, 0x0020);
+Tag const RTImageLabel(0x3002, 0x0002);
+Tag const RTImageName(0x3002, 0x0003);
+Tag const RTImageDescription(0x3002, 0x0004);
+Tag const ReportedValuesOrigin(0x3002, 0x000a);
+Tag const RTImagePlane(0x3002, 0x000c);
+Tag const XRayImageReceptorTranslation(0x3002, 0x000d);
+Tag const XRayImageReceptorAngle(0x3002, 0x000e);
+Tag const RTImageOrientation(0x3002, 0x0010);
+Tag const ImagePlanePixelSpacing(0x3002, 0x0011);
+Tag const RTImagePosition(0x3002, 0x0012);
+Tag const RadiationMachineName(0x3002, 0x0020);
+Tag const RadiationMachineSAD(0x3002, 0x0022);
+Tag const RadiationMachineSSD(0x3002, 0x0024);
+Tag const RTImageSID(0x3002, 0x0026);
+Tag const SourceToReferenceObjectDistance(0x3002, 0x0028);
+Tag const FractionNumber(0x3002, 0x0029);
+Tag const ExposureSequence(0x3002, 0x0030);
+Tag const MetersetExposure(0x3002, 0x0032);
+Tag const DiaphragmPosition(0x3002, 0x0034);
+Tag const FluenceMapSequence(0x3002, 0x0040);
+Tag const FluenceDataSource(0x3002, 0x0041);
+Tag const FluenceDataScale(0x3002, 0x0042);
+Tag const PrimaryFluenceModeSequence(0x3002, 0x0050);
+Tag const FluenceMode(0x3002, 0x0051);
+Tag const FluenceModeID(0x3002, 0x0052);
+Tag const DVHType(0x3004, 0x0001);
+Tag const DoseUnits(0x3004, 0x0002);
+Tag const DoseType(0x3004, 0x0004);
+Tag const SpatialTransformOfDose(0x3004, 0x0005);
+Tag const DoseComment(0x3004, 0x0006);
+Tag const NormalizationPoint(0x3004, 0x0008);
+Tag const DoseSummationType(0x3004, 0x000a);
+Tag const GridFrameOffsetVector(0x3004, 0x000c);
+Tag const DoseGridScaling(0x3004, 0x000e);
+Tag const RTDoseROISequence(0x3004, 0x0010);
+Tag const DoseValue(0x3004, 0x0012);
+Tag const TissueHeterogeneityCorrection(0x3004, 0x0014);
+Tag const DVHNormalizationPoint(0x3004, 0x0040);
+Tag const DVHNormalizationDoseValue(0x3004, 0x0042);
+Tag const DVHSequence(0x3004, 0x0050);
+Tag const DVHDoseScaling(0x3004, 0x0052);
+Tag const DVHVolumeUnits(0x3004, 0x0054);
+Tag const DVHNumberOfBins(0x3004, 0x0056);
+Tag const DVHData(0x3004, 0x0058);
+Tag const DVHReferencedROISequence(0x3004, 0x0060);
+Tag const DVHROIContributionType(0x3004, 0x0062);
+Tag const DVHMinimumDose(0x3004, 0x0070);
+Tag const DVHMaximumDose(0x3004, 0x0072);
+Tag const DVHMeanDose(0x3004, 0x0074);
+Tag const StructureSetLabel(0x3006, 0x0002);
+Tag const StructureSetName(0x3006, 0x0004);
+Tag const StructureSetDescription(0x3006, 0x0006);
+Tag const StructureSetDate(0x3006, 0x0008);
+Tag const StructureSetTime(0x3006, 0x0009);
+Tag const ReferencedFrameOfReferenceSequence(0x3006, 0x0010);
+Tag const RTReferencedStudySequence(0x3006, 0x0012);
+Tag const RTReferencedSeriesSequence(0x3006, 0x0014);
+Tag const ContourImageSequence(0x3006, 0x0016);
+Tag const PredecessorStructureSetSequence(0x3006, 0x0018);
+Tag const StructureSetROISequence(0x3006, 0x0020);
+Tag const ROINumber(0x3006, 0x0022);
+Tag const ReferencedFrameOfReferenceUID(0x3006, 0x0024);
+Tag const ROIName(0x3006, 0x0026);
+Tag const ROIDescription(0x3006, 0x0028);
+Tag const ROIDisplayColor(0x3006, 0x002a);
+Tag const ROIVolume(0x3006, 0x002c);
+Tag const RTRelatedROISequence(0x3006, 0x0030);
+Tag const RTROIRelationship(0x3006, 0x0033);
+Tag const ROIGenerationAlgorithm(0x3006, 0x0036);
+Tag const ROIGenerationDescription(0x3006, 0x0038);
+Tag const ROIContourSequence(0x3006, 0x0039);
+Tag const ContourSequence(0x3006, 0x0040);
+Tag const ContourGeometricType(0x3006, 0x0042);
+Tag const ContourSlabThickness(0x3006, 0x0044);
+Tag const ContourOffsetVector(0x3006, 0x0045);
+Tag const NumberOfContourPoints(0x3006, 0x0046);
+Tag const ContourNumber(0x3006, 0x0048);
+Tag const AttachedContours(0x3006, 0x0049);
+Tag const ContourData(0x3006, 0x0050);
+Tag const RTROIObservationsSequence(0x3006, 0x0080);
+Tag const ObservationNumber(0x3006, 0x0082);
+Tag const ReferencedROINumber(0x3006, 0x0084);
+Tag const ROIObservationLabel(0x3006, 0x0085);
+Tag const RTROIIdentificationCodeSequence(0x3006, 0x0086);
+Tag const ROIObservationDescription(0x3006, 0x0088);
+Tag const RelatedRTROIObservationsSequence(0x3006, 0x00a0);
+Tag const RTROIInterpretedType(0x3006, 0x00a4);
+Tag const ROIInterpreter(0x3006, 0x00a6);
+Tag const ROIPhysicalPropertiesSequence(0x3006, 0x00b0);
+Tag const ROIPhysicalProperty(0x3006, 0x00b2);
+Tag const ROIPhysicalPropertyValue(0x3006, 0x00b4);
+Tag const ROIElementalCompositionSequence(0x3006, 0x00b6);
+Tag const ROIElementalCompositionAtomicNumber(0x3006, 0x00b7);
+Tag const ROIElementalCompositionAtomicMassFraction(0x3006, 0x00b8);
+Tag const AdditionalRTROIIdentificationCodeSequence(0x3006, 0x00b9);
+Tag const FrameOfReferenceRelationshipSequence(0x3006, 0x00c0);
+Tag const RelatedFrameOfReferenceUID(0x3006, 0x00c2);
+Tag const FrameOfReferenceTransformationType(0x3006, 0x00c4);
+Tag const FrameOfReferenceTransformationMatrix(0x3006, 0x00c6);
+Tag const FrameOfReferenceTransformationComment(0x3006, 0x00c8);
+Tag const MeasuredDoseReferenceSequence(0x3008, 0x0010);
+Tag const MeasuredDoseDescription(0x3008, 0x0012);
+Tag const MeasuredDoseType(0x3008, 0x0014);
+Tag const MeasuredDoseValue(0x3008, 0x0016);
+Tag const TreatmentSessionBeamSequence(0x3008, 0x0020);
+Tag const TreatmentSessionIonBeamSequence(0x3008, 0x0021);
+Tag const CurrentFractionNumber(0x3008, 0x0022);
+Tag const TreatmentControlPointDate(0x3008, 0x0024);
+Tag const TreatmentControlPointTime(0x3008, 0x0025);
+Tag const TreatmentTerminationStatus(0x3008, 0x002a);
+Tag const TreatmentTerminationCode(0x3008, 0x002b);
+Tag const TreatmentVerificationStatus(0x3008, 0x002c);
+Tag const ReferencedTreatmentRecordSequence(0x3008, 0x0030);
+Tag const SpecifiedPrimaryMeterset(0x3008, 0x0032);
+Tag const SpecifiedSecondaryMeterset(0x3008, 0x0033);
+Tag const DeliveredPrimaryMeterset(0x3008, 0x0036);
+Tag const DeliveredSecondaryMeterset(0x3008, 0x0037);
+Tag const SpecifiedTreatmentTime(0x3008, 0x003a);
+Tag const DeliveredTreatmentTime(0x3008, 0x003b);
+Tag const ControlPointDeliverySequence(0x3008, 0x0040);
+Tag const IonControlPointDeliverySequence(0x3008, 0x0041);
+Tag const SpecifiedMeterset(0x3008, 0x0042);
+Tag const DeliveredMeterset(0x3008, 0x0044);
+Tag const MetersetRateSet(0x3008, 0x0045);
+Tag const MetersetRateDelivered(0x3008, 0x0046);
+Tag const ScanSpotMetersetsDelivered(0x3008, 0x0047);
+Tag const DoseRateDelivered(0x3008, 0x0048);
+Tag const TreatmentSummaryCalculatedDoseReferenceSequence(0x3008, 0x0050);
+Tag const CumulativeDoseToDoseReference(0x3008, 0x0052);
+Tag const FirstTreatmentDate(0x3008, 0x0054);
+Tag const MostRecentTreatmentDate(0x3008, 0x0056);
+Tag const NumberOfFractionsDelivered(0x3008, 0x005a);
+Tag const OverrideSequence(0x3008, 0x0060);
+Tag const ParameterSequencePointer(0x3008, 0x0061);
+Tag const OverrideParameterPointer(0x3008, 0x0062);
+Tag const ParameterItemIndex(0x3008, 0x0063);
+Tag const MeasuredDoseReferenceNumber(0x3008, 0x0064);
+Tag const ParameterPointer(0x3008, 0x0065);
+Tag const OverrideReason(0x3008, 0x0066);
+Tag const CorrectedParameterSequence(0x3008, 0x0068);
+Tag const CorrectionValue(0x3008, 0x006a);
+Tag const CalculatedDoseReferenceSequence(0x3008, 0x0070);
+Tag const CalculatedDoseReferenceNumber(0x3008, 0x0072);
+Tag const CalculatedDoseReferenceDescription(0x3008, 0x0074);
+Tag const CalculatedDoseReferenceDoseValue(0x3008, 0x0076);
+Tag const StartMeterset(0x3008, 0x0078);
+Tag const EndMeterset(0x3008, 0x007a);
+Tag const ReferencedMeasuredDoseReferenceSequence(0x3008, 0x0080);
+Tag const ReferencedMeasuredDoseReferenceNumber(0x3008, 0x0082);
+Tag const ReferencedCalculatedDoseReferenceSequence(0x3008, 0x0090);
+Tag const ReferencedCalculatedDoseReferenceNumber(0x3008, 0x0092);
+Tag const BeamLimitingDeviceLeafPairsSequence(0x3008, 0x00a0);
+Tag const RecordedWedgeSequence(0x3008, 0x00b0);
+Tag const RecordedCompensatorSequence(0x3008, 0x00c0);
+Tag const RecordedBlockSequence(0x3008, 0x00d0);
+Tag const TreatmentSummaryMeasuredDoseReferenceSequence(0x3008, 0x00e0);
+Tag const RecordedSnoutSequence(0x3008, 0x00f0);
+Tag const RecordedRangeShifterSequence(0x3008, 0x00f2);
+Tag const RecordedLateralSpreadingDeviceSequence(0x3008, 0x00f4);
+Tag const RecordedRangeModulatorSequence(0x3008, 0x00f6);
+Tag const RecordedSourceSequence(0x3008, 0x0100);
+Tag const SourceSerialNumber(0x3008, 0x0105);
+Tag const TreatmentSessionApplicationSetupSequence(0x3008, 0x0110);
+Tag const ApplicationSetupCheck(0x3008, 0x0116);
+Tag const RecordedBrachyAccessoryDeviceSequence(0x3008, 0x0120);
+Tag const ReferencedBrachyAccessoryDeviceNumber(0x3008, 0x0122);
+Tag const RecordedChannelSequence(0x3008, 0x0130);
+Tag const SpecifiedChannelTotalTime(0x3008, 0x0132);
+Tag const DeliveredChannelTotalTime(0x3008, 0x0134);
+Tag const SpecifiedNumberOfPulses(0x3008, 0x0136);
+Tag const DeliveredNumberOfPulses(0x3008, 0x0138);
+Tag const SpecifiedPulseRepetitionInterval(0x3008, 0x013a);
+Tag const DeliveredPulseRepetitionInterval(0x3008, 0x013c);
+Tag const RecordedSourceApplicatorSequence(0x3008, 0x0140);
+Tag const ReferencedSourceApplicatorNumber(0x3008, 0x0142);
+Tag const RecordedChannelShieldSequence(0x3008, 0x0150);
+Tag const ReferencedChannelShieldNumber(0x3008, 0x0152);
+Tag const BrachyControlPointDeliveredSequence(0x3008, 0x0160);
+Tag const SafePositionExitDate(0x3008, 0x0162);
+Tag const SafePositionExitTime(0x3008, 0x0164);
+Tag const SafePositionReturnDate(0x3008, 0x0166);
+Tag const SafePositionReturnTime(0x3008, 0x0168);
+Tag const PulseSpecificBrachyControlPointDeliveredSequence(0x3008, 0x0171);
+Tag const PulseNumber(0x3008, 0x0172);
+Tag const BrachyPulseControlPointDeliveredSequence(0x3008, 0x0173);
+Tag const CurrentTreatmentStatus(0x3008, 0x0200);
+Tag const TreatmentStatusComment(0x3008, 0x0202);
+Tag const FractionGroupSummarySequence(0x3008, 0x0220);
+Tag const ReferencedFractionNumber(0x3008, 0x0223);
+Tag const FractionGroupType(0x3008, 0x0224);
+Tag const BeamStopperPosition(0x3008, 0x0230);
+Tag const FractionStatusSummarySequence(0x3008, 0x0240);
+Tag const TreatmentDate(0x3008, 0x0250);
+Tag const TreatmentTime(0x3008, 0x0251);
+Tag const RTPlanLabel(0x300a, 0x0002);
+Tag const RTPlanName(0x300a, 0x0003);
+Tag const RTPlanDescription(0x300a, 0x0004);
+Tag const RTPlanDate(0x300a, 0x0006);
+Tag const RTPlanTime(0x300a, 0x0007);
+Tag const TreatmentProtocols(0x300a, 0x0009);
+Tag const PlanIntent(0x300a, 0x000a);
+Tag const TreatmentSites(0x300a, 0x000b);
+Tag const RTPlanGeometry(0x300a, 0x000c);
+Tag const PrescriptionDescription(0x300a, 0x000e);
+Tag const DoseReferenceSequence(0x300a, 0x0010);
+Tag const DoseReferenceNumber(0x300a, 0x0012);
+Tag const DoseReferenceUID(0x300a, 0x0013);
+Tag const DoseReferenceStructureType(0x300a, 0x0014);
+Tag const NominalBeamEnergyUnit(0x300a, 0x0015);
+Tag const DoseReferenceDescription(0x300a, 0x0016);
+Tag const DoseReferencePointCoordinates(0x300a, 0x0018);
+Tag const NominalPriorDose(0x300a, 0x001a);
+Tag const DoseReferenceType(0x300a, 0x0020);
+Tag const ConstraintWeight(0x300a, 0x0021);
+Tag const DeliveryWarningDose(0x300a, 0x0022);
+Tag const DeliveryMaximumDose(0x300a, 0x0023);
+Tag const TargetMinimumDose(0x300a, 0x0025);
+Tag const TargetPrescriptionDose(0x300a, 0x0026);
+Tag const TargetMaximumDose(0x300a, 0x0027);
+Tag const TargetUnderdoseVolumeFraction(0x300a, 0x0028);
+Tag const OrganAtRiskFullVolumeDose(0x300a, 0x002a);
+Tag const OrganAtRiskLimitDose(0x300a, 0x002b);
+Tag const OrganAtRiskMaximumDose(0x300a, 0x002c);
+Tag const OrganAtRiskOverdoseVolumeFraction(0x300a, 0x002d);
+Tag const ToleranceTableSequence(0x300a, 0x0040);
+Tag const ToleranceTableNumber(0x300a, 0x0042);
+Tag const ToleranceTableLabel(0x300a, 0x0043);
+Tag const GantryAngleTolerance(0x300a, 0x0044);
+Tag const BeamLimitingDeviceAngleTolerance(0x300a, 0x0046);
+Tag const BeamLimitingDeviceToleranceSequence(0x300a, 0x0048);
+Tag const BeamLimitingDevicePositionTolerance(0x300a, 0x004a);
+Tag const SnoutPositionTolerance(0x300a, 0x004b);
+Tag const PatientSupportAngleTolerance(0x300a, 0x004c);
+Tag const TableTopEccentricAngleTolerance(0x300a, 0x004e);
+Tag const TableTopPitchAngleTolerance(0x300a, 0x004f);
+Tag const TableTopRollAngleTolerance(0x300a, 0x0050);
+Tag const TableTopVerticalPositionTolerance(0x300a, 0x0051);
+Tag const TableTopLongitudinalPositionTolerance(0x300a, 0x0052);
+Tag const TableTopLateralPositionTolerance(0x300a, 0x0053);
+Tag const RTPlanRelationship(0x300a, 0x0055);
+Tag const FractionGroupSequence(0x300a, 0x0070);
+Tag const FractionGroupNumber(0x300a, 0x0071);
+Tag const FractionGroupDescription(0x300a, 0x0072);
+Tag const NumberOfFractionsPlanned(0x300a, 0x0078);
+Tag const NumberOfFractionPatternDigitsPerDay(0x300a, 0x0079);
+Tag const RepeatFractionCycleLength(0x300a, 0x007a);
+Tag const FractionPattern(0x300a, 0x007b);
+Tag const NumberOfBeams(0x300a, 0x0080);
+Tag const BeamDoseSpecificationPoint(0x300a, 0x0082);
+Tag const BeamDose(0x300a, 0x0084);
+Tag const BeamMeterset(0x300a, 0x0086);
+Tag const BeamDosePointDepth(0x300a, 0x0088);
+Tag const BeamDosePointEquivalentDepth(0x300a, 0x0089);
+Tag const BeamDosePointSSD(0x300a, 0x008a);
+Tag const BeamDoseMeaning(0x300a, 0x008b);
+Tag const BeamDoseVerificationControlPointSequence(0x300a, 0x008c);
+Tag const AverageBeamDosePointDepth(0x300a, 0x008d);
+Tag const AverageBeamDosePointEquivalentDepth(0x300a, 0x008e);
+Tag const AverageBeamDosePointSSD(0x300a, 0x008f);
+Tag const NumberOfBrachyApplicationSetups(0x300a, 0x00a0);
+Tag const BrachyApplicationSetupDoseSpecificationPoint(0x300a, 0x00a2);
+Tag const BrachyApplicationSetupDose(0x300a, 0x00a4);
+Tag const BeamSequence(0x300a, 0x00b0);
+Tag const TreatmentMachineName(0x300a, 0x00b2);
+Tag const PrimaryDosimeterUnit(0x300a, 0x00b3);
+Tag const SourceAxisDistance(0x300a, 0x00b4);
+Tag const BeamLimitingDeviceSequence(0x300a, 0x00b6);
+Tag const RTBeamLimitingDeviceType(0x300a, 0x00b8);
+Tag const SourceToBeamLimitingDeviceDistance(0x300a, 0x00ba);
+Tag const IsocenterToBeamLimitingDeviceDistance(0x300a, 0x00bb);
+Tag const NumberOfLeafJawPairs(0x300a, 0x00bc);
+Tag const LeafPositionBoundaries(0x300a, 0x00be);
+Tag const BeamNumber(0x300a, 0x00c0);
+Tag const BeamName(0x300a, 0x00c2);
+Tag const BeamDescription(0x300a, 0x00c3);
+Tag const BeamType(0x300a, 0x00c4);
+Tag const BeamDeliveryDurationLimit(0x300a, 0x00c5);
+Tag const RadiationType(0x300a, 0x00c6);
+Tag const HighDoseTechniqueType(0x300a, 0x00c7);
+Tag const ReferenceImageNumber(0x300a, 0x00c8);
+Tag const PlannedVerificationImageSequence(0x300a, 0x00ca);
+Tag const ImagingDeviceSpecificAcquisitionParameters(0x300a, 0x00cc);
+Tag const TreatmentDeliveryType(0x300a, 0x00ce);
+Tag const NumberOfWedges(0x300a, 0x00d0);
+Tag const WedgeSequence(0x300a, 0x00d1);
+Tag const WedgeNumber(0x300a, 0x00d2);
+Tag const WedgeType(0x300a, 0x00d3);
+Tag const WedgeID(0x300a, 0x00d4);
+Tag const WedgeAngle(0x300a, 0x00d5);
+Tag const WedgeFactor(0x300a, 0x00d6);
+Tag const TotalWedgeTrayWaterEquivalentThickness(0x300a, 0x00d7);
+Tag const WedgeOrientation(0x300a, 0x00d8);
+Tag const IsocenterToWedgeTrayDistance(0x300a, 0x00d9);
+Tag const SourceToWedgeTrayDistance(0x300a, 0x00da);
+Tag const WedgeThinEdgePosition(0x300a, 0x00db);
+Tag const BolusID(0x300a, 0x00dc);
+Tag const BolusDescription(0x300a, 0x00dd);
+Tag const EffectiveWedgeAngle(0x300a, 0x00de);
+Tag const NumberOfCompensators(0x300a, 0x00e0);
+Tag const MaterialID(0x300a, 0x00e1);
+Tag const TotalCompensatorTrayFactor(0x300a, 0x00e2);
+Tag const CompensatorSequence(0x300a, 0x00e3);
+Tag const CompensatorNumber(0x300a, 0x00e4);
+Tag const CompensatorID(0x300a, 0x00e5);
+Tag const SourceToCompensatorTrayDistance(0x300a, 0x00e6);
+Tag const CompensatorRows(0x300a, 0x00e7);
+Tag const CompensatorColumns(0x300a, 0x00e8);
+Tag const CompensatorPixelSpacing(0x300a, 0x00e9);
+Tag const CompensatorPosition(0x300a, 0x00ea);
+Tag const CompensatorTransmissionData(0x300a, 0x00eb);
+Tag const CompensatorThicknessData(0x300a, 0x00ec);
+Tag const NumberOfBoli(0x300a, 0x00ed);
+Tag const CompensatorType(0x300a, 0x00ee);
+Tag const CompensatorTrayID(0x300a, 0x00ef);
+Tag const NumberOfBlocks(0x300a, 0x00f0);
+Tag const TotalBlockTrayFactor(0x300a, 0x00f2);
+Tag const TotalBlockTrayWaterEquivalentThickness(0x300a, 0x00f3);
+Tag const BlockSequence(0x300a, 0x00f4);
+Tag const BlockTrayID(0x300a, 0x00f5);
+Tag const SourceToBlockTrayDistance(0x300a, 0x00f6);
+Tag const IsocenterToBlockTrayDistance(0x300a, 0x00f7);
+Tag const BlockType(0x300a, 0x00f8);
+Tag const AccessoryCode(0x300a, 0x00f9);
+Tag const BlockDivergence(0x300a, 0x00fa);
+Tag const BlockMountingPosition(0x300a, 0x00fb);
+Tag const BlockNumber(0x300a, 0x00fc);
+Tag const BlockName(0x300a, 0x00fe);
+Tag const BlockThickness(0x300a, 0x0100);
+Tag const BlockTransmission(0x300a, 0x0102);
+Tag const BlockNumberOfPoints(0x300a, 0x0104);
+Tag const BlockData(0x300a, 0x0106);
+Tag const ApplicatorSequence(0x300a, 0x0107);
+Tag const ApplicatorID(0x300a, 0x0108);
+Tag const ApplicatorType(0x300a, 0x0109);
+Tag const ApplicatorDescription(0x300a, 0x010a);
+Tag const CumulativeDoseReferenceCoefficient(0x300a, 0x010c);
+Tag const FinalCumulativeMetersetWeight(0x300a, 0x010e);
+Tag const NumberOfControlPoints(0x300a, 0x0110);
+Tag const ControlPointSequence(0x300a, 0x0111);
+Tag const ControlPointIndex(0x300a, 0x0112);
+Tag const NominalBeamEnergy(0x300a, 0x0114);
+Tag const DoseRateSet(0x300a, 0x0115);
+Tag const WedgePositionSequence(0x300a, 0x0116);
+Tag const WedgePosition(0x300a, 0x0118);
+Tag const BeamLimitingDevicePositionSequence(0x300a, 0x011a);
+Tag const LeafJawPositions(0x300a, 0x011c);
+Tag const GantryAngle(0x300a, 0x011e);
+Tag const GantryRotationDirection(0x300a, 0x011f);
+Tag const BeamLimitingDeviceAngle(0x300a, 0x0120);
+Tag const BeamLimitingDeviceRotationDirection(0x300a, 0x0121);
+Tag const PatientSupportAngle(0x300a, 0x0122);
+Tag const PatientSupportRotationDirection(0x300a, 0x0123);
+Tag const TableTopEccentricAxisDistance(0x300a, 0x0124);
+Tag const TableTopEccentricAngle(0x300a, 0x0125);
+Tag const TableTopEccentricRotationDirection(0x300a, 0x0126);
+Tag const TableTopVerticalPosition(0x300a, 0x0128);
+Tag const TableTopLongitudinalPosition(0x300a, 0x0129);
+Tag const TableTopLateralPosition(0x300a, 0x012a);
+Tag const IsocenterPosition(0x300a, 0x012c);
+Tag const SurfaceEntryPoint(0x300a, 0x012e);
+Tag const SourceToSurfaceDistance(0x300a, 0x0130);
+Tag const AverageBeamDosePointSourceToExternalContourSurfaceDistance(0x300a, 0x0131);
+Tag const SourceToExternalContourDistance(0x300a, 0x0132);
+Tag const ExternalContourEntryPoint(0x300a, 0x0133);
+Tag const CumulativeMetersetWeight(0x300a, 0x0134);
+Tag const TableTopPitchAngle(0x300a, 0x0140);
+Tag const TableTopPitchRotationDirection(0x300a, 0x0142);
+Tag const TableTopRollAngle(0x300a, 0x0144);
+Tag const TableTopRollRotationDirection(0x300a, 0x0146);
+Tag const HeadFixationAngle(0x300a, 0x0148);
+Tag const GantryPitchAngle(0x300a, 0x014a);
+Tag const GantryPitchRotationDirection(0x300a, 0x014c);
+Tag const GantryPitchAngleTolerance(0x300a, 0x014e);
+Tag const PatientSetupSequence(0x300a, 0x0180);
+Tag const PatientSetupNumber(0x300a, 0x0182);
+Tag const PatientSetupLabel(0x300a, 0x0183);
+Tag const PatientAdditionalPosition(0x300a, 0x0184);
+Tag const FixationDeviceSequence(0x300a, 0x0190);
+Tag const FixationDeviceType(0x300a, 0x0192);
+Tag const FixationDeviceLabel(0x300a, 0x0194);
+Tag const FixationDeviceDescription(0x300a, 0x0196);
+Tag const FixationDevicePosition(0x300a, 0x0198);
+Tag const FixationDevicePitchAngle(0x300a, 0x0199);
+Tag const FixationDeviceRollAngle(0x300a, 0x019a);
+Tag const ShieldingDeviceSequence(0x300a, 0x01a0);
+Tag const ShieldingDeviceType(0x300a, 0x01a2);
+Tag const ShieldingDeviceLabel(0x300a, 0x01a4);
+Tag const ShieldingDeviceDescription(0x300a, 0x01a6);
+Tag const ShieldingDevicePosition(0x300a, 0x01a8);
+Tag const SetupTechnique(0x300a, 0x01b0);
+Tag const SetupTechniqueDescription(0x300a, 0x01b2);
+Tag const SetupDeviceSequence(0x300a, 0x01b4);
+Tag const SetupDeviceType(0x300a, 0x01b6);
+Tag const SetupDeviceLabel(0x300a, 0x01b8);
+Tag const SetupDeviceDescription(0x300a, 0x01ba);
+Tag const SetupDeviceParameter(0x300a, 0x01bc);
+Tag const SetupReferenceDescription(0x300a, 0x01d0);
+Tag const TableTopVerticalSetupDisplacement(0x300a, 0x01d2);
+Tag const TableTopLongitudinalSetupDisplacement(0x300a, 0x01d4);
+Tag const TableTopLateralSetupDisplacement(0x300a, 0x01d6);
+Tag const BrachyTreatmentTechnique(0x300a, 0x0200);
+Tag const BrachyTreatmentType(0x300a, 0x0202);
+Tag const TreatmentMachineSequence(0x300a, 0x0206);
+Tag const SourceSequence(0x300a, 0x0210);
+Tag const SourceNumber(0x300a, 0x0212);
+Tag const SourceType(0x300a, 0x0214);
+Tag const SourceManufacturer(0x300a, 0x0216);
+Tag const ActiveSourceDiameter(0x300a, 0x0218);
+Tag const ActiveSourceLength(0x300a, 0x021a);
+Tag const SourceModelID(0x300a, 0x021b);
+Tag const SourceDescription(0x300a, 0x021c);
+Tag const SourceEncapsulationNominalThickness(0x300a, 0x0222);
+Tag const SourceEncapsulationNominalTransmission(0x300a, 0x0224);
+Tag const SourceIsotopeName(0x300a, 0x0226);
+Tag const SourceIsotopeHalfLife(0x300a, 0x0228);
+Tag const SourceStrengthUnits(0x300a, 0x0229);
+Tag const ReferenceAirKermaRate(0x300a, 0x022a);
+Tag const SourceStrength(0x300a, 0x022b);
+Tag const SourceStrengthReferenceDate(0x300a, 0x022c);
+Tag const SourceStrengthReferenceTime(0x300a, 0x022e);
+Tag const ApplicationSetupSequence(0x300a, 0x0230);
+Tag const ApplicationSetupType(0x300a, 0x0232);
+Tag const ApplicationSetupNumber(0x300a, 0x0234);
+Tag const ApplicationSetupName(0x300a, 0x0236);
+Tag const ApplicationSetupManufacturer(0x300a, 0x0238);
+Tag const TemplateNumber(0x300a, 0x0240);
+Tag const TemplateType(0x300a, 0x0242);
+Tag const TemplateName(0x300a, 0x0244);
+Tag const TotalReferenceAirKerma(0x300a, 0x0250);
+Tag const BrachyAccessoryDeviceSequence(0x300a, 0x0260);
+Tag const BrachyAccessoryDeviceNumber(0x300a, 0x0262);
+Tag const BrachyAccessoryDeviceID(0x300a, 0x0263);
+Tag const BrachyAccessoryDeviceType(0x300a, 0x0264);
+Tag const BrachyAccessoryDeviceName(0x300a, 0x0266);
+Tag const BrachyAccessoryDeviceNominalThickness(0x300a, 0x026a);
+Tag const BrachyAccessoryDeviceNominalTransmission(0x300a, 0x026c);
+Tag const ChannelSequence(0x300a, 0x0280);
+Tag const ChannelNumber(0x300a, 0x0282);
+Tag const ChannelLength(0x300a, 0x0284);
+Tag const ChannelTotalTime(0x300a, 0x0286);
+Tag const SourceMovementType(0x300a, 0x0288);
+Tag const NumberOfPulses(0x300a, 0x028a);
+Tag const PulseRepetitionInterval(0x300a, 0x028c);
+Tag const SourceApplicatorNumber(0x300a, 0x0290);
+Tag const SourceApplicatorID(0x300a, 0x0291);
+Tag const SourceApplicatorType(0x300a, 0x0292);
+Tag const SourceApplicatorName(0x300a, 0x0294);
+Tag const SourceApplicatorLength(0x300a, 0x0296);
+Tag const SourceApplicatorManufacturer(0x300a, 0x0298);
+Tag const SourceApplicatorWallNominalThickness(0x300a, 0x029c);
+Tag const SourceApplicatorWallNominalTransmission(0x300a, 0x029e);
+Tag const SourceApplicatorStepSize(0x300a, 0x02a0);
+Tag const TransferTubeNumber(0x300a, 0x02a2);
+Tag const TransferTubeLength(0x300a, 0x02a4);
+Tag const ChannelShieldSequence(0x300a, 0x02b0);
+Tag const ChannelShieldNumber(0x300a, 0x02b2);
+Tag const ChannelShieldID(0x300a, 0x02b3);
+Tag const ChannelShieldName(0x300a, 0x02b4);
+Tag const ChannelShieldNominalThickness(0x300a, 0x02b8);
+Tag const ChannelShieldNominalTransmission(0x300a, 0x02ba);
+Tag const FinalCumulativeTimeWeight(0x300a, 0x02c8);
+Tag const BrachyControlPointSequence(0x300a, 0x02d0);
+Tag const ControlPointRelativePosition(0x300a, 0x02d2);
+Tag const ControlPoint3DPosition(0x300a, 0x02d4);
+Tag const CumulativeTimeWeight(0x300a, 0x02d6);
+Tag const CompensatorDivergence(0x300a, 0x02e0);
+Tag const CompensatorMountingPosition(0x300a, 0x02e1);
+Tag const SourceToCompensatorDistance(0x300a, 0x02e2);
+Tag const TotalCompensatorTrayWaterEquivalentThickness(0x300a, 0x02e3);
+Tag const IsocenterToCompensatorTrayDistance(0x300a, 0x02e4);
+Tag const CompensatorColumnOffset(0x300a, 0x02e5);
+Tag const IsocenterToCompensatorDistances(0x300a, 0x02e6);
+Tag const CompensatorRelativeStoppingPowerRatio(0x300a, 0x02e7);
+Tag const CompensatorMillingToolDiameter(0x300a, 0x02e8);
+Tag const IonRangeCompensatorSequence(0x300a, 0x02ea);
+Tag const CompensatorDescription(0x300a, 0x02eb);
+Tag const RadiationMassNumber(0x300a, 0x0302);
+Tag const RadiationAtomicNumber(0x300a, 0x0304);
+Tag const RadiationChargeState(0x300a, 0x0306);
+Tag const ScanMode(0x300a, 0x0308);
+Tag const VirtualSourceAxisDistances(0x300a, 0x030a);
+Tag const SnoutSequence(0x300a, 0x030c);
+Tag const SnoutPosition(0x300a, 0x030d);
+Tag const SnoutID(0x300a, 0x030f);
+Tag const NumberOfRangeShifters(0x300a, 0x0312);
+Tag const RangeShifterSequence(0x300a, 0x0314);
+Tag const RangeShifterNumber(0x300a, 0x0316);
+Tag const RangeShifterID(0x300a, 0x0318);
+Tag const RangeShifterType(0x300a, 0x0320);
+Tag const RangeShifterDescription(0x300a, 0x0322);
+Tag const NumberOfLateralSpreadingDevices(0x300a, 0x0330);
+Tag const LateralSpreadingDeviceSequence(0x300a, 0x0332);
+Tag const LateralSpreadingDeviceNumber(0x300a, 0x0334);
+Tag const LateralSpreadingDeviceID(0x300a, 0x0336);
+Tag const LateralSpreadingDeviceType(0x300a, 0x0338);
+Tag const LateralSpreadingDeviceDescription(0x300a, 0x033a);
+Tag const LateralSpreadingDeviceWaterEquivalentThickness(0x300a, 0x033c);
+Tag const NumberOfRangeModulators(0x300a, 0x0340);
+Tag const RangeModulatorSequence(0x300a, 0x0342);
+Tag const RangeModulatorNumber(0x300a, 0x0344);
+Tag const RangeModulatorID(0x300a, 0x0346);
+Tag const RangeModulatorType(0x300a, 0x0348);
+Tag const RangeModulatorDescription(0x300a, 0x034a);
+Tag const BeamCurrentModulationID(0x300a, 0x034c);
+Tag const PatientSupportType(0x300a, 0x0350);
+Tag const PatientSupportID(0x300a, 0x0352);
+Tag const PatientSupportAccessoryCode(0x300a, 0x0354);
+Tag const FixationLightAzimuthalAngle(0x300a, 0x0356);
+Tag const FixationLightPolarAngle(0x300a, 0x0358);
+Tag const MetersetRate(0x300a, 0x035a);
+Tag const RangeShifterSettingsSequence(0x300a, 0x0360);
+Tag const RangeShifterSetting(0x300a, 0x0362);
+Tag const IsocenterToRangeShifterDistance(0x300a, 0x0364);
+Tag const RangeShifterWaterEquivalentThickness(0x300a, 0x0366);
+Tag const LateralSpreadingDeviceSettingsSequence(0x300a, 0x0370);
+Tag const LateralSpreadingDeviceSetting(0x300a, 0x0372);
+Tag const IsocenterToLateralSpreadingDeviceDistance(0x300a, 0x0374);
+Tag const RangeModulatorSettingsSequence(0x300a, 0x0380);
+Tag const RangeModulatorGatingStartValue(0x300a, 0x0382);
+Tag const RangeModulatorGatingStopValue(0x300a, 0x0384);
+Tag const RangeModulatorGatingStartWaterEquivalentThickness(0x300a, 0x0386);
+Tag const RangeModulatorGatingStopWaterEquivalentThickness(0x300a, 0x0388);
+Tag const IsocenterToRangeModulatorDistance(0x300a, 0x038a);
+Tag const ScanSpotTuneID(0x300a, 0x0390);
+Tag const NumberOfScanSpotPositions(0x300a, 0x0392);
+Tag const ScanSpotPositionMap(0x300a, 0x0394);
+Tag const ScanSpotMetersetWeights(0x300a, 0x0396);
+Tag const ScanningSpotSize(0x300a, 0x0398);
+Tag const NumberOfPaintings(0x300a, 0x039a);
+Tag const IonToleranceTableSequence(0x300a, 0x03a0);
+Tag const IonBeamSequence(0x300a, 0x03a2);
+Tag const IonBeamLimitingDeviceSequence(0x300a, 0x03a4);
+Tag const IonBlockSequence(0x300a, 0x03a6);
+Tag const IonControlPointSequence(0x300a, 0x03a8);
+Tag const IonWedgeSequence(0x300a, 0x03aa);
+Tag const IonWedgePositionSequence(0x300a, 0x03ac);
+Tag const ReferencedSetupImageSequence(0x300a, 0x0401);
+Tag const SetupImageComment(0x300a, 0x0402);
+Tag const MotionSynchronizationSequence(0x300a, 0x0410);
+Tag const ControlPointOrientation(0x300a, 0x0412);
+Tag const GeneralAccessorySequence(0x300a, 0x0420);
+Tag const GeneralAccessoryID(0x300a, 0x0421);
+Tag const GeneralAccessoryDescription(0x300a, 0x0422);
+Tag const GeneralAccessoryType(0x300a, 0x0423);
+Tag const GeneralAccessoryNumber(0x300a, 0x0424);
+Tag const SourceToGeneralAccessoryDistance(0x300a, 0x0425);
+Tag const ApplicatorGeometrySequence(0x300a, 0x0431);
+Tag const ApplicatorApertureShape(0x300a, 0x0432);
+Tag const ApplicatorOpening(0x300a, 0x0433);
+Tag const ApplicatorOpeningX(0x300a, 0x0434);
+Tag const ApplicatorOpeningY(0x300a, 0x0435);
+Tag const SourceToApplicatorMountingPositionDistance(0x300a, 0x0436);
+Tag const NumberOfBlockSlabItems(0x300a, 0x0440);
+Tag const BlockSlabSequence(0x300a, 0x0441);
+Tag const BlockSlabThickness(0x300a, 0x0442);
+Tag const BlockSlabNumber(0x300a, 0x0443);
+Tag const DeviceMotionControlSequence(0x300a, 0x0450);
+Tag const DeviceMotionExecutionMode(0x300a, 0x0451);
+Tag const DeviceMotionObservationMode(0x300a, 0x0452);
+Tag const DeviceMotionParameterCodeSequence(0x300a, 0x0453);
+Tag const ReferencedRTPlanSequence(0x300c, 0x0002);
+Tag const ReferencedBeamSequence(0x300c, 0x0004);
+Tag const ReferencedBeamNumber(0x300c, 0x0006);
+Tag const ReferencedReferenceImageNumber(0x300c, 0x0007);
+Tag const StartCumulativeMetersetWeight(0x300c, 0x0008);
+Tag const EndCumulativeMetersetWeight(0x300c, 0x0009);
+Tag const ReferencedBrachyApplicationSetupSequence(0x300c, 0x000a);
+Tag const ReferencedBrachyApplicationSetupNumber(0x300c, 0x000c);
+Tag const ReferencedSourceNumber(0x300c, 0x000e);
+Tag const ReferencedFractionGroupSequence(0x300c, 0x0020);
+Tag const ReferencedFractionGroupNumber(0x300c, 0x0022);
+Tag const ReferencedVerificationImageSequence(0x300c, 0x0040);
+Tag const ReferencedReferenceImageSequence(0x300c, 0x0042);
+Tag const ReferencedDoseReferenceSequence(0x300c, 0x0050);
+Tag const ReferencedDoseReferenceNumber(0x300c, 0x0051);
+Tag const BrachyReferencedDoseReferenceSequence(0x300c, 0x0055);
+Tag const ReferencedStructureSetSequence(0x300c, 0x0060);
+Tag const ReferencedPatientSetupNumber(0x300c, 0x006a);
+Tag const ReferencedDoseSequence(0x300c, 0x0080);
+Tag const ReferencedToleranceTableNumber(0x300c, 0x00a0);
+Tag const ReferencedBolusSequence(0x300c, 0x00b0);
+Tag const ReferencedWedgeNumber(0x300c, 0x00c0);
+Tag const ReferencedCompensatorNumber(0x300c, 0x00d0);
+Tag const ReferencedBlockNumber(0x300c, 0x00e0);
+Tag const ReferencedControlPointIndex(0x300c, 0x00f0);
+Tag const ReferencedControlPointSequence(0x300c, 0x00f2);
+Tag const ReferencedStartControlPointIndex(0x300c, 0x00f4);
+Tag const ReferencedStopControlPointIndex(0x300c, 0x00f6);
+Tag const ReferencedRangeShifterNumber(0x300c, 0x0100);
+Tag const ReferencedLateralSpreadingDeviceNumber(0x300c, 0x0102);
+Tag const ReferencedRangeModulatorNumber(0x300c, 0x0104);
+Tag const OmittedBeamTaskSequence(0x300c, 0x0111);
+Tag const ReasonForOmission(0x300c, 0x0112);
+Tag const ReasonForOmissionDescription(0x300c, 0x0113);
+Tag const ApprovalStatus(0x300e, 0x0002);
+Tag const ReviewDate(0x300e, 0x0004);
+Tag const ReviewTime(0x300e, 0x0005);
+Tag const ReviewerName(0x300e, 0x0008);
+Tag const Arbitrary(0x4000, 0x0010);
+Tag const TextComments(0x4000, 0x4000);
+Tag const ResultsID(0x4008, 0x0040);
+Tag const ResultsIDIssuer(0x4008, 0x0042);
+Tag const ReferencedInterpretationSequence(0x4008, 0x0050);
+Tag const ReportProductionStatusTrial(0x4008, 0x00ff);
+Tag const InterpretationRecordedDate(0x4008, 0x0100);
+Tag const InterpretationRecordedTime(0x4008, 0x0101);
+Tag const InterpretationRecorder(0x4008, 0x0102);
+Tag const ReferenceToRecordedSound(0x4008, 0x0103);
+Tag const InterpretationTranscriptionDate(0x4008, 0x0108);
+Tag const InterpretationTranscriptionTime(0x4008, 0x0109);
+Tag const InterpretationTranscriber(0x4008, 0x010a);
+Tag const InterpretationText(0x4008, 0x010b);
+Tag const InterpretationAuthor(0x4008, 0x010c);
+Tag const InterpretationApproverSequence(0x4008, 0x0111);
+Tag const InterpretationApprovalDate(0x4008, 0x0112);
+Tag const InterpretationApprovalTime(0x4008, 0x0113);
+Tag const PhysicianApprovingInterpretation(0x4008, 0x0114);
+Tag const InterpretationDiagnosisDescription(0x4008, 0x0115);
+Tag const InterpretationDiagnosisCodeSequence(0x4008, 0x0117);
+Tag const ResultsDistributionListSequence(0x4008, 0x0118);
+Tag const DistributionName(0x4008, 0x0119);
+Tag const DistributionAddress(0x4008, 0x011a);
+Tag const InterpretationID(0x4008, 0x0200);
+Tag const InterpretationIDIssuer(0x4008, 0x0202);
+Tag const InterpretationTypeID(0x4008, 0x0210);
+Tag const InterpretationStatusID(0x4008, 0x0212);
+Tag const Impressions(0x4008, 0x0300);
+Tag const ResultsComments(0x4008, 0x4000);
+Tag const LowEnergyDetectors(0x4010, 0x0001);
+Tag const HighEnergyDetectors(0x4010, 0x0002);
+Tag const DetectorGeometrySequence(0x4010, 0x0004);
+Tag const ThreatROIVoxelSequence(0x4010, 0x1001);
+Tag const ThreatROIBase(0x4010, 0x1004);
+Tag const ThreatROIExtents(0x4010, 0x1005);
+Tag const ThreatROIBitmap(0x4010, 0x1006);
+Tag const RouteSegmentID(0x4010, 0x1007);
+Tag const GantryType(0x4010, 0x1008);
+Tag const OOIOwnerType(0x4010, 0x1009);
+Tag const RouteSegmentSequence(0x4010, 0x100a);
+Tag const PotentialThreatObjectID(0x4010, 0x1010);
+Tag const ThreatSequence(0x4010, 0x1011);
+Tag const ThreatCategory(0x4010, 0x1012);
+Tag const ThreatCategoryDescription(0x4010, 0x1013);
+Tag const ATDAbilityAssessment(0x4010, 0x1014);
+Tag const ATDAssessmentFlag(0x4010, 0x1015);
+Tag const ATDAssessmentProbability(0x4010, 0x1016);
+Tag const Mass(0x4010, 0x1017);
+Tag const Density(0x4010, 0x1018);
+Tag const ZEffective(0x4010, 0x1019);
+Tag const BoardingPassID(0x4010, 0x101a);
+Tag const CenterOfMass(0x4010, 0x101b);
+Tag const CenterOfPTO(0x4010, 0x101c);
+Tag const BoundingPolygon(0x4010, 0x101d);
+Tag const RouteSegmentStartLocationID(0x4010, 0x101e);
+Tag const RouteSegmentEndLocationID(0x4010, 0x101f);
+Tag const RouteSegmentLocationIDType(0x4010, 0x1020);
+Tag const AbortReason(0x4010, 0x1021);
+Tag const VolumeOfPTO(0x4010, 0x1023);
+Tag const AbortFlag(0x4010, 0x1024);
+Tag const RouteSegmentStartTime(0x4010, 0x1025);
+Tag const RouteSegmentEndTime(0x4010, 0x1026);
+Tag const TDRType(0x4010, 0x1027);
+Tag const InternationalRouteSegment(0x4010, 0x1028);
+Tag const ThreatDetectionAlgorithmandVersion(0x4010, 0x1029);
+Tag const AssignedLocation(0x4010, 0x102a);
+Tag const AlarmDecisionTime(0x4010, 0x102b);
+Tag const AlarmDecision(0x4010, 0x1031);
+Tag const NumberOfTotalObjects(0x4010, 0x1033);
+Tag const NumberOfAlarmObjects(0x4010, 0x1034);
+Tag const PTORepresentationSequence(0x4010, 0x1037);
+Tag const ATDAssessmentSequence(0x4010, 0x1038);
+Tag const TIPType(0x4010, 0x1039);
+Tag const DICOSVersion(0x4010, 0x103a);
+Tag const OOIOwnerCreationTime(0x4010, 0x1041);
+Tag const OOIType(0x4010, 0x1042);
+Tag const OOISize(0x4010, 0x1043);
+Tag const AcquisitionStatus(0x4010, 0x1044);
+Tag const BasisMaterialsCodeSequence(0x4010, 0x1045);
+Tag const PhantomType(0x4010, 0x1046);
+Tag const OOIOwnerSequence(0x4010, 0x1047);
+Tag const ScanType(0x4010, 0x1048);
+Tag const ItineraryID(0x4010, 0x1051);
+Tag const ItineraryIDType(0x4010, 0x1052);
+Tag const ItineraryIDAssigningAuthority(0x4010, 0x1053);
+Tag const RouteID(0x4010, 0x1054);
+Tag const RouteIDAssigningAuthority(0x4010, 0x1055);
+Tag const InboundArrivalType(0x4010, 0x1056);
+Tag const CarrierID(0x4010, 0x1058);
+Tag const CarrierIDAssigningAuthority(0x4010, 0x1059);
+Tag const SourceOrientation(0x4010, 0x1060);
+Tag const SourcePosition(0x4010, 0x1061);
+Tag const BeltHeight(0x4010, 0x1062);
+Tag const AlgorithmRoutingCodeSequence(0x4010, 0x1064);
+Tag const TransportClassification(0x4010, 0x1067);
+Tag const OOITypeDescriptor(0x4010, 0x1068);
+Tag const TotalProcessingTime(0x4010, 0x1069);
+Tag const DetectorCalibrationData(0x4010, 0x106c);
+Tag const AdditionalScreeningPerformed(0x4010, 0x106d);
+Tag const AdditionalInspectionSelectionCriteria(0x4010, 0x106e);
+Tag const AdditionalInspectionMethodSequence(0x4010, 0x106f);
+Tag const AITDeviceType(0x4010, 0x1070);
+Tag const QRMeasurementsSequence(0x4010, 0x1071);
+Tag const TargetMaterialSequence(0x4010, 0x1072);
+Tag const SNRThreshold(0x4010, 0x1073);
+Tag const ImageScaleRepresentation(0x4010, 0x1075);
+Tag const ReferencedPTOSequence(0x4010, 0x1076);
+Tag const ReferencedTDRInstanceSequence(0x4010, 0x1077);
+Tag const PTOLocationDescription(0x4010, 0x1078);
+Tag const AnomalyLocatorIndicatorSequence(0x4010, 0x1079);
+Tag const AnomalyLocatorIndicator(0x4010, 0x107a);
+Tag const PTORegionSequence(0x4010, 0x107b);
+Tag const InspectionSelectionCriteria(0x4010, 0x107c);
+Tag const SecondaryInspectionMethodSequence(0x4010, 0x107d);
+Tag const PRCSToRCSOrientation(0x4010, 0x107e);
+Tag const MACParametersSequence(0x4ffe, 0x0001);
+Tag const SharedFunctionalGroupsSequence(0x5200, 0x9229);
+Tag const PerFrameFunctionalGroupsSequence(0x5200, 0x9230);
+Tag const WaveformSequence(0x5400, 0x0100);
+Tag const ChannelMinimumValue(0x5400, 0x0110);
+Tag const ChannelMaximumValue(0x5400, 0x0112);
+Tag const WaveformBitsAllocated(0x5400, 0x1004);
+Tag const WaveformSampleInterpretation(0x5400, 0x1006);
+Tag const WaveformPaddingValue(0x5400, 0x100a);
+Tag const WaveformData(0x5400, 0x1010);
+Tag const FirstOrderPhaseCorrectionAngle(0x5600, 0x0010);
+Tag const SpectroscopyData(0x5600, 0x0020);
+Tag const FloatPixelData(0x7fe0, 0x0008);
+Tag const DoubleFloatPixelData(0x7fe0, 0x0009);
+Tag const PixelData(0x7fe0, 0x0010);
+Tag const CoefficientsSDVN(0x7fe0, 0x0020);
+Tag const CoefficientsSDHN(0x7fe0, 0x0030);
+Tag const CoefficientsSDDN(0x7fe0, 0x0040);
+Tag const DigitalSignaturesSequence(0xfffa, 0xfffa);
+Tag const DataSetTrailingPadding(0xfffc, 0xfffc);
+Tag const Item(0xfffe, 0xe000);
+Tag const ItemDelimitationItem(0xfffe, 0xe00d);
+Tag const SequenceDelimitationItem(0xfffe, 0xe0dd);
+
+std::string const VerificationSOPClass("1.2.840.10008.1.1");
+std::string const ImplicitVRLittleEndian("1.2.840.10008.1.2");
+std::string const ExplicitVRLittleEndian("1.2.840.10008.1.2.1");
+std::string const DeflatedExplicitVRLittleEndian("1.2.840.10008.1.2.1.99");
+std::string const ExplicitVRBigEndian_Retired("1.2.840.10008.1.2.2");
+std::string const JPEGBaselineProcess1("1.2.840.10008.1.2.4.50");
+std::string const JPEGExtendedProcess24("1.2.840.10008.1.2.4.51");
+std::string const JPEGExtendedProcess35_Retired("1.2.840.10008.1.2.4.52");
+std::string const JPEGSpectralSelectionNonHierarchicalProcess68_Retired("1.2.840.10008.1.2.4.53");
+std::string const JPEGSpectralSelectionNonHierarchicalProcess79_Retired("1.2.840.10008.1.2.4.54");
+std::string const JPEGFullProgressionNonHierarchicalProcess1012_Retired("1.2.840.10008.1.2.4.55");
+std::string const JPEGFullProgressionNonHierarchicalProcess1113_Retired("1.2.840.10008.1.2.4.56");
+std::string const JPEGLosslessNonHierarchicalProcess14("1.2.840.10008.1.2.4.57");
+std::string const JPEGLosslessNonHierarchicalProcess15_Retired("1.2.840.10008.1.2.4.58");
+std::string const JPEGExtendedHierarchicalProcess1618_Retired("1.2.840.10008.1.2.4.59");
+std::string const JPEGExtendedHierarchicalProcess1719_Retired("1.2.840.10008.1.2.4.60");
+std::string const JPEGSpectralSelectionHierarchicalProcess2022_Retired("1.2.840.10008.1.2.4.61");
+std::string const JPEGSpectralSelectionHierarchicalProcess2123_Retired("1.2.840.10008.1.2.4.62");
+std::string const JPEGFullProgressionHierarchicalProcess2426_Retired("1.2.840.10008.1.2.4.63");
+std::string const JPEGFullProgressionHierarchicalProcess2527_Retired("1.2.840.10008.1.2.4.64");
+std::string const JPEGLosslessHierarchicalProcess28_Retired("1.2.840.10008.1.2.4.65");
+std::string const JPEGLosslessHierarchicalProcess29_Retired("1.2.840.10008.1.2.4.66");
+std::string const JPEGLosslessNonHierarchicalFirstOrderPredictionProcess14SelectionValue1("1.2.840.10008.1.2.4.70");
+std::string const JPEGLSLosslessImageCompression("1.2.840.10008.1.2.4.80");
+std::string const JPEGLSLossyNearLosslessImageCompression("1.2.840.10008.1.2.4.81");
+std::string const JPEG2000ImageCompressionLosslessOnly("1.2.840.10008.1.2.4.90");
+std::string const JPEG2000ImageCompression("1.2.840.10008.1.2.4.91");
+std::string const JPEG2000Part2MulticomponentImageCompressionLosslessOnly("1.2.840.10008.1.2.4.92");
+std::string const JPEG2000Part2MulticomponentImageCompression("1.2.840.10008.1.2.4.93");
+std::string const JPIPReferenced("1.2.840.10008.1.2.4.94");
+std::string const JPIPReferencedDeflate("1.2.840.10008.1.2.4.95");
+std::string const MPEG2MainProfileMainLevel("1.2.840.10008.1.2.4.100");
+std::string const MPEG2MainProfileHighLevel("1.2.840.10008.1.2.4.101");
+std::string const MPEG4AVCH264HighProfileLevel41("1.2.840.10008.1.2.4.102");
+std::string const MPEG4AVCH264BDcompatibleHighProfileLevel41("1.2.840.10008.1.2.4.103");
+std::string const MPEG4AVCH264HighProfileLevel42For2DVideo("1.2.840.10008.1.2.4.104");
+std::string const MPEG4AVCH264HighProfileLevel42For3DVideo("1.2.840.10008.1.2.4.105");
+std::string const MPEG4AVCH264StereoHighProfileLevel42("1.2.840.10008.1.2.4.106");
+std::string const RLELossless("1.2.840.10008.1.2.5");
+std::string const RFC2557MIMEencapsulation("1.2.840.10008.1.2.6.1");
+std::string const XMLEncoding("1.2.840.10008.1.2.6.2");
+std::string const MediaStorageDirectoryStorage("1.2.840.10008.1.3.10");
+std::string const TalairachBrainAtlasFrameofReference("1.2.840.10008.1.4.1.1");
+std::string const SPM2T1FrameofReference("1.2.840.10008.1.4.1.2");
+std::string const SPM2T2FrameofReference("1.2.840.10008.1.4.1.3");
+std::string const SPM2PDFrameofReference("1.2.840.10008.1.4.1.4");
+std::string const SPM2EPIFrameofReference("1.2.840.10008.1.4.1.5");
+std::string const SPM2FILT1FrameofReference("1.2.840.10008.1.4.1.6");
+std::string const SPM2PETFrameofReference("1.2.840.10008.1.4.1.7");
+std::string const SPM2TRANSMFrameofReference("1.2.840.10008.1.4.1.8");
+std::string const SPM2SPECTFrameofReference("1.2.840.10008.1.4.1.9");
+std::string const SPM2GRAYFrameofReference("1.2.840.10008.1.4.1.10");
+std::string const SPM2WHITEFrameofReference("1.2.840.10008.1.4.1.11");
+std::string const SPM2CSFFrameofReference("1.2.840.10008.1.4.1.12");
+std::string const SPM2BRAINMASKFrameofReference("1.2.840.10008.1.4.1.13");
+std::string const SPM2AVG305T1FrameofReference("1.2.840.10008.1.4.1.14");
+std::string const SPM2AVG152T1FrameofReference("1.2.840.10008.1.4.1.15");
+std::string const SPM2AVG152T2FrameofReference("1.2.840.10008.1.4.1.16");
+std::string const SPM2AVG152PDFrameofReference("1.2.840.10008.1.4.1.17");
+std::string const SPM2SINGLESUBJT1FrameofReference("1.2.840.10008.1.4.1.18");
+std::string const ICBM452T1FrameofReference("1.2.840.10008.1.4.2.1");
+std::string const ICBMSingleSubjectMRIFrameofReference("1.2.840.10008.1.4.2.2");
+std::string const HotIronColorPaletteSOPInstance("1.2.840.10008.1.5.1");
+std::string const PETColorPaletteSOPInstance("1.2.840.10008.1.5.2");
+std::string const HotMetalBlueColorPaletteSOPInstance("1.2.840.10008.1.5.3");
+std::string const PET20StepColorPaletteSOPInstance("1.2.840.10008.1.5.4");
+std::string const BasicStudyContentNotificationSOPClass_Retired("1.2.840.10008.1.9");
+std::string const StorageCommitmentPushModelSOPClass("1.2.840.10008.1.20.1");
+std::string const StorageCommitmentPushModelSOPInstance("1.2.840.10008.1.20.1.1");
+std::string const StorageCommitmentPullModelSOPClass_Retired("1.2.840.10008.1.20.2");
+std::string const StorageCommitmentPullModelSOPInstance_Retired("1.2.840.10008.1.20.2.1");
+std::string const ProceduralEventLoggingSOPClass("1.2.840.10008.1.40");
+std::string const ProceduralEventLoggingSOPInstance("1.2.840.10008.1.40.1");
+std::string const SubstanceAdministrationLoggingSOPClass("1.2.840.10008.1.42");
+std::string const SubstanceAdministrationLoggingSOPInstance("1.2.840.10008.1.42.1");
+std::string const DICOMUIDRegistry("1.2.840.10008.2.6.1");
+std::string const DICOMControlledTerminology("1.2.840.10008.2.16.4");
+std::string const DICOMApplicationContextName("1.2.840.10008.3.1.1.1");
+std::string const DetachedPatientManagementSOPClass_Retired("1.2.840.10008.3.1.2.1.1");
+std::string const DetachedPatientManagementMetaSOPClass_Retired("1.2.840.10008.3.1.2.1.4");
+std::string const DetachedVisitManagementSOPClass_Retired("1.2.840.10008.3.1.2.2.1");
+std::string const DetachedStudyManagementSOPClass_Retired("1.2.840.10008.3.1.2.3.1");
+std::string const StudyComponentManagementSOPClass_Retired("1.2.840.10008.3.1.2.3.2");
+std::string const ModalityPerformedProcedureStepSOPClass("1.2.840.10008.3.1.2.3.3");
+std::string const ModalityPerformedProcedureStepRetrieveSOPClass("1.2.840.10008.3.1.2.3.4");
+std::string const ModalityPerformedProcedureStepNotificationSOPClass("1.2.840.10008.3.1.2.3.5");
+std::string const DetachedResultsManagementSOPClass_Retired("1.2.840.10008.3.1.2.5.1");
+std::string const DetachedResultsManagementMetaSOPClass_Retired("1.2.840.10008.3.1.2.5.4");
+std::string const DetachedStudyManagementMetaSOPClass_Retired("1.2.840.10008.3.1.2.5.5");
+std::string const DetachedInterpretationManagementSOPClass_Retired("1.2.840.10008.3.1.2.6.1");
+std::string const StorageServiceClass("1.2.840.10008.4.2");
+std::string const BasicFilmSessionSOPClass("1.2.840.10008.5.1.1.1");
+std::string const BasicFilmBoxSOPClass("1.2.840.10008.5.1.1.2");
+std::string const BasicGrayscaleImageBoxSOPClass("1.2.840.10008.5.1.1.4");
+std::string const BasicColorImageBoxSOPClass("1.2.840.10008.5.1.1.4.1");
+std::string const ReferencedImageBoxSOPClass_Retired("1.2.840.10008.5.1.1.4.2");
+std::string const BasicGrayscalePrintManagementMetaSOPClass("1.2.840.10008.5.1.1.9");
+std::string const ReferencedGrayscalePrintManagementMetaSOPClass_Retired("1.2.840.10008.5.1.1.9.1");
+std::string const PrintJobSOPClass("1.2.840.10008.5.1.1.14");
+std::string const BasicAnnotationBoxSOPClass("1.2.840.10008.5.1.1.15");
+std::string const PrinterSOPClass("1.2.840.10008.5.1.1.16");
+std::string const PrinterConfigurationRetrievalSOPClass("1.2.840.10008.5.1.1.16.376");
+std::string const PrinterSOPInstance("1.2.840.10008.5.1.1.17");
+std::string const PrinterConfigurationRetrievalSOPInstance("1.2.840.10008.5.1.1.17.376");
+std::string const BasicColorPrintManagementMetaSOPClass("1.2.840.10008.5.1.1.18");
+std::string const ReferencedColorPrintManagementMetaSOPClass_Retired("1.2.840.10008.5.1.1.18.1");
+std::string const VOILUTBoxSOPClass("1.2.840.10008.5.1.1.22");
+std::string const PresentationLUTSOPClass("1.2.840.10008.5.1.1.23");
+std::string const ImageOverlayBoxSOPClass_Retired("1.2.840.10008.5.1.1.24");
+std::string const BasicPrintImageOverlayBoxSOPClass_Retired("1.2.840.10008.5.1.1.24.1");
+std::string const PrintQueueSOPInstance_Retired("1.2.840.10008.5.1.1.25");
+std::string const PrintQueueManagementSOPClass_Retired("1.2.840.10008.5.1.1.26");
+std::string const StoredPrintStorageSOPClass_Retired("1.2.840.10008.5.1.1.27");
+std::string const HardcopyGrayscaleImageStorageSOPClass_Retired("1.2.840.10008.5.1.1.29");
+std::string const HardcopyColorImageStorageSOPClass_Retired("1.2.840.10008.5.1.1.30");
+std::string const PullPrintRequestSOPClass_Retired("1.2.840.10008.5.1.1.31");
+std::string const PullStoredPrintManagementMetaSOPClass_Retired("1.2.840.10008.5.1.1.32");
+std::string const MediaCreationManagementSOPClassUID("1.2.840.10008.5.1.1.33");
+std::string const DisplaySystemSOPClass("1.2.840.10008.5.1.1.40");
+std::string const DisplaySystemSOPInstance("1.2.840.10008.5.1.1.40.1");
+std::string const ComputedRadiographyImageStorage("1.2.840.10008.5.1.4.1.1.1");
+std::string const DigitalXRayImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.1.1");
+std::string const DigitalXRayImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.1.1.1");
+std::string const DigitalMammographyXRayImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.1.2");
+std::string const DigitalMammographyXRayImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.1.2.1");
+std::string const DigitalIntraOralXRayImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.1.3");
+std::string const DigitalIntraOralXRayImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.1.3.1");
+std::string const CTImageStorage("1.2.840.10008.5.1.4.1.1.2");
+std::string const EnhancedCTImageStorage("1.2.840.10008.5.1.4.1.1.2.1");
+std::string const LegacyConvertedEnhancedCTImageStorage("1.2.840.10008.5.1.4.1.1.2.2");
+std::string const UltrasoundMultiframeImageStorage_Retired("1.2.840.10008.5.1.4.1.1.3");
+std::string const UltrasoundMultiframeImageStorage("1.2.840.10008.5.1.4.1.1.3.1");
+std::string const MRImageStorage("1.2.840.10008.5.1.4.1.1.4");
+std::string const EnhancedMRImageStorage("1.2.840.10008.5.1.4.1.1.4.1");
+std::string const MRSpectroscopyStorage("1.2.840.10008.5.1.4.1.1.4.2");
+std::string const EnhancedMRColorImageStorage("1.2.840.10008.5.1.4.1.1.4.3");
+std::string const LegacyConvertedEnhancedMRImageStorage("1.2.840.10008.5.1.4.1.1.4.4");
+std::string const NuclearMedicineImageStorage_Retired("1.2.840.10008.5.1.4.1.1.5");
+std::string const UltrasoundImageStorage_Retired("1.2.840.10008.5.1.4.1.1.6");
+std::string const UltrasoundImageStorage("1.2.840.10008.5.1.4.1.1.6.1");
+std::string const EnhancedUSVolumeStorage("1.2.840.10008.5.1.4.1.1.6.2");
+std::string const SecondaryCaptureImageStorage("1.2.840.10008.5.1.4.1.1.7");
+std::string const MultiframeSingleBitSecondaryCaptureImageStorage("1.2.840.10008.5.1.4.1.1.7.1");
+std::string const MultiframeGrayscaleByteSecondaryCaptureImageStorage("1.2.840.10008.5.1.4.1.1.7.2");
+std::string const MultiframeGrayscaleWordSecondaryCaptureImageStorage("1.2.840.10008.5.1.4.1.1.7.3");
+std::string const MultiframeTrueColorSecondaryCaptureImageStorage("1.2.840.10008.5.1.4.1.1.7.4");
+std::string const StandaloneOverlayStorage_Retired("1.2.840.10008.5.1.4.1.1.8");
+std::string const StandaloneCurveStorage_Retired("1.2.840.10008.5.1.4.1.1.9");
+std::string const WaveformStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.9.1");
+std::string const TwelveleadECGWaveformStorage("1.2.840.10008.5.1.4.1.1.9.1.1");
+std::string const GeneralECGWaveformStorage("1.2.840.10008.5.1.4.1.1.9.1.2");
+std::string const AmbulatoryECGWaveformStorage("1.2.840.10008.5.1.4.1.1.9.1.3");
+std::string const HemodynamicWaveformStorage("1.2.840.10008.5.1.4.1.1.9.2.1");
+std::string const CardiacElectrophysiologyWaveformStorage("1.2.840.10008.5.1.4.1.1.9.3.1");
+std::string const BasicVoiceAudioWaveformStorage("1.2.840.10008.5.1.4.1.1.9.4.1");
+std::string const GeneralAudioWaveformStorage("1.2.840.10008.5.1.4.1.1.9.4.2");
+std::string const ArterialPulseWaveformStorage("1.2.840.10008.5.1.4.1.1.9.5.1");
+std::string const RespiratoryWaveformStorage("1.2.840.10008.5.1.4.1.1.9.6.1");
+std::string const StandaloneModalityLUTStorage_Retired("1.2.840.10008.5.1.4.1.1.10");
+std::string const StandaloneVOILUTStorage_Retired("1.2.840.10008.5.1.4.1.1.11");
+std::string const GrayscaleSoftcopyPresentationStateStorageSOPClass("1.2.840.10008.5.1.4.1.1.11.1");
+std::string const ColorSoftcopyPresentationStateStorageSOPClass("1.2.840.10008.5.1.4.1.1.11.2");
+std::string const PseudoColorSoftcopyPresentationStateStorageSOPClass("1.2.840.10008.5.1.4.1.1.11.3");
+std::string const BlendingSoftcopyPresentationStateStorageSOPClass("1.2.840.10008.5.1.4.1.1.11.4");
+std::string const XAXRFGrayscaleSoftcopyPresentationStateStorage("1.2.840.10008.5.1.4.1.1.11.5");
+std::string const XRayAngiographicImageStorage("1.2.840.10008.5.1.4.1.1.12.1");
+std::string const EnhancedXAImageStorage("1.2.840.10008.5.1.4.1.1.12.1.1");
+std::string const XRayRadiofluoroscopicImageStorage("1.2.840.10008.5.1.4.1.1.12.2");
+std::string const EnhancedXRFImageStorage("1.2.840.10008.5.1.4.1.1.12.2.1");
+std::string const XRayAngiographicBiPlaneImageStorage_Retired("1.2.840.10008.5.1.4.1.1.12.3");
+std::string const XRay3DAngiographicImageStorage("1.2.840.10008.5.1.4.1.1.13.1.1");
+std::string const XRay3DCraniofacialImageStorage("1.2.840.10008.5.1.4.1.1.13.1.2");
+std::string const BreastTomosynthesisImageStorage("1.2.840.10008.5.1.4.1.1.13.1.3");
+std::string const BreastProjectionXRayImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.13.1.4");
+std::string const BreastProjectionXRayImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.13.1.5");
+std::string const IntravascularOpticalCoherenceTomographyImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.14.1");
+std::string const IntravascularOpticalCoherenceTomographyImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.14.2");
+std::string const NuclearMedicineImageStorage("1.2.840.10008.5.1.4.1.1.20");
+std::string const ParametricMapStorage("1.2.840.10008.5.1.4.1.1.30");
+std::string const RawDataStorage("1.2.840.10008.5.1.4.1.1.66");
+std::string const SpatialRegistrationStorage("1.2.840.10008.5.1.4.1.1.66.1");
+std::string const SpatialFiducialsStorage("1.2.840.10008.5.1.4.1.1.66.2");
+std::string const DeformableSpatialRegistrationStorage("1.2.840.10008.5.1.4.1.1.66.3");
+std::string const SegmentationStorage("1.2.840.10008.5.1.4.1.1.66.4");
+std::string const SurfaceSegmentationStorage("1.2.840.10008.5.1.4.1.1.66.5");
+std::string const RealWorldValueMappingStorage("1.2.840.10008.5.1.4.1.1.67");
+std::string const SurfaceScanMeshStorage("1.2.840.10008.5.1.4.1.1.68.1");
+std::string const SurfaceScanPointCloudStorage("1.2.840.10008.5.1.4.1.1.68.2");
+std::string const VLImageStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.77.1");
+std::string const VLMultiframeImageStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.77.2");
+std::string const VLEndoscopicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.1");
+std::string const VideoEndoscopicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.1.1");
+std::string const VLMicroscopicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.2");
+std::string const VideoMicroscopicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.2.1");
+std::string const VLSlideCoordinatesMicroscopicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.3");
+std::string const VLPhotographicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.4");
+std::string const VideoPhotographicImageStorage("1.2.840.10008.5.1.4.1.1.77.1.4.1");
+std::string const OphthalmicPhotography8BitImageStorage("1.2.840.10008.5.1.4.1.1.77.1.5.1");
+std::string const OphthalmicPhotography16BitImageStorage("1.2.840.10008.5.1.4.1.1.77.1.5.2");
+std::string const StereometricRelationshipStorage("1.2.840.10008.5.1.4.1.1.77.1.5.3");
+std::string const OphthalmicTomographyImageStorage("1.2.840.10008.5.1.4.1.1.77.1.5.4");
+std::string const WideFieldOphthalmicPhotographyStereographicProjectionImageStorage("1.2.840.10008.5.1.4.1.1.77.1.5.5");
+std::string const WideFieldOphthalmicPhotography3DCoordinatesImageStorage("1.2.840.10008.5.1.4.1.1.77.1.5.6");
+std::string const VLWholeSlideMicroscopyImageStorage("1.2.840.10008.5.1.4.1.1.77.1.6");
+std::string const LensometryMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.1");
+std::string const AutorefractionMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.2");
+std::string const KeratometryMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.3");
+std::string const SubjectiveRefractionMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.4");
+std::string const VisualAcuityMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.5");
+std::string const SpectaclePrescriptionReportStorage("1.2.840.10008.5.1.4.1.1.78.6");
+std::string const OphthalmicAxialMeasurementsStorage("1.2.840.10008.5.1.4.1.1.78.7");
+std::string const IntraocularLensCalculationsStorage("1.2.840.10008.5.1.4.1.1.78.8");
+std::string const MacularGridThicknessandVolumeReportStorage("1.2.840.10008.5.1.4.1.1.79.1");
+std::string const OphthalmicVisualFieldStaticPerimetryMeasurementsStorage("1.2.840.10008.5.1.4.1.1.80.1");
+std::string const OphthalmicThicknessMapStorage("1.2.840.10008.5.1.4.1.1.81.1");
+std::string const CornealTopographyMapStorage("1.2.840.10008.5.1.4.1.1.82.1");
+std::string const TextSRStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.88.1");
+std::string const AudioSRStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.88.2");
+std::string const DetailSRStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.88.3");
+std::string const ComprehensiveSRStorageTrial_Retired("1.2.840.10008.5.1.4.1.1.88.4");
+std::string const BasicTextSRStorage("1.2.840.10008.5.1.4.1.1.88.11");
+std::string const EnhancedSRStorage("1.2.840.10008.5.1.4.1.1.88.22");
+std::string const ComprehensiveSRStorage("1.2.840.10008.5.1.4.1.1.88.33");
+std::string const Comprehensive3DSRStorage("1.2.840.10008.5.1.4.1.1.88.34");
+std::string const ExtensibleSRStorage("1.2.840.10008.5.1.4.1.1.88.35");
+std::string const ProcedureLogStorage("1.2.840.10008.5.1.4.1.1.88.40");
+std::string const MammographyCADSRStorage("1.2.840.10008.5.1.4.1.1.88.50");
+std::string const KeyObjectSelectionDocumentStorage("1.2.840.10008.5.1.4.1.1.88.59");
+std::string const ChestCADSRStorage("1.2.840.10008.5.1.4.1.1.88.65");
+std::string const XRayRadiationDoseSRStorage("1.2.840.10008.5.1.4.1.1.88.67");
+std::string const RadiopharmaceuticalRadiationDoseSRStorage("1.2.840.10008.5.1.4.1.1.88.68");
+std::string const ColonCADSRStorage("1.2.840.10008.5.1.4.1.1.88.69");
+std::string const ImplantationPlanSRStorage("1.2.840.10008.5.1.4.1.1.88.70");
+std::string const EncapsulatedPDFStorage("1.2.840.10008.5.1.4.1.1.104.1");
+std::string const EncapsulatedCDAStorage("1.2.840.10008.5.1.4.1.1.104.2");
+std::string const PositronEmissionTomographyImageStorage("1.2.840.10008.5.1.4.1.1.128");
+std::string const LegacyConvertedEnhancedPETImageStorage("1.2.840.10008.5.1.4.1.1.128.1");
+std::string const StandalonePETCurveStorage_Retired("1.2.840.10008.5.1.4.1.1.129");
+std::string const EnhancedPETImageStorage("1.2.840.10008.5.1.4.1.1.130");
+std::string const BasicStructuredDisplayStorage("1.2.840.10008.5.1.4.1.1.131");
+std::string const RTImageStorage("1.2.840.10008.5.1.4.1.1.481.1");
+std::string const RTDoseStorage("1.2.840.10008.5.1.4.1.1.481.2");
+std::string const RTStructureSetStorage("1.2.840.10008.5.1.4.1.1.481.3");
+std::string const RTBeamsTreatmentRecordStorage("1.2.840.10008.5.1.4.1.1.481.4");
+std::string const RTPlanStorage("1.2.840.10008.5.1.4.1.1.481.5");
+std::string const RTBrachyTreatmentRecordStorage("1.2.840.10008.5.1.4.1.1.481.6");
+std::string const RTTreatmentSummaryRecordStorage("1.2.840.10008.5.1.4.1.1.481.7");
+std::string const RTIonPlanStorage("1.2.840.10008.5.1.4.1.1.481.8");
+std::string const RTIonBeamsTreatmentRecordStorage("1.2.840.10008.5.1.4.1.1.481.9");
+std::string const DICOSCTImageStorage("1.2.840.10008.5.1.4.1.1.501.1");
+std::string const DICOSDigitalXRayImageStorageForPresentation("1.2.840.10008.5.1.4.1.1.501.2.1");
+std::string const DICOSDigitalXRayImageStorageForProcessing("1.2.840.10008.5.1.4.1.1.501.2.2");
+std::string const DICOSThreatDetectionReportStorage("1.2.840.10008.5.1.4.1.1.501.3");
+std::string const DICOS2DAITStorage("1.2.840.10008.5.1.4.1.1.501.4");
+std::string const DICOS3DAITStorage("1.2.840.10008.5.1.4.1.1.501.5");
+std::string const DICOSQuadrupoleResonanceQRStorage("1.2.840.10008.5.1.4.1.1.501.6");
+std::string const EddyCurrentImageStorage("1.2.840.10008.5.1.4.1.1.601.1");
+std::string const EddyCurrentMultiframeImageStorage("1.2.840.10008.5.1.4.1.1.601.2");
+std::string const PatientRootQueryRetrieveInformationModelFIND("1.2.840.10008.5.1.4.1.2.1.1");
+std::string const PatientRootQueryRetrieveInformationModelMOVE("1.2.840.10008.5.1.4.1.2.1.2");
+std::string const PatientRootQueryRetrieveInformationModelGET("1.2.840.10008.5.1.4.1.2.1.3");
+std::string const StudyRootQueryRetrieveInformationModelFIND("1.2.840.10008.5.1.4.1.2.2.1");
+std::string const StudyRootQueryRetrieveInformationModelMOVE("1.2.840.10008.5.1.4.1.2.2.2");
+std::string const StudyRootQueryRetrieveInformationModelGET("1.2.840.10008.5.1.4.1.2.2.3");
+std::string const PatientStudyOnlyQueryRetrieveInformationModelFIND_Retired("1.2.840.10008.5.1.4.1.2.3.1");
+std::string const PatientStudyOnlyQueryRetrieveInformationModelMOVE_Retired("1.2.840.10008.5.1.4.1.2.3.2");
+std::string const PatientStudyOnlyQueryRetrieveInformationModelGET_Retired("1.2.840.10008.5.1.4.1.2.3.3");
+std::string const CompositeInstanceRootRetrieveMOVE("1.2.840.10008.5.1.4.1.2.4.2");
+std::string const CompositeInstanceRootRetrieveGET("1.2.840.10008.5.1.4.1.2.4.3");
+std::string const CompositeInstanceRetrieveWithoutBulkDataGET("1.2.840.10008.5.1.4.1.2.5.3");
+std::string const ModalityWorklistInformationModelFIND("1.2.840.10008.5.1.4.31");
+std::string const GeneralPurposeWorklistManagementMetaSOPClass_Retired("1.2.840.10008.5.1.4.32");
+std::string const GeneralPurposeWorklistInformationModelFIND_Retired("1.2.840.10008.5.1.4.32.1");
+std::string const GeneralPurposeScheduledProcedureStepSOPClass_Retired("1.2.840.10008.5.1.4.32.2");
+std::string const GeneralPurposePerformedProcedureStepSOPClass_Retired("1.2.840.10008.5.1.4.32.3");
+std::string const InstanceAvailabilityNotificationSOPClass("1.2.840.10008.5.1.4.33");
+std::string const RTBeamsDeliveryInstructionStorageTrial_Retired("1.2.840.10008.5.1.4.34.1");
+std::string const RTConventionalMachineVerificationTrial_Retired("1.2.840.10008.5.1.4.34.2");
+std::string const RTIonMachineVerificationTrial_Retired("1.2.840.10008.5.1.4.34.3");
+std::string const UnifiedWorklistandProcedureStepServiceClassTrial_Retired("1.2.840.10008.5.1.4.34.4");
+std::string const UnifiedProcedureStepPushSOPClassTrial_Retired("1.2.840.10008.5.1.4.34.4.1");
+std::string const UnifiedProcedureStepWatchSOPClassTrial_Retired("1.2.840.10008.5.1.4.34.4.2");
+std::string const UnifiedProcedureStepPullSOPClassTrial_Retired("1.2.840.10008.5.1.4.34.4.3");
+std::string const UnifiedProcedureStepEventSOPClassTrial_Retired("1.2.840.10008.5.1.4.34.4.4");
+std::string const UPSGlobalSubscriptionSOPInstance("1.2.840.10008.5.1.4.34.5");
+std::string const UPSFilteredGlobalSubscriptionSOPInstance("1.2.840.10008.5.1.4.34.5.1");
+std::string const UnifiedWorklistandProcedureStepServiceClass("1.2.840.10008.5.1.4.34.6");
+std::string const UnifiedProcedureStepPushSOPClass("1.2.840.10008.5.1.4.34.6.1");
+std::string const UnifiedProcedureStepWatchSOPClass("1.2.840.10008.5.1.4.34.6.2");
+std::string const UnifiedProcedureStepPullSOPClass("1.2.840.10008.5.1.4.34.6.3");
+std::string const UnifiedProcedureStepEventSOPClass("1.2.840.10008.5.1.4.34.6.4");
+std::string const RTBeamsDeliveryInstructionStorage("1.2.840.10008.5.1.4.34.7");
+std::string const RTConventionalMachineVerification("1.2.840.10008.5.1.4.34.8");
+std::string const RTIonMachineVerification("1.2.840.10008.5.1.4.34.9");
+std::string const GeneralRelevantPatientInformationQuery("1.2.840.10008.5.1.4.37.1");
+std::string const BreastImagingRelevantPatientInformationQuery("1.2.840.10008.5.1.4.37.2");
+std::string const CardiacRelevantPatientInformationQuery("1.2.840.10008.5.1.4.37.3");
+std::string const HangingProtocolStorage("1.2.840.10008.5.1.4.38.1");
+std::string const HangingProtocolInformationModelFIND("1.2.840.10008.5.1.4.38.2");
+std::string const HangingProtocolInformationModelMOVE("1.2.840.10008.5.1.4.38.3");
+std::string const HangingProtocolInformationModelGET("1.2.840.10008.5.1.4.38.4");
+std::string const ColorPaletteStorage("1.2.840.10008.5.1.4.39.1");
+std::string const ColorPaletteInformationModelFIND("1.2.840.10008.5.1.4.39.2");
+std::string const ColorPaletteInformationModelMOVE("1.2.840.10008.5.1.4.39.3");
+std::string const ColorPaletteInformationModelGET("1.2.840.10008.5.1.4.39.4");
+std::string const ProductCharacteristicsQuerySOPClass("1.2.840.10008.5.1.4.41");
+std::string const SubstanceApprovalQuerySOPClass("1.2.840.10008.5.1.4.42");
+std::string const GenericImplantTemplateStorage("1.2.840.10008.5.1.4.43.1");
+std::string const GenericImplantTemplateInformationModelFIND("1.2.840.10008.5.1.4.43.2");
+std::string const GenericImplantTemplateInformationModelMOVE("1.2.840.10008.5.1.4.43.3");
+std::string const GenericImplantTemplateInformationModelGET("1.2.840.10008.5.1.4.43.4");
+std::string const ImplantAssemblyTemplateStorage("1.2.840.10008.5.1.4.44.1");
+std::string const ImplantAssemblyTemplateInformationModelFIND("1.2.840.10008.5.1.4.44.2");
+std::string const ImplantAssemblyTemplateInformationModelMOVE("1.2.840.10008.5.1.4.44.3");
+std::string const ImplantAssemblyTemplateInformationModelGET("1.2.840.10008.5.1.4.44.4");
+std::string const ImplantTemplateGroupStorage("1.2.840.10008.5.1.4.45.1");
+std::string const ImplantTemplateGroupInformationModelFIND("1.2.840.10008.5.1.4.45.2");
+std::string const ImplantTemplateGroupInformationModelMOVE("1.2.840.10008.5.1.4.45.3");
+std::string const ImplantTemplateGroupInformationModelGET("1.2.840.10008.5.1.4.45.4");
+std::string const NativeDICOMModel("1.2.840.10008.7.1.1");
+std::string const AbstractMultiDimensionalImageModel("1.2.840.10008.7.1.2");
+std::string const DICOMContentMappingResource("1.2.840.10008.8.1.1");
+std::string const dicomDeviceName("1.2.840.10008.15.0.3.1");
+std::string const dicomDescription("1.2.840.10008.15.0.3.2");
+std::string const dicomManufacturer("1.2.840.10008.15.0.3.3");
+std::string const dicomManufacturerModelName("1.2.840.10008.15.0.3.4");
+std::string const dicomSoftwareVersion("1.2.840.10008.15.0.3.5");
+std::string const dicomVendorData("1.2.840.10008.15.0.3.6");
+std::string const dicomAETitle("1.2.840.10008.15.0.3.7");
+std::string const dicomNetworkConnectionReference("1.2.840.10008.15.0.3.8");
+std::string const dicomApplicationCluster("1.2.840.10008.15.0.3.9");
+std::string const dicomAssociationInitiator("1.2.840.10008.15.0.3.10");
+std::string const dicomAssociationAcceptor("1.2.840.10008.15.0.3.11");
+std::string const dicomHostname("1.2.840.10008.15.0.3.12");
+std::string const dicomPort("1.2.840.10008.15.0.3.13");
+std::string const dicomSOPClass("1.2.840.10008.15.0.3.14");
+std::string const dicomTransferRole("1.2.840.10008.15.0.3.15");
+std::string const dicomTransferSyntax("1.2.840.10008.15.0.3.16");
+std::string const dicomPrimaryDeviceType("1.2.840.10008.15.0.3.17");
+std::string const dicomRelatedDeviceReference("1.2.840.10008.15.0.3.18");
+std::string const dicomPreferredCalledAETitle("1.2.840.10008.15.0.3.19");
+std::string const dicomTLSCyphersuite("1.2.840.10008.15.0.3.20");
+std::string const dicomAuthorizedNodeCertificateReference("1.2.840.10008.15.0.3.21");
+std::string const dicomThisNodeCertificateReference("1.2.840.10008.15.0.3.22");
+std::string const dicomInstalled("1.2.840.10008.15.0.3.23");
+std::string const dicomStationName("1.2.840.10008.15.0.3.24");
+std::string const dicomDeviceSerialNumber("1.2.840.10008.15.0.3.25");
+std::string const dicomInstitutionName("1.2.840.10008.15.0.3.26");
+std::string const dicomInstitutionAddress("1.2.840.10008.15.0.3.27");
+std::string const dicomInstitutionDepartmentName("1.2.840.10008.15.0.3.28");
+std::string const dicomIssuerOfPatientID("1.2.840.10008.15.0.3.29");
+std::string const dicomPreferredCallingAETitle("1.2.840.10008.15.0.3.30");
+std::string const dicomSupportedCharacterSet("1.2.840.10008.15.0.3.31");
+std::string const dicomConfigurationRoot("1.2.840.10008.15.0.4.1");
+std::string const dicomDevicesRoot("1.2.840.10008.15.0.4.2");
+std::string const dicomUniqueAETitlesRegistryRoot("1.2.840.10008.15.0.4.3");
+std::string const dicomDevice("1.2.840.10008.15.0.4.4");
+std::string const dicomNetworkAE("1.2.840.10008.15.0.4.5");
+std::string const dicomNetworkConnection("1.2.840.10008.15.0.4.6");
+std::string const dicomUniqueAETitle("1.2.840.10008.15.0.4.7");
+std::string const dicomTransferCapability("1.2.840.10008.15.0.4.8");
+std::string const UniversalCoordinatedTime("1.2.840.10008.15.1.1");
+
+extern ElementsDictionary public_dictionary;
+extern UIDsDictionary uids_dictionary;
}
}
diff --git a/src/dcmtkpp/uid.cpp b/src/dcmtkpp/uid.cpp
new file mode 100644
index 0000000..e9013e5
--- /dev/null
+++ b/src/dcmtkpp/uid.cpp
@@ -0,0 +1,88 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include "dcmtkpp/uid.h"
+
+#include <string>
+
+#include <uuid/uuid.h>
+
+#include "dcmtkpp/Exception.h"
+
+namespace dcmtkpp
+{
+
+std::string generate_uid()
+{
+ if(uid_prefix.size() > 26)
+ {
+ throw Exception("UID prefix is too long");
+ }
+
+ // Our prefix is 26 characters long. With the "." for separation, 37
+ // characters remain. Since a random UUID has 122 random bits and since
+ // 2^122-1 is 37 decimal digits long, the UID can be generated from a UUID.
+ uuid_t uuid;
+ uuid_generate(uuid);
+
+ // Convert the UUID to two 61 bits integers
+ uint64_t first=0;
+ // time-high-and-version: 12 bits random, 4 bits version (2 bytes)
+ first = (first + (uuid[7]>>4)) << 8;
+ first = (first + ((uuid[7]&0xf)<<4)+(uuid[6]&0xf)) << 8;
+ // time-mid: random (2 bytes)
+ first = (first + uuid[5]) << 8;
+ first = (first + uuid[4]) << 8;
+ // time-low: random (4 bytes)
+ first = (first + uuid[3]) << 8;
+ first = (first + uuid[2]) << 8;
+ first = (first + uuid[1]) << 8;
+ first = (first + uuid[0]);
+
+ uint64_t second=0;
+ // node: 48 bits random (6 bytes)
+ second = (second + uuid[15]) << 8;
+ second = (second + uuid[14]) << 8;
+ second = (second + uuid[13]) << 8;
+ second = (second + uuid[12]) << 8;
+ second = (second + uuid[11]) << 8;
+ second = (second + uuid[10]) << 8;
+ // clock_seq_low: 8 bits random (1 byte)
+ second = (second + uuid[9]) << 8;
+ // clock_seq_hi_and_reserved: 4 bits random, 4 bits variant (1 byte)
+ second = (second + ((uuid[8]&0xf) << 4)) >> 4;
+
+ std::string suffix;
+ int remainder = 0;
+ while(first != 0)
+ {
+ int digit = first%10;
+ first = (first-digit)/10;
+ if(first != 0)
+ {
+ suffix = std::to_string(digit)+suffix;
+ }
+ else
+ {
+ remainder = digit;
+ }
+ }
+
+ second += remainder;
+ while(second != 0)
+ {
+ int digit = second%10;
+ second = (second-digit)/10;
+
+ suffix = std::to_string(digit)+suffix;
+ }
+
+ return uid_prefix+"."+suffix;
+}
+
+}
diff --git a/src/dcmtkpp/uid.h b/src/dcmtkpp/uid.h
new file mode 100644
index 0000000..5248483
--- /dev/null
+++ b/src/dcmtkpp/uid.h
@@ -0,0 +1,34 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _d8ae0008_075b_4a28_a241_1c6fb1a6c79b
+#define _d8ae0008_075b_4a28_a241_1c6fb1a6c79b
+
+#include <string>
+
+namespace dcmtkpp
+{
+
+/// @brief UID prefix of DCMTK++.
+std::string const uid_prefix="1.2.826.0.1.3680043.9.5560";
+
+#ifdef DCMTKPP_MAJOR_VERSION
+#define DCMTKPP_STRINGIFY_HELPER(s) #s
+#define DCMTKPP_STRINGIFY(s) DCMTKPP_STRINGIFY_HELPER(s)
+/// @brief Implementation class UID of DCMTK++.
+std::string const implementation_class_uid=uid_prefix+"0." DCMTKPP_STRINGIFY(DCMTKPP_MAJOR_VERSION);
+#else
+#error DCMTKPP_MAJOR_VERSION must be defined
+#endif
+
+/// @brief Generate a UID under the UID prefix.
+std::string generate_uid();
+
+}
+
+#endif // _d8ae0008_075b_4a28_a241_1c6fb1a6c79b
diff --git a/src/dcmtkpp/xml_converter.cpp b/src/dcmtkpp/xml_converter.cpp
new file mode 100644
index 0000000..7a80781
--- /dev/null
+++ b/src/dcmtkpp/xml_converter.cpp
@@ -0,0 +1,597 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#include <map>
+#include <vector>
+
+#include <dcmtk/config/osconfig.h>
+#include <dcmtk/ofstd/ofstd.h>
+#include <dcmtk/ofstd/ofstream.h>
+
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/xml_converter.h"
+
+namespace dcmtkpp
+{
+
+struct ToXMLVisitor
+{
+ typedef boost::property_tree::ptree result_type;
+
+ result_type operator()(VR const vr) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ return result;
+ }
+
+ template<typename T>
+ result_type operator()(VR const vr, T const & value) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ unsigned int count = 0;
+ for(auto const & item: value)
+ {
+ ++count;
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", count); // Mandatory
+ tag_value.put_value(item);
+
+ result.add_child("Value", tag_value);
+ }
+
+ return result;
+ }
+
+ result_type operator()(VR const vr, Value::Integers const & value) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ unsigned int count = 0;
+ for(auto const & item: value)
+ {
+ ++count;
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", count); // Mandatory
+ tag_value.put_value(item);
+
+ result.add_child("Value", tag_value);
+ }
+
+ return result;
+ }
+
+ result_type operator()(VR const vr, Value::Strings const & value) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ if(vr == VR::PN)
+ {
+ auto const fields = { "Alphabetic", "Ideographic", "Phonetic" };
+
+ unsigned int count = 0;
+ for(auto const & item: value)
+ {
+ ++count;
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", count); // Mandatory
+
+ auto fields_it = fields.begin();
+ std::string::size_type begin=0;
+ while(begin != std::string::npos)
+ {
+ std::string::size_type const end = item.find("=", begin);
+
+ std::string::size_type size = 0;
+ if(end != std::string::npos)
+ {
+ size = end-begin;
+ }
+ else
+ {
+ size = std::string::npos;
+ }
+
+ boost::property_tree::ptree tag_field;
+ std::string value_name = item.substr(begin, size);
+
+ auto const fields_name = { "FamilyName", "GivenName",
+ "MiddleName", "NamePrefix",
+ "NameSuffix" };
+ auto fields_name_it = fields_name.begin();
+ std::string::size_type begin_name=0;
+ while(begin_name != std::string::npos)
+ {
+ std::string::size_type const end_name =
+ value_name.find("^", begin_name);
+
+ std::string::size_type size_name = 0;
+ if(end_name != std::string::npos)
+ {
+ size_name = end_name-begin_name;
+ }
+ else
+ {
+ size_name = std::string::npos;
+ }
+
+ boost::property_tree::ptree tag_name;
+
+ tag_name.put_value(value_name.substr(begin_name,
+ size_name));
+
+ tag_field.add_child(*fields_name_it, tag_name);
+
+ if(end_name != std::string::npos)
+ {
+ begin_name = end_name+1;
+ ++fields_name_it;
+ if(fields_name_it == fields_name.end())
+ {
+ throw Exception("Invalid Person Name");
+ }
+ }
+ else
+ {
+ begin_name = end_name;
+ }
+ }
+
+ tag_value.add_child(*fields_it, tag_field);
+
+ if(end != std::string::npos)
+ {
+ begin = end+1;
+ ++fields_it;
+ if(fields_it == fields.end())
+ {
+ throw Exception("Invalid Person Name");
+ }
+ }
+ else
+ {
+ begin = end;
+ }
+ }
+ result.add_child("PersonName", tag_value);
+ }
+ }
+ else
+ {
+ unsigned int count = 0;
+ for(auto const & item: value)
+ {
+ ++count;
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", count); // Mandatory
+ tag_value.put_value(item);
+
+ result.add_child("Value", tag_value);
+ }
+ }
+
+ return result;
+ }
+
+ result_type operator()(VR const vr, Value::DataSets const & value) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ unsigned int count = 0;
+ for(auto const & item: value)
+ {
+ ++count;
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", count); // Mandatory
+ boost::property_tree::ptree tag_result = as_xml(item);
+ tag_value.insert(tag_value.end(), tag_result.front().second.begin(),
+ tag_result.front().second.end());
+ result.add_child("Item", tag_value);
+ }
+
+ return result;
+ }
+
+ result_type operator()(VR const vr, Value::Binary const & value) const
+ {
+ result_type result;
+
+ result.put("<xmlattr>.vr", as_string(vr)); // Mandatory
+
+ boost::property_tree::ptree tag_value;
+
+ unsigned char const * data =
+ reinterpret_cast<unsigned char const *>(&value[0]);
+ OFStringStream stream;
+ OFStandard::encodeBase64(stream, data, value.size());
+ tag_value.put_value(stream.str().c_str());
+
+ result.add_child("InlineBinary", tag_value);
+
+ return result;
+ }
+
+};
+
+std::string get_person_name(boost::property_tree::ptree const & xml)
+{
+ std::vector<std::string> const fields_name = { "NameSuffix", "NamePrefix",
+ "MiddleName", "GivenName",
+ "FamilyName" };
+
+ std::map<std::string, std::string> values;
+ for(auto it = xml.begin(); it != xml.end(); ++it)
+ {
+ if (std::find(fields_name.begin(),
+ fields_name.end(), it->first) != fields_name.end())
+ {
+ auto const value = it->second.get_value<std::string>();
+
+ values.insert(std::pair<std::string, std::string>(it->first, value));
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it->first
+ << "' for PersonName Tag";
+ throw Exception(error.str());
+ }
+ }
+
+ std::string return_value;
+ auto itfield = fields_name.begin();
+ do
+ {
+ std::stringstream current_value;
+
+ std::string value;
+ if (values.find(*itfield) != values.end())
+ {
+ value = values[*itfield];
+ }
+
+ ++itfield;
+
+ if (itfield != fields_name.end() && (value != "" || return_value != ""))
+ {
+ current_value << "^";
+ }
+ if (value != "")
+ {
+ current_value << value;
+ }
+ if (return_value != "")
+ {
+ current_value << return_value;
+ }
+
+ return_value = current_value.str();
+ }
+ while (itfield != fields_name.end());
+
+ return return_value;
+}
+
+template<typename TValueType>
+std::map<int, TValueType>
+parse_value(boost::property_tree::ptree const & xml, VR const & vr)
+{
+ std::map<int, TValueType> values;
+ for(auto it_value = xml.begin(); it_value != xml.end(); ++it_value)
+ {
+ if (it_value->first == "<xmlattr>")
+ {
+ continue;
+ }
+ else if (it_value->first != "Value")
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it_value->first
+ << "' for DicomAttribute Tag with VR = "
+ << as_string(vr);
+ throw Exception(error.str());
+ }
+
+ int const position =
+ it_value->second.get<int>("<xmlattr>.number");
+
+ values.insert(std::pair<int, TValueType>(
+ position,
+ it_value->second.get_value<TValueType>()));
+ }
+
+ return values;
+}
+
+boost::property_tree::ptree as_xml(DataSet const & data_set)
+{
+ // XML dataset element
+ boost::property_tree::ptree nativedicommodel;
+ for(auto const & it: data_set)
+ {
+ auto const & tag = it.first;
+ auto const & element = it.second;
+
+ boost::property_tree::ptree dicomattribute =
+ apply_visitor(ToXMLVisitor(), element);
+
+ auto const dictionary_it = registry::public_dictionary.find(tag);
+ if(dictionary_it == registry::public_dictionary.end())
+ {
+ throw Exception("No such element: " + std::string(tag));
+ }
+
+ // Add Mandatory attribute Tag
+ dicomattribute.put("<xmlattr>.tag", std::string(tag));
+ // Add Optional attribute Keyword
+ dicomattribute.put("<xmlattr>.keyword", dictionary_it->second.keyword);
+ // Add Optional attribute PrivateCreator
+ //dicomattribute.put("<xmlattr>.privateCreator", todo);
+
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+ }
+
+ // root element
+ boost::property_tree::ptree dataset_xml;
+
+ // Add XML dataset into root element
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ return dataset_xml;
+}
+
+DataSet as_dataset(boost::property_tree::ptree const & xml)
+{
+ // XML contains only one NativeDicomModel
+ // <NativeDicomModel>
+ // ...
+ // </NativeDicomModel>
+ if (xml.size() < 1 || xml.front().first != "NativeDicomModel")
+ {
+ throw Exception("Missing root node NativeDicomModel");
+ }
+
+ DataSet data_set;
+
+ for(auto it = xml.front().second.begin();
+ it != xml.front().second.end(); ++it)
+ {
+ // NativeDicomModel tag should only contains DicomAttribute tag
+ if (it->first != "DicomAttribute")
+ {
+ throw Exception("Bad DICOM tag: " + it->first);
+ }
+
+ // Get VR and tag
+ Tag const tag(it->second.get<std::string>("<xmlattr>.tag"));
+ VR const vr = as_vr(it->second.get<std::string>("<xmlattr>.vr"));
+
+ Element element;
+
+ if(vr == VR::AE || vr == VR::AS || vr == VR::AT || vr == VR::CS ||
+ vr == VR::DA || vr == VR::DT || vr == VR::LO || vr == VR::LT ||
+ vr == VR::SH || vr == VR::ST || vr == VR::TM || vr == VR::UI ||
+ vr == VR::UT)
+ {
+ element = Element(Value::Strings(), vr);
+
+ auto values = parse_value<Value::Strings::value_type>(it->second,
+ vr);
+
+ for (auto it = values.begin(); it != values.end(); ++it)
+ {
+ element.as_string().push_back(it->second);
+ }
+ }
+ else if(vr == VR::PN)
+ {
+ element = Element(Value::Strings(), vr);
+
+ std::map<int, Value::Strings::value_type> values;
+ for(auto it_value = it->second.begin();
+ it_value != it->second.end(); ++it_value)
+ {
+ if (it_value->first == "<xmlattr>")
+ {
+ continue;
+ }
+ else if (it_value->first != "PersonName")
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it_value->first
+ << "' for DicomAttribute Tag with VR = "
+ << as_string(vr);
+ throw Exception(error.str());
+ }
+
+ int const position =
+ it_value->second.get<int>("<xmlattr>.number");
+
+ std::map<std::string, std::string> names;
+ auto const fields = { "Alphabetic", "Ideographic", "Phonetic" };
+ for(auto it_person = it_value->second.begin();
+ it_person != it_value->second.end(); ++it_person)
+ {
+ if (it_person->first == "<xmlattr>")
+ {
+ continue;
+ }
+ else if (std::find(fields.begin(),
+ fields.end(),
+ it_person->first) != fields.end())
+ {
+ names.insert(std::pair<std::string, std::string>(
+ it_person->first,
+ get_person_name(it_person->second)));
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it_person->first
+ << "' for PersonName Tag";
+ throw Exception(error.str());
+ }
+ }
+
+ Value::Strings::value_type dicom_item;
+ for(auto const & field: fields)
+ {
+ if (names.find(field) != names.end())
+ {
+ dicom_item += names[field];
+ }
+ dicom_item += "=";
+ }
+
+ while(*dicom_item.rbegin() == '=')
+ {
+ dicom_item = dicom_item.substr(0, dicom_item.size()-1);
+ }
+
+ values.insert(std::pair<int, Value::Strings::value_type>(
+ position, dicom_item));
+ }
+
+ for (auto it = values.begin(); it != values.end(); ++it)
+ {
+ element.as_string().push_back(it->second);
+ }
+ }
+ else if(vr == VR::DS || vr == VR::FD || vr == VR::FL)
+ {
+ element = Element(Value::Reals(), vr);
+
+ auto values = parse_value<Value::Reals::value_type>(it->second, vr);
+
+ for (auto it = values.begin(); it != values.end(); ++it)
+ {
+ element.as_real().push_back(it->second);
+ }
+ }
+ else if(vr == VR::IS || vr == VR::SL || vr == VR::SS ||
+ vr == VR::UL || vr == VR::US)
+ {
+ element = Element(Value::Integers(), vr);
+
+ auto values = parse_value<Value::Integers::value_type>(it->second,
+ vr);
+
+ for (auto it = values.begin(); it != values.end(); ++it)
+ {
+ element.as_int().push_back(it->second);
+ }
+ }
+ else if(vr == VR::SQ)
+ {
+ element = Element(Value::DataSets(), vr);
+
+ std::map<int, Value::DataSets::value_type> values;
+ for(auto it_value = it->second.begin();
+ it_value != it->second.end(); ++it_value)
+ {
+ if (it_value->first == "<xmlattr>")
+ {
+ continue;
+ }
+ else if (it_value->first != "Item")
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it_value->first
+ << "' for DicomAttribute Tag with VR = "
+ << as_string(vr);
+ throw Exception(error.str());
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.insert(nativedicommodel.end(),
+ it_value->second.begin(),
+ it_value->second.end());
+ nativedicommodel.erase("<xmlattr>");
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ int const position =
+ it_value->second.get<int>("<xmlattr>.number");
+
+ values.insert(std::pair<int, Value::DataSets::value_type>(
+ position, as_dataset(dataset_xml)));
+ }
+
+ for (auto it = values.begin(); it != values.end(); ++it)
+ {
+ element.as_data_set().push_back(it->second);
+ }
+ }
+ else if(vr == VR::OB || vr == VR::OF || vr == VR::OW || vr == VR::UN)
+ {
+ element = Element(Value::Binary(), vr);
+
+ bool find_inline_binary = false; // only one Tag InlineBinary
+ for(auto it_value = it->second.begin();
+ it_value != it->second.end(); ++it_value)
+ {
+ if (it_value->first == "<xmlattr>")
+ {
+ continue;
+ }
+ else if (it_value->first != "InlineBinary")
+ {
+ std::stringstream error;
+ error << "Bad sub-Tag '" << it_value->first
+ << "' for DicomAttribute Tag with VR = "
+ << as_string(vr);
+ throw Exception(error.str());
+ }
+ else if (find_inline_binary)
+ {
+ std::stringstream error;
+ error << "Too many sub-Tag '" << it_value->first
+ << "' for DicomAttribute Tag with VR = "
+ << as_string(vr);
+ throw Exception(error.str());
+ }
+
+ auto const & encoded = it_value->second.get_value<std::string>();
+ OFString const encoded_dcmtk(encoded.c_str());
+ unsigned char * decoded;
+ size_t const decoded_size =
+ OFStandard::decodeBase64(encoded_dcmtk, decoded);
+
+ element.as_binary().resize(decoded_size);
+ std::copy(decoded, decoded+decoded_size,
+ element.as_binary().begin());
+
+ delete[] decoded;
+
+ find_inline_binary = true;
+ }
+ }
+ else
+ {
+ throw Exception("Unknown VR: "+as_string(vr));
+ }
+
+ data_set.add(tag, element);
+ }
+
+ return data_set;
+}
+
+} // namespace dcmtkpp
diff --git a/src/dcmtkpp/xml_converter.h b/src/dcmtkpp/xml_converter.h
new file mode 100644
index 0000000..fa990af
--- /dev/null
+++ b/src/dcmtkpp/xml_converter.h
@@ -0,0 +1,27 @@
+/*************************************************************************
+ * dcmtkpp - Copyright (C) Universite de Strasbourg
+ * Distributed under the terms of the CeCILL-B license, as published by
+ * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
+ * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ * for details.
+ ************************************************************************/
+
+#ifndef _61eb6ed2_447a_43b5_a6ba_ca7c2a5fb492
+#define _61eb6ed2_447a_43b5_a6ba_ca7c2a5fb492
+
+#include <boost/property_tree/ptree.hpp>
+
+#include "dcmtkpp/DataSet.h"
+
+namespace dcmtkpp
+{
+
+/// @brief Convert a data set to its XML representation.
+boost::property_tree::ptree as_xml(DataSet const & data_set);
+
+/// @brief Create a data set from its XML representation.
+DataSet as_dataset(boost::property_tree::ptree const & xml);
+
+} // namespace dcmtkpp
+
+#endif // _61eb6ed2_447a_43b5_a6ba_ca7c2a5fb492
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index a8fe9a3..80b3ced 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -5,6 +5,7 @@ add_definitions(-DBOOST_TEST_DYN_LINK)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../src)
add_definitions("-D HAVE_CONFIG_H")
+add_definitions("-D DCMTKPP_MAJOR_VERSION=${dcmtkpp_MAJOR_VERSION}")
file(GLOB_RECURSE tests *.cpp)
foreach(test_file ${tests})
diff --git a/tests/code/Association.cpp b/tests/code/Association.cpp
index a300c2f..b80f222 100644
--- a/tests/code/Association.cpp
+++ b/tests/code/Association.cpp
@@ -5,6 +5,7 @@
#include "dcmtkpp/Association.h"
#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
#include "../PeerFixtureBase.h"
@@ -210,8 +211,8 @@ BOOST_AUTO_TEST_CASE(Associate)
{
PeerFixtureBase fixture(NET_REQUESTOR, 0, 10,
{
- { UID_VerificationSOPClass,
- {UID_LittleEndianImplicitTransferSyntax}
+ { dcmtkpp::registry::VerificationSOPClass,
+ {dcmtkpp::registry::ImplicitVRLittleEndian}
}
});
BOOST_CHECK_THROW(
@@ -224,8 +225,8 @@ BOOST_AUTO_TEST_CASE(Associate)
fixture.association.set_peer_ae_title("foo"), dcmtkpp::Exception);
BOOST_CHECK_THROW(
fixture.association.add_presentation_context(
- UID_GETPatientRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax }),
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET,
+ { dcmtkpp::registry::ImplicitVRLittleEndian }),
dcmtkpp::Exception);
BOOST_CHECK_THROW(
fixture.association.set_user_identity_type(dcmtkpp::UserIdentityType::SAML),
diff --git a/tests/code/CEchoRequest.cpp b/tests/code/CEchoRequest.cpp
index 934a900..8b2b7ba 100644
--- a/tests/code/CEchoRequest.cpp
+++ b/tests/code/CEchoRequest.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CEchoRequest.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -19,7 +19,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CEchoRequest>
{
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_ECHO_RQ});
this->command_set.add("MessageID", {1234});
- this->command_set.add("AffectedSOPClassUID", {UID_VerificationSOPClass});
+ this->command_set.add("AffectedSOPClassUID", {dcmtkpp::registry::VerificationSOPClass});
}
void check(dcmtkpp::CEchoRequest const & message)
@@ -27,14 +27,14 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CEchoRequest>
BOOST_CHECK_EQUAL(message.get_command_field(), dcmtkpp::Message::Command::C_ECHO_RQ);
BOOST_CHECK_EQUAL(message.get_message_id(), 1234);
BOOST_CHECK_EQUAL(
- message.get_affected_sop_class_uid(), UID_VerificationSOPClass);
+ message.get_affected_sop_class_uid(), dcmtkpp::registry::VerificationSOPClass);
BOOST_CHECK(!message.has_data_set());
}
};
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
- dcmtkpp::CEchoRequest const message(1234, UID_VerificationSOPClass);
+ dcmtkpp::CEchoRequest const message(1234, dcmtkpp::registry::VerificationSOPClass);
this->check(message);
}
diff --git a/tests/code/CEchoResponse.cpp b/tests/code/CEchoResponse.cpp
index 01195c4..3dc26bd 100644
--- a/tests/code/CEchoResponse.cpp
+++ b/tests/code/CEchoResponse.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CEchoResponse.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -20,7 +20,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CEchoResponse>
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_ECHO_RSP});
this->command_set.add("MessageIDBeingRespondedTo", {1234});
this->command_set.add("Status", {STATUS_Success});
- this->command_set.add("AffectedSOPClassUID", {UID_VerificationSOPClass});
+ this->command_set.add("AffectedSOPClassUID", {dcmtkpp::registry::VerificationSOPClass});
}
void check(dcmtkpp::CEchoResponse const & message)
@@ -28,7 +28,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CEchoResponse>
BOOST_CHECK_EQUAL(message.get_command_field(), dcmtkpp::Message::Command::C_ECHO_RSP);
BOOST_CHECK_EQUAL(message.get_message_id_being_responded_to(), 1234);
BOOST_CHECK_EQUAL(message.get_status(), STATUS_Success);
- BOOST_CHECK_EQUAL(message.get_affected_sop_class_uid(), UID_VerificationSOPClass);
+ BOOST_CHECK_EQUAL(message.get_affected_sop_class_uid(), dcmtkpp::registry::VerificationSOPClass);
BOOST_CHECK(!message.has_data_set());
}
};
@@ -36,7 +36,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CEchoResponse>
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CEchoResponse const message(
- 1234, STATUS_Success, UID_VerificationSOPClass);
+ 1234, STATUS_Success, dcmtkpp::registry::VerificationSOPClass);
this->check(message);
}
diff --git a/tests/code/CFindRequest.cpp b/tests/code/CFindRequest.cpp
index f06ad39..32f7fac 100644
--- a/tests/code/CFindRequest.cpp
+++ b/tests/code/CFindRequest.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CFindRequest.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -21,7 +21,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CFindRequest>
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_FIND_RQ});
this->command_set.add("MessageID", {1234});
this->command_set.add("AffectedSOPClassUID",
- {UID_FINDPatientRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND});
this->command_set.add("Priority", {DIMSE_PRIORITY_MEDIUM});
this->query.add("PatientName", {"Doe^John"});
@@ -35,7 +35,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CFindRequest>
BOOST_CHECK_EQUAL(message.get_message_id(), 1234);
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_FINDPatientRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND);
BOOST_CHECK(message.get_data_set() == this->query);
}
};
@@ -43,7 +43,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CFindRequest>
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CFindRequest const message(
- 1234, UID_FINDPatientRootQueryRetrieveInformationModel,
+ 1234, dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND,
DIMSE_PRIORITY_MEDIUM, this->query);
this->check(message);
}
diff --git a/tests/code/CFindResponse.cpp b/tests/code/CFindResponse.cpp
index 55a17e9..49bd561 100644
--- a/tests/code/CFindResponse.cpp
+++ b/tests/code/CFindResponse.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CFindResponse.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -24,7 +24,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CFindResponse>
command_set.add("MessageID", {5678});
command_set.add("AffectedSOPClassUID",
- {UID_FINDStudyRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::StudyRootQueryRetrieveInformationModelFIND});
data_set.add("PatientName", {"Doe^John"});
data_set.add("PatientID", {"DJ123"});
@@ -44,7 +44,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CFindResponse>
BOOST_CHECK(message.has_affected_sop_class_uid());
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_FINDStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelFIND);
BOOST_CHECK(message.has_data_set());
BOOST_CHECK(message.get_data_set() == this->data_set);
@@ -56,7 +56,7 @@ BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
dcmtkpp::CFindResponse message(1234, STATUS_Success, this->data_set);
message.set_message_id(5678);
message.set_affected_sop_class_uid(
- UID_FINDStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelFIND);
this->check(message);
}
diff --git a/tests/code/CGetRequest.cpp b/tests/code/CGetRequest.cpp
index 7a83ace..5e63da4 100644
--- a/tests/code/CGetRequest.cpp
+++ b/tests/code/CGetRequest.cpp
@@ -22,7 +22,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CGetRequest>
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_GET_RQ});
this->command_set.add("MessageID", {1234});
this->command_set.add("AffectedSOPClassUID",
- {UID_GETPatientRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET});
this->command_set.add("Priority", {DIMSE_PRIORITY_MEDIUM});
this->query.add("PatientName", {"Doe^John"});
@@ -36,7 +36,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CGetRequest>
BOOST_CHECK_EQUAL(message.get_message_id(), 1234);
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_GETPatientRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET);
BOOST_CHECK(message.has_data_set());
BOOST_CHECK(message.get_data_set() == this->query);
}
@@ -45,7 +45,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CGetRequest>
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CGetRequest const message(
- 1234, UID_GETPatientRootQueryRetrieveInformationModel,
+ 1234, dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET,
DIMSE_PRIORITY_MEDIUM, this->query);
this->check(message);
}
diff --git a/tests/code/CGetResponse.cpp b/tests/code/CGetResponse.cpp
index c207421..0f035e0 100644
--- a/tests/code/CGetResponse.cpp
+++ b/tests/code/CGetResponse.cpp
@@ -2,7 +2,6 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CGetResponse.h"
@@ -25,7 +24,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CGetResponse>
this->command_set.add("MessageID", {5678});
this->command_set.add("AffectedSOPClassUID",
- {UID_GETStudyRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::StudyRootQueryRetrieveInformationModelGET});
this->command_set.add(dcmtkpp::registry::NumberOfRemainingSuboperations, {1});
this->command_set.add(dcmtkpp::registry::NumberOfCompletedSuboperations, {2});
this->command_set.add(dcmtkpp::registry::NumberOfFailedSuboperations, {3});
@@ -49,7 +48,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CGetResponse>
BOOST_CHECK(message.has_affected_sop_class_uid());
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_GETStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelGET);
BOOST_CHECK(message.has_number_of_remaining_sub_operations());
BOOST_CHECK_EQUAL(message.get_number_of_remaining_sub_operations(), 1);
@@ -73,7 +72,7 @@ BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
dcmtkpp::CGetResponse message(1234, STATUS_Success, this->data_set);
message.set_message_id(5678);
message.set_affected_sop_class_uid(
- UID_GETStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelGET);
message.set_number_of_remaining_sub_operations(1);
message.set_number_of_completed_sub_operations(2);
message.set_number_of_failed_sub_operations(3);
diff --git a/tests/code/CMoveRequest.cpp b/tests/code/CMoveRequest.cpp
index 41a490a..5d9d10f 100644
--- a/tests/code/CMoveRequest.cpp
+++ b/tests/code/CMoveRequest.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CMoveRequest.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -21,7 +21,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CMoveRequest>
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_MOVE_RQ});
this->command_set.add("MessageID", {1234});
this->command_set.add("AffectedSOPClassUID",
- {UID_MOVEPatientRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE});
this->command_set.add("Priority", {DIMSE_PRIORITY_MEDIUM});
this->command_set.add("MoveDestination", {"destination"});
@@ -36,7 +36,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CMoveRequest>
BOOST_CHECK_EQUAL(message.get_message_id(), 1234);
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_MOVEPatientRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE);
BOOST_CHECK_EQUAL(message.get_move_destination(), "destination");
BOOST_CHECK(message.has_data_set());
BOOST_CHECK(message.get_data_set() == this->query);
@@ -46,7 +46,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CMoveRequest>
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CMoveRequest const message(
- 1234, UID_MOVEPatientRootQueryRetrieveInformationModel,
+ 1234, dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE,
DIMSE_PRIORITY_MEDIUM, "destination", this->query);
this->check(message);
}
diff --git a/tests/code/CMoveResponse.cpp b/tests/code/CMoveResponse.cpp
index ceb7b5b..28677e9 100644
--- a/tests/code/CMoveResponse.cpp
+++ b/tests/code/CMoveResponse.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CMoveResponse.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -24,7 +24,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CMoveResponse>
this->command_set.add("MessageID", {5678});
this->command_set.add("AffectedSOPClassUID",
- {UID_MOVEStudyRootQueryRetrieveInformationModel});
+ {dcmtkpp::registry::StudyRootQueryRetrieveInformationModelMOVE});
this->command_set.add(dcmtkpp::registry::NumberOfRemainingSuboperations, {1});
this->command_set.add(dcmtkpp::registry::NumberOfCompletedSuboperations, {2});
this->command_set.add(dcmtkpp::registry::NumberOfFailedSuboperations, {3});
@@ -48,7 +48,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CMoveResponse>
BOOST_CHECK(message.has_affected_sop_class_uid());
BOOST_CHECK_EQUAL(
message.get_affected_sop_class_uid(),
- UID_MOVEStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelMOVE);
BOOST_CHECK(message.has_number_of_remaining_sub_operations());
BOOST_CHECK_EQUAL(message.get_number_of_remaining_sub_operations(), 1);
@@ -72,7 +72,7 @@ BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
dcmtkpp::CMoveResponse message(1234, STATUS_Success, this->data_set);
message.set_message_id(5678);
message.set_affected_sop_class_uid(
- UID_MOVEStudyRootQueryRetrieveInformationModel);
+ dcmtkpp::registry::StudyRootQueryRetrieveInformationModelMOVE);
message.set_number_of_remaining_sub_operations(1);
message.set_number_of_completed_sub_operations(2);
message.set_number_of_failed_sub_operations(3);
diff --git a/tests/code/CStoreRequest.cpp b/tests/code/CStoreRequest.cpp
index 9c9f625..fd926db 100644
--- a/tests/code/CStoreRequest.cpp
+++ b/tests/code/CStoreRequest.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CStoreRequest.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -20,7 +20,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CStoreRequest>
{
this->command_set.add("CommandField", {dcmtkpp::Message::Command::C_STORE_RQ});
this->command_set.add("MessageID", {1234});
- this->command_set.add("AffectedSOPClassUID", {UID_MRImageStorage});
+ this->command_set.add("AffectedSOPClassUID", {dcmtkpp::registry::MRImageStorage});
this->command_set.add("AffectedSOPInstanceUID", {"1.2.3.4"});
this->command_set.add("Priority", {DIMSE_PRIORITY_MEDIUM});
@@ -38,7 +38,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CStoreRequest>
BOOST_CHECK_EQUAL(message.get_command_field(), dcmtkpp::Message::Command::C_STORE_RQ);
BOOST_CHECK_EQUAL(message.get_message_id(), 1234);
BOOST_CHECK_EQUAL(
- message.get_affected_sop_class_uid(), UID_MRImageStorage);
+ message.get_affected_sop_class_uid(), dcmtkpp::registry::MRImageStorage);
BOOST_CHECK_EQUAL(
message.get_affected_sop_instance_uid(), "1.2.3.4");
@@ -56,7 +56,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CStoreRequest>
BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CStoreRequest message(
- 1234, UID_MRImageStorage, "1.2.3.4", DIMSE_PRIORITY_MEDIUM,
+ 1234, dcmtkpp::registry::MRImageStorage, "1.2.3.4", DIMSE_PRIORITY_MEDIUM,
this->data_set);
message.set_move_originator_ae_title("origin");
message.set_move_originator_message_id(5678);
diff --git a/tests/code/CStoreResponse.cpp b/tests/code/CStoreResponse.cpp
index 77ca267..b22c920 100644
--- a/tests/code/CStoreResponse.cpp
+++ b/tests/code/CStoreResponse.cpp
@@ -2,12 +2,12 @@
#include <boost/test/unit_test.hpp>
#include <dcmtk/config/osconfig.h>
-#include <dcmtk/dcmdata/dcuid.h>
#include <dcmtk/dcmnet/dimse.h>
#include "dcmtkpp/CStoreResponse.h"
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Message.h"
+#include "dcmtkpp/registry.h"
#include "../MessageFixtureBase.h"
@@ -22,7 +22,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CStoreResponse>
this->command_set.add("Status", {STATUS_Success});
this->command_set.add("MessageID", {5678});
- this->command_set.add("AffectedSOPClassUID", {UID_MRImageStorage});
+ this->command_set.add("AffectedSOPClassUID", {dcmtkpp::registry::MRImageStorage});
this->command_set.add("AffectedSOPInstanceUID", {"1.2.3.4"});
}
@@ -38,7 +38,7 @@ struct Fixture: public MessageFixtureBase<dcmtkpp::CStoreResponse>
BOOST_CHECK(message.has_affected_sop_class_uid());
BOOST_CHECK_EQUAL(
- message.get_affected_sop_class_uid(), UID_MRImageStorage);
+ message.get_affected_sop_class_uid(), dcmtkpp::registry::MRImageStorage);
BOOST_CHECK(message.has_affected_sop_instance_uid());
BOOST_CHECK_EQUAL(message.get_affected_sop_instance_uid(), "1.2.3.4");
@@ -49,7 +49,7 @@ BOOST_FIXTURE_TEST_CASE(Constructor, Fixture)
{
dcmtkpp::CStoreResponse message(1234, STATUS_Success);
message.set_message_id(5678);
- message.set_affected_sop_class_uid(UID_MRImageStorage);
+ message.set_affected_sop_class_uid(dcmtkpp::registry::MRImageStorage);
message.set_affected_sop_instance_uid("1.2.3.4");
this->check(message);
diff --git a/tests/code/DataSet.cpp b/tests/code/DataSet.cpp
index f28aa3c..e6c516f 100644
--- a/tests/code/DataSet.cpp
+++ b/tests/code/DataSet.cpp
@@ -6,6 +6,8 @@
#include "dcmtkpp/Tag.h"
#include "dcmtkpp/VR.h"
+#include "dcmtkpp/registry.h"
+
BOOST_AUTO_TEST_CASE(Empty)
{
dcmtkpp::DataSet dataset;
diff --git a/tests/code/FindSCU.cpp b/tests/code/FindSCU.cpp
index a7758df..2328c8b 100644
--- a/tests/code/FindSCU.cpp
+++ b/tests/code/FindSCU.cpp
@@ -3,6 +3,7 @@
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/FindSCU.h"
+#include "dcmtkpp/registry.h"
#include "../PeerFixtureBase.h"
@@ -16,8 +17,8 @@ struct Fixture: public PeerFixtureBase
: PeerFixtureBase(NET_REQUESTOR, 104, 10,
{
{
- UID_FINDPatientRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax }
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND,
+ { dcmtkpp::registry::ImplicitVRLittleEndian }
}
})
{
@@ -43,7 +44,7 @@ BOOST_FIXTURE_TEST_CASE(Find, Fixture)
scu.set_network(&this->network);
scu.set_association(&this->association);
- scu.set_affected_sop_class(UID_FINDPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND);
auto const results = scu.find(this->query);
BOOST_REQUIRE_EQUAL(results.size(), 1);
@@ -58,7 +59,7 @@ BOOST_FIXTURE_TEST_CASE(FindCallback, Fixture)
scu.set_network(&this->network);
scu.set_association(&this->association);
- scu.set_affected_sop_class(UID_FINDPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelFIND);
scu.find(this->query, Fixture::callback);
BOOST_CHECK(Fixture::called);
diff --git a/tests/code/GetSCU.cpp b/tests/code/GetSCU.cpp
index d588760..7f3f979 100644
--- a/tests/code/GetSCU.cpp
+++ b/tests/code/GetSCU.cpp
@@ -3,6 +3,7 @@
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/GetSCU.h"
+#include "dcmtkpp/registry.h"
#include "../PeerFixtureBase.h"
@@ -16,11 +17,11 @@ struct Fixture: public PeerFixtureBase
: PeerFixtureBase(NET_REQUESTOR, 104, 10,
{
{
- UID_GETPatientRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax }
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET,
+ { dcmtkpp::registry::ImplicitVRLittleEndian }
},
{
- UID_RawDataStorage, { UID_LittleEndianImplicitTransferSyntax },
+ dcmtkpp::registry::RawDataStorage, { dcmtkpp::registry::ImplicitVRLittleEndian },
ASC_SC_ROLE_SCP
}
})
@@ -46,7 +47,7 @@ BOOST_FIXTURE_TEST_CASE(Get, Fixture)
scu.set_network(&this->network);
scu.set_association(&this->association);
- scu.set_affected_sop_class(UID_GETPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET);
auto const results = scu.get(this->query);
BOOST_REQUIRE_EQUAL(results.size(), 1);
@@ -61,7 +62,7 @@ BOOST_FIXTURE_TEST_CASE(GetCallback, Fixture)
scu.set_network(&this->network);
scu.set_association(&this->association);
- scu.set_affected_sop_class(UID_GETPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelGET);
scu.get(this->query, Fixture::callback);
BOOST_CHECK(Fixture::called);
diff --git a/tests/code/MoveSCU.cpp b/tests/code/MoveSCU.cpp
index 11bf2c9..5a131e7 100644
--- a/tests/code/MoveSCU.cpp
+++ b/tests/code/MoveSCU.cpp
@@ -3,6 +3,7 @@
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/MoveSCU.h"
+#include "dcmtkpp/registry.h"
#include "../PeerFixtureBase.h"
@@ -16,11 +17,11 @@ struct Fixture: public PeerFixtureBase
: PeerFixtureBase(NET_ACCEPTORREQUESTOR, 11113, 10,
{
{
- UID_MOVEPatientRootQueryRetrieveInformationModel,
- { UID_LittleEndianImplicitTransferSyntax }
+ dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE,
+ { dcmtkpp::registry::ImplicitVRLittleEndian }
},
{
- UID_RawDataStorage, { UID_LittleEndianImplicitTransferSyntax },
+ dcmtkpp::registry::RawDataStorage, { dcmtkpp::registry::ImplicitVRLittleEndian },
ASC_SC_ROLE_SCP
}
})
@@ -59,7 +60,7 @@ BOOST_FIXTURE_TEST_CASE(Move, Fixture)
scu.set_association(&this->association);
scu.set_move_destination("LOCAL");
- scu.set_affected_sop_class(UID_MOVEPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE);
auto const results = scu.move(this->query);
BOOST_REQUIRE_EQUAL(results.size(), 1);
@@ -75,7 +76,7 @@ BOOST_FIXTURE_TEST_CASE(MoveCallback, Fixture)
scu.set_association(&this->association);
scu.set_move_destination("LOCAL");
- scu.set_affected_sop_class(UID_MOVEPatientRootQueryRetrieveInformationModel);
+ scu.set_affected_sop_class(dcmtkpp::registry::PatientRootQueryRetrieveInformationModelMOVE);
scu.move(this->query, Fixture::callback);
BOOST_CHECK(Fixture::called);
diff --git a/tests/code/Reader.cpp b/tests/code/Reader.cpp
new file mode 100644
index 0000000..ebc71e6
--- /dev/null
+++ b/tests/code/Reader.cpp
@@ -0,0 +1,328 @@
+#define BOOST_TEST_MODULE Reader
+#include <boost/test/unit_test.hpp>
+
+#include <endian.h>
+#include <sstream>
+#include <tuple>
+
+#include <dcmtk/config/osconfig.h>
+#include <dcmtk/dcmdata/dctk.h>
+#include <dcmtk/dcmdata/dcostrmb.h>
+
+#include "dcmtkpp/conversion.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Reader.h"
+#include "dcmtkpp/VR.h"
+
+BOOST_AUTO_TEST_CASE(Constructor)
+{
+ std::istringstream stream;
+ dcmtkpp::Reader const reader(stream, dcmtkpp::registry::ExplicitVRBigEndian_Retired);
+ BOOST_REQUIRE(reader.byte_ordering == BIG_ENDIAN);
+ BOOST_REQUIRE(reader.explicit_vr == true);
+}
+
+void do_test(
+ dcmtkpp::DataSet const & dcmtkpp_data_set, std::string transfer_syntax,
+ E_EncodingType item_encoding, E_GrpLenEncoding group_length_encoding)
+{
+ // Write input data set
+ auto const dcmtk_data_set = dynamic_cast<DcmDataset*>(dcmtkpp::convert(dcmtkpp_data_set));
+ std::string data(1000000, '\0');
+ DcmOutputBufferStream dcmtk_stream(&data[0], data.size());
+ dcmtk_data_set->transferInit();
+ OFCondition const condition = dcmtk_data_set->write(
+ dcmtk_stream, DcmXfer(transfer_syntax.c_str()).getXfer(),
+ item_encoding, NULL, group_length_encoding);
+ BOOST_REQUIRE(condition == EC_Normal);
+ dcmtk_data_set->transferEnd();
+
+ // Store data in a stream
+ data = data.substr(0, dcmtk_stream.tell());
+ std::istringstream stream(data);
+
+ // Read output data set
+ dcmtkpp::Reader reader(stream, transfer_syntax);
+ auto const other_dcmtkpp_data_set = reader.read_data_set();
+
+ BOOST_REQUIRE(other_dcmtkpp_data_set == dcmtkpp_data_set);
+}
+
+void do_test(dcmtkpp::DataSet const & dcmtkpp_data_set)
+{
+ std::vector<std::string> const transfer_syntaxes =
+ {
+ dcmtkpp::registry::ImplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRBigEndian_Retired
+ };
+ std::vector<E_EncodingType> item_encodings =
+ { EET_ExplicitLength, EET_UndefinedLength };
+ std::vector<E_GrpLenEncoding> use_group_length_values =
+ { EGL_withoutGL, EGL_withGL };
+
+ for(auto const & transfer_syntax: transfer_syntaxes)
+ {
+ for(auto const & item_encoding: item_encodings)
+ {
+ for(auto const & use_group_length: use_group_length_values)
+ {
+ do_test(
+ dcmtkpp_data_set, transfer_syntax,
+ item_encoding, use_group_length);
+ }
+ }
+ }
+}
+
+BOOST_AUTO_TEST_CASE(AT)
+{
+ dcmtkpp::Element dcmtkpp_element({"12345678", "9abcdef0"}, dcmtkpp::VR::AT);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorATValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(CS)
+{
+ dcmtkpp::Element dcmtkpp_element({"ABC", "DEF"}, dcmtkpp::VR::CS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorCSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(DS)
+{
+ dcmtkpp::Element dcmtkpp_element({1.23, -4.56}, dcmtkpp::VR::DS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorDSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(FD)
+{
+ dcmtkpp::Element dcmtkpp_element({1.23, -4.56}, dcmtkpp::VR::FD);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorFDValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(FL)
+{
+ dcmtkpp::Element dcmtkpp_element({0.5, -0.125}, dcmtkpp::VR::FL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorFLValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(IS)
+{
+ dcmtkpp::Element dcmtkpp_element({123, -456}, dcmtkpp::VR::IS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorISValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OB)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04}),
+ dcmtkpp::VR::OB);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::EncapsulatedDocument, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OF)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}),
+ dcmtkpp::VR::OF);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::VectorGridData, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OW)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04}),
+ dcmtkpp::VR::OW);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::RedPaletteColorLookupTableData, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SL)
+{
+ dcmtkpp::Element dcmtkpp_element({12345678, -8765432}, dcmtkpp::VR::SL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorSLValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SQ)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(
+ dcmtkpp::registry::SelectorSLValue,
+ dcmtkpp::Element({12345678, -8765432}, dcmtkpp::VR::SL));
+ dcmtkpp::DataSet item2;
+ item2.add(
+ dcmtkpp::registry::SelectorFDValue,
+ dcmtkpp::Element({1.23, -4.56}, dcmtkpp::VR::FD));
+
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::FrameExtractionSequence,
+ dcmtkpp::Element({item1, item2}, dcmtkpp::VR::SQ));
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SS)
+{
+ dcmtkpp::Element dcmtkpp_element({1234, -5678}, dcmtkpp::VR::SS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorSSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(UI)
+{
+ dcmtkpp::Element dcmtkpp_element({"1.2", "3.4"}, dcmtkpp::VR::UI);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ // SelectorUIValue is not in current DCMTK
+ dcmtkpp_data_set.add(dcmtkpp::registry::SOPInstanceUID, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(UL)
+{
+ dcmtkpp::Element dcmtkpp_element({12345678, 8765432}, dcmtkpp::VR::UL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorULValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(US)
+{
+ dcmtkpp::Element dcmtkpp_element({1234, 5678}, dcmtkpp::VR::US);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorUSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+void do_file_test(
+ dcmtkpp::DataSet const & dcmtkpp_data_set, std::string transfer_syntax,
+ E_EncodingType item_encoding, E_GrpLenEncoding group_length_encoding)
+{
+ // Write input data set
+ auto const dcmtk_data_set = dynamic_cast<DcmDataset*>(dcmtkpp::convert(dcmtkpp_data_set));
+
+ DcmFileFormat file_format(dcmtk_data_set);
+ file_format.getMetaInfo()->putAndInsertString(
+ DCM_TransferSyntaxUID, transfer_syntax.c_str());
+ file_format.getMetaInfo()->putAndInsertString(
+ DCM_MediaStorageSOPClassUID,
+ dcmtkpp_data_set.as_string(dcmtkpp::registry::SOPClassUID)[0].c_str());
+ file_format.getMetaInfo()->putAndInsertString(
+ DCM_MediaStorageSOPInstanceUID,
+ dcmtkpp_data_set.as_string(dcmtkpp::registry::SOPInstanceUID)[0].c_str());
+
+ std::string data(1000000, '\0');
+ DcmOutputBufferStream dcmtk_stream(&data[0], data.size());
+
+ file_format.transferInit();
+ OFCondition const condition = file_format.write(
+ dcmtk_stream, DcmXfer(transfer_syntax.c_str()).getXfer(),
+ item_encoding, NULL, group_length_encoding);
+ BOOST_REQUIRE(condition == EC_Normal);
+ file_format.transferEnd();
+
+ // Store data in a stream
+ data = data.substr(0, dcmtk_stream.tell());
+ std::istringstream stream(data);
+
+ // Read output data set
+ dcmtkpp::DataSet meta_information, other_dcmtkpp_data_set;
+ std::tie(meta_information, other_dcmtkpp_data_set) = dcmtkpp::Reader::read_file(stream);
+
+ BOOST_REQUIRE(other_dcmtkpp_data_set == dcmtkpp_data_set);
+
+ BOOST_REQUIRE(
+ meta_information.as_string(dcmtkpp::registry::TransferSyntaxUID) ==
+ dcmtkpp::Value::Strings({transfer_syntax}));
+ BOOST_REQUIRE(
+ meta_information.as_string(dcmtkpp::registry::MediaStorageSOPClassUID) ==
+ other_dcmtkpp_data_set.as_string(dcmtkpp::registry::SOPClassUID));
+ BOOST_REQUIRE(
+ meta_information.as_string(dcmtkpp::registry::MediaStorageSOPInstanceUID) ==
+ other_dcmtkpp_data_set.as_string(dcmtkpp::registry::SOPInstanceUID));
+}
+
+void do_file_test(dcmtkpp::DataSet const & dcmtkpp_data_set)
+{
+ std::vector<std::string> const transfer_syntaxes =
+ {
+ dcmtkpp::registry::ImplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRBigEndian_Retired
+ };
+ std::vector<E_EncodingType> item_encodings =
+ { EET_ExplicitLength, EET_UndefinedLength };
+ std::vector<E_GrpLenEncoding> use_group_length_values =
+ { EGL_withoutGL, EGL_withGL };
+
+ for(auto const & transfer_syntax: transfer_syntaxes)
+ {
+ for(auto const & item_encoding: item_encodings)
+ {
+ for(auto const & use_group_length: use_group_length_values)
+ {
+ do_file_test(
+ dcmtkpp_data_set, transfer_syntax,
+ item_encoding, use_group_length);
+ }
+ }
+ }
+}
+
+BOOST_AUTO_TEST_CASE(File)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(
+ dcmtkpp::registry::SelectorSLValue,
+ dcmtkpp::Element({12345678, -8765432}, dcmtkpp::VR::SL));
+ dcmtkpp::DataSet item2;
+ item2.add(
+ dcmtkpp::registry::SelectorFDValue,
+ dcmtkpp::Element({1.23, -4.56}, dcmtkpp::VR::FD));
+
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::SOPClassUID,
+ {dcmtkpp::registry::RawDataStorage}, dcmtkpp::VR::UI);
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::SOPInstanceUID,
+ {"1.2.3.4"}, dcmtkpp::VR::UI);
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::FrameExtractionSequence,
+ dcmtkpp::Element({item1, item2}, dcmtkpp::VR::SQ));
+
+ do_file_test(dcmtkpp_data_set);
+}
diff --git a/tests/code/SCU.cpp b/tests/code/SCU.cpp
index 58a1951..d21df99 100644
--- a/tests/code/SCU.cpp
+++ b/tests/code/SCU.cpp
@@ -2,6 +2,7 @@
#include <boost/test/unit_test.hpp>
#include "dcmtkpp/SCU.h"
+#include "dcmtkpp/registry.h"
#include "../PeerFixtureBase.h"
@@ -10,8 +11,8 @@ struct Fixture: public PeerFixtureBase
Fixture()
: PeerFixtureBase(NET_REQUESTOR, 104, 10,
{
- { UID_VerificationSOPClass,
- {UID_LittleEndianImplicitTransferSyntax}
+ { dcmtkpp::registry::VerificationSOPClass,
+ {dcmtkpp::registry::ImplicitVRLittleEndian}
}
})
{
diff --git a/tests/code/StoreSCU.cpp b/tests/code/StoreSCU.cpp
index d1de26a..d1465ee 100644
--- a/tests/code/StoreSCU.cpp
+++ b/tests/code/StoreSCU.cpp
@@ -3,6 +3,7 @@
#include "dcmtkpp/DataSet.h"
#include "dcmtkpp/Exception.h"
+#include "dcmtkpp/registry.h"
#include "dcmtkpp/StoreSCU.h"
#include "../PeerFixtureBase.h"
@@ -16,8 +17,8 @@ struct Fixture: public PeerFixtureBase
Fixture()
: PeerFixtureBase(NET_REQUESTOR, 104, 10,
{
- { UID_RawDataStorage,
- {UID_LittleEndianImplicitTransferSyntax}
+ { dcmtkpp::registry::RawDataStorage,
+ {dcmtkpp::registry::ImplicitVRLittleEndian}
}
})
{
@@ -27,7 +28,7 @@ struct Fixture: public PeerFixtureBase
this->dataset.add("PatientID", {"1234"});
this->dataset.add("StudyInstanceUID", {"2.25.386726390606491051215227596277040710"});
this->dataset.add("SeriesInstanceUID", {"2.25.235367796740370588607388995952651763168"});
- this->dataset.add("SOPClassUID", {UID_RawDataStorage});
+ this->dataset.add("SOPClassUID", {dcmtkpp::registry::RawDataStorage});
this->dataset.add("SOPInstanceUID", {"2.25.294312554735929033890522327215919068328"});
}
@@ -43,11 +44,11 @@ bool Fixture::called = false;
BOOST_AUTO_TEST_CASE(AffectedSOPClassUID)
{
dcmtkpp::DataSet dataset;
- dataset.add("SOPClassUID", {UID_RawDataStorage});
+ dataset.add("SOPClassUID", {dcmtkpp::registry::RawDataStorage});
dcmtkpp::StoreSCU scu;
scu.set_affected_sop_class(dataset);
- BOOST_CHECK_EQUAL(scu.get_affected_sop_class(), UID_RawDataStorage);
+ BOOST_CHECK_EQUAL(scu.get_affected_sop_class(), dcmtkpp::registry::RawDataStorage);
}
BOOST_AUTO_TEST_CASE(AffectedSOPClassUIDNoSOPClassUID)
diff --git a/tests/code/Writer.cpp b/tests/code/Writer.cpp
new file mode 100644
index 0000000..0c86f75
--- /dev/null
+++ b/tests/code/Writer.cpp
@@ -0,0 +1,327 @@
+#define BOOST_TEST_MODULE Writer
+#include <boost/test/unit_test.hpp>
+
+#include <endian.h>
+#include <sstream>
+
+#include <dcmtk/config/osconfig.h>
+#include <dcmtk/dcmdata/dctk.h>
+#include <dcmtk/dcmdata/dcistrmb.h>
+
+#include "dcmtkpp/conversion.h"
+#include "dcmtkpp/Element.h"
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Writer.h"
+#include "dcmtkpp/VR.h"
+
+BOOST_AUTO_TEST_CASE(Constructor)
+{
+ std::ostringstream stream;
+ dcmtkpp::Writer const writer(stream, BIG_ENDIAN, true);
+ BOOST_REQUIRE(writer.byte_ordering == BIG_ENDIAN);
+ BOOST_REQUIRE(writer.explicit_vr == true);
+}
+
+BOOST_AUTO_TEST_CASE(ConstructorTransferSyntax)
+{
+ std::ostringstream stream;
+ dcmtkpp::Writer const writer(stream, dcmtkpp::registry::ExplicitVRBigEndian_Retired);
+ BOOST_REQUIRE(writer.byte_ordering == BIG_ENDIAN);
+ BOOST_REQUIRE(writer.explicit_vr == true);
+}
+
+void do_test(
+ dcmtkpp::DataSet const & dcmtkpp_data_set, std::string transfer_syntax,
+ dcmtkpp::Writer::ItemEncoding item_encoding, bool use_group_length)
+{
+ // Write input data set
+ std::stringstream stream;
+ dcmtkpp::Writer const writer(
+ stream, transfer_syntax, item_encoding, use_group_length);
+ writer.write_data_set(dcmtkpp_data_set);
+
+ // Store data in a DCMTK stream
+ std::string const data = stream.str();
+ DcmInputBufferStream dcmtk_stream;
+ dcmtk_stream.setBuffer(&data[0], data.size());
+
+ // Read output data set
+ DcmDataset dcmtk_data_set;
+ dcmtk_data_set.transferInit();
+ OFCondition const condition = dcmtk_data_set.read(
+ dcmtk_stream, DcmXfer(transfer_syntax.c_str()).getXfer());
+ BOOST_REQUIRE(condition == EC_Normal || condition == EC_StreamNotifyClient);
+ BOOST_REQUIRE_EQUAL(dcmtk_stream.avail(), 0);
+ dcmtk_data_set.transferEnd();
+
+ auto const other_dcmtkpp_dataset = dcmtkpp::convert(&dcmtk_data_set);
+ BOOST_REQUIRE(dcmtkpp_data_set == other_dcmtkpp_dataset);
+}
+
+void do_test(dcmtkpp::DataSet const & dcmtkpp_data_set)
+{
+ std::vector<std::string> const transfer_syntaxes =
+ {
+ dcmtkpp::registry::ImplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRBigEndian_Retired
+ };
+ std::vector<dcmtkpp::Writer::ItemEncoding> item_encodings =
+ {
+ dcmtkpp::Writer::ItemEncoding::ExplicitLength,
+ dcmtkpp::Writer::ItemEncoding::UndefinedLength
+ };
+ std::vector<bool> use_group_length_values = {/*true, */false};
+
+ for(auto const & transfer_syntax: transfer_syntaxes)
+ {
+ for(auto const & item_encoding: item_encodings)
+ {
+ for(auto const & use_group_length: use_group_length_values)
+ {
+ do_test(
+ dcmtkpp_data_set, transfer_syntax,
+ item_encoding, use_group_length);
+ }
+ }
+ }
+}
+
+BOOST_AUTO_TEST_CASE(CS)
+{
+ dcmtkpp::Element dcmtkpp_element({"ABC", "DEF"}, dcmtkpp::VR::CS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorCSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(DS)
+{
+ dcmtkpp::Element dcmtkpp_element({1.23, -4.56}, dcmtkpp::VR::DS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorDSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(FD)
+{
+ dcmtkpp::Element dcmtkpp_element({1.23, -4.56}, dcmtkpp::VR::FD);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorFDValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(FL)
+{
+ dcmtkpp::Element dcmtkpp_element({0.5, -0.125}, dcmtkpp::VR::FL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorFLValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(IS)
+{
+ dcmtkpp::Element dcmtkpp_element({123, -456}, dcmtkpp::VR::IS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorISValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OB)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04}),
+ dcmtkpp::VR::OB);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::EncapsulatedDocument, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OF)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}),
+ dcmtkpp::VR::OF);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::VectorGridData, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(OW)
+{
+ dcmtkpp::Element dcmtkpp_element(
+ std::vector<uint8_t>({0x01, 0x02, 0x03, 0x04}),
+ dcmtkpp::VR::OW);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::RedPaletteColorLookupTableData, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SL)
+{
+ dcmtkpp::Element dcmtkpp_element({12345678, -8765432}, dcmtkpp::VR::SL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorSLValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SQ)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(
+ dcmtkpp::registry::SelectorSLValue,
+ dcmtkpp::Element({12345678, -8765432}, dcmtkpp::VR::SL));
+ dcmtkpp::DataSet item2;
+ item2.add(
+ dcmtkpp::registry::SelectorFDValue,
+ dcmtkpp::Element({1.23, -4.56}, dcmtkpp::VR::FD));
+
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::FrameExtractionSequence,
+ dcmtkpp::Element({item1, item2}, dcmtkpp::VR::SQ));
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(SS)
+{
+ dcmtkpp::Element dcmtkpp_element({1234, -5678}, dcmtkpp::VR::SS);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorSSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(UI)
+{
+ dcmtkpp::Element dcmtkpp_element({"1.2", "3.4"}, dcmtkpp::VR::UI);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ // SelectorUIValue is not in current DCMTK
+ dcmtkpp_data_set.add(dcmtkpp::registry::SOPInstanceUID, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(UL)
+{
+ dcmtkpp::Element dcmtkpp_element({12345678, 8765432}, dcmtkpp::VR::UL);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorULValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+BOOST_AUTO_TEST_CASE(US)
+{
+ dcmtkpp::Element dcmtkpp_element({1234, 5678}, dcmtkpp::VR::US);
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(dcmtkpp::registry::SelectorUSValue, dcmtkpp_element);
+
+ do_test(dcmtkpp_data_set);
+}
+
+void do_file_test(
+ dcmtkpp::DataSet const & dcmtkpp_data_set, std::string transfer_syntax,
+ dcmtkpp::Writer::ItemEncoding item_encoding, bool use_group_length)
+{
+ // Write input data set
+ std::stringstream stream;
+
+ dcmtkpp::Writer::write_file(
+ dcmtkpp_data_set, stream, transfer_syntax,
+ item_encoding, use_group_length);
+
+ // Store data in a DCMTK stream
+ std::string const data = stream.str();
+ DcmInputBufferStream dcmtk_stream;
+ dcmtk_stream.setBuffer(&data[0], data.size());
+
+ // Read output data set
+ DcmFileFormat format;
+
+ format.transferInit();
+ OFCondition const condition = format.read(dcmtk_stream);
+ BOOST_REQUIRE(condition == EC_Normal || condition == EC_StreamNotifyClient);
+ BOOST_REQUIRE_EQUAL(dcmtk_stream.avail(), 0);
+ format.transferEnd();
+
+ DcmMetaInfo * dcmtk_meta_information = format.getMetaInfo();
+ auto const dcmtkpp_meta_information = dcmtkpp::convert(dcmtk_meta_information);
+ BOOST_REQUIRE(
+ dcmtkpp_meta_information.as_string(dcmtkpp::registry::TransferSyntaxUID) ==
+ dcmtkpp::Value::Strings({ transfer_syntax }));
+
+ DcmDataset * dcmtk_data_set = format.getDataset();
+ auto const other_dcmtkpp_dataset = dcmtkpp::convert(dcmtk_data_set);
+ BOOST_REQUIRE(dcmtkpp_data_set == other_dcmtkpp_dataset);
+
+ BOOST_REQUIRE(
+ dcmtkpp_meta_information.as_string(dcmtkpp::registry::MediaStorageSOPClassUID) ==
+ other_dcmtkpp_dataset.as_string(dcmtkpp::registry::SOPClassUID));
+ BOOST_REQUIRE(
+ dcmtkpp_meta_information.as_string(dcmtkpp::registry::MediaStorageSOPInstanceUID) ==
+ other_dcmtkpp_dataset.as_string(dcmtkpp::registry::SOPInstanceUID));
+}
+
+void do_file_test(dcmtkpp::DataSet const & dcmtkpp_data_set)
+{
+ std::vector<std::string> const transfer_syntaxes =
+ {
+ dcmtkpp::registry::ImplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRLittleEndian,
+ dcmtkpp::registry::ExplicitVRBigEndian_Retired
+ };
+ std::vector<dcmtkpp::Writer::ItemEncoding> item_encodings =
+ {
+ dcmtkpp::Writer::ItemEncoding::ExplicitLength,
+ dcmtkpp::Writer::ItemEncoding::UndefinedLength
+ };
+ std::vector<bool> use_group_length_values = {/*true, */false};
+
+ for(auto const & transfer_syntax: transfer_syntaxes)
+ {
+ for(auto const & item_encoding: item_encodings)
+ {
+ for(auto const & use_group_length: use_group_length_values)
+ {
+ do_file_test(
+ dcmtkpp_data_set, transfer_syntax,
+ item_encoding, use_group_length);
+ }
+ }
+ }
+}
+
+BOOST_AUTO_TEST_CASE(File)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(
+ dcmtkpp::registry::SelectorSLValue,
+ dcmtkpp::Element({12345678, -8765432}, dcmtkpp::VR::SL));
+ dcmtkpp::DataSet item2;
+ item2.add(
+ dcmtkpp::registry::SelectorFDValue,
+ dcmtkpp::Element({1.23, -4.56}, dcmtkpp::VR::FD));
+
+ dcmtkpp::DataSet dcmtkpp_data_set;
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::SOPClassUID,
+ {dcmtkpp::registry::RawDataStorage}, dcmtkpp::VR::UI);
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::SOPInstanceUID,
+ {"1.2.3.4"}, dcmtkpp::VR::UI);
+ dcmtkpp_data_set.add(
+ dcmtkpp::registry::FrameExtractionSequence,
+ dcmtkpp::Element({item1, item2}, dcmtkpp::VR::SQ));
+
+ do_file_test(dcmtkpp_data_set);
+}
diff --git a/tests/code/conversion.cpp b/tests/code/conversion.cpp
index ce4c671..109c2cb 100644
--- a/tests/code/conversion.cpp
+++ b/tests/code/conversion.cpp
@@ -328,8 +328,7 @@ BOOST_AUTO_TEST_CASE(SQFromDcmtkpp)
for(std::size_t i=0; i<source.size(); ++i)
{
dcmtkpp::DataSet const & source_item = source.as_data_set()[i];
- DcmItem * item = dynamic_cast<DcmSequenceOfItems *>(destination)->getItem(i);
- DcmDataset * destination_item = dynamic_cast<DcmDataset *>(item);
+ DcmItem * destination_item = dynamic_cast<DcmSequenceOfItems *>(destination)->getItem(i);
BOOST_CHECK(source_item == dcmtkpp::convert(destination_item));
}
}
diff --git a/tests/code/registry.cpp b/tests/code/registry.cpp
new file mode 100644
index 0000000..12e7b25
--- /dev/null
+++ b/tests/code/registry.cpp
@@ -0,0 +1,28 @@
+#define BOOST_TEST_MODULE registry
+#include <boost/test/unit_test.hpp>
+
+#include "dcmtkpp/registry.h"
+#include "dcmtkpp/Tag.h"
+
+BOOST_AUTO_TEST_CASE(PublicDictionary)
+{
+ auto const iterator = dcmtkpp::registry::public_dictionary.find(
+ dcmtkpp::registry::PatientName);
+ BOOST_REQUIRE(iterator != dcmtkpp::registry::public_dictionary.end());
+ auto const & entry = iterator->second;
+ BOOST_REQUIRE_EQUAL(entry.name, "Patient's Name");
+ BOOST_REQUIRE_EQUAL(entry.keyword, "PatientName");
+ BOOST_REQUIRE_EQUAL(entry.vr, "PN");
+ BOOST_REQUIRE_EQUAL(entry.vm, "1");
+}
+
+BOOST_AUTO_TEST_CASE(UIDsDictionary)
+{
+ auto const iterator = dcmtkpp::registry::uids_dictionary.find(
+ dcmtkpp::registry::MRImageStorage);
+ BOOST_REQUIRE(iterator != dcmtkpp::registry::uids_dictionary.end());
+ auto const & entry = iterator->second;
+ BOOST_REQUIRE_EQUAL(entry.name, "MR Image Storage");
+ BOOST_REQUIRE_EQUAL(entry.keyword, "MRImageStorage");
+ BOOST_REQUIRE_EQUAL(entry.type, "SOP Class");
+}
diff --git a/tests/code/uid.cpp b/tests/code/uid.cpp
new file mode 100644
index 0000000..517b76d
--- /dev/null
+++ b/tests/code/uid.cpp
@@ -0,0 +1,14 @@
+#define BOOST_TEST_MODULE UID
+#include <boost/test/unit_test.hpp>
+
+#include "dcmtkpp/uid.h"
+
+BOOST_AUTO_TEST_CASE(generate)
+{
+ std::string const uid = dcmtkpp::generate_uid();
+ BOOST_REQUIRE_LE(uid.size(), 64);
+ for(auto const & c: uid)
+ {
+ BOOST_REQUIRE((c>='0' && c<='9') || c == '.');
+ }
+}
diff --git a/tests/code/xml_converter.cpp b/tests/code/xml_converter.cpp
new file mode 100644
index 0000000..259837a
--- /dev/null
+++ b/tests/code/xml_converter.cpp
@@ -0,0 +1,1114 @@
+#define BOOST_TEST_MODULE xml_converter
+#include <boost/test/unit_test.hpp>
+
+#include "dcmtkpp/xml_converter.h"
+
+#include <boost/property_tree/xml_parser.hpp>
+
+void check_attributes(boost::property_tree::ptree const & xml,
+ std::string const & tag,
+ std::string const & vr,
+ std::string const & keyword)
+{
+ BOOST_REQUIRE_EQUAL(xml.size(), 3);
+
+ auto it_attr = xml.begin();
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "vr");
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<std::string>(), vr);
+ BOOST_REQUIRE((*it_attr).second.empty());
+
+ ++it_attr;
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "tag");
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<std::string>(), tag);
+ BOOST_REQUIRE((*it_attr).second.empty());
+
+ ++it_attr;
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "keyword");
+ BOOST_REQUIRE((*it_attr).second.empty());
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<std::string>(), keyword);
+}
+
+template<typename TValueType>
+void check_value(boost::property_tree::ptree const & xml,
+ TValueType const & values, int count)
+{
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(
+ xml.get_value<typename TValueType::value_type>(),
+ values[count]);
+
+ // Look for Attribut of Value XML tag
+ BOOST_CHECK_EQUAL(xml.front().first, "<xmlattr>");
+ BOOST_REQUIRE_EQUAL(xml.front().second.size(), 1);
+
+ auto it_attr = xml.front().second.begin();
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "number");
+ BOOST_REQUIRE((*it_attr).second.empty());
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<int>(), count + 1);
+}
+
+template<typename TValueType>
+void check_response(boost::property_tree::ptree const & xml,
+ std::string const & tag,
+ std::string const & vr,
+ std::string const & keyword,
+ TValueType const & values)
+{
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(xml.front().first, "NativeDicomModel");
+
+ auto const native_dicom_model = xml.front().second;
+
+ BOOST_REQUIRE_EQUAL(native_dicom_model.size(), 1);
+ BOOST_CHECK_EQUAL(native_dicom_model.front().first, "DicomAttribute");
+ BOOST_REQUIRE_EQUAL(native_dicom_model.front().second.size(),
+ values.size() + 1);
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ native_dicom_model.front().second.find("<xmlattr>")->first,
+ "<xmlattr>");
+
+ int count = 0;
+ for (auto it = native_dicom_model.front().second.begin();
+ it != native_dicom_model.front().second.end(); ++it)
+ {
+ if ((*it).first == "<xmlattr>")
+ {
+ check_attributes((*it).second, tag, vr, keyword);
+ }
+ else if ((*it).first == "Value")
+ {
+ BOOST_CHECK_EQUAL((*it).first, "Value");
+ check_value(it->second, values, count);
+ ++count;
+ }
+ else
+ {
+ BOOST_FAIL("Unexpected tag");
+ }
+ }
+
+ BOOST_REQUIRE_EQUAL(count, values.size());
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLEmpty)
+{
+ dcmtkpp::DataSet data_set;
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel />
+
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(xml.front().first, "NativeDicomModel");
+ BOOST_REQUIRE(xml.front().second.empty());
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLIntegers)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00280010,
+ dcmtkpp::Element(dcmtkpp::Value::Integers({1, 2}), dcmtkpp::VR::US));
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="US" tag="00280010" keyword="Rows">
+ // <Value number="1">1</Value>
+ // <Value number="2">2</Value>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ check_response(xml, "00280010", "US", "Rows",
+ dcmtkpp::Value::Integers({1, 2}));
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLReals)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00089459,
+ dcmtkpp::Element(dcmtkpp::Value::Reals({1.2, 3.4}), dcmtkpp::VR::FL));
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="FL" tag="00089459"
+ // keyword="RecommendedDisplayFrameRateInFloat">
+ // <Value number="1">1.2</Value>
+ // <Value number="2">3.4</Value>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ check_response(xml, "00089459", "FL", "RecommendedDisplayFrameRateInFloat",
+ dcmtkpp::Value::Reals({1.2, 3.4}));
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLStrings)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00080060,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({"FOO", "BAR"}),
+ dcmtkpp::VR::CS));
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="CS" tag="00080060" keyword="Modality">
+ // <Value number="1">FOO</Value>
+ // <Value number="2">BAR</Value>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ check_response(xml, "00080060", "CS", "Modality",
+ dcmtkpp::Value::Strings({"FOO", "BAR"}));
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLPersonName)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00100010,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({"Alpha^Betic=Ideo^Graphic=Pho^Netic",
+ "family^given^middle^prefix^suffix"}),
+ dcmtkpp::VR::PN));
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="PN" tag="00100010" keyword="PatientName">
+ // <PersonName number="1">
+ // <Alphabetic>
+ // <FamilyName>Alpha</FamilyName>
+ // <GivenName>Betic</GivenName>
+ // </Alphabetic>
+ // <Ideographic>
+ // <FamilyName>Ideo</FamilyName>
+ // <GivenName>Graphic</GivenName>
+ // </Ideographic>
+ // <Phonetic>
+ // <FamilyName>Pho</FamilyName>
+ // <GivenName>Netic</GivenName>
+ // </Phonetic>
+ // </PersonName>
+ // <PersonName number="2">
+ // <Alphabetic>
+ // <FamilyName>family</FamilyName>
+ // <GivenName>given</GivenName>
+ // <MiddleName>middle</MiddleName>
+ // <NamePrefix>prefix</NamePrefix>
+ // <NameSuffix>suffix</NameSuffix>
+ // </Alphabetic>
+ // </PersonName>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(xml.front().first, "NativeDicomModel");
+
+ auto const native_dicom_model = xml.front().second;
+
+ BOOST_REQUIRE_EQUAL(native_dicom_model.size(), 1);
+ BOOST_CHECK_EQUAL(native_dicom_model.front().first, "DicomAttribute");
+ BOOST_REQUIRE_EQUAL(native_dicom_model.front().second.size(), 3);
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ native_dicom_model.front().second.find("<xmlattr>")->first,
+ "<xmlattr>");
+
+ std::vector<std::map<std::string,
+ std::map<std::string, std::string> > > values;
+ std::map<std::string, std::map<std::string, std::string> > person_name1;
+ {
+ std::map<std::string, std::string> person_name_sub;
+ person_name_sub.insert(std::pair<std::string, std::string>("FamilyName",
+ "Alpha"));
+ person_name_sub.insert(std::pair<std::string, std::string>("GivenName",
+ "Betic"));
+ person_name1.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Alphabetic",
+ person_name_sub));
+ }
+ {
+ std::map<std::string, std::string> person_name_sub;
+ person_name_sub.insert(std::pair<std::string, std::string>("FamilyName",
+ "Ideo"));
+ person_name_sub.insert(std::pair<std::string, std::string>("GivenName",
+ "Graphic"));
+ person_name1.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Ideographic",
+ person_name_sub));
+ }
+ {
+ std::map<std::string, std::string> person_name_sub;
+ person_name_sub.insert(std::pair<std::string, std::string>("FamilyName",
+ "Pho"));
+ person_name_sub.insert(std::pair<std::string, std::string>("GivenName",
+ "Netic"));
+ person_name1.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Phonetic",
+ person_name_sub));
+ }
+ values.push_back(person_name1);
+ std::map<std::string, std::map<std::string, std::string> > person_name2;
+ {
+ std::map<std::string, std::string> person_name_sub;
+ person_name_sub.insert(std::pair<std::string, std::string>("FamilyName",
+ "family"));
+ person_name_sub.insert(std::pair<std::string, std::string>("GivenName",
+ "given"));
+ person_name_sub.insert(std::pair<std::string, std::string>("MiddleName",
+ "middle"));
+ person_name_sub.insert(std::pair<std::string, std::string>("NamePrefix",
+ "prefix"));
+ person_name_sub.insert(std::pair<std::string, std::string>("NameSuffix",
+ "suffix"));
+ person_name2.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Alphabetic",
+ person_name_sub));
+ }
+ values.push_back(person_name2);
+
+ int count = 0;
+ for (auto it = native_dicom_model.front().second.begin();
+ it != native_dicom_model.front().second.end(); ++it)
+ {
+ if ((*it).first == "<xmlattr>")
+ {
+ // Look for Attribut of DicomAttribute XML tag
+ BOOST_CHECK_EQUAL((*it).first, "<xmlattr>");
+ check_attributes((*it).second, "00100010", "PN", "PatientName");
+ }
+ else if ((*it).first == "PersonName")
+ {
+ BOOST_REQUIRE_EQUAL((*it).second.size(),
+ values[count].size() + 1); // + 1 for <xmlattr>
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ (*it).second.find("<xmlattr>")->first, "<xmlattr>");
+
+ auto const fields = { "Alphabetic", "Ideographic", "Phonetic" };
+ for (auto it_pname = (*it).second.begin();
+ it_pname != (*it).second.end(); ++it_pname)
+ {
+ if ((*it_pname).first == "<xmlattr>")
+ {
+ BOOST_CHECK_EQUAL((*it_pname).first, "<xmlattr>");
+ BOOST_REQUIRE_EQUAL((*it_pname).second.size(), 1);
+
+ auto it_attr = (*it_pname).second.begin();
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "number");
+ BOOST_REQUIRE((*it_attr).second.empty());
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<int>(),
+ count + 1);
+ }
+ else if (std::find(fields.begin(),
+ fields.end(),
+ (*it_pname).first) != fields.end())
+ {
+ BOOST_REQUIRE_EQUAL((*it_pname).second.size(),
+ values[count][(*it_pname).first].size());
+
+ auto const fields_name = { "NameSuffix", "NamePrefix",
+ "MiddleName", "GivenName",
+ "FamilyName" };
+ for (auto it_subpname = (*it_pname).second.begin();
+ it_subpname != (*it_pname).second.end(); ++it_subpname)
+ {
+ if (std::find(fields_name.begin(), fields_name.end(),
+ (*it_subpname).first) != fields_name.end())
+ {
+ BOOST_REQUIRE((*it_subpname).second.empty());
+ BOOST_CHECK_EQUAL((*it_subpname).second.
+ get_value<std::string>(),
+ values[count][(*it_pname).first]
+ [(*it_subpname).first]);
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it_subpname).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it_pname).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+
+ ++count;
+ }
+ else
+ {
+ BOOST_FAIL("Unexpected tag");
+ }
+ }
+
+ BOOST_REQUIRE_EQUAL(count, values.size());
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLDataSets)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(0x00100020,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"valueLO1"}),
+ dcmtkpp::VR::LO));
+ item1.add(0x00100022,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"valueCS1"}),
+ dcmtkpp::VR::CS));
+ dcmtkpp::DataSet item2;
+ item2.add(0x00100022,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"valueCS2"}),
+ dcmtkpp::VR::CS));
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00101002,
+ dcmtkpp::Element(
+ dcmtkpp::Value::DataSets({item1, item2}),
+ dcmtkpp::VR::SQ));
+
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="SQ" tag="00101002"
+ // keyword="OtherPatientIDsSequence">
+ // <Item number="1">
+ // <DicomAttribute vr="LO" tag="00100020" keyword="PatientID">
+ // <Value number="1">valueLO1</Value>
+ // </DicomAttribute>
+ // <DicomAttribute vr="CS" tag="00100022"
+ // keyword="TypeOfPatientID">
+ // <Value number="1">valueCS1</Value>
+ // </DicomAttribute>
+ // </Item>
+ // <Item number="2">
+ // <DicomAttribute vr="CS" tag="00100022"
+ // keyword="TypeOfPatientID">
+ // <Value number="1">valueCS2</Value>
+ // </DicomAttribute>
+ // </Item>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(xml.front().first, "NativeDicomModel");
+
+ auto const native_dicom_model = xml.front().second;
+
+ BOOST_REQUIRE_EQUAL(native_dicom_model.size(), 1);
+ BOOST_CHECK_EQUAL(native_dicom_model.front().first, "DicomAttribute");
+ BOOST_REQUIRE_EQUAL(native_dicom_model.front().second.size(), 3);
+
+ dcmtkpp::Value::DataSets expected_values({item1, item2});
+
+ int count = 0;
+ for (auto it = native_dicom_model.front().second.begin();
+ it != native_dicom_model.front().second.end(); ++it)
+ {
+ if ((*it).first == "<xmlattr>")
+ {
+ // Look for Attribut of DicomAttribute XML tag
+ BOOST_CHECK_EQUAL((*it).first, "<xmlattr>");
+ check_attributes((*it).second, "00101002", "SQ",
+ "OtherPatientIDsSequence");
+ }
+ else if ((*it).first == "Item")
+ {
+ auto current_value = expected_values[count].begin();
+
+ BOOST_REQUIRE_EQUAL((*it).second.size(),
+ expected_values[count].size() + 1);
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ (*it).second.find("<xmlattr>")->first, "<xmlattr>");
+
+ for (auto it_item = (*it).second.begin();
+ it_item != (*it).second.end(); ++it_item)
+ {
+ if ((*it_item).first == "<xmlattr>")
+ {
+ BOOST_REQUIRE_EQUAL((*it_item).second.size(), 1);
+
+ auto it_attr = (*it_item).second.begin();
+
+ BOOST_CHECK_EQUAL((*it_attr).first, "number");
+ BOOST_REQUIRE((*it_attr).second.empty());
+ BOOST_CHECK_EQUAL((*it_attr).second.get_value<int>(),
+ count + 1);
+ }
+ else if ((*it_item).first == "DicomAttribute")
+ {
+ BOOST_REQUIRE_EQUAL((*it_item).second.size(), 2);
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ (*it_item).second.find("<xmlattr>")->first,
+ "<xmlattr>");
+
+ for (auto it_dicomattr = (*it_item).second.begin();
+ it_dicomattr != (*it_item).second.end(); ++it_dicomattr)
+ {
+ if ((*it_dicomattr).first == "<xmlattr>")
+ {
+ check_attributes((*it_dicomattr).second,
+ std::string(current_value->first),
+ dcmtkpp::as_string(
+ current_value->second.vr),
+ current_value->first.get_name());
+ }
+ else if ((*it_dicomattr).first == "Value")
+ {
+ check_value((*it_dicomattr).second,
+ current_value->second.as_string(), 0);
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it_dicomattr).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+
+ ++current_value;
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it_item).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+
+ ++count;
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+
+ BOOST_REQUIRE_EQUAL(count, expected_values.size());
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLBinary)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00660023,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Binary({0x1, 0x2, 0x3, 0x4, 0x5}),
+ dcmtkpp::VR::OW));
+
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="OW" tag="00660023"
+ // keyword="TrianglePointIndexList">
+ // <InlineBinary>AQIDBAU=</InlineBinary>
+ // </DicomAttribute>
+ // </NativeDicomModel>
+
+ BOOST_REQUIRE_EQUAL(xml.size(), 1);
+ BOOST_CHECK_EQUAL(xml.front().first, "NativeDicomModel");
+
+ auto const native_dicom_model = xml.front().second;
+
+ BOOST_REQUIRE_EQUAL(native_dicom_model.size(), 1);
+ BOOST_CHECK_EQUAL(native_dicom_model.front().first, "DicomAttribute");
+ BOOST_REQUIRE_EQUAL(native_dicom_model.front().second.size(), 2);
+
+ // Should contains <xmlattr>
+ BOOST_REQUIRE_EQUAL(
+ native_dicom_model.front().second.find("<xmlattr>")->first,
+ "<xmlattr>");
+
+ int count = 0;
+ for (auto it = native_dicom_model.front().second.begin();
+ it != native_dicom_model.front().second.end(); ++it)
+ {
+ if ((*it).first == "<xmlattr>")
+ {
+ check_attributes((*it).second, "00660023", "OW",
+ "TrianglePointIndexList");
+ }
+ else if ((*it).first == "InlineBinary")
+ {
+ BOOST_REQUIRE((*it).second.empty());
+ BOOST_CHECK_EQUAL((*it).second.get_value<std::string>(), "AQIDBAU=");
+ ++count;
+ }
+ else
+ {
+ std::stringstream error;
+ error << "Unexpected tag: " << (*it).first;
+ BOOST_FAIL(error.str());
+ }
+ }
+
+ BOOST_REQUIRE_EQUAL(count, 1);
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsXMLEmptyElement)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00080060,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({}),
+ dcmtkpp::VR::CS));
+ auto const xml = dcmtkpp::as_xml(data_set);
+
+ // Expected result:
+ // <NativeDicomModel>
+ // <DicomAttribute vr="CS" tag="00080060" keyword="Modality" />
+ // </NativeDicomModel>
+
+ check_response(xml, "00080060", "CS", "Modality",
+ dcmtkpp::Value::Strings({}));
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsXMLInvalidPersonName)
+{
+ // Too many values separate by '^'
+ {
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00100010,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({"Alpha^Betic^Ideo^Graphic^Pho^Netic"}),
+ dcmtkpp::VR::PN));
+ BOOST_REQUIRE_THROW(dcmtkpp::as_xml(data_set), dcmtkpp::Exception);
+ }
+
+ // Too many values separate by '='
+ {
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00100010,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings(
+ {"Alpha^Betic=Ideo^Graphic=Pho^Netic=Bad^Value"}),
+ dcmtkpp::VR::PN));
+ BOOST_REQUIRE_THROW(dcmtkpp::as_xml(data_set), dcmtkpp::Exception);
+ }
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsXMLInvalidDICOMTag)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0xbad00bad,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({"value"}),
+ dcmtkpp::VR::CS));
+ BOOST_REQUIRE_THROW(dcmtkpp::as_xml(data_set), dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsXMLBadVR)
+{
+ dcmtkpp::DataSet data_set;
+ data_set.add(0x00080060,
+ dcmtkpp::Element(
+ dcmtkpp::Value::Strings({"value"}),
+ dcmtkpp::VR::UNKNOWN));
+ BOOST_REQUIRE_THROW(dcmtkpp::as_xml(data_set), dcmtkpp::Exception);
+}
+
+template<typename TValueType>
+dcmtkpp::DataSet create_dataset(std::string const & tag, std::string const & vr,
+ std::string const & keyword,
+ TValueType const & values,
+ std::vector<int> const & order)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", vr);
+ dicomattribute.put("<xmlattr>.tag", tag);
+ dicomattribute.put("<xmlattr>.keyword", keyword);
+
+ for (unsigned int i = 0; i < values.size(); ++i)
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", order[i] + 1);
+ tag_value.put_value(values[order[i]]);
+ dicomattribute.add_child("Value", tag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ return dcmtkpp::as_dataset(dataset_xml);
+}
+
+template<typename T>
+void create_dataset_error(std::string const & tag, std::string const & vr,
+ std::string const & keyword,
+ T const & value)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", vr);
+ dicomattribute.put("<xmlattr>.tag", tag);
+ dicomattribute.put("<xmlattr>.keyword", keyword);
+
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", 1);
+ tag_value.put_value(value);
+ dicomattribute.add_child("BadNode", tag_value);
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ // throw Exception
+ dcmtkpp::as_dataset(dataset_xml);
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetEmpty)
+{
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", boost::property_tree::ptree());
+
+ dcmtkpp::DataSet const data_set = dcmtkpp::as_dataset(dataset_xml);
+ BOOST_REQUIRE(data_set.empty());
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetIntegers)
+{
+ dcmtkpp::Value::Integers values({128, 256});
+
+ // Tag Value sorted by number and not sorted
+ std::vector<std::vector<int> > orders = {{0, 1}, {1, 0}};
+ for (auto order : orders)
+ {
+ auto const data_set = create_dataset("00280010", "US", "Rows",
+ values, order);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00280010"));
+ BOOST_REQUIRE(data_set.get_vr("00280010") == dcmtkpp::VR::US);
+ BOOST_REQUIRE(data_set.is_int("00280010"));
+ BOOST_REQUIRE(data_set.as_int("00280010") == values);
+ }
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetReals)
+{
+ dcmtkpp::Value::Reals values({1.2, 3.4});
+
+ // Tag Value sorted by number and not sorted
+ std::vector<std::vector<int> > orders = {{0, 1}, {1, 0}};
+ for (auto order : orders)
+ {
+ auto const data_set = create_dataset(
+ "00089459", "FL", "RecommendedDisplayFrameRateInFloat",
+ values, order);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00089459"));
+ BOOST_REQUIRE(data_set.get_vr("00089459") == dcmtkpp::VR::FL);
+ BOOST_REQUIRE(data_set.is_real("00089459"));
+ BOOST_REQUIRE(data_set.as_real("00089459") == values);
+ }
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetStrings)
+{
+ dcmtkpp::Value::Strings values({"FOO", "BAR"});
+
+ // Tag Value sorted by number and not sorted
+ std::vector<std::vector<int> > orders = {{0, 1}, {1, 0}};
+ for (auto order : orders)
+ {
+ auto const data_set = create_dataset("00080060", "CS", "Modality",
+ values, order);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00080060"));
+ BOOST_REQUIRE(data_set.get_vr("00080060") == dcmtkpp::VR::CS);
+ BOOST_REQUIRE(data_set.is_string("00080060"));
+ BOOST_REQUIRE(data_set.as_string("00080060") == values);
+ }
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetPersonName)
+{
+ std::vector<std::map<std::string,
+ std::map<std::string, std::string> > > values;
+
+ std::map<std::string, std::string> name;
+ name.insert(std::pair<std::string, std::string>("FamilyName", "family"));
+ name.insert(std::pair<std::string, std::string>("GivenName", "given"));
+ name.insert(std::pair<std::string, std::string>("MiddleName", "middle"));
+ name.insert(std::pair<std::string, std::string>("NamePrefix", "prefix"));
+ name.insert(std::pair<std::string, std::string>("NameSuffix", "suffix"));
+
+ std::map<std::string, std::map<std::string, std::string> > person_name1;
+ person_name1.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Alphabetic",
+ name));
+
+ values.push_back(person_name1);
+
+ std::map<std::string, std::string> name2;
+ name2.insert(std::pair<std::string, std::string>("FamilyName", "family"));
+
+ std::map<std::string, std::map<std::string, std::string> > person_name2;
+ person_name2.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Alphabetic",
+ name2));
+ person_name2.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Ideographic",
+ name2));
+ person_name2.insert(std::pair<std::string,
+ std::map<std::string, std::string> >("Phonetic", name2));
+
+ values.push_back(person_name2);
+
+ std::vector<std::vector<int> > orders = {{0, 1}, {1, 0}};
+ for (auto order : orders)
+ {
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "PN");
+ dicomattribute.put("<xmlattr>.tag", "00100010");
+ dicomattribute.put("<xmlattr>.keyword", "PatientName");
+
+ for (int number : order)
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", number + 1);
+
+ for (auto it = values[number].begin();
+ it != values[number].end(); ++it)
+ {
+ boost::property_tree::ptree tag_pname;
+ for (auto it_name = it->second.begin();
+ it_name != it->second.end(); ++it_name)
+ {
+ boost::property_tree::ptree tag_name;
+ tag_name.put_value(it_name->second);
+ tag_pname.add_child(it_name->first, tag_name);
+ }
+
+ tag_value.add_child(it->first, tag_pname);
+ }
+
+ dicomattribute.add_child("PersonName", tag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ dcmtkpp::DataSet const data_set = dcmtkpp::as_dataset(dataset_xml);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00100010"));
+ BOOST_REQUIRE(data_set.get_vr("00100010") == dcmtkpp::VR::PN);
+ BOOST_REQUIRE(data_set.is_string("00100010"));
+ BOOST_REQUIRE(data_set.as_string("00100010") == dcmtkpp::Value::Strings(
+ {"family^given^middle^prefix^suffix", "family=family=family"}));
+ }
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetDataSets)
+{
+ dcmtkpp::DataSet item1;
+ item1.add(0x00100020,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"FOO"}), dcmtkpp::VR::LO));
+ item1.add(0x00100022,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"BAR"}), dcmtkpp::VR::CS));
+ dcmtkpp::DataSet item2;
+ item2.add(0x00100020,
+ dcmtkpp::Element(dcmtkpp::Value::Strings({"OTHER"}), dcmtkpp::VR::LO));
+
+ dcmtkpp::Value::DataSets expected_result({item1, item2});
+
+ std::vector<std::vector<int> > orders = {{0, 1}, {1, 0}};
+ for (auto order : orders)
+ {
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "SQ");
+ dicomattribute.put("<xmlattr>.tag", "00101002");
+ dicomattribute.put("<xmlattr>.keyword", "OtherPatientIDsSequence");
+
+ for (int number : order)
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", number + 1);
+
+ for (auto it = expected_result[number].begin();
+ it != expected_result[number].end(); ++it)
+ {
+ boost::property_tree::ptree subdicomattribute;
+ subdicomattribute.put("<xmlattr>.vr",
+ dcmtkpp::as_string(it->second.vr));
+ subdicomattribute.put("<xmlattr>.tag", std::string(it->first));
+ subdicomattribute.put("<xmlattr>.keyword", it->first.get_name());
+
+ for (auto value : it->second.as_string())
+ {
+ boost::property_tree::ptree subtag_value;
+ subtag_value.put("<xmlattr>.number", 1);
+ subtag_value.put_value(value);
+ subdicomattribute.add_child("Value", subtag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ tag_value.add_child("DicomAttribute", subdicomattribute);
+ }
+
+ dicomattribute.add_child("Item", tag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ std::stringstream xmldataset;
+ boost::property_tree::xml_writer_settings<char> settings(' ', 4);
+ boost::property_tree::write_xml(xmldataset, dataset_xml, settings);
+
+ std::cout << xmldataset.str() << std::endl;
+ dcmtkpp::DataSet const data_set = dcmtkpp::as_dataset(dataset_xml);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00101002"));
+ BOOST_REQUIRE(data_set.get_vr("00101002") == dcmtkpp::VR::SQ);
+ BOOST_REQUIRE(data_set.is_data_set("00101002"));
+
+ BOOST_REQUIRE(data_set.as_data_set("00101002") == expected_result);
+ }
+}
+
+/******************************* TEST Nominal **********************************/
+BOOST_AUTO_TEST_CASE(AsDataSetBinary)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "OW");
+ dicomattribute.put("<xmlattr>.tag", "00660023");
+ dicomattribute.put("<xmlattr>.keyword", "TrianglePointIndexList");
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put_value("AQIDBAU=");
+ dicomattribute.add_child("InlineBinary", tag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ dcmtkpp::DataSet const data_set = dcmtkpp::as_dataset(dataset_xml);
+ BOOST_REQUIRE_EQUAL(data_set.size(), 1);
+ BOOST_REQUIRE(data_set.has("00660023"));
+ BOOST_REQUIRE(data_set.get_vr("00660023") == dcmtkpp::VR::OW);
+ BOOST_REQUIRE(data_set.is_binary("00660023"));
+ BOOST_REQUIRE(data_set.as_binary("00660023") == dcmtkpp::Value::Binary(
+ {0x1, 0x2, 0x3, 0x4, 0x5}));
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetMissingRootNode)
+{
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(boost::property_tree::ptree()),
+ dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetBadDICOMNode)
+{
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("BadValue", boost::property_tree::ptree());
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetBadDicomAttributeSubNode)
+{
+ // String value
+ BOOST_REQUIRE_THROW(create_dataset_error("00080060", "CS",
+ "Modality", "FOO"),
+ dcmtkpp::Exception);
+
+ { // Person Name
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "PN");
+ dicomattribute.put("<xmlattr>.tag", "00100010");
+ dicomattribute.put("<xmlattr>.keyword", "PatientName");
+
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", 1);
+ boost::property_tree::ptree tag_pname;
+ boost::property_tree::ptree tag_family;
+ tag_family.put_value("family");
+ tag_pname.add_child("FamilyName", tag_family);
+ tag_value.add_child("Alphabetic", tag_pname);
+ dicomattribute.add_child("BadNode", tag_value);
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+ }
+
+ // Real value
+ BOOST_REQUIRE_THROW(create_dataset_error(
+ "00089459", "FL",
+ "RecommendedDisplayFrameRateInFloat", 1.2),
+ dcmtkpp::Exception);
+
+ // Integer value
+ BOOST_REQUIRE_THROW(create_dataset_error("00280010", "US", "Rows", 1),
+ dcmtkpp::Exception);
+
+ { // Sequence
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "SQ");
+ dicomattribute.put("<xmlattr>.tag", "00101002");
+ dicomattribute.put("<xmlattr>.keyword", "OtherPatientIDsSequence");
+
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", 1);
+ dicomattribute.add_child("BadNode", tag_value);
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+ }
+
+ // Binary
+ BOOST_REQUIRE_THROW(create_dataset_error(
+ "00660023", "OW",
+ "TrianglePointIndexList", "AQIDBAU="),
+ dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetUnknownVR)
+{
+ BOOST_REQUIRE_THROW(create_dataset_error("00080060", "UR",
+ "Modality", "FOO"),
+ dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetBadPersonNameSubNode)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "PN");
+ dicomattribute.put("<xmlattr>.tag", "00100010");
+ dicomattribute.put("<xmlattr>.keyword", "PatientName");
+
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", 1);
+ boost::property_tree::ptree tag_pname;
+ boost::property_tree::ptree tag_family;
+ tag_family.put_value("family");
+ tag_pname.add_child("FamilyName", tag_family);
+ tag_value.add_child("BadNode", tag_pname);
+ dicomattribute.add_child("PersonName", tag_value);
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetBadAlphabeticSubNode)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "PN");
+ dicomattribute.put("<xmlattr>.tag", "00100010");
+ dicomattribute.put("<xmlattr>.keyword", "PatientName");
+
+ boost::property_tree::ptree tag_value;
+ tag_value.put("<xmlattr>.number", 1);
+ boost::property_tree::ptree tag_pname;
+ boost::property_tree::ptree tag_family;
+ tag_family.put_value("family");
+ tag_pname.add_child("BadNode", tag_family);
+ tag_value.add_child("Alphabetic", tag_pname);
+ dicomattribute.add_child("PersonName", tag_value);
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+}
+
+/******************************* TEST Error ************************************/
+BOOST_AUTO_TEST_CASE(AsDataSetTooManyInlineBinaryNode)
+{
+ boost::property_tree::ptree dicomattribute;
+ dicomattribute.put("<xmlattr>.vr", "OW");
+ dicomattribute.put("<xmlattr>.tag", "00660023");
+ dicomattribute.put("<xmlattr>.keyword", "TrianglePointIndexList");
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put_value("AQIDBAU=");
+ dicomattribute.add_child("InlineBinary", tag_value);
+ }
+ {
+ boost::property_tree::ptree tag_value;
+ tag_value.put_value("AQIDBAU=");
+ dicomattribute.add_child("InlineBinary", tag_value);
+ }
+
+ boost::property_tree::ptree nativedicommodel;
+ nativedicommodel.add_child("DicomAttribute", dicomattribute);
+
+ boost::property_tree::ptree dataset_xml;
+ dataset_xml.add_child("NativeDicomModel", nativedicommodel);
+
+ BOOST_REQUIRE_THROW(dcmtkpp::as_dataset(dataset_xml), dcmtkpp::Exception);
+}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/dcmtkpp.git
More information about the debian-med-commit
mailing list