w3c/hcls-fhir-rdf

How to handle InlineBinary and BulkDataURI?

Opened this issue · 1 comments

How to handle InlineBinary and BulkDataURI?

Sample is DICOM JSON:

"50003000": {
		"vr": "OW",
		"BulkDataURI": "file:/mnt/d/dicom/sample/0002.DCM?offset=3034&length=7680"
	},
	"7FE00010": {
		"vr": "OB",
		"DataFragment": [
			{
				"BulkDataURI": "file:/mnt/d/dicom/sample/0002.DCM?offset=10734&length=384"
			},
			{
				"BulkDataURI": "file:/mnt/d/dicom/sample/0002.DCM?offset=11126&length=17912"
			},
			{
				"BulkDataURI": "file:/mnt/d/dicom/sample/0002.DCM?offset=29046&length=18680"
			},
			{
				"BulkDataURI": "file:/mnt/d/dicom/sample/0002.DCM?offset=47734&length=18644"
			},

I suggest a variation of DCM2JSON's dcm2json converter:

<>
dcm:7FE00010 [
dcm:vr "OB";
dcm:DataFragments (
  [ 
   dcm:BulkDataURI "https://server/path/to/bulkdata/frame/0";
   dcm:offset 0;
   dcm:length 1024
  ]
  [
    dcm:BulkDataURI "https://server/path/to/bulkdata/frame/1";
    dcm:offset 1024;
    dcm:length 1024
  ]
  [
    dcm:BulkDataURI "https://server/path/to/bulkdata/frame/2";
    dcm:offset 2048;
    dcm:length 1024
  ]
)]

or (both being valid and allowing for future metadata

<>
dcm:7FE00010 [
dcm:vr "OB";
dcm:DataFragments (
[ dcm:BulkDataURI "https://server/path/to/bulkdata/frame/0?offset=0&length=1024" ]
[ dcm:BulkDataURI "https://server/path/to/bulkdata/frame/1?offset=1024&length=1024" ]
[ dcm:BulkDataURI "https://server/path/to/bulkdata/frame/2?offset=2048&length=1024 ]
)]