<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="NHSEngland-Consent-GenomicsPCF" />
  <url value="https://fhir.nhs.uk/StructureDefinition/NHSEngland-Consent-GenomicsPCF" />
  <version value="0.3.0" />
  <name value="NHSEngland_Consent_GenomicsPCF" />
  <title value="NHSEngland Consent GenomicsPCF" />
  <status value="active" />
  <date value="2026-04-16" />
  <publisher value="NHS England" />
  <contact>
    <name value="NHS England" />
    <telecom>
      <system value="email" />
      <value value="interoperabilityteam@nhs.net" />
      <use value="work" />
      <rank value="1" />
    </telecom>
  </contact>
  <description value="This profile defines the Genomics constraints and extensions on the Privacy and Consent on FHIR FHIR resource [Intermediate Consent](https://profiles.ihe.net/ITI/PCF/StructureDefinition/IHE.PCF.consentIntermediate)." />
  <purpose value="Only expected to be used for wrapping Record of Discussion resources within the WGS pathway. Consent for testing is implied through submission of a test to the Genomic Order Management service. Consent for Data Access as part of the UGR SHOULD follow guidance provided within Consent guidance page and the IHE PCF Framework.&#xD;&#xA;&#xD;&#xA;Only a minimal amount of mandatory information needs to be populated for Order Management recording of RoDs." />
  <copyright value="Copyright © 2026+ NHS England Licensed under the Apache License, Version 2.0 (the \\\&quot;License\\\&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at  http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \\\&quot;AS IS\\\&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. HL7® FHIR® standard Copyright © 2011+ HL7 The HL7® FHIR® standard is used under the FHIR license. You may obtain a copy of the FHIR license at  https://www.hl7.org/fhir/license.html." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Consent" />
  <baseDefinition value="https://profiles.ihe.net/ITI/PCF/StructureDefinition/IHE.PCF.consentIntermediate" />
  <derivation value="constraint" />
  <differential>
    <element id="Consent.status">
      <path value="Consent.status" />
      <definition value="SHALL be present. Fixed code of 'proposed' where consent discussion has taken place but RoD form has not been provided alongside test order. 'draft' if discussion has not yet taken place and 'active' for completed RoD, regardless of whether the patient has consented to information sharing (responses to specific consent statements SHOULD be recorded in the RoD itself)." />
    </element>
    <element id="Consent.scope.coding">
      <path value="Consent.scope.coding" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Consent.scope.coding:codingGenomics">
      <path value="Consent.scope.coding" />
      <sliceName value="codingGenomics" />
      <definition value="For WGS RoD this SHALL be fixed to the below code:" />
    </element>
    <element id="Consent.scope.coding:codingGenomics.system">
      <path value="Consent.scope.coding.system" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/consentscope" />
    </element>
    <element id="Consent.scope.coding:codingGenomics.code">
      <path value="Consent.scope.coding.code" />
      <fixedCode value="patient-privacy" />
    </element>
    <element id="Consent.scope.coding:codingGenomics.display">
      <path value="Consent.scope.coding.display" />
      <fixedString value="Privacy Consent" />
    </element>
    <element id="Consent.category">
      <path value="Consent.category" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Consent.category:categoryRoD">
      <path value="Consent.category" />
      <sliceName value="categoryRoD" />
      <definition value="Fixed to `http://terminology.hl7.org/CodeSystem/v3-ActCode|RESEARCH (research information access)` for Order Management Consent for NGRL/RoD." />
      <max value="1" />
      <fixedCodeableConcept>
        <coding>
          <system value="http://terminology.hl7.org/CodeSystem/v3-ActCode" />
          <code value="RESEARCH" />
          <display value="research information access" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="Consent.category:categoryUGRDataAccess">
      <path value="Consent.category" />
      <sliceName value="categoryUGRDataAccess" />
      <definition value="Fixed to `http://terminology.hl7.org/CodeSystem/v3-ActCode|INFA (information access)` for providing access to the patient's UGR for specific purposes, as described by the UGR lenses below." />
      <max value="1" />
      <fixedCodeableConcept>
        <coding>
          <system value="http://terminology.hl7.org/CodeSystem/v3-ActCode" />
          <code value="INFA" />
          <display value="information access" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="Consent.category:categoryUGRDataSharing">
      <path value="Consent.category" />
      <sliceName value="categoryUGRDataSharing" />
      <definition value="Fixed to `http://terminology.hl7.org/CodeSystem/v3-ActCode|IDSCL (information disclosure)` for providing access to a relative's healthcare professional, to inform their care, e.g. in the case of familial/cascade testing." />
      <max value="1" />
      <fixedCodeableConcept>
        <coding>
          <system value="http://terminology.hl7.org/CodeSystem/v3-ActCode" />
          <code value="IDSCL" />
          <display value="information disclosure" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="Consent.patient">
      <path value="Consent.patient" />
      <definition value="SHALL be present. Reference to the associated Patient. This MAY be through a resource reference if the ID on the central service is known (or provided within the transaction bundle) or through NHS number where this is known and has been traced through PDS." />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.nhs.uk/StructureDefinition/NHSEngland-Patient-Genomics" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
        <aggregation value="referenced" />
        <aggregation value="bundled" />
      </type>
    </element>
    <element id="Consent.dateTime">
      <path value="Consent.dateTime" />
      <definition value="SHALL be the time the Consent record was created. For UGR Consent, likely auto-populated by the system." />
    </element>
    <element id="Consent.performer">
      <path value="Consent.performer" />
      <definition value="MAY reference a RelatedPerson/Patient or potentially PractitionerRole if consent is being provided via another individual e.g. a proxy, otherwise SHOULD reference the patient themself" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.nhs.uk/StructureDefinition/NHSEngland-PractitionerRole-Genomics" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/PractitionerRole" />
        <aggregation value="referenced" />
        <aggregation value="bundled" />
      </type>
    </element>
    <element id="Consent.organization">
      <path value="Consent.organization" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Consent.organization:organizationUGR">
      <path value="Consent.organization" />
      <sliceName value="organizationUGR" />
      <definition value="SHALL be fixed to the ODS code for NHS England (X26) as this is the managing organisation for the UGR consents." />
      <max value="1" />
      <fixedReference>
        <identifier>
          <system value="https://fhir.nhs.uk/Id/ods-organization-code" />
          <value value="X26" />
        </identifier>
      </fixedReference>
    </element>
    <element id="Consent.source[x]">
      <path value="Consent.source[x]" />
      <definition value="SHALL be present for RoD entities (where the Consent resource provides metadata wrapping around a [Record of Discussion Form](https://www.england.nhs.uk/publication/nhs-genomic-medicine-service-record-of-discussion-form/). The Source element MAY either be:&#xD;&#xA;A pointer to the location of the PDF version of the RoD, either hosted by the source/client system&#xD;&#xA;Accessed via NRL (via a DocumentReference resource)&#xD;&#xA;Embedded within the message payload, base64 encoded (using sourceAttachment)&#xD;&#xA;A reference to a QuestionnaireResponse resource (using sourceReference), if this has been collected in a structured format, using the Questionnaire-Genomic Testing RoD template.&#xD;&#xA;&#xD;&#xA;Not relevant for UGR consent resources as this is generated automatically on creation of a UGR, though IHE PCF requires a reference or attachment. This MAY be a reference to a QuestionnaireResponse representing the patients consent selections, e.g. via the NHS App." />
    </element>
    <element id="Consent.policy">
      <path value="Consent.policy" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Consent.policy:policyRoD">
      <path value="Consent.policy" />
      <sliceName value="policyRoD" />
    </element>
    <element id="Consent.policy:policyRoD.authority">
      <path value="Consent.policy.authority" />
      <fixedUri value="https://www.england.nhs.uk" />
    </element>
    <element id="Consent.policy:policyRoD.uri">
      <path value="Consent.policy.uri" />
      <fixedUri value="https://www.england.nhs.uk/publication/nhs-genomic-medicine-service-record-of-discussion-form" />
    </element>
    <element id="Consent.policy:policyUGR">
      <path value="Consent.policy" />
      <sliceName value="policyUGR" />
      <definition value="MAY be used to reference the NHS England Privacy Policy" />
    </element>
    <element id="Consent.policy:policyUGR.uri">
      <path value="Consent.policy.uri" />
      <fixedUri value="https://www.england.nhs.uk/wp-content/uploads/2018/05/nhs-england-privacy-notice-v1.77.pdf" />
    </element>
    <element id="Consent.provision">
      <path value="Consent.provision" />
      <definition value="Within Order Management used to reference the ServiceRequest the Consent applies to. SHALL be present where the consent only applies to a specific test.&#xD;&#xA;&#xD;&#xA;In the context of the UGR, the top level `type` SHOULD represent the patient's overall consent to use of their data e.g. as indicated via their National Data Opt-Out selection. Sub-level `provision` elements SHOULD be used to represent exceptions to the higher level provision, though MAY be used to explicitly permit usage of data for specific purposes, where the higher-level provision is of type 'permit'." />
    </element>
    <element id="Consent.provision.data:iData">
      <path value="Consent.provision.data" />
      <sliceName value="iData" />
    </element>
    <element id="Consent.provision.data:iData.reference">
      <path value="Consent.provision.data.reference" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.nhs.uk/StructureDefinition/NHSEngland-ServiceRequest-Genomics" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Resource" />
        <aggregation value="referenced" />
        <aggregation value="bundled" />
      </type>
    </element>
    <element id="Consent.provision.provision">
      <path value="Consent.provision.provision" />
      <slicing>
        <discriminator>
          <type value="pattern" />
          <path value="$this" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Consent.provision.provision:provisionUGR">
      <path value="Consent.provision.provision" />
      <sliceName value="provisionUGR" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.type">
      <path value="Consent.provision.provision.type" />
      <min value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.period">
      <path value="Consent.provision.provision.period" />
      <max value="0" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.actor">
      <path value="Consent.provision.provision.actor" />
      <definition value="MAY be used to specify a class of individuals included within the consent statement, e.g. access for direct care by healthcare professionals, or for individuals, e.g. access to patient proxy." />
    </element>
    <element id="Consent.provision.provision:provisionUGR.action">
      <path value="Consent.provision.provision.action" />
      <max value="0" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.securityLabel">
      <path value="Consent.provision.provision.securityLabel" />
      <max value="0" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose">
      <path value="Consent.provision.provision.purpose" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="code" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <definition value="SHALL be used for encoding the four lenses of data access" />
      <min value="1" />
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeDirectCare">
      <path value="Consent.provision.provision.purpose" />
      <sliceName value="purposeDirectCare" />
      <max value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeDirectCare.system">
      <path value="Consent.provision.provision.purpose.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeDirectCare.code">
      <path value="Consent.provision.provision.purpose.code" />
      <min value="1" />
      <fixedCode value="TREAT" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeResearch">
      <path value="Consent.provision.provision.purpose" />
      <sliceName value="purposeResearch" />
      <max value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeResearch.system">
      <path value="Consent.provision.provision.purpose.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeResearch.code">
      <path value="Consent.provision.provision.purpose.code" />
      <min value="1" />
      <fixedCode value="HRESCH" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposePopulationHealth">
      <path value="Consent.provision.provision.purpose" />
      <sliceName value="purposePopulationHealth" />
      <max value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposePopulationHealth.system">
      <path value="Consent.provision.provision.purpose.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposePopulationHealth.code">
      <path value="Consent.provision.provision.purpose.code" />
      <min value="1" />
      <fixedCode value="POPHLTH" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeManagementInformation">
      <path value="Consent.provision.provision.purpose" />
      <sliceName value="purposeManagementInformation" />
      <max value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeManagementInformation.system">
      <path value="Consent.provision.provision.purpose.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeManagementInformation.code">
      <path value="Consent.provision.provision.purpose.code" />
      <min value="1" />
      <fixedCode value="HOPERAT" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeFamilyLinkage">
      <path value="Consent.provision.provision.purpose" />
      <sliceName value="purposeFamilyLinkage" />
      <max value="1" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeFamilyLinkage.system">
      <path value="Consent.provision.provision.purpose.system" />
      <min value="1" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.purpose:purposeFamilyLinkage.code">
      <path value="Consent.provision.provision.purpose.code" />
      <min value="1" />
      <fixedCode value="FAMRQT" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.class">
      <path value="Consent.provision.provision.class" />
      <definition value="MAY be used to indicate the classes of data the provision applies to, where whole classes of data, e.g. DiagnosticReports, are consented to, rather than specific instances." />
    </element>
    <element id="Consent.provision.provision:provisionUGR.code">
      <path value="Consent.provision.provision.code" />
      <max value="0" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.dataPeriod">
      <path value="Consent.provision.provision.dataPeriod" />
      <max value="0" />
    </element>
    <element id="Consent.provision.provision:provisionUGR.data">
      <path value="Consent.provision.provision.data" />
      <definition value="SHOULD be used where the consent applies to specific instances of data, such as a single report or sequence.&#xD;&#xA;&#xD;&#xA;`data.meaning` MAY use any of the codes specified in the [consent-data-meaning ValueSet](https://www.hl7.org/fhir/R4/valueset-consent-data-meaning.html), as data may not be useful in isolation, e.g. a report without the referenced observations. However, the `authoredBy` code is not expected to be used for the UGR." />
    </element>
  </differential>
</StructureDefinition>