FHIR © HL7.org  |  Server Home  |  XIG Home  |  Server Source  |  FHIR  

FHIR IG Statistics: StructureDefinition/ProvenanceAssemblerParticipation

Packagehl7.cda.us.ccda
TypeStructureDefinition
IdProvenanceAssemblerParticipation
FHIR VersionR5
Sourcehttp://hl7.org/cda/us/ccda/https://build.fhir.org/ig/HL7/CDA-ccda/StructureDefinition-ProvenanceAssemblerParticipation.html
URLhttp://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation
Version4.0.0
Statusdraft
Date2025-06-26T21:09:45+00:00
NameProvenanceAssemblerParticipation
TitleProvenance - Assembler Participation
Realmus
Authorityhl7
DescriptionThis template represents the organization that supported generation of a CDA document. The Assembler Organization may be different than the Author Organization, and may be different from the Organization that developed the software used to generate the document. This Participation is only for use in the CDA Header because it applies to the entire content in the document. This template is consistent with the prior Assembler Document Participant (2.16.840.1.113883.3.5019.1.1) in the 2016 HL7 Data Provenance guide, however, makes no claim about representing the software organization. All constraints for conformance are defined in this template. Note: The CDA Participant does not support a software device or the organization that created the software. The Assembler role can only be expressed at the level of organization. This is a known issue with the current CDA R2 model. Note: The Provenance template title includes a version 2 to support moving from the 'Basic Provenance' guide to the this Companion Guide, so the templateId has not changed.
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Participant1
Kindlogical

Resources that use this resource

No resources found


Resources that this resource uses

StructureDefinition
ADAD: PostalAddress (V3 Data Type)
Participant1Participant1 (CDA Class)
USRealmAddressUS Realm Address

Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: StructureDefinition ProvenanceAssemblerParticipation

version: 4; Last updated: 2023-07-11 23:42:05+0000

NameFlagsCard.TypeDescription & Constraintsdoco
.. Participant1 1..1Participant1XML Namespace: urn:hl7-org:v3
Elements defined in Ancestors:@nullFlavor, realmCode, typeId, templateId, @typeCode, @contextControlCode, functionCode, time, associatedEntity
Base for all types and resources
Instance of this type are validated by templateId
Logical Container: ClinicalDocument (CDA Class)
... Slices for templateId 1..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:provenance-assembler 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.5.7
..... @extension 1..1stRequired Pattern: 2020-05-19
... @typeCode 1..1csFixed Value: DEV
... functionCode 1..1CE
.... @code 1..1csRequired Pattern: assembler
.... @codeSystem 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.4.642.4.1131
... time 1..1IVL_TS
... associatedEntity 1..1AssociatedEntityThe template does not require any elements from the associatedEntity since the information is recorded in the scopingOrganization.
.... @classCode 1..1csFixed Value: OWN
.... scopingOrganization C1..1OrganizationConstraints: should-telecom, should-addr
..... id 1..*II
..... name 1..*ON
..... telecom 0..*TEL
..... addr 0..*USRealmAddress

doco Documentation for this format

Source

{
  "resourceType": "StructureDefinition",
  "id": "ProvenanceAssemblerParticipation",
  "meta": {
    "versionId": "4",
    "lastUpdated": "2023-07-11T23:42:05.979Z"
  },
  "text": {
    "status": "extensions",
    "div": "<!-- snip (see above) -->"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/logical-target",
      "_valueBoolean": {
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/data-absent-reason",
            "valueCode": "not-applicable"
          }
        ]
      }
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
      "valueUri": "urn:hl7-org:v3"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
      "valueString": "participant"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/logical-container",
      "valueUri": "http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument"
    },
    {
      "url": "http://hl7.org/fhir/tools/StructureDefinition/type-profile-style",
      "valueCode": "cda"
    }
  ],
  "url": "http://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation",
  "identifier": [
    {
      "system": "urn:ietf:rfc:3986",
      "value": "urn:hl7ii:2.16.840.1.113883.10.20.22.5.7:2020-05-19"
    }
  ],
  "version": "4.0.0",
  "name": "ProvenanceAssemblerParticipation",
  "title": "Provenance - Assembler Participation",
  "status": "draft",
  "date": "2025-06-26T21:09:45+00:00",
  "publisher": "Health Level Seven",
  "contact": [
    {
      "name": "HL7 International - Structured Documents",
      "telecom": [
        {
          "system": "url",
          "value": "http://www.hl7.org/Special/committees/structure"
        }
      ]
    }
  ],
  "description": "This template represents the organization that supported generation of a CDA document. The Assembler Organization may be different than the Author Organization, and may be different from the Organization that developed the software used to generate the document. \n\nThis Participation is only for use in the CDA Header because it applies to the entire content in the document.\n\nThis template is consistent with the prior Assembler Document Participant  (2.16.840.1.113883.3.5019.1.1) in the 2016 HL7 Data Provenance guide, however, makes no claim about representing the software organization. All constraints for conformance are defined in this template.\n\nNote: The CDA Participant does not support a software device or the organization that created the software. The Assembler role can only be expressed at the level of organization. This is a known issue with the current CDA R2 model.\nNote: The Provenance template title includes a version 2 to support moving from the 'Basic Provenance' guide to the this Companion Guide, so the templateId has not changed.",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "urn:iso:std:iso:3166",
          "code": "US"
        }
      ]
    }
  ],
  "fhirVersion": "5.0.0",
  "mapping": [
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    }
  ],
  "kind": "logical",
  "abstract": false,
  "type": "http://hl7.org/cda/stds/core/StructureDefinition/Participant1",
  "baseDefinition": "http://hl7.org/cda/stds/core/StructureDefinition/Participant1",
  "derivation": "constraint",
  "snapshot": {
    "extension": [
      {
        "url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version",
        "valueString": "2.0.1-sd"
      }
    ],
    "element": [
      {
        "id": "Participant1",
        "path": "Participant1",
        "short": "Base for all types and resources",
        "definition": "Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Base",
          "min": 0,
          "max": "*"
        },
        "isModifier": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "Participant1.nullFlavor",
        "path": "Participant1.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.realmCode",
        "path": "Participant1.realmCode",
        "definition": "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.realmCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ]
      },
      {
        "id": "Participant1.typeId",
        "path": "Participant1.typeId",
        "definition": "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.typeId",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "constraint": [
          {
            "key": "II-1",
            "severity": "error",
            "human": "An II instance must have either a root or an nullFlavor.",
            "expression": "root.exists() or nullFlavor.exists()",
            "source": "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id": "Participant1.typeId.nullFlavor",
        "path": "Participant1.typeId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.typeId.assigningAuthorityName",
        "path": "Participant1.typeId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.typeId.displayable",
        "path": "Participant1.typeId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.typeId.root",
        "path": "Participant1.typeId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "Identifies the type as an HL7 Registered model",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "fixedString": "2.16.840.1.113883.1.3"
      },
      {
        "id": "Participant1.typeId.extension",
        "path": "Participant1.typeId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.templateId",
        "path": "Participant1.templateId",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "root"
            },
            {
              "type": "value",
              "path": "extension"
            }
          ],
          "rules": "open"
        },
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 1,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.templateId:provenance-assembler",
        "path": "Participant1.templateId",
        "sliceName": "provenance-assembler",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 1,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.templateId:provenance-assembler.nullFlavor",
        "path": "Participant1.templateId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.templateId:provenance-assembler.assigningAuthorityName",
        "path": "Participant1.templateId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.templateId:provenance-assembler.displayable",
        "path": "Participant1.templateId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.templateId:provenance-assembler.root",
        "path": "Participant1.templateId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "2.16.840.1.113883.10.20.22.5.7"
      },
      {
        "id": "Participant1.templateId:provenance-assembler.extension",
        "path": "Participant1.templateId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ],
        "patternString": "2020-05-19"
      },
      {
        "id": "Participant1.typeCode",
        "path": "Participant1.typeCode",
        "representation": [
          "xmlAttr"
        ],
        "comment": "SHALL contain exactly one [1..1] @typeCode=\"DEV\" Device (CONF:4537-55).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Participant1.typeCode",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "DEV",
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDAParticipationType"
        }
      },
      {
        "id": "Participant1.contextControlCode",
        "path": "Participant1.contextControlCode",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Participant1.contextControlCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "OP",
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDAContextControl"
        }
      },
      {
        "id": "Participant1.functionCode",
        "path": "Participant1.functionCode",
        "comment": "SHALL contain exactly one [1..1] functionCode (CONF:4537-38).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Participant1.functionCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ]
      },
      {
        "id": "Participant1.functionCode.nullFlavor",
        "path": "Participant1.functionCode.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.functionCode.code",
        "path": "Participant1.functionCode.code",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code",
        "definition": "The plain code symbol defined by the code system. For example, \"784.0\" is the code symbol of the ICD-9 code \"784.0\" for headache.",
        "comment": "This functionCode SHALL contain exactly one [1..1] @code=\"assembler\" Assembler (CONF:4537-32972).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "CD.code",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "patternCode": "assembler"
      },
      {
        "id": "Participant1.functionCode.codeSystem",
        "path": "Participant1.functionCode.codeSystem",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System",
        "definition": "Specifies the code system that defines the code.",
        "comment": "This functionCode SHALL contain exactly one [1..1] @codeSystem (CodeSystem: ProvenanceParticipantType urn:oid:2.16.840.1.113883.4.642.4.1131) (CONF:4537-41).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "CD.codeSystem",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "patternString": "2.16.840.1.113883.4.642.4.1131"
      },
      {
        "id": "Participant1.functionCode.codeSystemName",
        "path": "Participant1.functionCode.codeSystemName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Name",
        "definition": "The common name of the coding system.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.codeSystemName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.functionCode.codeSystemVersion",
        "path": "Participant1.functionCode.codeSystemVersion",
        "representation": [
          "xmlAttr"
        ],
        "label": "Code System Version",
        "definition": "If applicable, a version descriptor defined specifically for the given code system.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.codeSystemVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.functionCode.displayName",
        "path": "Participant1.functionCode.displayName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Display Name",
        "definition": "A name or title for the code, under which the sending system shows the code value to its users.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.displayName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.functionCode.sdtcValueSet",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSet"
          }
        ],
        "path": "Participant1.functionCode.sdtcValueSet",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSet extension adds an attribute for elements with a CD dataType which indicates the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.valueSet",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid"
            ]
          }
        ]
      },
      {
        "id": "Participant1.functionCode.sdtcValueSetVersion",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "valueSetVersion"
          }
        ],
        "path": "Participant1.functionCode.sdtcValueSetVersion",
        "representation": [
          "xmlAttr"
        ],
        "definition": "The valueSetVersion extension adds an attribute for elements with a CD dataType which indicates the version of the particular value set constraining the coded concept.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.sdtcValueSetVersion",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.functionCode.originalText",
        "path": "Participant1.functionCode.originalText",
        "label": "Original Text",
        "definition": "The text or phrase used as the basis for the coding.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "CD.originalText",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id": "Participant1.functionCode.qualifier",
        "path": "Participant1.functionCode.qualifier",
        "label": "Qualifier",
        "definition": "Specifies additional codes that increase the specificity of the the primary code.",
        "min": 0,
        "max": "0",
        "base": {
          "path": "CD.qualifier",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CR"
          }
        ]
      },
      {
        "id": "Participant1.functionCode.translation",
        "path": "Participant1.functionCode.translation",
        "representation": [
          "typeAttr"
        ],
        "label": "Translation",
        "definition": "A set of other concept descriptors that translate this concept descriptor into other code systems.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "CD.translation",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ]
      },
      {
        "id": "Participant1.time",
        "path": "Participant1.time",
        "comment": "SHALL contain exactly one [1..1] time (CONF:4537-42).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Participant1.time",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity",
        "path": "Participant1.associatedEntity",
        "short": "The template does not require any elements from the associatedEntity since the information is recorded in the scopingOrganization.",
        "comment": "SHALL contain exactly one [1..1] associatedEntity (CONF:4537-39).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Participant1.associatedEntity",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/AssociatedEntity"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.nullFlavor",
        "path": "Participant1.associatedEntity.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.associatedEntity.realmCode",
        "path": "Participant1.associatedEntity.realmCode",
        "definition": "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.realmCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.typeId",
        "path": "Participant1.associatedEntity.typeId",
        "definition": "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.typeId",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "constraint": [
          {
            "key": "II-1",
            "severity": "error",
            "human": "An II instance must have either a root or an nullFlavor.",
            "expression": "root.exists() or nullFlavor.exists()",
            "source": "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.typeId.nullFlavor",
        "path": "Participant1.associatedEntity.typeId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.associatedEntity.typeId.assigningAuthorityName",
        "path": "Participant1.associatedEntity.typeId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.typeId.displayable",
        "path": "Participant1.associatedEntity.typeId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.typeId.root",
        "path": "Participant1.associatedEntity.typeId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "Identifies the type as an HL7 Registered model",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "fixedString": "2.16.840.1.113883.1.3"
      },
      {
        "id": "Participant1.associatedEntity.typeId.extension",
        "path": "Participant1.associatedEntity.typeId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.templateId",
        "path": "Participant1.associatedEntity.templateId",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.classCode",
        "path": "Participant1.associatedEntity.classCode",
        "representation": [
          "xmlAttr"
        ],
        "comment": "This associatedEntity SHALL contain exactly one [1..1] @classCode=\"OWN\" Owned Entity (CONF:4537-32973).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "AssociatedEntity.classCode",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "OWN",
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDARoleClassAssociative"
        }
      },
      {
        "id": "Participant1.associatedEntity.id",
        "path": "Participant1.associatedEntity.id",
        "min": 0,
        "max": "*",
        "base": {
          "path": "AssociatedEntity.id",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.sdtcIdentifiedBy",
        "extension": [
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri": "urn:hl7-org:sdtc"
          },
          {
            "url": "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString": "identifiedBy"
          }
        ],
        "path": "Participant1.associatedEntity.sdtcIdentifiedBy",
        "min": 0,
        "max": "*",
        "base": {
          "path": "AssociatedEntity.sdtcIdentifiedBy",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/IdentifiedBy"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.code",
        "path": "Participant1.associatedEntity.code",
        "min": 0,
        "max": "1",
        "base": {
          "path": "AssociatedEntity.code",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding": {
          "strength": "example",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDARoleCode"
        }
      },
      {
        "id": "Participant1.associatedEntity.addr",
        "path": "Participant1.associatedEntity.addr",
        "min": 0,
        "max": "*",
        "base": {
          "path": "AssociatedEntity.addr",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/AD"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.telecom",
        "path": "Participant1.associatedEntity.telecom",
        "min": 0,
        "max": "*",
        "base": {
          "path": "AssociatedEntity.telecom",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/TEL"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.associatedPerson",
        "path": "Participant1.associatedEntity.associatedPerson",
        "min": 0,
        "max": "1",
        "base": {
          "path": "AssociatedEntity.associatedPerson",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Person"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization",
        "path": "Participant1.associatedEntity.scopingOrganization",
        "comment": "This associatedEntity SHALL contain exactly one [1..1] scopingOrganization (CONF:4537-43).",
        "min": 1,
        "max": "1",
        "base": {
          "path": "AssociatedEntity.scopingOrganization",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/Organization"
          }
        ],
        "constraint": [
          {
            "key": "should-telecom",
            "severity": "warning",
            "human": "SHOULD contain telecom",
            "expression": "telecom.exists()",
            "source": "http://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation"
          },
          {
            "key": "should-addr",
            "severity": "warning",
            "human": "SHOULD contain addr",
            "expression": "addr.exists()",
            "source": "http://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.nullFlavor",
        "path": "Participant1.associatedEntity.scopingOrganization.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.realmCode",
        "path": "Participant1.associatedEntity.scopingOrganization.realmCode",
        "definition": "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.realmCode",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId",
        "definition": "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "InfrastructureRoot.typeId",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ],
        "constraint": [
          {
            "key": "II-1",
            "severity": "error",
            "human": "An II instance must have either a root or an nullFlavor.",
            "expression": "root.exists() or nullFlavor.exists()",
            "source": "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId.nullFlavor",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId.nullFlavor",
        "representation": [
          "xmlAttr"
        ],
        "label": "Exceptional Value Detail",
        "definition": "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "ANY.nullFlavor",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
        }
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId.assigningAuthorityName",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId.assigningAuthorityName",
        "representation": [
          "xmlAttr"
        ],
        "label": "Assigning Authority Name",
        "definition": "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.assigningAuthorityName",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId.displayable",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId.displayable",
        "representation": [
          "xmlAttr"
        ],
        "label": "Displayable",
        "definition": "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "II.displayable",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "boolean",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId.root",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId.root",
        "representation": [
          "xmlAttr"
        ],
        "label": "Root",
        "definition": "Identifies the type as an HL7 Registered model",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.root",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/oid",
              "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
              "http://hl7.org/cda/stds/core/StructureDefinition/ruid"
            ]
          }
        ],
        "fixedString": "2.16.840.1.113883.1.3"
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.typeId.extension",
        "path": "Participant1.associatedEntity.scopingOrganization.typeId.extension",
        "representation": [
          "xmlAttr"
        ],
        "label": "Extension",
        "definition": "A character string as a unique identifier within the scope of the identifier root.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "II.extension",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.templateId",
        "path": "Participant1.associatedEntity.scopingOrganization.templateId",
        "definition": "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
        "min": 0,
        "max": "*",
        "base": {
          "path": "InfrastructureRoot.templateId",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.classCode",
        "path": "Participant1.associatedEntity.scopingOrganization.classCode",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Organization.classCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "ORG",
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-EntityClassOrganization"
        }
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.determinerCode",
        "path": "Participant1.associatedEntity.scopingOrganization.determinerCode",
        "representation": [
          "xmlAttr"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Organization.determinerCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code",
            "profile": [
              "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode": "INSTANCE",
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-EntityDeterminer"
        }
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.id",
        "path": "Participant1.associatedEntity.scopingOrganization.id",
        "comment": "This scopingOrganization SHALL contain at least one [1..*] id (CONF:4537-50).",
        "min": 1,
        "max": "*",
        "base": {
          "path": "Organization.id",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.name",
        "path": "Participant1.associatedEntity.scopingOrganization.name",
        "comment": "This scopingOrganization SHALL contain at least one [1..*] name (CONF:4537-51).",
        "min": 1,
        "max": "*",
        "base": {
          "path": "Organization.name",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/ON"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.telecom",
        "path": "Participant1.associatedEntity.scopingOrganization.telecom",
        "comment": "This scopingOrganization SHOULD contain zero or more [0..*] telecom (CONF:4537-52).",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Organization.telecom",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/TEL"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.addr",
        "path": "Participant1.associatedEntity.scopingOrganization.addr",
        "comment": "This scopingOrganization SHOULD contain zero or more [0..*] US Realm Address (AD.US.FIELDED) (identifier: urn:oid:2.16.840.1.113883.10.20.22.5.2) (CONF:4537-47).",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Organization.addr",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/AD",
            "profile": [
              "http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress"
            ]
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.standardIndustryClassCode",
        "path": "Participant1.associatedEntity.scopingOrganization.standardIndustryClassCode",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Organization.standardIndustryClassCode",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding": {
          "strength": "example",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-OrganizationIndustryClassNAICS"
        }
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.asOrganizationPartOf",
        "path": "Participant1.associatedEntity.scopingOrganization.asOrganizationPartOf",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Organization.asOrganizationPartOf",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/OrganizationPartOf"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "id": "Participant1",
        "path": "Participant1"
      },
      {
        "id": "Participant1.templateId",
        "path": "Participant1.templateId",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "root"
            },
            {
              "type": "value",
              "path": "extension"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Participant1.templateId:provenance-assembler",
        "path": "Participant1.templateId",
        "sliceName": "provenance-assembler",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Participant1.templateId:provenance-assembler.root",
        "path": "Participant1.templateId.root",
        "min": 1,
        "patternString": "2.16.840.1.113883.10.20.22.5.7"
      },
      {
        "id": "Participant1.templateId:provenance-assembler.extension",
        "path": "Participant1.templateId.extension",
        "min": 1,
        "patternString": "2020-05-19"
      },
      {
        "id": "Participant1.typeCode",
        "path": "Participant1.typeCode",
        "comment": "SHALL contain exactly one [1..1] @typeCode=\"DEV\" Device (CONF:4537-55).",
        "fixedCode": "DEV"
      },
      {
        "id": "Participant1.functionCode",
        "path": "Participant1.functionCode",
        "comment": "SHALL contain exactly one [1..1] functionCode (CONF:4537-38).",
        "min": 1
      },
      {
        "id": "Participant1.functionCode.code",
        "path": "Participant1.functionCode.code",
        "comment": "This functionCode SHALL contain exactly one [1..1] @code=\"assembler\" Assembler (CONF:4537-32972).",
        "min": 1,
        "patternCode": "assembler"
      },
      {
        "id": "Participant1.functionCode.codeSystem",
        "path": "Participant1.functionCode.codeSystem",
        "comment": "This functionCode SHALL contain exactly one [1..1] @codeSystem (CodeSystem: ProvenanceParticipantType urn:oid:2.16.840.1.113883.4.642.4.1131) (CONF:4537-41).",
        "min": 1,
        "patternString": "2.16.840.1.113883.4.642.4.1131"
      },
      {
        "id": "Participant1.time",
        "path": "Participant1.time",
        "comment": "SHALL contain exactly one [1..1] time (CONF:4537-42).",
        "min": 1
      },
      {
        "id": "Participant1.associatedEntity",
        "path": "Participant1.associatedEntity",
        "short": "The template does not require any elements from the associatedEntity since the information is recorded in the scopingOrganization.",
        "comment": "SHALL contain exactly one [1..1] associatedEntity (CONF:4537-39)."
      },
      {
        "id": "Participant1.associatedEntity.classCode",
        "path": "Participant1.associatedEntity.classCode",
        "comment": "This associatedEntity SHALL contain exactly one [1..1] @classCode=\"OWN\" Owned Entity (CONF:4537-32973).",
        "fixedCode": "OWN"
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization",
        "path": "Participant1.associatedEntity.scopingOrganization",
        "comment": "This associatedEntity SHALL contain exactly one [1..1] scopingOrganization (CONF:4537-43).",
        "min": 1,
        "constraint": [
          {
            "key": "should-telecom",
            "severity": "warning",
            "human": "SHOULD contain telecom",
            "expression": "telecom.exists()",
            "source": "http://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation"
          },
          {
            "key": "should-addr",
            "severity": "warning",
            "human": "SHOULD contain addr",
            "expression": "addr.exists()",
            "source": "http://hl7.org/cda/us/ccda/StructureDefinition/ProvenanceAssemblerParticipation"
          }
        ]
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.id",
        "path": "Participant1.associatedEntity.scopingOrganization.id",
        "comment": "This scopingOrganization SHALL contain at least one [1..*] id (CONF:4537-50).",
        "min": 1
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.name",
        "path": "Participant1.associatedEntity.scopingOrganization.name",
        "comment": "This scopingOrganization SHALL contain at least one [1..*] name (CONF:4537-51).",
        "min": 1
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.telecom",
        "path": "Participant1.associatedEntity.scopingOrganization.telecom",
        "comment": "This scopingOrganization SHOULD contain zero or more [0..*] telecom (CONF:4537-52)."
      },
      {
        "id": "Participant1.associatedEntity.scopingOrganization.addr",
        "path": "Participant1.associatedEntity.scopingOrganization.addr",
        "comment": "This scopingOrganization SHOULD contain zero or more [0..*] US Realm Address (AD.US.FIELDED) (identifier: urn:oid:2.16.840.1.113883.10.20.22.5.2) (CONF:4537-47).",
        "type": [
          {
            "code": "http://hl7.org/cda/stds/core/StructureDefinition/AD",
            "profile": [
              "http://hl7.org/cda/us/ccda/StructureDefinition/USRealmAddress"
            ]
          }
        ]
      }
    ]
  }
}