### ----------------------------------------------------
### -- FHIR
### -- Licenses: Artistic-2.0
### -- Authors: Hugh Simpson
### -- File: t/resources/structureDefinition/Consent.json
### ----------------------------------------------------
### -- Chunk 9 of 10
 : "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
      "isSummary" : true,
      "mapping" : [{
        "identity" : "rim",
        "map" : "N/A"
      }]
    },
    {
      "id" : "Consent.provision.type",
      "path" : "Consent.provision.type",
      "short" : "deny | permit",
      "definition" : "Action  to take - permit or deny - when the rule conditions are met.  Not permitted in root rule, required in all nested rules.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.type",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "code"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentProvisionType"
        }],
        "strength" : "required",
        "description" : "How a rule statement is applied, such as adding additional consent or removing consent.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-provision-type|4.0.0"
      }
    },
    {
      "id" : "Consent.provision.period",
      "path" : "Consent.provision.period",
      "short" : "Timeframe for this rule",
      "definition" : "The timeframe in this rule is valid.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.period",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "Period"
      }],
      "isModifier" : false,
      "isSummary" : true
    },
    {
      "id" : "Consent.provision.actor",
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name",
        "valueString" : "provisionActor"
      }],
      "path" : "Consent.provision.actor",
      "short" : "Who|what controlled by this rule (or group, by role)",
      "definition" : "Who or what is controlled by this rule. Use group to identify a set of actors by some property they share (e.g. 'admitting officers').",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.actor",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "BackboneElement"
      }],
      "meaningWhenMissing" : "There is no specific actor associated with the exception",
      "constraint" : [{
        "key" : "ele-1",
        "severity" : "error",
        "human" : "All FHIR elements must have a @value or children",
        "expression" : "hasValue() or (children().count() > id.count())",
        "xpath" : "@value|f:*|h:div",
        "source" : "Element"
      }],
      "isModifier" : false,
      "isSummary" : false
    },
    {
      "id" : "Consent.provision.actor.id",
      "path" : "Consent.provision.actor.id",
      "representation" : ["xmlAttr"],
      "short" : "Unique id for inter-element referencing",
      "definition" : "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "Element.id",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "string"
      }],
      "isModifier" : false,
      "isSummary" : false,
      "mapping" : [{
        "identity" : "rim",
        "map" : "n/a"
      }]
    },
    {
      "id" : "Consent.provision.actor.extension",
      "path" : "Consent.provision.actor.extension",
      "short" : "Additional content defined by implementations",
      "definition" : "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
      "comment" : "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
      "alias" : ["extensions",
      "user content"],
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Element.extension",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Extension"
      }],
      "isModifier" : false,
      "isSummary" : false,
      "mapping" : [{
        "identity" : "rim",
        "map" : "n/a"
      }]
    },
    {
      "id" : "Consent.provision.actor.modifierExtension",
      "path" : "Consent.provision.actor.modifierExtension",
      "short" : "Extensions that cannot be ignored even if unrecognized",
      "definition" : "May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
      "comment" : "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
      "requirements" : "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension).",
      "alias" : ["extensions",
      "user content",
      "modifiers"],
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "BackboneElement.modifierExtension",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Extension"
      }],
      "isModifier" : true,
      "isModifierReason" : "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
      "isSummary" : true,
      "mapping" : [{
        "identity" : "rim",
        "map" : "N/A"
      }]
    },
    {
      "id" : "Consent.provision.actor.role",
      "path" : "Consent.provision.actor.role",
      "short" : "How the actor is involved",
      "definition" : "How the individual is involved in the resources content that is described in the exception.",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.actor.role",
        "min" : 1,
        "max" : "1"
      },
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "isModifier" : false,
      "isSummary" : false,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentActorRole"
        }],
        "strength" : "extensible",
        "description" : "How an actor is involved in the consent considerations.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/security-role-type"
      }
    },
    {
      "id" : "Consent.provision.actor.reference",
      "path" : "Consent.provision.actor.reference",
      "short" : "Resource for the actor (or group, by role)",
      "definition" : "The resource that identifies the actor. To identify actors by type, use group to identify a set of actors by some property they share (e.g. 'admitting officers').",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.actor.reference",
        "min" : 1,
        "max" : "1"
      },
      "type" : [{
        "code" : "Reference",
        "targetProfile" : ["http://hl7.org/fhir/StructureDefinition/Device",
        "http://hl7.org/fhir/StructureDefinition/Group",
        "http://hl7.org/fhir/StructureDefinition/CareTeam",
        "http://hl7.org/fhir/StructureDefinition/Organization",
        "http://hl7.org/fhir/StructureDefinition/Patient",
        "http://hl7.org/fhir/StructureDefinition/Practitioner",
        "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
        "http://hl7.org/fhir/StructureDefinition/PractitionerRole"]
      }],
      "isModifier" : false,
      "isSummary" : false
    },
    {
      "id" : "Consent.provision.action",
      "path" : "Consent.provision.action",
      "short" : "Actions controlled by this rule",
      "definition" : "Actions controlled by this Rule.",
      "comment" : "Note that this is the direct action (not the grounds for the action covered in the purpose element). At present, the only action in the understood and tested scope of this resource is 'read'.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.action",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "meaningWhenMissing" : "all actions",
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentAction"
        }],
        "strength" : "example",
        "description" : "Detailed codes for the consent action.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-action"
      }
    },
    {
      "id" : "Consent.provision.securityLabel",
      "path" : "Consent.provision.securityLabel",
      "short" : "Security Labels that define affected resources",
      "definition" : "A security label, comprised of 0..* security label fields (Privacy tags), which define which resources are controlled by this exception.",
      "comment" : "If the consent specifies a security label of \"R\" then it applies to all resources that are labeled \"R\" or lower. E.g. for Confidentiality, it's a high water mark. For other kinds of security labels, subsumption logic applies. When the purpose of use tag is on the data, access request purpose of use shall not conflict.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.securityLabel",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Coding"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "SecurityLabels"
        },
        {
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
          "valueBoolean" : true
        }],
        "strength" : "extensible",
        "description" : "Security Labels from the Healthcare Privacy and Security Classification System.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/security-labels"
      }
    },
    {
      "id" : "Consent.provision.purpose",
      "path" : "Consent.provision.purpose",
      "short" : "Context of activities covered by this rule",
      "definition" : "The context of the activities a user is taking - why the user is accessing the data - that are controlled by this rule.",
      "comment" : "When the purpose of use tag is on the data, access request purpose of use shall not conflict.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.purpose",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Coding"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "PurposeOfUse"
        }],
        "strength" : "extensible",
        "description" : "What purposes of use are controlled by this exception. If more than one label is specified, operations must have all the specified labels.",
        "valueSet" : "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse"
      }
    },
    {
      "id" : "Consent.provision.class",
      "path" : "Consent.provision.class",
      "short" : "e.g. Resource Type, Profile, CDA, etc.",
      "definition" : "The class of information covered by this rule. The type can be a FHIR resource type, a profile on a type, or a CDA document, or some other type that indicates what sort of information the consent relates to.",
      "comment" : "Multiple types are or'ed together. The intention of the contentType element is that the codes refer to profiles or document types defined in a standard or an implementation guide somewhere.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.class",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Coding"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentContentClass"
        }],
        "strength" : "extensible",
        "description" : "The class (type) of information a consent rule covers.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-content-class"
      }
    },
    {
      "id" : "Consent.provision.code",
      "path" : "Consent.provision.code",
      "short" : "e.g. LOINC or SNOMED CT code, etc. in the content",
      "definition" : "If this code is found in an instance, then the rule applies.",
      "comment" : "Typical use of this is a Document code with class = CDA.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.code",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentContentCode"
        }],
        "strength" : "example",
        "description" : "If this code is found in an instance, then the exception applies.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-content-code"
      }
    },
    {
      "id" : "Consent.provision.dataPeriod",
      "path" : "Consent.provision.dataPeriod",
      "short" : "Timeframe for data controlled by this rule",
      "definition" : "Clinical or Operational Relevant period of time that bounds the data controlled by this rule.",
      "comment" : "This has a different sense to the Consent.period - that is when the consent agreement holds. This is the time period of the data that is controlled by the agreement.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.dataPeriod",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "Period"
      }],
      "isModifier" : false,
      "isSummary" : true
    },
    {
      "id" : "Consent.provision.data",
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name",
        "valueString" : "provisionData"
      }],
      "path" : "Consent.provision.data",
      "short" : "Data controlled by this rule",
      "definition" : "The resources controlled by this rule if specific resources are referenced.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.data",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "BackboneElement"
      }],
      "meaningWhenMissing" : "all data",
      "constraint" : [{
        "key" : "ele-1",
        "severity" : "error",
        "human" : "All FHIR elements must have a @value or children",
        "expression" : "hasValue() or (children().count() > id.count())",
        "xpath" : "@value|f:*|h:div",
        "source" : "Element"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "mapping" : [{
        "identity" : "rim",
        "map" : "Role"
      }]
    },
    {
      "id" : "Consent.provision.data.id",
      "path" : "Consent.provision.data.id",
      "representation" : ["xmlAttr"],
      "short" : "Unique id for inter-element referencing",
      "definition" : "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "Element.id",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "string"
      }],
      "isModifier" : false,
      "isSummary" : false,
      "mapping" : [{
        "identity" : "rim",
        "map" : "n/a"
      }]
    },
    {
      "id" : "Consent.provision.data.extension",
      "path" : "Consent.provision.data.extension",
      "short" : "Additional content defined by implementations",
      "definition" : "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
      "comment" : "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
      "alias" : ["extensions",
      "user content"],
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Element.extension",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Extension"
      }],
      "isModifier" : false,
      "isSummary" : false,
      "mapping" : [{
        "identity" : "rim",
        "map" : "n/a"
      }]
    },
    {
      "id" : "Consent.provision.data.modifierExtension",
      "path" : "Consent.provision.data.modifierExtension",
      "short" : "Extensions that cannot be ignored even if unrecognized",
      "definition" : "May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
      "comment" : "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
      "requirements" : "Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored.  This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](extensibility.html#modifierExtension).",
      "alias" : ["extensions",
      "user content",
      "modifiers"],
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "BackboneElement.modifierExtension",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "Extension"
      }],
      "isModifier" : true,
      "isModifierReason" : "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them",
      "isSummary" : true,
      "mapping" : [{
        "identity" : "rim",
        "map" : "N/A"
      }]
    },
    {
      "id" : "Consent.provision.data.meaning",
      "path" : "Consent.provision.data.meaning",
      "short" : "instance | related | dependents | authoredby",
      "definition" : "How the resource reference is interpreted when testing consent restrictions.",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.data.meaning",
        "min" : 1,
        "max" : "1"
      },
      "type" : [{
        "code" : "code"
      }],
      "isModifier" : false,
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentDataMeaning"
        }],
        "strength" : "required",
        "description" : "How a resource reference is interpreted when testing consent restrictions.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-data-meaning|4.0.0"
      }
    },
    {
      "id" : "Consent.provision.data.reference",
      "path" : "Consent.provision.data.reference",
      "short" : "The actual data reference",
      "definition" : "A reference to a specific resource that defines which resources are covered by this consent.",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "Consent.provision.data.reference",
        "min" : 1,
        "max" : "1"
      },
      "type" : [{
        "code" : "Reference",
        "targetProfile" : ["http://hl7.org/fhir/StructureDefinition/Resource"]
      }],
      "isModifier" : false,
      "isSummary" : true
    },
    {
      "id" : "Consent.provision.provision",
      "path" : "Consent.provision.provision",
      "short" : "Nested Exception Rules",
      "definition" : "Rules which provide exceptions to the base rule or subrules.",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "Consent.provision.provision",
        "min" : 0,
        "max" : "*"
      },
      "contentReference" : "#Consent.provision",
      "isModifier" : false,
      "isSummary" : false
    }]
  },
  "differential" : {
    "element" : [{
      "id" : "Consent",
      "path" : "Consent",
      "short" : "A healthcare consumer's  choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time",
      "definition" : "A record of a healthcare consumer’s  choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.",
      "comment" : "Broadly, there are 3 key areas of consent for patients: Consent around sharing information (aka Privacy Consent Directive - Authorization to Collect, Use, or Disclose information), consent for specific treatment, or kinds of treatment, and general advance care directives.",
      "min" : 0,
      "max" : "*",
      "constraint" : [{
        "key" : "ppc-4",
        "severity" : "error",
        "human" : "IF Scope=adr, there must be a patient",
        "expression" : "patient.exists() or scope.coding.where(system='something' and code='adr').exists().not()",
        "xpath" : "exists(f:patient) or not(exists(f:scope/f:coding[f:system/@value='something' and f:code/@value='adr'])))"
      },
      {
        "key" : "ppc-5",
        "severity" : "error",
        "human" : "IF Scope=treatment, there must be a patient",
        "expression" : "patient.exists() or scope.coding.where(system='something' and code='treatment').exists().not()",
        "xpath" : "exists(f:patient) or not(exists(f:scope/f:coding[f:system/@value='something' and f:code/@value='treatment'])))"
      },
      {
        "key" : "ppc-2",
        "severity" : "error",
        "human" : "IF Scope=privacy, there must be a patient",
        "expression" : "patient.exists() or scope.coding.where(system='something' and code='patient-privacy').exists().not()",
        "xpath" : "exists(f:patient) or not(exists(f:scope/f:coding[f:system/@value='something' and f:code/@value='patient-privacy'])))"
      },
      {
        "key" : "ppc-3",
        "severity" : "error",
        "human" : "IF Scope=research, there must be a patient",
        "expression" : "patient.exists() or scope.coding.where(system='something' and code='research').exists().not()",
        "xpath" : "exists(f:patient) or not(exists(f:scope/f:coding[f:system/@value='something' and f:code/@value='research'])))"
      },
      {
        "key" : "ppc-1",
        "severity" : "error",
        "human" : "Either a Policy or PolicyRule",
        "expression" : "policy.exists() or policyRule.exists()",
        "xpath" : "exists(f:policy) or exists(f:policyRule)"
      }],
      "mapping" : [{
        "identity" : "workflow",
        "map" : "Event"
      },
      {
        "identity" : "v2",
        "map" : "CON"
      },
      {
        "identity" : "rim",
        "map" : "FinancialConsent"
      }]
    },
    {
      "id" : "Consent.identifier",
      "path" : "Consent.identifier",
      "short" : "Identifier for this record (external references)",
      "definition" : "Unique identifier for this copy of the Consent Statement.",
      "comment" : "This identifier identifies this copy of the consent. Where this identifier is also used elsewhere as the identifier for a consent record (e.g. a CDA consent document) then the consent details are expected to be the same.",
      "min" : 0,
      "max" : "*",
      "type" : [{
        "code" : "Identifier"
      }],
      "example" : [{
        "label" : "General",
        "valueIdentifier" : {
          "system" : "urn:ietf:rfc:3986",
          "value" : "Local eCMS identifier"
        }
      }],
      "isSummary" : true,
      "mapping" : [{
        "identity" : "workflow",
        "map" : "Event.identifier"
      },
      {
        "identity" : "w5",
        "map" : "FiveWs.identifier"
      },
      {
        "identity" : "rim",
        "map" : ".id"
      }]
    },
    {
      "id" : "Consent.status",
      "path" : "Consent.status",
      "short" : "draft | proposed | active | rejected | inactive | entered-in-error",
      "definition" : "Indicates the current state of this consent.",
      "comment" : "This element is labeled as a modifier because the status contains the codes rejected and entered-in-error that mark the Consent as not currently valid.",
      "requirements" : "The Consent Directive that is pointed to might be in various lifecycle states, e.g., a revoked Consent Directive.",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "code"
      }],
      "isModifier" : true,
      "isModifierReason" : "This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid",
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentState"
        }],
        "strength" : "required",
        "description" : "Indicates the state of the consent.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-state-codes|4.0.0"
      },
      "mapping" : [{
        "identity" : "workflow",
        "map" : "Event.status"
      },
      {
        "identity" : "w5",
        "map" : "FiveWs.status"
      },
      {
        "identity" : "v2",
        "map" : "HL7 Table 0498 - Consent Status"
      },
      {
        "identity" : "rim",
        "map" : ".statusCode"
      }]
    },
    {
      "id" : "Consent.scope",
      "path" : "Consent.scope",
      "short" : "Which of the four areas this resource covers (extensible)",
      "definition" : "A selector of the type of consent being presented: ADR, Privacy, Treatment, Research.  This list is now extensible.",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "isModifier" : true,
      "isModifierReason" : "Allows changes to codes based on scope selection",
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentScope"
        }],
        "strength" : "extensible",
        "description" : "The four anticipated uses for the Consent Resource.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-scope"
      }
    },
    {
      "id" : "Consent.category",
      "path" : "Consent.category",
      "short" : "Classification of the consent statement - for indexing/retrieval",
      "definition" : "A classification of the type of consents found in the statement. This element supports indexing and retrieval of consent statements.",
      "min" : 1,
      "max" : "*",
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "isSummary" : true,
      "binding" : {
        "extension" : [{
          "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString" : "ConsentCategory"
        }],
        "strength" : "extensible",
        "description" : "A classification of the type of consents found in a consent statement.",
        "valueSet" : "http://hl7.org/fhir/ValueSet/consent-category"
      },
      "mapping" : [{
        "identity" : "workflow",
        "map" : "Event.code"
      },
      {
        "identity" : "w5",
        "map" : "FiveWs.class"
      },
      {
        "identity" : "v2",
        "map" : "HL7 Table 0497 - Consent Type"
      },
      {
        "identity" : "rim",
        "map" : "CNTRCT"
      }]
    },
    {
      "id" : "Consent.patient",
      "path" : "Consent.patient",
      "short" : "Who the consent applies to",
      "definition" : "The patient/healthcare consumer to whom this consent applies.",
      "comment" : "Commonly, the patient the consent pertains to is the author, but for young and old people, it may be some other person.",
      "min" : 0,
      "max" : "1",
      "type" : [{
        "code" : "Reference",
        "targetProfile" : ["http://hl7.org/fhir/StructureDefinition/Patient"]
      }],
      "isSummary" : true,
      "mapping" : [{
        "identity" : "workflow",
        "map" : "Event.subject"
      },
      {
        "identity" : "w5",
        "map" : "FiveWs.subject[x]"
      },
      {
        "identity" : "rim",
        "map" : "Role"
      },
      {
        "identity" : "w5",
        "map" : "FiveWs.subject"
      }]
    },
    {
      "id" : "Consent.dateTime",
      "path" :