Clinical Document Architecture
2.0.1 - active

Clinical Document Architecture, published by Health Level 7. This is not an authorized publication; it is the continuous build for version 2.0.1). This version is based on the current content of https://github.com/HL7/CDA-core-2.0/ and changes regularly. See the Directory of published versions

Logical Model: CDAR2.Procedure - TTL Profile

Active as of 2023-10-03

TTL representation of the Procedure logical model.

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:StructureDefinition ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "Procedure"] ; # 
  fhir:text [
fhir:status [ fhir:v "generated" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n      <p>A derivative of the RIM Procedure class, used for representing procedures.</p>\n      <p>Procedure.negationInd, when set to &quot;true&quot;, is a positive assertion that the Procedure as a whole is negated. Some properties such as Procedure.id, Procedure.moodCode, and the participations are not affected. These properties always have the same meaning: i.e., the author remains the author of the negative Procedure. A procedure statement with negationInd is still a statement about the specific fact described by the Procedure. For instance, a negated &quot;appendectomy performed&quot; means that the author positively denies that there was ever an appendectomy performed, and that he takes the same responsibility for such statement and the same requirement to have evidence for such statement than if he had not used negation.</p>\n    </div>"
  ] ; # 
  fhir:extension ( [
fhir:url [ fhir:v "http://hl7.org/fhir/tools/StructureDefinition/logical-target"^^xsd:anyURI ] ;
fhir:value [
a fhir:boolean ;
      ( fhir:extension [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/data-absent-reason"^^xsd:anyURI ] ;
fhir:value [ fhir:v "not-applicable" ]       ] )     ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/elementdefinition-namespace"^^xsd:anyURI ] ;
fhir:value [ fhir:v "urn:hl7-org:v3"^^xsd:anyURI ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/elementdefinition-xml-name"^^xsd:anyURI ] ;
fhir:value [ fhir:v "procedure"^^xsd:anyURI ]
  ] ) ; # 
  fhir:url [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Procedure"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "2.0.1"] ; # 
  fhir:name [ fhir:v "CDAR2.Procedure"] ; # 
  fhir:title [ fhir:v "Procedure (CDA Class)"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:experimental [ fhir:v "false"^^xsd:boolean] ; # 
  fhir:date [ fhir:v "2023-10-03T20:44:04+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "Health Level 7"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "HL7 International - Structured Documents" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://www.hl7.org/Special/committees/structdoc" ]     ] [
fhir:system [ fhir:v "email" ] ;
fhir:value [ fhir:v "structdog@lists.HL7.org" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "A derivative of the RIM Procedure class, used for representing procedures.\nProcedure.negationInd, when set to \"true\", is a positive assertion that the Procedure as a whole is negated. Some properties such as Procedure.id, Procedure.moodCode, and the participations are not affected. These properties always have the same meaning: i.e., the author remains the author of the negative Procedure. A procedure statement with negationInd is still a statement about the specific fact described by the Procedure. For instance, a negated \"appendectomy performed\" means that the author positively denies that there was ever an appendectomy performed, and that he takes the same responsibility for such statement and the same requirement to have evidence for such statement than if he had not used negation."] ; # 
  fhir:fhirVersion [ fhir:v "5.0.0"] ; # 
  fhir:mapping ( [
fhir:identity [ fhir:v "rim" ] ;
fhir:uri [ fhir:v "http://hl7.org/v3"^^xsd:anyURI ] ;
fhir:name [ fhir:v "RIM Mapping" ]
  ] ) ; # 
  fhir:kind [ fhir:v "logical"] ; # 
  fhir:abstract [ fhir:v "false"^^xsd:boolean] ; # 
  fhir:type [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Procedure"^^xsd:anyURI] ; # 
  fhir:baseDefinition [
fhir:v "http://hl7.org/fhir/StructureDefinition/Base"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Base>
  ] ; # 
  fhir:derivation [ fhir:v "specialization"] ; # 
  fhir:snapshot [
    ( fhir:element [
fhir:id [ fhir:v "Procedure" ] ;
fhir:path [ fhir:v "Procedure" ] ;
fhir:short [ fhir:v "Base for all types and resources" ] ;
fhir:definition [ fhir:v "Base definition for all types defined in FHIR type system." ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Base" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:constraint [
fhir:key [ fhir:v "ele-1" ] ;
fhir:severity [ fhir:v "error" ] ;
fhir:human [ fhir:v "All FHIR elements must have a @value or children" ] ;
fhir:expression [ fhir:v "hasValue() or (children().count() > id.count())" ] ;
fhir:source [
fhir:v "http://hl7.org/fhir/StructureDefinition/Element"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/Element>         ]       ] ) ;
fhir:isModifier [ fhir:v "false"^^xsd:boolean ] ;
      ( fhir:mapping [
fhir:identity [ fhir:v "rim" ] ;
fhir:map [ fhir:v "n/a" ]       ] )     ] [
fhir:id [ fhir:v "Procedure.classCode" ] ;
fhir:path [ fhir:v "Procedure.classCode" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.classCode" ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "code"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/cs-simple>         ] )       ] ) ;
fhir:defaultValue [ fhir:v "PROC" ] ;
fhir:fixed [ fhir:v "PROC" ] ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActClassProcedure"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActClassProcedure>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.moodCode" ] ;
fhir:path [ fhir:v "Procedure.moodCode" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.moodCode" ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "code"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/cs-simple>         ] )       ] )     ] [
fhir:id [ fhir:v "Procedure.realmCode" ] ;
fhir:path [ fhir:v "Procedure.realmCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.realmCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.typeId" ] ;
fhir:path [ fhir:v "Procedure.typeId" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.typeId" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.templateId" ] ;
fhir:path [ fhir:v "Procedure.templateId" ] ;
fhir:definition [ fhir:v "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" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.templateId" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.id" ] ;
fhir:path [ fhir:v "Procedure.id" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.id" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.code" ] ;
fhir:path [ fhir:v "Procedure.code" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.code" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.negationInd" ] ;
fhir:path [ fhir:v "Procedure.negationInd" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.negationInd" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "boolean"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/bl-simple>         ] )       ] )     ] [
fhir:id [ fhir:v "Procedure.text" ] ;
fhir:path [ fhir:v "Procedure.text" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.text" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ED"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.statusCode" ] ;
fhir:path [ fhir:v "Procedure.statusCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.statusCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActStatus"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActStatus>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.effectiveTime" ] ;
fhir:path [ fhir:v "Procedure.effectiveTime" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.effectiveTime" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.priorityCode" ] ;
fhir:path [ fhir:v "Procedure.priorityCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.priorityCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CE"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "extensible" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActPriority"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActPriority>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.languageCode" ] ;
fhir:path [ fhir:v "Procedure.languageCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.languageCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-HumanLanguage"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-HumanLanguage>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.methodCode" ] ;
fhir:path [ fhir:v "Procedure.methodCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ProcedureMethod" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.methodCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CE"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.approachSiteCode" ] ;
fhir:path [ fhir:v "Procedure.approachSiteCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActSite" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.approachSiteCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.targetSiteCode" ] ;
fhir:path [ fhir:v "Procedure.targetSiteCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActSite" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.targetSiteCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.subject" ] ;
fhir:path [ fhir:v "Procedure.subject" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.subject" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Subject"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.specimen" ] ;
fhir:path [ fhir:v "Procedure.specimen" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.specimen" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Specimen"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.performer" ] ;
fhir:path [ fhir:v "Procedure.performer" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.performer" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Performer2"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.author" ] ;
fhir:path [ fhir:v "Procedure.author" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.author" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Author"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.informant" ] ;
fhir:path [ fhir:v "Procedure.informant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.informant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Informant"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.participant" ] ;
fhir:path [ fhir:v "Procedure.participant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.participant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Participant2"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.entryRelationship" ] ;
fhir:path [ fhir:v "Procedure.entryRelationship" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.entryRelationship" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.reference" ] ;
fhir:path [ fhir:v "Procedure.reference" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.reference" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Reference"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.precondition" ] ;
fhir:path [ fhir:v "Procedure.precondition" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Procedure.precondition" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Precondition"^^xsd:anyURI ]       ] )     ] )
  ] ; # 
  fhir:differential [
    ( fhir:element [
fhir:id [ fhir:v "Procedure" ] ;
fhir:path [ fhir:v "Procedure" ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]     ] [
fhir:id [ fhir:v "Procedure.classCode" ] ;
fhir:path [ fhir:v "Procedure.classCode" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "code"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/cs-simple>         ] )       ] ) ;
fhir:defaultValue [ fhir:v "PROC" ] ;
fhir:fixed [ fhir:v "PROC" ] ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActClassProcedure"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActClassProcedure>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.moodCode" ] ;
fhir:path [ fhir:v "Procedure.moodCode" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "code"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/cs-simple>         ] )       ] )     ] [
fhir:id [ fhir:v "Procedure.realmCode" ] ;
fhir:path [ fhir:v "Procedure.realmCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.typeId" ] ;
fhir:path [ fhir:v "Procedure.typeId" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.templateId" ] ;
fhir:path [ fhir:v "Procedure.templateId" ] ;
fhir:definition [ fhir:v "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" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.id" ] ;
fhir:path [ fhir:v "Procedure.id" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/II"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.code" ] ;
fhir:path [ fhir:v "Procedure.code" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.negationInd" ] ;
fhir:path [ fhir:v "Procedure.negationInd" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "boolean"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/bl-simple>         ] )       ] )     ] [
fhir:id [ fhir:v "Procedure.text" ] ;
fhir:path [ fhir:v "Procedure.text" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ED"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.statusCode" ] ;
fhir:path [ fhir:v "Procedure.statusCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActStatus"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActStatus>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.effectiveTime" ] ;
fhir:path [ fhir:v "Procedure.effectiveTime" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.priorityCode" ] ;
fhir:path [ fhir:v "Procedure.priorityCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CE"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "extensible" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-ActPriority"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-ActPriority>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.languageCode" ] ;
fhir:path [ fhir:v "Procedure.languageCode" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CS"^^xsd:anyURI ]       ] ) ;
fhir:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://terminology.hl7.org/ValueSet/v3-HumanLanguage"^^xsd:anyURI ;
fhir:link <http://terminology.hl7.org/ValueSet/v3-HumanLanguage>         ]       ]     ] [
fhir:id [ fhir:v "Procedure.methodCode" ] ;
fhir:path [ fhir:v "Procedure.methodCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ProcedureMethod" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CE"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.approachSiteCode" ] ;
fhir:path [ fhir:v "Procedure.approachSiteCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActSite" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.targetSiteCode" ] ;
fhir:path [ fhir:v "Procedure.targetSiteCode" ] ;
fhir:definition [ fhir:v "Drawn from concept domain ActSite" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/CD"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.subject" ] ;
fhir:path [ fhir:v "Procedure.subject" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Subject"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.specimen" ] ;
fhir:path [ fhir:v "Procedure.specimen" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Specimen"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.performer" ] ;
fhir:path [ fhir:v "Procedure.performer" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Performer2"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.author" ] ;
fhir:path [ fhir:v "Procedure.author" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Author"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.informant" ] ;
fhir:path [ fhir:v "Procedure.informant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Informant"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.participant" ] ;
fhir:path [ fhir:v "Procedure.participant" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Participant2"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.entryRelationship" ] ;
fhir:path [ fhir:v "Procedure.entryRelationship" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.reference" ] ;
fhir:path [ fhir:v "Procedure.reference" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Reference"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "Procedure.precondition" ] ;
fhir:path [ fhir:v "Procedure.precondition" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/Precondition"^^xsd:anyURI ]       ] )     ] )
  ] . #