<?xml version="1.0" encoding="UTF-8"?>

<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="psuedonymize"/>
  <text>
    <status value="generated"/><div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: OperationDefinition psuedonymize</b></p><a name="psuedonymize"> </a><a name="hcpsuedonymize"> </a><p>URL: [base]/$psuedonymize</p><h3>Parameters</h3><table class="grid"><tr><td><b>Use</b></td><td><b>Name</b></td><td><b>Scope</b></td><td><b>Cardinality</b></td><td><b>Type</b></td><td><b>Binding</b></td><td><b>Documentation</b></td></tr><tr><td>IN</td><td>key</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>A key that can be used for creating the psuedonym.</p>
</div></td></tr><tr><td>IN</td><td>algorithm</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>The algorithm to be used for creating the psuedonym such as SHA256.</p>
</div></td></tr><tr><td>IN</td><td>identifiableDataFileUrls</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/parameters.html">Parameters</a></td><td/><td><div><p>Urls of the Input Files represented as Parameters, with the type of Resource and the URL to the NDJSON data.</p>
</div></td></tr><tr><td>IN</td><td>identifiableData</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/bundle.html">Bundle</a></td><td/><td><div><p>Bundle containing identifiable data for one or more patients.</p>
</div></td></tr><tr><td>OUT</td><td>psuedonymizedFileUrls</td><td/><td>0..*</td><td><a href="http://hl7.org/fhir/R4/parameters.html">Parameters</a></td><td/><td><div><p>Upon successful psuedonymization, the psuedonymized file Urls is returned back from the service.</p>
</div></td></tr><tr><td>OUT</td><td>psuedonymizedData</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/bundle.html">Bundle</a></td><td/><td><div><p>Upon successful psuedonymization, the psuedonymized data is returned back from the service. This output would be returned when the input is a bundle only.</p>
</div></td></tr></table></div>
  </text>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="cgp"/>
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="2">
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
        <valueCanonical value="http://hl7.org/fhir/us/darts/ImplementationGuide/darts"/>
      </extension>
    </valueInteger>
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
    <valueCode value="trial-use">
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
        <valueCanonical value="http://hl7.org/fhir/us/darts/ImplementationGuide/darts"/>
      </extension>
    </valueCode>
  </extension>
  <url value="http://hl7.org/fhir/us/darts/OperationDefinition/psuedonymize"/>
  <version value="1.0.0-ballot"/>
  <name value="Psuedonymize"/>
  <title value="Generate Psuedonymized data"/>
  <status value="active"/>
  <kind value="operation"/>
  <date value="2026-03-27T21:48:56+10:00"/>
  <publisher value="HL7 International / Cross-Group Projects"/>
  <contact>
    <telecom>
      <system value="url"/>
      <value value="http://www.hl7.org/Special/committees/cgp"/>
    </telecom>
  </contact>
  <description value="Generates psuedonymized data from identifiable data. The algorithm to be used for psuedonymization is left to the DARTS service provider. Errors during the execution of the operation can be returned as OperationOutcome per the FHIR spec as a return parameter."/>
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166"/>
      <code value="US"/>
    </coding>
  </jurisdiction>
  <code value="psuedonymize"/>
  <system value="true"/>
  <type value="false"/>
  <instance value="false"/>
  <parameter>
    <name value="key"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation value="A key that can be used for creating the psuedonym."/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="algorithm"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation value="The algorithm to be used for creating the psuedonym such as SHA256."/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="identifiableDataFileUrls"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="Urls of the Input Files represented as Parameters, with the type of Resource and the URL to the NDJSON data."/>
    <type value="Parameters"/>
  </parameter>
  <parameter>
    <name value="identifiableData"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="Bundle containing identifiable data for one or more patients."/>
    <type value="Bundle"/>
  </parameter>
  <parameter>
    <name value="psuedonymizedFileUrls"/>
    <use value="out"/>
    <min value="0"/>
    <max value="*"/>
    <documentation value="Upon successful psuedonymization, the psuedonymized file Urls is returned back from the service."/>
    <type value="Parameters"/>
  </parameter>
  <parameter>
    <name value="psuedonymizedData"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="Upon successful psuedonymization, the psuedonymized data is returned back from the service. This output would be returned when the input is a bundle only."/>
    <type value="Bundle"/>
  </parameter>
</OperationDefinition>