{"_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","_rev":"7-8cf226cba7763440e80f562562844ffb","name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","dist-tags":{"latest":"2025.10.1"},"versions":{"2025.8.0":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.8.0","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.8.0","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"c1ba20385590d21d1f4b99486489e6331966c8e8","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.8.0.tgz","fileCount":9,"integrity":"sha512-d12Aj6j9CyyCnIjZQ2N2kz3N+MjCS9rFq8A4uH1PKgvdB1cZb+VE3US7G4my1S7p0PM8wVAJRiI84XZkR7pafw==","signatures":[{"sig":"MEUCICzV7ZMAC0rDi946CG/da+VrGM2qv5mIqN9WRneqG43aAiEA4VPGRdTu3T8BIoXEVKBoePUVREIYg5VhJdT9LAvcEaE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":239829},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"eaf70aba5cf63e64632d984ccaefa8363a4145f2","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.4.2","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.8.0_1755799662458_0.7060831369439442","host":"s3://npm-registry-packages-npm-production"}},"2025.8.3":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.8.3","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.8.3","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"55d8212a361efbad5aa5ebcb19b2b3e1e99363c6","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.8.3.tgz","fileCount":1,"integrity":"sha512-6oMb2mpbdtXPxtHChYn4v2b6A/q56wvaX88Q+8Pw6XjGlrMY6BmhjYoi/0+PwJIpCJJ1bVj+ycNW1OWB/ST13A==","signatures":[{"sig":"MEYCIQCIvsZWrueeiaZe1i2CMRr8nIITB6hqqxOAuAHt26q6NgIhAPRk644ru8PhtH9NCPkZaapgJDvE1D+aqFPMVYRA5OgF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1694},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"e2c2d7ac810678225f827732a0b4109b69786494","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.5.2","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.8.3_1755849549682_0.9442087493277451","host":"s3://npm-registry-packages-npm-production"}},"2025.8.4":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.8.4","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.8.4","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"ad115e7de88d7c7d44e840518bb852a24e3628f0","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.8.4.tgz","fileCount":7,"integrity":"sha512-3hRPPJNuwmrn+hWJN0sBri1sCgJpk5o51dNDfza8GOzLmbupvfKPrxTLbDfna/zRNd61o0uM0++01HVzTeFTKg==","signatures":[{"sig":"MEUCIDnVY6wFjHsopqclkGcoZovb/a/BilPSexI2C7Mx1OThAiEA5/v65b2dFWbkHwTh1NFUqcgonTwgWOurpt0WPog8BUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":224959},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"8f019ca48b23e4b42c04eccffe8afd157c2be285","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.5.2","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.8.4_1755851044123_0.1694127886383776","host":"s3://npm-registry-packages-npm-production"}},"2025.8.5":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.8.5","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.8.5","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"d20bcd427106ec4eb3f24a9263ce57f8ab3e4dff","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.8.5.tgz","fileCount":9,"integrity":"sha512-ixn+cSM6z5Wgp7sfaQcYPmWcPJbgdBh0LWDzwWF/mDBK5XTscRiqjJ6nSML4Cd+opOPTZrwTqI/m+IxNWzdfHQ==","signatures":[{"sig":"MEYCIQCX4VgIs6Flu2sSCoA8yrmQu8naL2nHYbioZJWAVccXswIhAMPqV7PcrF8cq84Ap/F6j6LKqYmTjsrnWM4e41lLO61w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":240443},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"c6879f3bb3adce7fd9d2571c1ea281e019186ea2","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.5.2","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.8.5_1756044348930_0.7059117964526112","host":"s3://npm-registry-packages-npm-production"}},"2025.9.0":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.9.0","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.9.0","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"6468574bb12616c0c90f6521f813056df6e35bf9","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.9.0.tgz","fileCount":9,"integrity":"sha512-ElerdBoBLDf/5M2+5TkI2Ciyhmr44f/D47BWa3JpxzGVpknAQ1cezKDtqZgR2AAq9qCX/uKcbuOLsg6mcg6chA==","signatures":[{"sig":"MEUCIC3LcnV2Vfu5pnJp10LGQZJjpyR69Z2TdeNaAw8+9/zgAiEA+8pPyjEWBiDixBAeQUoLbfbT+Y6KzOwiO90WEap/g80=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":240307},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"9a4efb66a6d31b55135cb7018da8ea610208a540","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.6.0","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.9.0_1757417983832_0.03158397731401763","host":"s3://npm-registry-packages-npm-production"}},"2025.10.0":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.10.0","keywords":["json","dicom","de-identification","grand-challenge"],"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.10.0","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"dist":{"shasum":"e7688661187be497175ef02cef6f0722e23bd0fe","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.10.0.tgz","fileCount":9,"integrity":"sha512-5niDYYHMIzoM2aoKNVvg1u7EWt7cwA4n35zmjCcvuckV8PkR/zQOC9fS30AwBz5I/37FvMPaKuFL/nKQgbRb1w==","signatures":[{"sig":"MEUCIAdFHxSD4JvkSRMtM7p55wlSTE9cV2BK+mNGGIqBF5AVAiEAylrbt652toS4sMWcBqrMxPcEreggS2sZutvB86xGxpc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304962},"main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","type":"module","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"gitHead":"94c449437825dbc3df21df027d5e4618856698ea","scripts":{"build":"rollup --config rollup.config.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"repository":{"url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git","type":"git"},"_npmVersion":"11.6.2","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.44.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.10.0_1761030846711_0.8850542231895349","host":"s3://npm-registry-packages-npm-production"}},"2025.10.1":{"name":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure","version":"2025.10.1","description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","keywords":["json","dicom","de-identification","grand-challenge"],"homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"repository":{"type":"git","url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git"},"license":"Apache-2.0","author":{"name":"Grand-Challenge Research Software Engineers"},"type":"module","exports":{"import":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","require":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js"},"browser":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","main":"./dist/grand-challenge-dicom-de-id-procedure.umd.min.js","module":"./dist/grand-challenge-dicom-de-id-procedure.esm.min.js","devDependencies":{"@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","rollup":"^4.44.1"},"scripts":{"build":"rollup --config rollup.config.js"},"gitHead":"f324dcd826ca282cf79f82f228af1284f67b1a09","_id":"@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure@2025.10.1","_nodeVersion":"20.19.5","_npmVersion":"11.6.2","dist":{"integrity":"sha512-58JhKDdl9ynUMfZYAlByW/2BP+fn8sxS4JzwPgpqXjZjUi/B3TkHGak0pAmXs3DFnThHMSQ+ZlHDvAWhn99HzA==","shasum":"d52c4e186f62ce3b79010fc3e4fefaf42e737335","tarball":"https://registry.npmjs.org/@diagnijmegen/rse-grand-challenge-dicom-de-id-procedure/-/rse-grand-challenge-dicom-de-id-procedure-2025.10.1.tgz","fileCount":9,"unpackedSize":432604,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@diagnijmegen%2frse-grand-challenge-dicom-de-id-procedure@2025.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGL9E2MHf+6b7jmBKjEGE9t0vBqj5tAcunbwDM61/t/XAiEA4fwVgfnKbRzIQo6LBYteya6/aZ3NOp/gUE0APODZpdw="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:462c23e5-a209-45bb-8165-4d1a60ebf7c3"}},"directories":{},"maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rse-grand-challenge-dicom-de-id-procedure_2025.10.1_1762431666362_0.48203915622817806"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-21T18:07:42.378Z","modified":"2025-11-06T12:21:07.030Z","2025.8.0":"2025-08-21T18:07:42.646Z","2025.8.3":"2025-08-22T07:59:09.856Z","2025.8.4":"2025-08-22T08:24:04.321Z","2025.8.5":"2025-08-24T14:05:49.112Z","2025.9.0":"2025-09-09T11:39:44.070Z","2025.10.0":"2025-10-21T07:14:06.913Z","2025.10.1":"2025-11-06T12:21:06.574Z"},"bugs":{"url":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/issues"},"author":{"name":"Grand-Challenge Research Software Engineers"},"license":"Apache-2.0","homepage":"https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure#readme","keywords":["json","dicom","de-identification","grand-challenge"],"repository":{"type":"git","url":"git+https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure.git"},"description":"De-identification of DICOM is a complex procedure that depends on a number of DICOM standards. The procedures found in this package describe per SOPClassUID and tag what the correct action is. They serve as the basis for the de-identification implementati","maintainers":[{"name":"chris.vanrun","email":"Chris.vanrun@radboudumc.nl"},{"name":"jmsmkn.radboud","email":"James.Meakin@radboudumc.nl"},{"name":"harmvz","email":"harm.van.zeeland@gmail.com"}],"readme":"# Grand-Challenge DICOM De-Identification Procedure\n\n[![CI](https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/actions/workflows/ci.yml/badge.svg)](https://github.com/DIAGNijmegen/rse-grand-challenge-dicom-de-id-procedure/actions/workflows/ci.yml)\n\nThis repository contains the code that generate the procedure for the [Grand-Challenge.org](https://www.grand-challenge.org) de-identification methods. The procedure describes which action needs to be taken for a DICOM tag in order to be de-identified.\n\nIt is based on the DICOM Basic Profile of the [Standard DICOM de-identification profile](https://dicom.nema.org/medical/dicom/current/output/chtml/part15/chapter_E.html#table_E.1-1) but customized for the use on the Grand-Challenge platform.\n\nMore information about de-identification choices can be found in the [standard-operation procedure](SOP.md).\n\n\n## Procedure Usage\n\nFor JavaScript you can use the ESM + UDM bundles via the npmjs package:\n- https://www.npmjs.com/package/@diagnijmegen/rse-grand-challenge-dicom-deid-procedure\n\nThe `procedure.json` has two lookups: firstly by SOPClassUID and secondly by the data element tag. This results in a `\"default\"` action that is to be executed for the data element in question. The action can be any of:\n\nCode | Action\n---|---\n\"D\" |\treplace with a non-zero length value that may be a dummy value and consistent with the VR\n\"Z\" |\treplace with a zero length value, or a non-zero length value that may be a dummy value and consistent with the VR\n\"X\" |\tremove\n\"K\" |\tkeep (unchanged for non-Sequence Attributes, cleaned for Sequences)\n\"C\" |\tclean, that is replace with values of similar meaning known not to contain identifying information and consistent with the VR\n\"U\" |\treplace with a non-zero length UID that is internally consistent within a set of Instances\n\"R\" |\treject the entire DICOM file\n\nFor Python you can use the PyPi package: https://pypi.org/project/grand-challenge-dicom-de-id-procedure/\n\n    $ pip install grand-challenge-dicom-de-id-procedure\n\nTo load the procedure import it as follows:\n\n```Python\nfrom grand_challenge_dicom_de_id_procedure import procedure\n\n# Check the version\nprint(procedure[\"version\"])\n\n# Get an action for tag (0008,0005) of SOPClassUID \"1.2.840.10008.5.1.4.1.1.2\" (CT image)\naction = procedure[\"sopClass\"][\"1.2.840.10008.5.1.4.1.1.2\"][\"tag\"][\"(0008,0005)\"][\"default\"]\n\nprint(action) # \"K\"\n```\n\n## Procedure Building\n\nFirst, install `uv` you should then be able to run the any of the following `make` commands:\n\n    $ make base\n\nWhich will create the base procedure, see Action logic below for details.\n\n    $ make candidate\n\nWhich will merge **BASE** + **MANUAL** procedures to generate a **CANDIDATE procedure**. The **MANUAL procedure** is a hand-crafted action list for each DICOM tag that is unset in the **BASE procedure**.\n\n    $ make worklist\n\nWhich will generate a reStructuredText that describes the tags for which no action has been set in the **CANDIDATE procedure**.\n\nThese will need to be addressed before we can generate the final procedure.\n\n    $ VERSION=\"2025.6.0\" make final\n\nFinally, above  will run all the earlier `make` targets (i.e. `base`, `candidate`, `worklist`) and then use the **CANDIDATE procedure** to build the distributable **FINAL procedure** Including a `VERSION`, as specified.\n\n\n## Procedure Release\n\nCalling `make final` with a `VERSION` also inserts the version in the relevant Python and NPM package configuration. The actual package(s) release is done via GitHub actions. The steps are:\n\n1. Ensure that `main` contains the latest version you would like to release\n2. Create and publish a release on GitHub, creating a new tag\n    - Versioning dated-semver and follows format `YYYY.MM.MINOR`, where `YYYY` is the year `MM` is the month with no-zero padding and MINOR is the version bump within that month (starting at '0'). For instance `2025.2.0`.\n3. GitHub actions to publish the new package(s) automatically starts when a release is published\n4. Once everything is published, the dependency needs to be updated downstream (e.g. in Grand-Challenge)\n","readmeFilename":"README.md"}