dcm_dict 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 3d4369b3094f27c4350f6c93104e28ba7493221b
4
- data.tar.gz: f30500ddc8f6307f85da5c1263bd4f62bf9a51b7
2
+ SHA256:
3
+ metadata.gz: aa71b21de3a019967d8a20fa1b75c8a93c0dcd529093e2be5310f478941544b6
4
+ data.tar.gz: 2bba9d9b9b646380ddb01cfc4d2982455d9ede25d7dbfbdc4463c5d1066a20d6
5
5
  SHA512:
6
- metadata.gz: 8de1c267c5daedf352a7e37c9d648bc52f387c9b34174c8e3b95010084e3cba0a77f6df0b4b0d5980c06e7e7e605c3dc15331b3dca394e8cf8d6379e51e8d094
7
- data.tar.gz: 30c974df86d86a5c4159c71f3e2e0fcbe5d4bdaf4a4b9c71767f8a9a02123986de312552a73ce0c1297c4489b75258ba76b889aae297e1444644fcaae42d99a7
6
+ metadata.gz: 72c89f381472d8a9779b9a0d48478359628e8a6c76509d84404d22c0c65824597562ab4eb7ee4daef8a33644082e729fba2bb62c1d4275c917c8e38fc07fd1cc
7
+ data.tar.gz: 533375824c5e84adb5cfd77d9f0b826e568656e3c4e936111a4b34666d576c3526ae3dc4cb9be8ea0a0a578c273b1780badd880f2bc9d2730b5a56aba93cf324
data/CHANGELOG CHANGED
@@ -1,3 +1,10 @@
1
+ - V0.18.0
2
+ -- Update to 2018b Base Standard
3
+
4
+ - V0.17.1
5
+ -- Update DICOM reference into 'README'
6
+ -- Update dcm_dict.gemspec
7
+
1
8
  - V0.17.0
2
9
  -- Update to 2018a Base Standard
3
10
 
data/README.md CHANGED
@@ -1,13 +1,15 @@
1
1
  # What's *DcmDict*
2
- **DcmDict** is a Ruby gem (*dcm\_dict*) to handle in a simple way the *Data Dictionary* defined within the [DICOM(r)][1] Standard such as DICOM Data Elements or DICOM Unique Identifiers.
2
+ **DcmDict** is a Ruby gem [(*dcm\_dict*)][12] to handle in a simple way the *Data Dictionary* defined within the DICOM<sup>®</sup> Standard <sup id='fn-dcm-trademark'>[1]</sup> such as DICOM Data Elements or DICOM Unique Identifiers.
3
3
 
4
4
  # Why *DcmDict*
5
5
  With the new releases from year 2014 DICOM documents are available in different format including one particularly interesting, the *DocBook* XML version.
6
6
 
7
- As D. Clunie writes on [his web site][2]:
8
-
7
+ As D. Clunie writes on his web site in the [DICOM Standard Status page][2]:
9
8
  > "... other formats (such as DocBook, HTML, Word and ODT) are also made available for the convenience of implementors who may need to extract machine-readable content, ..."
10
9
 
10
+ This is confirmed in the DICOM<sup>®</sup> Standard [web site][10] where each part is published in [multiple formats][11] and the XML format is defined:
11
+ >"... good for machine readability, e.g. self-updating validators ..."
12
+
11
13
  This is great news for anyone involved in the study of the standard !
12
14
 
13
15
  Starting from this thing was born the idea of trying to automate the extraction of data from XML documents to make available the information in a simple way that simplifies the study of the DICOM standard, in the hope this idea will be useful and inspiration.
@@ -270,7 +272,7 @@ Note: the script use the [Nokogiri][3] as XML parser if installed as gem, otherw
270
272
  Check the file for other details.
271
273
 
272
274
  ## Note
273
- Current library version is aligned to *DICOM Base Standard* **2018a**
275
+ Current library version is aligned to *DICOM Base Standard* **2018b**
274
276
 
275
277
  ## Install
276
278
 
@@ -302,8 +304,19 @@ Ruby gem **dcm\_dict** on [RubyGems][9] at [rubygems.org/gems/dcm_dict](https://
302
304
  ## Source Code
303
305
  Main source code repository on github at [henrythebuilder/dcm_dict](https://github.com/henrythebuilder/dcm_dict)
304
306
 
307
+ <div class="footnotes">
308
+ <hr />
309
+ <ol>
310
+ <li id="fn1-dcm-trademark">
311
+ <p><a href="http://www.dicomstandard.org/" title="DICOM Standard">DICOM<sup>®</sup></a> is the registered trademark of the National Electrical Manufacturers Association for its standards publications relating to digital communications of medical information.
312
+ <a href="#fn-dcm-trademark" class='footnoteBackLink' title="Jump back to footnote 1 in the text.">&#x21A9;&#xFE0E;</a></p>
313
+ </li>
314
+ </ol>
315
+ </div>
316
+
317
+ [1]: #fn1-dcm-trademark
305
318
 
306
- [1]: http://medical.nema.org/dicom/ "DICOM Homepage"
319
+ [dcm1]: http://medical.nema.org/dicom/ "DICOM Homepage"
307
320
  [2]: http://www.dclunie.com/dicom-status/status.html "DICOM Standard Status"
308
321
  [3]: http://nokogiri.org/ "Nokogiri"
309
322
  [4]: http://rubini.us/ "Rubinius"
@@ -312,3 +325,6 @@ Main source code repository on github at [henrythebuilder/dcm_dict](https://gith
312
325
  [7]: http://rubyinstaller.org/ "The easy way to install Ruby on Windows"
313
326
  [8]: https://github.com/oneclick/rubyinstaller "RubyInstaller for Windows"
314
327
  [9]: https://rubygems.org/
328
+ [10]: http://www.dicomstandard.org/
329
+ [11]: http://www.dicomstandard.org/current/
330
+ [12]: https://rubygems.org/gems/dcm_dict
@@ -2260,6 +2260,7 @@ HIGH = 0001H'},
2260
2260
  { tag_ps: '(0040,0612)', tag_name: "Specimen Preparation Step Content Item Sequence", tag_key: 'SpecimenPreparationStepContentItemSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,0612)', tag_sym: :specimen_preparation_step_content_item_sequence, tag_ndm: '00400612', tag_ary: [0x0040,0x0612], tag_multiple: false, tag_note: ''},
2261
2261
  { tag_ps: '(0040,0620)', tag_name: "Specimen Localization Content Item Sequence", tag_key: 'SpecimenLocalizationContentItemSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,0620)', tag_sym: :specimen_localization_content_item_sequence, tag_ndm: '00400620', tag_ary: [0x0040,0x0620], tag_multiple: false, tag_note: ''},
2262
2262
  { tag_ps: '(0040,06FA)', tag_name: "Slide Identifier", tag_key: 'SlideIdentifier', tag_vr: [:LO], tag_vm: ["1"], tag_str: '(0040,06FA)', tag_sym: :slide_identifier, tag_ndm: '004006FA', tag_ary: [0x0040,0x06FA], tag_multiple: false, tag_note: 'RET'},
2263
+ { tag_ps: '(0040,0710)', tag_name: "Whole Slide Microscopy Image Frame Type Sequence", tag_key: 'WholeSlideMicroscopyImageFrameTypeSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,0710)', tag_sym: :whole_slide_microscopy_image_frame_type_sequence, tag_ndm: '00400710', tag_ary: [0x0040,0x0710], tag_multiple: false, tag_note: ''},
2263
2264
  { tag_ps: '(0040,071A)', tag_name: "Image Center Point Coordinates Sequence", tag_key: 'ImageCenterPointCoordinatesSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,071A)', tag_sym: :image_center_point_coordinates_sequence, tag_ndm: '0040071A', tag_ary: [0x0040,0x071A], tag_multiple: false, tag_note: ''},
2264
2265
  { tag_ps: '(0040,072A)', tag_name: "X Offset in Slide Coordinate System", tag_key: 'XOffsetInSlideCoordinateSystem', tag_vr: [:DS], tag_vm: ["1"], tag_str: '(0040,072A)', tag_sym: :x_offset_in_slide_coordinate_system, tag_ndm: '0040072A', tag_ary: [0x0040,0x072A], tag_multiple: false, tag_note: ''},
2265
2266
  { tag_ps: '(0040,073A)', tag_name: "Y Offset in Slide Coordinate System", tag_key: 'YOffsetInSlideCoordinateSystem', tag_vr: [:DS], tag_vm: ["1"], tag_str: '(0040,073A)', tag_sym: :y_offset_in_slide_coordinate_system, tag_ndm: '0040073A', tag_ary: [0x0040,0x073A], tag_multiple: false, tag_note: ''},
@@ -2307,6 +2308,7 @@ HIGH = 0001H'},
2307
2308
  { tag_ps: '(0040,4005)', tag_name: "Scheduled Procedure Step Start DateTime", tag_key: 'ScheduledProcedureStepStartDateTime', tag_vr: [:DT], tag_vm: ["1"], tag_str: '(0040,4005)', tag_sym: :scheduled_procedure_step_start_date_time, tag_ndm: '00404005', tag_ary: [0x0040,0x4005], tag_multiple: false, tag_note: ''},
2308
2309
  { tag_ps: '(0040,4006)', tag_name: "Multiple Copies Flag", tag_key: 'MultipleCopiesFlag', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0040,4006)', tag_sym: :multiple_copies_flag, tag_ndm: '00404006', tag_ary: [0x0040,0x4006], tag_multiple: false, tag_note: 'RET'},
2309
2310
  { tag_ps: '(0040,4007)', tag_name: "Performed Processing Applications Code Sequence", tag_key: 'PerformedProcessingApplicationsCodeSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,4007)', tag_sym: :performed_processing_applications_code_sequence, tag_ndm: '00404007', tag_ary: [0x0040,0x4007], tag_multiple: false, tag_note: 'RET'},
2311
+ { tag_ps: '(0040,4008)', tag_name: "Scheduled Procedure Step Expiration DateTime", tag_key: 'ScheduledProcedureStepExpirationDateTime', tag_vr: [:DT], tag_vm: ["1"], tag_str: '(0040,4008)', tag_sym: :scheduled_procedure_step_expiration_date_time, tag_ndm: '00404008', tag_ary: [0x0040,0x4008], tag_multiple: false, tag_note: ''},
2310
2312
  { tag_ps: '(0040,4009)', tag_name: "Human Performer Code Sequence", tag_key: 'HumanPerformerCodeSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0040,4009)', tag_sym: :human_performer_code_sequence, tag_ndm: '00404009', tag_ary: [0x0040,0x4009], tag_multiple: false, tag_note: ''},
2311
2313
  { tag_ps: '(0040,4010)', tag_name: "Scheduled Procedure Step Modification DateTime", tag_key: 'ScheduledProcedureStepModificationDateTime', tag_vr: [:DT], tag_vm: ["1"], tag_str: '(0040,4010)', tag_sym: :scheduled_procedure_step_modification_date_time, tag_ndm: '00404010', tag_ary: [0x0040,0x4010], tag_multiple: false, tag_note: ''},
2312
2314
  { tag_ps: '(0040,4011)', tag_name: "Expected Completion DateTime", tag_key: 'ExpectedCompletionDateTime', tag_vr: [:DT], tag_vm: ["1"], tag_str: '(0040,4011)', tag_sym: :expected_completion_date_time, tag_ndm: '00404011', tag_ary: [0x0040,0x4011], tag_multiple: false, tag_note: ''},
@@ -2626,6 +2628,8 @@ HIGH = 0001H'},
2626
2628
  { tag_ps: '(0048,021E)', tag_name: "Column Position In Total Image Pixel Matrix", tag_key: 'ColumnPositionInTotalImagePixelMatrix', tag_vr: [:SL], tag_vm: ["1"], tag_str: '(0048,021E)', tag_sym: :column_position_in_total_image_pixel_matrix, tag_ndm: '0048021E', tag_ary: [0x0048,0x021E], tag_multiple: false, tag_note: ''},
2627
2629
  { tag_ps: '(0048,021F)', tag_name: "Row Position In Total Image Pixel Matrix", tag_key: 'RowPositionInTotalImagePixelMatrix', tag_vr: [:SL], tag_vm: ["1"], tag_str: '(0048,021F)', tag_sym: :row_position_in_total_image_pixel_matrix, tag_ndm: '0048021F', tag_ary: [0x0048,0x021F], tag_multiple: false, tag_note: ''},
2628
2630
  { tag_ps: '(0048,0301)', tag_name: "Pixel Origin Interpretation", tag_key: 'PixelOriginInterpretation', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0048,0301)', tag_sym: :pixel_origin_interpretation, tag_ndm: '00480301', tag_ary: [0x0048,0x0301], tag_multiple: false, tag_note: ''},
2631
+ { tag_ps: '(0048,0302)', tag_name: "Number of Optical Paths", tag_key: 'NumberOfOpticalPaths', tag_vr: [:UL], tag_vm: ["1"], tag_str: '(0048,0302)', tag_sym: :number_of_optical_paths, tag_ndm: '00480302', tag_ary: [0x0048,0x0302], tag_multiple: false, tag_note: ''},
2632
+ { tag_ps: '(0048,0303)', tag_name: "Total Pixel Matrix Focal Planes", tag_key: 'TotalPixelMatrixFocalPlanes', tag_vr: [:UL], tag_vm: ["1"], tag_str: '(0048,0303)', tag_sym: :total_pixel_matrix_focal_planes, tag_ndm: '00480303', tag_ary: [0x0048,0x0303], tag_multiple: false, tag_note: ''},
2629
2633
  { tag_ps: '(0050,0004)', tag_name: "Calibration Image", tag_key: 'CalibrationImage', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0050,0004)', tag_sym: :calibration_image, tag_ndm: '00500004', tag_ary: [0x0050,0x0004], tag_multiple: false, tag_note: ''},
2630
2634
  { tag_ps: '(0050,0010)', tag_name: "Device Sequence", tag_key: 'DeviceSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0050,0010)', tag_sym: :device_sequence, tag_ndm: '00500010', tag_ary: [0x0050,0x0010], tag_multiple: false, tag_note: ''},
2631
2635
  { tag_ps: '(0050,0012)', tag_name: "Container Component Type Code Sequence", tag_key: 'ContainerComponentTypeCodeSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0050,0012)', tag_sym: :container_component_type_code_sequence, tag_ndm: '00500012', tag_ary: [0x0050,0x0012], tag_multiple: false, tag_note: ''},
@@ -2921,6 +2925,9 @@ HIGH = 0001H'},
2921
2925
  { tag_ps: '(0068,65F0)', tag_name: "2D Plane Intersection", tag_key: 'TwoDPlaneIntersection', tag_vr: [:FD], tag_vm: ["4"], tag_str: '(0068,65F0)', tag_sym: :two_d_plane_intersection, tag_ndm: '006865F0', tag_ary: [0x0068,0x65F0], tag_multiple: false, tag_note: ''},
2922
2926
  { tag_ps: '(0068,6610)', tag_name: "3D Plane Origin", tag_key: 'ThreeDPlaneOrigin', tag_vr: [:FD], tag_vm: ["3"], tag_str: '(0068,6610)', tag_sym: :three_d_plane_origin, tag_ndm: '00686610', tag_ary: [0x0068,0x6610], tag_multiple: false, tag_note: ''},
2923
2927
  { tag_ps: '(0068,6620)', tag_name: "3D Plane Normal", tag_key: 'ThreeDPlaneNormal', tag_vr: [:FD], tag_vm: ["3"], tag_str: '(0068,6620)', tag_sym: :three_d_plane_normal, tag_ndm: '00686620', tag_ary: [0x0068,0x6620], tag_multiple: false, tag_note: ''},
2928
+ { tag_ps: '(0068,7001)', tag_name: "Model Modification", tag_key: 'ModelModification', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0068,7001)', tag_sym: :model_modification, tag_ndm: '00687001', tag_ary: [0x0068,0x7001], tag_multiple: false, tag_note: ''},
2929
+ { tag_ps: '(0068,7002)', tag_name: "Model Mirroring", tag_key: 'ModelMirroring', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0068,7002)', tag_sym: :model_mirroring, tag_ndm: '00687002', tag_ary: [0x0068,0x7002], tag_multiple: false, tag_note: ''},
2930
+ { tag_ps: '(0068,7003)', tag_name: "Model Usage Code Sequence", tag_key: 'ModelUsageCodeSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0068,7003)', tag_sym: :model_usage_code_sequence, tag_ndm: '00687003', tag_ary: [0x0068,0x7003], tag_multiple: false, tag_note: ''},
2924
2931
  { tag_ps: '(0070,0001)', tag_name: "Graphic Annotation Sequence", tag_key: 'GraphicAnnotationSequence', tag_vr: [:SQ], tag_vm: ["1"], tag_str: '(0070,0001)', tag_sym: :graphic_annotation_sequence, tag_ndm: '00700001', tag_ary: [0x0070,0x0001], tag_multiple: false, tag_note: ''},
2925
2932
  { tag_ps: '(0070,0002)', tag_name: "Graphic Layer", tag_key: 'GraphicLayer', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0070,0002)', tag_sym: :graphic_layer, tag_ndm: '00700002', tag_ary: [0x0070,0x0002], tag_multiple: false, tag_note: ''},
2926
2933
  { tag_ps: '(0070,0003)', tag_name: "Bounding Box Annotation Units", tag_key: 'BoundingBoxAnnotationUnits', tag_vr: [:CS], tag_vm: ["1"], tag_str: '(0070,0003)', tag_sym: :bounding_box_annotation_units, tag_ndm: '00700003', tag_ary: [0x0070,0x0003], tag_multiple: false, tag_note: ''},
@@ -287,6 +287,7 @@ module DcmDict
287
287
  { uid_value: '1.2.840.10008.5.1.4.1.1.90.1', uid_name: "Content Assessment Results Storage", uid_type: :sop_class},
288
288
  { uid_value: '1.2.840.10008.5.1.4.1.1.104.1', uid_name: "Encapsulated PDF Storage", uid_type: :sop_class},
289
289
  { uid_value: '1.2.840.10008.5.1.4.1.1.104.2', uid_name: "Encapsulated CDA Storage", uid_type: :sop_class},
290
+ { uid_value: '1.2.840.10008.5.1.4.1.1.104.3', uid_name: "Encapsulated STL Storage", uid_type: :sop_class},
290
291
  { uid_value: '1.2.840.10008.5.1.4.1.1.128', uid_name: "Positron Emission Tomography Image Storage", uid_type: :sop_class},
291
292
  { uid_value: '1.2.840.10008.5.1.4.1.1.128.1', uid_name: "Legacy Converted Enhanced PET Image Storage", uid_type: :sop_class},
292
293
  { uid_value: '1.2.840.10008.5.1.4.1.1.129', uid_name: "Standalone PET Curve Storage (Retired)", uid_type: :sop_class},
@@ -22,6 +22,6 @@
22
22
  # applicable local, state, national or international regulations.
23
23
  #
24
24
  module DcmDict
25
- VERSION = "0.17.0"
26
- DICOM_DOC_VERSION = "2018a"
25
+ VERSION = "0.18.0"
26
+ DICOM_DOC_VERSION = "2018b"
27
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dcm_dict
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Enrico Rivarola
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-23 00:00:00.000000000 Z
11
+ date: 2018-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -162,7 +162,12 @@ files:
162
162
  homepage: http://rubygems.org/gems/dcm_dict
163
163
  licenses:
164
164
  - GPL-3.0+
165
- metadata: {}
165
+ metadata:
166
+ bug_tracker_uri: https://github.com/henrythebuilder/dcm_dict/issues
167
+ changelog_uri: https://github.com/henrythebuilder/dcm_dict/blob/master/CHANGELOG
168
+ documentation_uri: http://www.rubydoc.info/gems/dcm_dict/0.18.0
169
+ homepage_uri: http://rubygems.org/gems/dcm_dict
170
+ source_code_uri: https://github.com/henrythebuilder/dcm_dict
166
171
  post_install_message:
167
172
  rdoc_options: []
168
173
  require_paths:
@@ -179,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
184
  version: '0'
180
185
  requirements: []
181
186
  rubyforge_project:
182
- rubygems_version: 2.6.13
187
+ rubygems_version: 2.7.6
183
188
  signing_key:
184
189
  specification_version: 4
185
190
  summary: A simple way to handle DICOM Data Dictionary