Clinical Document Architecture with Australian Schema, published by Australian Digital Health Agency. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/AuDigitalHealth/cda-au-schema/ and changes regularly. See the Directory of published versions

Logical Model: PN - TTL Profile

Active as of 2024-12-18

TTL representation of the PN 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 "PN"] ; # 
  fhir:text [
fhir:status [ fhir:v "generated" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n      <p>A name for a person. A sequence of name parts, such as given name or family name, prefix, suffix, etc. Examples for person name values are &quot;Jim Bob Walton, Jr.&quot;, &quot;Adam Everyman&quot;, etc. A person name may be as simple as a character string or may consist of several person name parts, such as, &quot;Jim&quot;, &quot;Bob&quot;, &quot;Walton&quot;, and &quot;Jr.&quot;. PN differs from EN because the qualifier type cannot include LS (Legal Status).</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/tools/StructureDefinition/xml-namespace"^^xsd:anyURI ] ;
fhir:value [ fhir:v "urn:hl7-org:v3"^^xsd:anyURI ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/tools/StructureDefinition/xml-name"^^xsd:anyURI ] ;
fhir:value [ fhir:v "name" ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/tools/StructureDefinition/logical-container"^^xsd:anyURI ] ;
fhir:value [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument"^^xsd:anyURI ]
  ] ) ; # 
  fhir:url [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/PN"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "1.0.0"] ; # 
  fhir:name [ fhir:v "PN"] ; # 
  fhir:title [ fhir:v "PN: PersonName (V3 Data Type)"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:experimental [ fhir:v "false"^^xsd:boolean] ; # 
  fhir:date [ fhir:v "2024-12-18T05:40:48+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "HL7"] ; # 
  fhir:description [ fhir:v "A name for a person. A sequence of name parts, such as given name or family name, prefix, suffix, etc. Examples for person name values are \"Jim Bob Walton, Jr.\", \"Adam Everyman\", etc. A person name may be as simple as a character string or may consist of several person name parts, such as, \"Jim\", \"Bob\", \"Walton\", and \"Jr.\". PN differs from EN because the qualifier type cannot include LS (Legal Status)."] ; # 
  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/PN"^^xsd:anyURI] ; # 
  fhir:baseDefinition [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/EN"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/EN>
  ] ; # 
  fhir:derivation [ fhir:v "specialization"] ; # 
  fhir:snapshot [
    ( fhir:element [
fhir:id [ fhir:v "PN" ] ;
fhir:path [ fhir:v "PN" ] ;
fhir:short [ fhir:v "Base for all types and resources" ] ;
fhir:definition [ fhir:v "A name for a person. A sequence of name parts, such as given name or family name, prefix, suffix, etc. Examples for person name values are \"Jim Bob Walton, Jr.\", \"Adam Everyman\", etc. A person name may be as simple as a character string or may consist of several person name parts, such as, \"Jim\", \"Bob\", \"Walton\", and \"Jr.\". PN differs from EN because the qualifier type cannot include LS (Legal Status)." ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "Base" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:constraint [
fhir:key [ fhir:v "pn-no-ls" ] ;
fhir:severity [ fhir:v "error" ] ;
fhir:human [ fhir:v "No PN name part may have a qualifier of LS." ] ;
fhir:expression [ fhir:v "(item.delimiter | item.family | item.given | item.prefix | item.suffix).where(qualifier.where($this = 'LS').exists()).empty()" ]       ] ) ;
fhir:isModifier [ fhir:v "false"^^xsd:boolean ] ;
      ( fhir:mapping [
fhir:identity [ fhir:v "rim" ] ;
fhir:map [ fhir:v "n/a" ]       ] )     ] [
fhir:id [ fhir:v "PN.nullFlavor" ] ;
fhir:path [ fhir:v "PN.nullFlavor" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:label [ fhir:v "Exceptional Value Detail" ] ;
fhir:definition [ fhir:v "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing." ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "ANY.nullFlavor" ] ;
fhir:min [ fhir:v "0"^^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:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor>         ]       ]     ] [
fhir:id [ fhir:v "PN.use" ] ;
fhir:path [ fhir:v "PN.use" ] ;
      ( fhir:representation [ fhir:v "xmlAttr" ] ) ;
fhir:label [ fhir:v "Use Code" ] ;
fhir:definition [ fhir:v "A set of codes advising a system or user which name in a set of like names to select for a given purpose. A name without specific use code might be a default name useful for any purpose, but a name with a specific use code would be preferred for that respective purpose" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.use" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( 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:binding [
fhir:strength [ fhir:v "required" ] ;
fhir:valueSet [
fhir:v "http://hl7.org/cda/stds/core/ValueSet/CDAEntityNameUse"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/ValueSet/CDAEntityNameUse>         ]       ]     ] [
fhir:id [ fhir:v "PN.item" ] ;
      ( fhir:extension [
fhir:url [ fhir:v "http://hl7.org/fhir/tools/StructureDefinition/xml-choice-group"^^xsd:anyURI ] ;
fhir:value [ fhir:v "true"^^xsd:boolean ]       ] ) ;
fhir:path [ fhir:v "PN.item" ] ;
fhir:definition [ fhir:v "A series of items that constitute the name." ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/fhir/StructureDefinition/Base"^^xsd:anyURI ]       ] ) ;
      ( fhir:constraint [
fhir:key [ fhir:v "EN-1" ] ;
fhir:severity [ fhir:v "error" ] ;
fhir:human [ fhir:v "Can only have only one of the possible item elements in each choice" ] ;
fhir:expression [ fhir:v "(delimiter | family | given | prefix | suffix | xmlText).count() = 1" ] ;
fhir:source [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/EN"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/EN>         ]       ] )     ] [
fhir:id [ fhir:v "PN.item.delimiter" ] ;
fhir:path [ fhir:v "PN.item.delimiter" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.delimiter" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ENXP"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "PN.item.family" ] ;
fhir:path [ fhir:v "PN.item.family" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.family" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ENXP"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "PN.item.given" ] ;
fhir:path [ fhir:v "PN.item.given" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.given" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ENXP"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "PN.item.prefix" ] ;
fhir:path [ fhir:v "PN.item.prefix" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.prefix" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ENXP"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "PN.item.suffix" ] ;
fhir:path [ fhir:v "PN.item.suffix" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.suffix" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/ENXP"^^xsd:anyURI ]       ] )     ] [
fhir:id [ fhir:v "PN.item.xmlText" ] ;
fhir:path [ fhir:v "PN.item.xmlText" ] ;
      ( fhir:representation [ fhir:v "xmlText" ] ) ;
fhir:short [ fhir:v "Allows for mixed text content" ] ;
fhir:comment [ fhir:v "This element is represented in XML as textual content. The actual name \"xmlText\" will not appear in a CDA instance." ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "EN.item.xmlText" ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ]       ] ;
      ( fhir:type [
fhir:code [ fhir:v "string"^^xsd:anyURI ] ;
        ( fhir:profile [
fhir:v "http://hl7.org/cda/stds/core/StructureDefinition/st-simple"^^xsd:anyURI ;
fhir:link <http://hl7.org/cda/stds/core/StructureDefinition/st-simple>         ] )       ] )     ] [
fhir:id [ fhir:v "PN.validTime" ] ;
fhir:path [ fhir:v "PN.validTime" ] ;
fhir:label [ fhir:v "Valid Time" ] ;
fhir:definition [ fhir:v "An interval of time specifying the time during which the name is or was used for the entity. This accomodates the fact that people change names for people, places and things." ] ;
fhir:min [ fhir:v "0"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "1" ] ;
fhir:base [
fhir:path [ fhir:v "EN.validTime" ] ;
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:differential [
    ( fhir:element [
fhir:id [ fhir:v "PN" ] ;
fhir:path [ fhir:v "PN" ] ;
fhir:definition [ fhir:v "A name for a person. A sequence of name parts, such as given name or family name, prefix, suffix, etc. Examples for person name values are \"Jim Bob Walton, Jr.\", \"Adam Everyman\", etc. A person name may be as simple as a character string or may consist of several person name parts, such as, \"Jim\", \"Bob\", \"Walton\", and \"Jr.\". PN differs from EN because the qualifier type cannot include LS (Legal Status)." ] ;
      ( fhir:constraint [
fhir:key [ fhir:v "pn-no-ls" ] ;
fhir:severity [ fhir:v "error" ] ;
fhir:human [ fhir:v "No PN name part may have a qualifier of LS." ] ;
fhir:expression [ fhir:v "(item.delimiter | item.family | item.given | item.prefix | item.suffix).where(qualifier.where($this = 'LS').exists()).empty()" ]       ] )     ] [
fhir:id [ fhir:v "PN.item" ] ;
fhir:path [ fhir:v "PN.item" ] ;
fhir:min [ fhir:v "1"^^xsd:nonNegativeInteger ] ;
fhir:max [ fhir:v "*" ]     ] )
  ] . #