Design philosophy - create a good faith RDF representation of DICOM metadata.
This program will read a specified source directory containing DICOM files and create a matching folder with the same folder hierachy as the source and with the same file names but with a RDF turtle ".ttl" extension. This program's output has been modified to match and implement various discussions that have occurred within a community of people interested working with DICOM using a RDF tool chain.
This program is hardly the first of it's kind with several papers written on the subject.
*** Please note - this is a community effort and is not offical, nor part of the DICOM standard
It it a Java program developed using the GraalVM which will allow you to run the program as a Java runnable jar or as a native image not requiring a JDK/JRE to be installed. It is built upon Apache Jena and the DCM4CHE libraries.
- Must have working JDK21 environment
mvn -Pjar clean package
- A runnable jar version "dcm2rdf-1.0.0.jar" will be in the target folder
java -jar dcm2rdf-1.0.0.jar -help
will display instructions.
- Must have at least JDK23 GraalVM CE 23.0.1+11.1 installed with fully functional native-image build enviroment for the platform you are building for.
- mvn -Pnative clean native:compile
- Artifact "dcm2rdf" will be in target folder.
dcm2rdf -help
will display instructions.
- A paper documenting the referenced community effort.
- More documentation
- Support other RDF serializations (only outputs Turtle at the moment)
- Link program output with existing official DICOM RDF terminology.
- DICOM SHACL development
- and much much more...
Usage: dcm2rdf [options]
Options:
* -src
Source Folder or File
* -dest
Destination Folder or File
-t
# of threads for processing. Generally, one thread per file.
Default: 1
-c
results file will be gzipped compressed
Default: false
-L
Perform minimal conversion to RDF. Warning - turns all tweaks and
optimizations off!
Default: false
-version
Display software version
Default: false
-status
Display progress in real-time.
Default: false
-overwrite
Overwrite results files.
Default: false
-help, -h
Display help information
Default: false
-extra
Add source file URI, file size
Default: false
-naming
Subject method (SOPInstanceUID, SHA256)
Default: SOPInstanceUID
-oid
Convert UI VRs to urn:oid:<oid>
Default: false
-hash
Calculate SHA256 Hashes. Implied with SHA256 naming option.
Default: false
-level
Sets logging level (OFF, ALL, WARNING, SEVERE)
Default: SEVERE
-wkt
Known polygons expressed as GeoSPARQL WKT
Default: false
-detlef
Detlefication - Generate URNs for bnodes in Sequences
Default: false
-cdt
Convert lists to complex data types (CDT)
Default: false
-cdtlevel
if cdt is true, only do mapping if list length is greater than this
value
Default: 4
-ptags
if ptags is true, add alternate private tag representation
Default: false
-includeinlinebinary
will empty the inline binaries in the RDF file
Default: false
-keywords
Use keyword predicates instead of the tag-based
Default: false
- 2009 Context-Driven Ontological Annotations In DICOM Images - Towards a semantic PACS
- 2013 DICOM metadata as RDF - <Preprint> <Source Code>
- 2014 Towards a semantic PACS: Using Semantic Web technology to represent imaging data
- 2014 RDF-ization of DICOM Medical Images towards Linked Health Data Cloud
- 2014 Semantic Search over DICOM Repositories
- 2015 An automatic method for the enrichment of DICOM metadata using biomedical ontologies
- 2015 Toward a View-oriented Approach for Aligning RDF-based Biomedical Repositories
- 2020 FAIR-compliant clinical, radiomics and DICOM metadata of RIDER, interobserver, Lung1 and head-Neck1 TCIA collections
- 2021 A semantic database for integrated management of image and dosimetric data in low radiation dose research in medical imaging