{
  "resourceType": "StructureDefinition",
  "id": "nl-core-humanname",
  "url": "http://fhir.nl/fhir/StructureDefinition/nl-core-humanname",
  "version": "2.0.4",
  "name": "nl-core-humanname",
  "title": "nl-core-humanname",
  "status": "active",
  "publisher": "HL7 Netherlands",
  "contact": [
    {
      "name": "Nictiz",
      "telecom": [
        {
          "system": "email",
          "value": "info@nictiz.nl",
          "use": "work"
        }
      ]
    }
  ],
  "description": "Base datatype for HumanName Type with additions for Dutch realm names. Dutch names break down the family into maximum of 4 parts that are important to know separately in some if not most use cases.",
  "purpose": "Name information is used to identify and address person.",
  "copyright": "CC0",
  "fhirVersion": "3.0.1",
  "mapping": [
    {
      "identity": "hcim-nameinformation-v2.0.1-2015EN",
      "uri": "https://zibs.nl/wiki/Patient-v2.0.1(2015EN)",
      "name": "NameInformation as part of HCIM Patient-v2.0.1(2015EN)",
      "comment": "NameInformation has become an independent information model as of release 2017 of the HCIMs"
    },
    {
      "identity": "hcim-nameinformation-v3.0-2016EN",
      "uri": "https://zibs.nl/wiki/Patient-v3.0(2016EN)",
      "name": "NameInformation as part of HCIM Patient-v3.0(2016EN)",
      "comment": "NameInformation has become an independent information model as of release 2017 of the HCIMs"
    },
    {
      "identity": "hcim-nameinformation-v1.0.1-2017EN",
      "uri": "https://zibs.nl/wiki/NameInformation-v1.0.1(2017EN)",
      "name": "HCIM NameInformation-v1.0.1(2017EN)"
    },
    {
      "identity": "BRP",
      "uri": "https://nl.wikipedia.org/wiki/Basisregistratie_Personen",
      "name": "Basisregistratie Personen",
      "comment": "Voorheen GBA - Gemeentelijke basisregistratie"
    }
  ],
  "kind": "complex-type",
  "abstract": false,
  "type": "HumanName",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/HumanName",
  "derivation": "constraint",
  "snapshot": {
    "element": [
      {
        "id": "HumanName",
        "path": "HumanName",
        "short": "Name of a human - parts and usage",
        "definition": "A human's name with the ability to identify parts and usage.",
        "comment": "Names may be changed, or repudiated, or people may have different names in different contexts. Names may be divided into parts of different type that have variable significance depending on context, though the division into parts does not always matter. With personal names, the different parts may or may not be imbued with some implicit meaning; various cultures associate different importance with the name parts and the degree to which systems must care about name parts around the world varies widely.\r\n\r\nA Dutch HumanName is a proper FHIR HumanName. Systems that do not understand any of the extensions, will be able to render and work with a Dutch name. Dutch names make certain name parts seaprately communicable. These parts are required for use in true Dutch systems when dealing with Dutch names, but may not have value for international systems when information gets sent abroad.\r\n\r\nTo have true compatibility an implementer SHOULD use the core HumanName parts as intended. To have names work for Dutch context, the implementer SHOULD in addition use the extension elements.\r\n\r\nThe extension elements cover birth name (NL: eigennaam / geslachtsnaam) and partner/spouse name. Both may have a prefix (NL: voorvoegsel). When a person marries, he or she may keep their own name, assume the partner name, append the partner name to their own name, or the other way around.\r\n\r\nFor this reason, there are extensions for marking each part for what it is. \r\n\r\nExample: miss Irma Jongeneel marries mister de Haas and assumes the name Irma Jongeneel-de Haas\r\nfamily = \"Jongeneel-de Haas\"\r\ngiven = \"Irma\"\r\nhumanname-own-name = \"Jongeneel\"\r\nhumanname-partner-prefix = \"de \"\r\nhumanname-partner-name = \"Haas\"",
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element",
          "min": 0,
          "max": "*"
        },
        "example": [
          {
            "label": "Structured HumanName (preferred above unstructured)",
            "valueHumanName": {
              "extension": [
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order",
                  "valueCode": "NL4"
                }
              ],
              "use": "official",
              "family": "Jongeneel-de Haas",
              "_family": {
                "extension": [
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-own-name",
                    "valueString": "Jongeneel"
                  },
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix",
                    "valueString": "de"
                  },
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name",
                    "valueString": "Haas"
                  }
                ]
              },
              "given": [
                "Irma",
                "I."
              ],
              "_given": [
                {
                  "extension": [
                    {
                      "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier",
                      "valueCode": "CL"
                    }
                  ]
                },
                {
                  "extension": [
                    {
                      "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier",
                      "valueCode": "IN"
                    }
                  ]
                }
              ]
            }
          },
          {
            "label": "Unstructured HumanName",
            "valueHumanName": {
              "use": "official",
              "text": "Irma Jongeneel-de Haas"
            }
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "nl-core-humanname-1",
            "severity": "error",
            "human": "if you specify a prefix for an own name then an own name is also expected",
            "expression": "name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-prefix').empty().not() implies name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-name').empty().not()",
            "xpath": "not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-own-prefix']) or f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-own-name']"
          },
          {
            "key": "nl-core-humanname-2",
            "severity": "error",
            "human": "if you specify a voorvoegsel for a partner name then a partner name is also expected",
            "expression": "name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix').empty().not() implies name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-name').empty().not()",
            "xpath": "not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix']) or f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-partner-name']"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          },
          {
            "identity": "v2",
            "map": "XPN"
          },
          {
            "identity": "rim",
            "map": "EN (actually, PN)"
          },
          {
            "identity": "servd",
            "map": "ProviderName"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.6",
            "comment": "NameInformation"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.6",
            "comment": "NameInformation"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.1",
            "comment": "NameInformation"
          },
          {
            "identity": "BRP",
            "map": "02",
            "comment": "Naam"
          }
        ]
      },
      {
        "id": "HumanName.id",
        "path": "HumanName.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.extension",
        "path": "HumanName.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder",
        "path": "HumanName.extension",
        "sliceName": "humannameAssemblyOrder",
        "short": "Preferred display order of name parts",
        "definition": "A code that represents the preferred display order of the components of this human name.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content",
          "Voorkeursvolgorde van de naamdelen."
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.34",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.34",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.7",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder.id",
        "path": "HumanName.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder.extension",
        "path": "HumanName.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder.url",
        "path": "HumanName.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder.valueCode:valueCode",
        "path": "HumanName.extension.valueCode",
        "sliceName": "valueCode",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "HumanNameAssemblyOrder"
            }
          ],
          "strength": "required",
          "description": "A code that represents the preferred display order of the components of a human name",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/name-assembly-order"
          }
        },
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.use",
        "path": "HumanName.use",
        "short": "usual | official | temp | nickname | anonymous | old | maiden",
        "definition": "Identifies the purpose for this name.",
        "comment": "This is labeled as \"Is Modifier\" because applications should not mistake a temporary or old name etc.for a current/permanent one. Applications can assume that a name is current unless it explicitly says that it is temporary or old.",
        "requirements": "Allows the appropriate name for a particular context of use to be selected from among a set of names.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "HumanName.use",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "isModifier": true,
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "NameUse"
            }
          ],
          "strength": "required",
          "description": "The use of a human name",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/name-use"
          }
        },
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN.7, but often indicated by which field contains the name"
          },
          {
            "identity": "rim",
            "map": "unique(./use)"
          },
          {
            "identity": "servd",
            "map": "./NamePurpose"
          }
        ]
      },
      {
        "id": "HumanName.text",
        "path": "HumanName.text",
        "short": "Text representation of the full name",
        "definition": "A full text representation of the name.",
        "comment": "Can provide both a text representation and structured parts.",
        "requirements": "A renderable, unencoded form.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "HumanName.text",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "implied by XPN.11"
          },
          {
            "identity": "rim",
            "map": "./formatted"
          },
          {
            "identity": "hcim-payer-v1.2-2015EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          },
          {
            "identity": "hcim-payer-v3.0-2016EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          },
          {
            "identity": "hcim-payer-v3.1-2017EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          }
        ]
      },
      {
        "id": "HumanName.family",
        "path": "HumanName.family",
        "short": "Surname",
        "definition": "The part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father.",
        "comment": "Family Name may be decomposed into specific parts using extensions (de, nl, es related cultures).",
        "alias": [
          "surname",
          "Achternaam"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "HumanName.family",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN.1/FN.1"
          },
          {
            "identity": "rim",
            "map": "./part[partType = FAM]"
          },
          {
            "identity": "servd",
            "map": "./FamilyName"
          }
        ]
      },
      {
        "id": "HumanName.family.id",
        "path": "HumanName.family.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references)",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "HumanName.family.extension",
        "path": "HumanName.family.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the resource. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix",
        "path": "HumanName.family.extension",
        "sliceName": "humannameOwnPrefix",
        "short": "PrefixOwnName",
        "definition": "The prefix portion (e.g. voorvoegsel) inclusive of the space between the prefix and the surname, if applicable, of the family name that is derived from the person's own surname, as distinguished from any portion that is derived from the surname of the person's partner or spouse.",
        "comment": "An example of a voorvoegsel is the \"van\" in \"Ludwig van Beethoven\". Since the voorvoegsel doesn't sort completely alphabetically, it is reasonable to specify it as a separate sub-component.",
        "alias": [
          "extensions",
          "user content",
          "VoorvoegselGeslachtsnaam"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-own-prefix"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "v2",
            "map": "FN.2"
          },
          {
            "identity": "rim",
            "map": "ENXP where Qualifiers = (VV, R)"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.38",
            "comment": "Prefix"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.38",
            "comment": "Prefix"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.11",
            "comment": "Prefix"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix.id",
        "path": "HumanName.family.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix.extension",
        "path": "HumanName.family.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix.url",
        "path": "HumanName.family.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/humanname-own-prefix",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName",
        "path": "HumanName.family.extension",
        "sliceName": "humannameOwnName",
        "short": "OwnName",
        "definition": "The person’s official last name.",
        "comment": "The portion of the family name that is derived from the person's own surname, as distinguished from any portion that is derived from the surname of the person's partner or spouse. If the person's surname has legally changed to become (or incorporate) the surname of the person's partner or spouse, this is the person's surname immediately prior to such change. Often this is the person's \"maiden name\".",
        "alias": [
          "extensions",
          "user content",
          "Geslachtsnaam"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-own-name"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "v2",
            "map": "FN.3"
          },
          {
            "identity": "rim",
            "map": "ENXP where Qualifiers = (BR)"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.24",
            "comment": "LastName"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.24",
            "comment": "LastName"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.10",
            "comment": "LastName"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName.id",
        "path": "HumanName.family.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName.extension",
        "path": "HumanName.family.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName.url",
        "path": "HumanName.family.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/humanname-own-name",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix",
        "path": "HumanName.family.extension",
        "sliceName": "humannamePartnerPrefix",
        "short": "PrefixSurname",
        "definition": "Voorvoegsel derived from person's partner's surname inclusive of the space between the prefix and the surname, if applicable.",
        "comment": "An example of a voorvoegsel is the \"van\" in \"Ludwig van Beethoven\". Since the voorvoegsel doesn't sort completely alphabetically, it is reasonable to identify it as a separate sub-component.",
        "alias": [
          "extensions",
          "user content",
          "VoorvoegselGeslachtsnaamPartner"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "v2",
            "map": "FN.4"
          },
          {
            "identity": "rim",
            "map": "ENXP where Qualifiers = (VV, SP)"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.39",
            "comment": "PartnerPrefix"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.39",
            "comment": "PartnerPrefix"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.9",
            "comment": "PartnerPrefix"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix.id",
        "path": "HumanName.family.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix.extension",
        "path": "HumanName.family.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix.url",
        "path": "HumanName.family.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName",
        "path": "HumanName.family.extension",
        "sliceName": "humannamePartnerName",
        "short": "LastNamePartner",
        "definition": "Partner’s official last name.",
        "comment": "The portion of the family name that is derived from the person's partner's surname, as distinguished from any portion that is derived from the surname of the person's own name. If the person's surname has legally changed to become (or incorporate) the surname of the person's partner or spouse, this is the person's surname immediately prior to such change. Often this is the person's \"maiden name\".",
        "alias": [
          "extensions",
          "user content",
          "GeslachtsnaamPartner"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "v2",
            "map": "FN.5"
          },
          {
            "identity": "rim",
            "map": "ENXP where Qualifiers = (SP)"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.25",
            "comment": "PartnerLastName"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.25",
            "comment": "PartnerLastName"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.8",
            "comment": "PartnerLastName"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName.id",
        "path": "HumanName.family.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName.extension",
        "path": "HumanName.family.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName.url",
        "path": "HumanName.family.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.family.value",
        "path": "HumanName.family.value",
        "representation": [
          "xmlAttr"
        ],
        "short": "Primitive value for string",
        "definition": "The actual value",
        "min": 0,
        "max": "1",
        "base": {
          "path": "string.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "_code": {
              "extension": [
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type",
                  "valueString": "string"
                },
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type",
                  "valueString": "xsd:string"
                },
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type",
                  "valueString": "xsd:string"
                }
              ]
            }
          }
        ],
        "maxLength": 1048576
      },
      {
        "id": "HumanName.given",
        "path": "HumanName.given",
        "short": "Given",
        "definition": "Note that in order to mark the type of a given name, that you use the FHIR standard extension for ISO 21090 EN Qualifiers. Examples include call me name (Dutch: roepnaam) and initials. Each initial is expected to be delimited by a dot.",
        "comment": "To be conformant to the Zib for NameInformation, at least the following qualifiers SHALL be supported: BR, IN and CL. The qualifier 'BR' maps to the Zib concept FirstNames, 'IN' maps to Initials and 'CL' to GivenName.",
        "alias": [
          "first name",
          "middle name",
          "Voornamen",
          "Initialen",
          "Roepnaam"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "HumanName.given",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "orderMeaning": "Given Names appear in the correct order for presenting the name",
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN.2 + XPN.3"
          },
          {
            "identity": "rim",
            "map": "./part[partType = GIV]"
          },
          {
            "identity": "servd",
            "map": "./GivenNames"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.26",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.35",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.27",
            "comment": "GivenName. Qualifier 'CL'"
          },
          {
            "identity": "BRP",
            "map": "02.10",
            "comment": "Voornamen"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.26",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.35",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.27",
            "comment": "GivenName. Qualifier 'CL'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.4",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.5",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.6",
            "comment": "GivenName. Qualifier 'CL'"
          }
        ]
      },
      {
        "id": "HumanName.given.id",
        "path": "HumanName.given.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references)",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "HumanName.given.extension",
        "path": "HumanName.given.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the resource. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier",
        "path": "HumanName.given.extension",
        "sliceName": "iso21090EnQualifier",
        "short": "LS | AC | NB | PR | HON | BR | AD | SP | MID | CL | IN | VV",
        "definition": "A set of codes each of which specifies a certain subcategory of the name part in addition to the main name part type.",
        "comment": "Used to indicate additional information about the name part and how it should be used.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier"
          }
        ],
        "condition": [
          "ele-1"
        ],
        "constraint": [
          {
            "key": "ele-1",
            "severity": "error",
            "human": "All FHIR elements must have a @value or children",
            "expression": "hasValue() or (children().count() > id.count())",
            "xpath": "@value|f:*|h:div",
            "source": "Element"
          },
          {
            "key": "ext-1",
            "severity": "error",
            "human": "Must have either extensions or value[x], not both",
            "expression": "extension.exists() != value.exists()",
            "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
            "source": "Extension"
          }
        ],
        "isModifier": false,
        "mapping": [
          {
            "identity": "rim",
            "map": "ENXP.qualifier"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier.id",
        "path": "HumanName.given.extension.id",
        "representation": [
          "xmlAttr"
        ],
        "short": "xml:id (or equivalent in JSON)",
        "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Element.id",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier.extension",
        "path": "HumanName.given.extension.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "short": "Additional Content defined by implementations",
        "definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
        "comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
        "alias": [
          "extensions",
          "user content"
        ],
        "min": 0,
        "max": "*",
        "base": {
          "path": "Element.extension",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "Extension"
          }
        ],
        "mapping": [
          {
            "identity": "rim",
            "map": "n/a"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier.url",
        "path": "HumanName.given.extension.url",
        "representation": [
          "xmlAttr"
        ],
        "short": "identifies the meaning of the extension",
        "definition": "Source of the definition for the extension code - a logical name or a URL.",
        "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
        "min": 1,
        "max": "1",
        "base": {
          "path": "Extension.url",
          "min": 1,
          "max": "1"
        },
        "type": [
          {
            "code": "uri"
          }
        ],
        "fixedUri": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier",
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier.valueCode:valueCode",
        "path": "HumanName.given.extension.valueCode",
        "sliceName": "valueCode",
        "short": "Value of extension",
        "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
        "min": 0,
        "max": "1",
        "base": {
          "path": "Extension.value[x]",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "EntityNamePartQualifier"
            }
          ],
          "strength": "required",
          "description": "A set of codes each of which specifies a certain subcategory of the name part in addition to the main name part type",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/name-part-qualifier"
          }
        },
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      },
      {
        "id": "HumanName.given.value",
        "path": "HumanName.given.value",
        "representation": [
          "xmlAttr"
        ],
        "short": "Primitive value for string",
        "definition": "The actual value",
        "min": 0,
        "max": "1",
        "base": {
          "path": "string.value",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "_code": {
              "extension": [
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type",
                  "valueString": "string"
                },
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type",
                  "valueString": "xsd:string"
                },
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type",
                  "valueString": "xsd:string"
                }
              ]
            }
          }
        ],
        "maxLength": 1048576
      },
      {
        "id": "HumanName.prefix",
        "path": "HumanName.prefix",
        "short": "Parts that come before the name",
        "definition": "Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "HumanName.prefix",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "orderMeaning": "Prefixes appear in the correct order for presenting the name",
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN.5"
          },
          {
            "identity": "rim",
            "map": "./part[partType = PFX]"
          },
          {
            "identity": "servd",
            "map": "./TitleCode"
          }
        ]
      },
      {
        "id": "HumanName.suffix",
        "path": "HumanName.suffix",
        "short": "Parts that come after the name",
        "definition": "Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name.",
        "min": 0,
        "max": "*",
        "base": {
          "path": "HumanName.suffix",
          "min": 0,
          "max": "*"
        },
        "type": [
          {
            "code": "string"
          }
        ],
        "orderMeaning": "Suffixes appear in the correct order for presenting the name",
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN/4"
          },
          {
            "identity": "rim",
            "map": "./part[partType = SFX]"
          }
        ]
      },
      {
        "id": "HumanName.period",
        "path": "HumanName.period",
        "short": "Time period when name was/is in use",
        "definition": "Indicates the period of time when this name was valid for the named person.",
        "requirements": "Allows names to be placed in historical context.",
        "min": 0,
        "max": "1",
        "base": {
          "path": "HumanName.period",
          "min": 0,
          "max": "1"
        },
        "type": [
          {
            "code": "Period"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "v2",
            "map": "XPN.13 + XPN.14"
          },
          {
            "identity": "rim",
            "map": "./usablePeriod[type=\"IVL<TS>\"]"
          },
          {
            "identity": "servd",
            "map": "./StartDate and ./EndDate"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "id": "HumanName",
        "path": "HumanName",
        "comment": "Names may be changed, or repudiated, or people may have different names in different contexts. Names may be divided into parts of different type that have variable significance depending on context, though the division into parts does not always matter. With personal names, the different parts may or may not be imbued with some implicit meaning; various cultures associate different importance with the name parts and the degree to which systems must care about name parts around the world varies widely.\r\n\r\nA Dutch HumanName is a proper FHIR HumanName. Systems that do not understand any of the extensions, will be able to render and work with a Dutch name. Dutch names make certain name parts seaprately communicable. These parts are required for use in true Dutch systems when dealing with Dutch names, but may not have value for international systems when information gets sent abroad.\r\n\r\nTo have true compatibility an implementer SHOULD use the core HumanName parts as intended. To have names work for Dutch context, the implementer SHOULD in addition use the extension elements.\r\n\r\nThe extension elements cover birth name (NL: eigennaam / geslachtsnaam) and partner/spouse name. Both may have a prefix (NL: voorvoegsel). When a person marries, he or she may keep their own name, assume the partner name, append the partner name to their own name, or the other way around.\r\n\r\nFor this reason, there are extensions for marking each part for what it is. \r\n\r\nExample: miss Irma Jongeneel marries mister de Haas and assumes the name Irma Jongeneel-de Haas\r\nfamily = \"Jongeneel-de Haas\"\r\ngiven = \"Irma\"\r\nhumanname-own-name = \"Jongeneel\"\r\nhumanname-partner-prefix = \"de \"\r\nhumanname-partner-name = \"Haas\"",
        "example": [
          {
            "label": "Structured HumanName (preferred above unstructured)",
            "valueHumanName": {
              "extension": [
                {
                  "url": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order",
                  "valueCode": "NL4"
                }
              ],
              "use": "official",
              "family": "Jongeneel-de Haas",
              "_family": {
                "extension": [
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-own-name",
                    "valueString": "Jongeneel"
                  },
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix",
                    "valueString": "de"
                  },
                  {
                    "url": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name",
                    "valueString": "Haas"
                  }
                ]
              },
              "given": [
                "Irma",
                "I."
              ],
              "_given": [
                {
                  "extension": [
                    {
                      "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier",
                      "valueCode": "CL"
                    }
                  ]
                },
                {
                  "extension": [
                    {
                      "url": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier",
                      "valueCode": "IN"
                    }
                  ]
                }
              ]
            }
          },
          {
            "label": "Unstructured HumanName",
            "valueHumanName": {
              "use": "official",
              "text": "Irma Jongeneel-de Haas"
            }
          }
        ],
        "constraint": [
          {
            "key": "nl-core-humanname-1",
            "severity": "error",
            "human": "if you specify a prefix for an own name then an own name is also expected",
            "expression": "name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-prefix').empty().not() implies name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-own-name').empty().not()",
            "xpath": "not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-own-prefix']) or f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-own-name']"
          },
          {
            "key": "nl-core-humanname-2",
            "severity": "error",
            "human": "if you specify a voorvoegsel for a partner name then a partner name is also expected",
            "expression": "name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix').empty().not() implies name.family.extension('http://hl7.org/fhir/StructureDefinition/humanname-partner-name').empty().not()",
            "xpath": "not(f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix']) or f:extension[@url='http://hl7.org/fhir/StructureDefinition/humanname-partner-name']"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.6",
            "comment": "NameInformation"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.6",
            "comment": "NameInformation"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.1",
            "comment": "NameInformation"
          },
          {
            "identity": "BRP",
            "map": "02",
            "comment": "Naam"
          }
        ]
      },
      {
        "id": "HumanName.extension",
        "path": "HumanName.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder",
        "path": "HumanName.extension",
        "sliceName": "humannameAssemblyOrder",
        "alias": [
          "Voorkeursvolgorde van de naamdelen."
        ],
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-assembly-order"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.34",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.34",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.7",
            "comment": "NameUsage. Use FHIR Core ConceptMap for HCIM mapping: http://nictiz.nl/fhir/ConceptMap/NaamgebruikCodelijst-to-HumanNameAssemblyOrder"
          }
        ]
      },
      {
        "id": "HumanName.extension:humannameAssemblyOrder.valueCode:valueCode",
        "path": "HumanName.extension.valueCode",
        "sliceName": "valueCode"
      },
      {
        "id": "HumanName.text",
        "path": "HumanName.text",
        "mapping": [
          {
            "identity": "hcim-payer-v1.2-2015EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          },
          {
            "identity": "hcim-payer-v3.0-2016EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          },
          {
            "identity": "hcim-payer-v3.1-2017EN",
            "map": "NL-CM:1.1.5",
            "comment": "PayerName"
          }
        ]
      },
      {
        "id": "HumanName.family",
        "path": "HumanName.family",
        "short": "Surname",
        "alias": [
          "Achternaam"
        ]
      },
      {
        "id": "HumanName.family.extension",
        "path": "HumanName.family.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix",
        "path": "HumanName.family.extension",
        "sliceName": "humannameOwnPrefix",
        "short": "PrefixOwnName",
        "definition": "The prefix portion (e.g. voorvoegsel) inclusive of the space between the prefix and the surname, if applicable, of the family name that is derived from the person's own surname, as distinguished from any portion that is derived from the surname of the person's partner or spouse.",
        "alias": [
          "VoorvoegselGeslachtsnaam"
        ],
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-own-prefix"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.38",
            "comment": "Prefix"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.38",
            "comment": "Prefix"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.11",
            "comment": "Prefix"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnPrefix.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "HumanName.family.extension:humannameOwnName",
        "path": "HumanName.family.extension",
        "sliceName": "humannameOwnName",
        "short": "OwnName",
        "definition": "The person’s official last name.",
        "comment": "The portion of the family name that is derived from the person's own surname, as distinguished from any portion that is derived from the surname of the person's partner or spouse. If the person's surname has legally changed to become (or incorporate) the surname of the person's partner or spouse, this is the person's surname immediately prior to such change. Often this is the person's \"maiden name\".",
        "alias": [
          "Geslachtsnaam"
        ],
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-own-name"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.24",
            "comment": "LastName"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.24",
            "comment": "LastName"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.10",
            "comment": "LastName"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannameOwnName.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix",
        "path": "HumanName.family.extension",
        "sliceName": "humannamePartnerPrefix",
        "short": "PrefixSurname",
        "definition": "Voorvoegsel derived from person's partner's surname inclusive of the space between the prefix and the surname, if applicable.",
        "alias": [
          "VoorvoegselGeslachtsnaamPartner"
        ],
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-partner-prefix"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.39",
            "comment": "PartnerPrefix"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.39",
            "comment": "PartnerPrefix"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.9",
            "comment": "PartnerPrefix"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerPrefix.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName",
        "path": "HumanName.family.extension",
        "sliceName": "humannamePartnerName",
        "short": "LastNamePartner",
        "definition": "Partner’s official last name.",
        "comment": "The portion of the family name that is derived from the person's partner's surname, as distinguished from any portion that is derived from the surname of the person's own name. If the person's surname has legally changed to become (or incorporate) the surname of the person's partner or spouse, this is the person's surname immediately prior to such change. Often this is the person's \"maiden name\".",
        "alias": [
          "GeslachtsnaamPartner"
        ],
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/humanname-partner-name"
          }
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.25",
            "comment": "PartnerLastName"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.25",
            "comment": "PartnerLastName"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.8",
            "comment": "PartnerLastName"
          }
        ]
      },
      {
        "id": "HumanName.family.extension:humannamePartnerName.valueString:valueString",
        "path": "HumanName.family.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "HumanName.given",
        "path": "HumanName.given",
        "short": "Given",
        "definition": "Note that in order to mark the type of a given name, that you use the FHIR standard extension for ISO 21090 EN Qualifiers. Examples include call me name (Dutch: roepnaam) and initials. Each initial is expected to be delimited by a dot.",
        "comment": "To be conformant to the Zib for NameInformation, at least the following qualifiers SHALL be supported: BR, IN and CL. The qualifier 'BR' maps to the Zib concept FirstNames, 'IN' maps to Initials and 'CL' to GivenName.",
        "alias": [
          "Voornamen",
          "Initialen",
          "Roepnaam"
        ],
        "mapping": [
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.26",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.35",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v2.0.1-2015EN",
            "map": "NL-CM:0.1.27",
            "comment": "GivenName. Qualifier 'CL'"
          },
          {
            "identity": "BRP",
            "map": "02.10",
            "comment": "Voornamen"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.26",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.35",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v3.0-2016EN",
            "map": "NL-CM:0.1.27",
            "comment": "GivenName. Qualifier 'CL'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.4",
            "comment": "FirstNames. Qualifier 'BR'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.5",
            "comment": "Initials. Qualifier 'IN'"
          },
          {
            "identity": "hcim-nameinformation-v1.0.1-2017EN",
            "map": "NL-CM:20.4.6",
            "comment": "GivenName. Qualifier 'CL'"
          }
        ]
      },
      {
        "id": "HumanName.given.extension",
        "path": "HumanName.given.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier",
        "path": "HumanName.given.extension",
        "sliceName": "iso21090EnQualifier",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier"
          }
        ]
      },
      {
        "id": "HumanName.given.extension:iso21090EnQualifier.valueCode:valueCode",
        "path": "HumanName.given.extension.valueCode",
        "sliceName": "valueCode"
      }
    ]
  }
}