Test Profile #1

Summary

The official URL for this profile is:

http://hl7.org/fhir/test/StructureDefinition/test-ig-sd

Test Profile to test publishing

This profile builds on Patient.

This profile was published on Tue Jun 21 07:44:00 UTC 2016 as a draft by FHIR Project.

Summary

Mandatory: 1 element

Differential

NameFlagsCard.TypeDescription & Constraintsdoco
.. active 1..1boolean

doco Documentation for this format

Snapshot

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient I0..*Information about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierAn identifier for this patient
... active ?!Σ1..1booleanWhether this patient's record is in active use
... name Σ0..*HumanNameA name associated with the patient
... telecom Σ0..*ContactPointA contact detail for the individual
... gender Σ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required)
... birthDate Σ0..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1boolean, dateTimeIndicates if the individual is deceased or not
... address Σ0..*AddressAddresses for the individual
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible)
... multipleBirth[x] 0..1boolean, integerWhether patient is part of a multiple birth
... photo 0..*AttachmentImage of the patient
... contact I0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
pat-1: SHALL at least contain a contact's details or a reference to an organization
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: v2 Contact Role (extensible)
.... name 0..1HumanNameA name associated with the contact person
.... telecom 0..*ContactPointA contact detail for the person
.... address 0..1AddressAddress for the contact person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required)
.... organization I0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... animal ?!ΣI0..1BackboneElementThis patient is known to be an animal (non-human)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... species Σ1..1CodeableConceptE.g. Dog, Cow
Binding: AnimalSpecies (example)
.... breed Σ0..1CodeableConceptE.g. Poodle, Angus
Binding: AnimalBreeds (example)
.... genderStatus Σ0..1CodeableConceptE.g. Neutered, Intact
Binding: GenderStatus (example)
... communication I0..*BackboneElementA list of Languages which may be used to communicate with the patient about his or her health
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: Common Languages (extensible)
.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization), Reference(Practitioner)Patient's nominated primary care provider
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!ΣI0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... other Σ1..1Reference(Patient), Reference(RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso - type of link
Binding: LinkType (required)

doco Documentation for this format

UML

yet to be done: UML as SVG

XML template

yet to be done: Xml template

JSON template

yet to be done: Json template

Turtle Template

yet to be done: Turtle template

Terminology Bindings

Terminology Bindings

PathNameConformanceValueSet
Patient.languageCommon LanguagesextensibleCommon Languages
Patient.genderAdministrativeGenderrequiredAdministrativeGender
Patient.maritalStatusMarital Status CodesextensibleMarital Status Codes
Patient.contact.relationshipv2 Contact Roleextensiblev2 Contact Role
Patient.contact.genderAdministrativeGenderrequiredAdministrativeGender
Patient.animal.speciesAnimalSpeciesexampleAnimalSpecies
Patient.animal.breedAnimalBreedsexampleAnimalBreeds
Patient.animal.genderStatusGenderStatusexampleGenderStatus
Patient.communication.languageCommon LanguagesextensibleCommon Languages
Patient.link.typeLinkTyperequiredLinkType

Invariants

Constraints

IdPathDetailsRequirements
dom-2PatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-1PatientIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-4PatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-3PatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
ele-1Patient.contactAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
pat-1Patient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()
ele-1Patient.animalAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1Patient.communicationAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1Patient.linkAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())

Other stuff

yet to be done: schematron as html

Yet to be done: xref

yet to be done: shex as html

yet to be done: json schema as html

Definitions

Patient
Definition

Demographics and other administrative information about an individual or animal receiving care or other health-related services.

Control0..*
Alternate NamesSubjectOfCare Client Resident
InvariantsDefined on this element
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative (: contained.text.empty())
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (: contained.contained.empty())
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource (: contained.where(('#'+id in %resource.descendants().reference).not()).empty())
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
Patient.id
Definition

The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

Control0..1
Typeid
Comments

The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

Patient.meta
Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.

Control0..1
TypeMeta
Patient.implicitRules
Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content.

Control0..1
Typeuri
Is Modifiertrue
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element.

This element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation.

Patient.language
Definition

The base language in which the resource is written.

Control0..1
BindingA human language.
The codes SHALL be taken from Common Languages; other codes may be used where these codes are not suitable
Typecode
Comments

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

Patient.text
Definition

A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

Control0..1 This element is affected by the following invariants: dom-1
TypeNarrative
Alternate Namesnarrative, html, xhtml, display
Comments

Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded in formation is added later.

Patient.contained
Definition

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

Control0..*
TypeResource
Alternate Namesinline resources, anonymous resources, contained resources
Comments

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again.

Patient.extension
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.

Control0..*
TypeExtension
Alternate Namesextensions, user content
Comments

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.

Patient.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.

Control0..*
TypeExtension
Is Modifiertrue
Alternate Namesextensions, user content
Comments

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.

Patient.identifier
Definition

An identifier for this patient.

NoteThis is a business identifer, not a resource identifier (see discussion)
Control0..*
TypeIdentifier
Requirements

Patients are almost always assigned specific numerical identifiers.

Patient.active
Definition

Whether this patient record is in active use.

Control1..1
Typeboolean
Is Modifiertrue
Requirements

Need to be able to mark a patient record as not to be used because it was created in error.

Comments

Default is true. If a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient

This element is labeled as a modifier because when the patient record is marked as not active it is not expected to be used/referenced without being changed back to active.

Default Valuetrue
Patient.name
Definition

A name associated with the individual.

Control0..*
TypeHumanName
Requirements

Need to be able to track the patient by multiple names. Examples are your official name and a partner name.

Comments

A patient may have multiple names with different uses or applicable periods. For animals, the name is a "HumanName" in the sense that is assigned and used by humans and has the same patterns.

Patient.telecom
Definition

A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted.

Control0..*
TypeContactPoint
Requirements

People have (primary) ways to contact them in some way such as phone, email.

Comments

A Patient may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently and also to help with identification. The address may not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner's phone).

Patient.gender
Definition

Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes.

Control0..1
BindingThe gender of a person used for administrative purposes.
The codes SHALL be taken from AdministrativeGender
Typecode
Requirements

Needed for identification of the individual, in combination with (at least) name and birth date. Gender of individual drives many clinical processes.

Comments

The gender may not match the biological sex as determined by genetics, or the individual's preferred identification. Note that for both humans and particularly animals, there are other legitimate possibilities than M and F, though the vast majority of systems and contexts only support M and F. Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific gender aspect of interest (anatomical, chromosonal, social, etc.) However, because these observations are infrequently recorded, defaulting to the administrative gender is common practice. Where such defaulting occurs, rule enforcement should allow for the variation between administrative and biological, chromosonal and other gender aspects. For example, an alert about a hysterectomy on a male should be handled as a warning or overrideable error, not a "hard" error.

Patient.birthDate
Definition

The date of birth for the individual.

Control0..1
Typedate
Requirements

Age of the individual drives many clinical processes.

Comments

At least an estimated year should be provided as a guess if the real DOB is unknown There is a standard extension "patient-birthTime" available that should be used where Time is required (such as in maternaty/infant care systems).

LOINC Code21112-8
Patient.deceased[x]
Definition

Indicates if the individual is deceased or not.

Control0..1
TypeChoice of: boolean, dateTime
[x] NoteSee Choice of Data Types for further information about how to use [x]
Is Modifiertrue
Requirements

The fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive.

Comments

If there's no value in the instance it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.

This element is labeled as a modifier because once a patient is marked as deceased, the actions that are appropriate to perform on the patient may be significantly different.

Patient.address
Definition

Addresses for the individual.

Control0..*
TypeAddress
Requirements

May need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification.

Comments

Patient may have multiple addresses with different uses or applicable periods.

Patient.maritalStatus
Definition

This field contains a patient's most recent marital (civil) status.

Control0..1
BindingThe domestic partnership status of a person.
The codes SHALL be taken from Marital Status Codes; other codes may be used where these codes are not suitable
TypeCodeableConcept
Requirements

Most, if not all systems capture it.

Patient.multipleBirth[x]
Definition

Indicates whether the patient is part of a multiple (bool) or indicates the actual birth order (integer).

Control0..1
TypeChoice of: boolean, integer
[x] NoteSee Choice of Data Types for further information about how to use [x]
Requirements

For disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs.

Comments

Where the valueInteger is provided, the number is the birth number in the sequence. E.g. The middle birth in tripplets would be valueInteger=2 and the third born would have valueInteger=3 If a bool value was provided for this tripplets examle, then all 3 patient records would have valueBool=true (the ordering is not indicated).

Patient.photo
Definition

Image of the patient.

Control0..*
TypeAttachment
Requirements

Many EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too.

Patient.contact
Definition

A contact party (e.g. guardian, partner, friend) for the patient.

Control0..*
TypeBackboneElement
Requirements

Need to track people you can contact about the patient.

Comments

Contact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact.

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() | (children().count() > id.count()))
pat-1: SHALL at least contain a contact's details or a reference to an organization (: name.exists() or telecom.exists() or address.exists() or organization.exists())
Patient.contact.id
Definition

unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Control0..1
Typestring
Patient.contact.extension
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.

Control0..*
TypeExtension
Alternate Namesextensions, user content
Comments

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.

Patient.contact.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.

Control0..*
TypeExtension
Is Modifiertrue
Alternate Namesextensions, user content, modifiers
Comments

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.

Patient.contact.relationship
Definition

The nature of the relationship between the patient and the contact person.

Control0..*
BindingThe nature of the relationship between a patient and a contact person for that patient.
The codes SHALL be taken from v2 Contact Role; other codes may be used where these codes are not suitable
TypeCodeableConcept
Requirements

Used to determine which contact person is the most relevant to approach, depending on circumstances.

Patient.contact.name
Definition

A name associated with the contact person.

Control0..1
TypeHumanName
Requirements

Contact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person.

Patient.contact.telecom
Definition

A contact detail for the person, e.g. a telephone number or an email address.

Control0..*
TypeContactPoint
Requirements

People have (primary) ways to contact them in some way such as phone, email.

Comments

Contact may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently, and also to help with identification.

Patient.contact.address
Definition

Address for the contact person.

Control0..1
TypeAddress
Requirements

Need to keep track where the contact person can be contacted per postal mail or visited.

Patient.contact.gender
Definition

Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes.

Control0..1
BindingThe gender of a person used for administrative purposes.
The codes SHALL be taken from AdministrativeGender
Typecode
Requirements

Needed to address the person correctly.

Patient.contact.organization
Definition

Organization on behalf of which the contact is acting or for which the contact is working.

Control0..1 This element is affected by the following invariants: pat-1
TypeReference(Organization)
Requirements

For guardians or business related contacts, the organization is relevant.

Patient.contact.period
Definition

The period during which this contact person or organization is valid to be contacted relating to this patient.

Control0..1
TypePeriod
Patient.animal
Definition

This patient is known to be an animal.

Control0..1
TypeBackboneElement
Is Modifiertrue
Requirements

Many clinical systems are extended to care for animal patients as well as human.

Comments

The animal element is labeled "Is Modifier" since patients may be non-human. Systems SHALL either handle patient details appropriately (e.g. inform users patient is not human) or reject declared animal records. The absense of the animal element does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required. (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal).

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() | (children().count() > id.count()))
Patient.animal.id
Definition

unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Control0..1
Typestring
Patient.animal.extension
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.

Control0..*
TypeExtension
Alternate Namesextensions, user content
Comments

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.

Patient.animal.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.

Control0..*
TypeExtension
Is Modifiertrue
Alternate Namesextensions, user content, modifiers
Comments

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.

Patient.animal.species
Definition

Identifies the high level taxonomic categorization of the kind of animal.

Control1..1
BindingThe species of an animal.
For example codes, see AnimalSpecies
TypeCodeableConcept
Requirements

Need to know what kind of animal.

Comments

If the patient is non-human, at least a species SHALL be specified. Species SHALL be a widely recognised taxonomic classification. It may or may not be Linnaean taxonomy and may or may not be at the level of species. If the level is finer than species--such as a breed code--the code system used SHALL allow inference of the species. (The common example is that the word "Hereford" does not allow inference of the species Bos taurus, because there is a Hereford pig breed, but the SNOMED CT code for "Hereford Cattle Breed" does.).

Patient.animal.breed
Definition

Identifies the detailed categorization of the kind of animal.

Control0..1
BindingThe breed of an animal.
For example codes, see AnimalBreeds
TypeCodeableConcept
Requirements

May need to know the specific kind within the species.

Comments

Breed MAY be used to provide further taxonomic or non-taxonomic classification. It may involve local or proprietary designation--such as commercial strain--and/or additional information such as production type.

Patient.animal.genderStatus
Definition

Indicates the current state of the animal's reproductive organs.

Control0..1
BindingThe state of the animal's reproductive organs.
For example codes, see GenderStatus
TypeCodeableConcept
Requirements

Gender status can affect housing and animal behavior.

Patient.communication
Definition

Languages which may be used to communicate with the patient about his or her health.

Control0..*
TypeBackboneElement
Requirements

If a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency is an important things to keep track of both for patient and other persons of interest.

Comments

If no language is specified, this implies that the default local language is spoken. If you need to convey proficiency for multiple modes then you need multiple Patient.Communication associations. For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required.

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() | (children().count() > id.count()))
Patient.communication.id
Definition

unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Control0..1
Typestring
Patient.communication.extension
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.

Control0..*
TypeExtension
Alternate Namesextensions, user content
Comments

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.

Patient.communication.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.

Control0..*
TypeExtension
Is Modifiertrue
Alternate Namesextensions, user content, modifiers
Comments

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.

Patient.communication.language
Definition

The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-EN" for England English.

Control1..1
BindingA human language.
The codes SHALL be taken from Common Languages; other codes may be used where these codes are not suitable
TypeCodeableConcept
Requirements

Most systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect.

Comments

The structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type.

Patient.communication.preferred
Definition

Indicates whether or not the patient prefers this language (over other languages he masters up a certain level).

Control0..1
Typeboolean
Requirements

People that master multiple languages up to certain level may prefer one or more, i.e. feel more confident in communicating in a particular language making other languages sort of a fall back method.

Comments

This language is specifically identified for communicating healthcare information.

Patient.generalPractitioner
Definition

Patient's nominated care provider.

Control0..*
TypeChoice of: Reference(Organization), Reference(Practitioner)
Alternate NamescareProvider
Comments

This may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disablity setting, or even organization that will provide people to perform the care provider roles.

It is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources.

Patient.managingOrganization
Definition

Organization that is the custodian of the patient record.

Control0..1
TypeReference(Organization)
Requirements

Need to know who recognizes this patient record, manages and updates it.

Comments

There is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association).

Patient.link
Definition

Link to another patient resource that concerns the same actual patient.

Control0..*
TypeBackboneElement
Is Modifiertrue
Requirements

There are multiple usecases:

  • Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and * Distribution of patient information across multiple servers.
Comments

There is no assumption that linked patient records have mutual links.

This element is labelled as a modifier because it may not be the main Patient resource, and the referenced patient should be used instead of this Patient record. This is when the link.type value is 'replaced-by'.

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() | (children().count() > id.count()))
Patient.link.id
Definition

unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Control0..1
Typestring
Patient.link.extension
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.

Control0..*
TypeExtension
Alternate Namesextensions, user content
Comments

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.

Patient.link.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.

Control0..*
TypeExtension
Is Modifiertrue
Alternate Namesextensions, user content, modifiers
Comments

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.

Patient.link.other
Definition

The other patient resource that the link refers to.

Control1..1
TypeChoice of: Reference(Patient), Reference(RelatedPerson)
Comments

Referencing a RelatedPerson here removes the need to use a Person record to associate a Patient and RelatedPerson as the same individual.

Patient.link.type
Definition

The type of link between this patient resource and another patient resource.

Control1..1
BindingThe type of link between this patient resource and another patient resource.
The codes SHALL be taken from LinkType
Typecode

Mappings

Mappings for Test Mapping (http://testuri.org/)

Test Profile

Mappings for RIM Mapping (http://hl7.org/v3)

Test Profile
PatientEntity. Role, or Act
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifierid
   activestatusCode
   namename
   telecomtelecom
   genderplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
   birthDateplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime
   deceased[x]player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
   addressaddr
   maritalStatusplayer[classCode=PSN]/maritalStatusCode
   multipleBirth[x]player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
   photoplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
   contactplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
      idn/a
      extensionn/a
      modifierExtensionN/A
      relationshipcode
      namename
      telecomtelecom
      addressaddr
      genderplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
      organizationscoper
      periodeffectiveTime
   animalplayer[classCode=ANM]
      idn/a
      extensionn/a
      modifierExtensionN/A
      speciescode
      breedplayedRole[classCode=GEN]/scoper[classCode=ANM, determinerCode=KIND]/code
      genderStatusgenderStatusCode
   communicationLanguageCommunication
      idn/a
      extensionn/a
      modifierExtensionN/A
      languageplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code
      preferredpreferenceInd
   generalPractitionersubjectOf.CareEvent.performer.AssignedEntity
   managingOrganizationscoper
   linkoutboundLink
      idn/a
      extensionn/a
      modifierExtensionN/A
      otherid
      typetypeCode

Mappings for CDA (R2) (http://hl7.org/v3/cda)

Test Profile
PatientClinicalDocument.recordTarget.patientRole
   identifier.id
   activen/a
   name.patient.name
   telecom.telecom
   gender.patient.administrativeGenderCode
   birthDate.patient.birthTime
   deceased[x]n/a
   address.addr
   maritalStatus.patient.maritalStatusCode
   multipleBirth[x]n/a
   photon/a
   contactn/a
      relationshipn/a
      namen/a
      telecomn/a
      addressn/a
      gendern/a
      organizationn/a
      periodn/a
   animaln/a
      speciesn/a
      breedn/a
      genderStatusn/a
   communicationpatient.languageCommunication
      language.languageCode
      preferred.preferenceInd
   generalPractitionern/a
   managingOrganization.providerOrganization
   linkn/a
      othern/a
      typen/a

Mappings for W5 Mapping (http://hl7.org/fhir/w5)

Test Profile
Patientadministrative.individual
   identifierid
   activestatus

Mappings for HL7 v2 Mapping (http://hl7.org/v2)

Test Profile
Patient
   identifierPID-3
   namePID-5, PID-9
   telecomPID-13, PID-14, PID-40
   genderPID-8
   birthDatePID-7
   deceased[x]PID-30 (bool) and PID-29 (datetime)
   addressPID-11
   maritalStatusPID-16
   multipleBirth[x]PID-24 (bool), PID-25 (integer)
   photoOBX-5 - needs a profile
   contact
      relationshipNK1-7, NK1-3
      nameNK1-2
      telecomNK1-5, NK1-6, NK1-40
      addressNK1-4
      genderNK1-15
      organizationNK1-13, NK1-30, NK1-31, NK1-32, NK1-41
   animal
      speciesPID-35
      breedPID-37
      genderStatusN/A
   communication
      languagePID-15, LAN-2
      preferredPID-15
   generalPractitionerPD1-4
   link
      otherPID-3, MRG-1

Mappings for LOINC code for the element (http://loinc.org)

Test Profile
Patient
   birthDate21112-8


<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="test-ig-sd"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><table border="0" cellpadding="0" cellspacing="0" style="border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><tr style="border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="The logical name of the element">Name</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Information about the use of the element">Flags</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Minimum and Maximum # of times the the element can appear in the instance">Card.</a></th><th style="width: 100px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Reference to the type of the element">Type</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Additional information about the element">Description &amp; Constraints</a><span style="float: right"><a href="../../../publish/formats.html#table" title="Legend for this format"><img src="../../../publish/help16.png" alt="doco" style="background-color: inherit"/></a></span></th></tr><tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white;"><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck0.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: white; background-color: inherit" title="Element" class="hierarchy"/> <a href="profile-sd.html#definitions#Patient.active" title="null">active</a><a name="Patient.active"> </a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">1..1</td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a style="opacity: 0.4" href="../../../publish/datatypes.html#boolean">boolean</a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/></tr>
<tr><td colspan="5" class="hierarchy"><br/><a href="../../../publish/formats.html#table" title="Legend for this format"><img src="../../../publish/help16.png" alt="doco" style="background-color: inherit"/> Documentation for this format</a></td></tr></table></div>
  </text>
  <url value="http://hl7.org/fhir/test/StructureDefinition/test-ig-sd"/>
  <name value="Test Profile"/>
  <title value="Test Patient"/>
  <status value="draft"/>
  <experimental value="true"/>
  <date value="2016-06-21T17:44:00+10:00"/>
  <publisher value="FHIR Project"/>
  <description value="Test Profile to test publishing"/>
  <fhirVersion value="3.1.0"/>
  <mapping>
    <identity value="tst"/>
    <uri value="http://testuri.org/"/>
    <name value="Test Mapping"/>
  </mapping>
  <mapping>
    <identity value="rim"/>
    <uri value="http://hl7.org/v3"/>
    <name value="RIM Mapping"/>
  </mapping>
  <mapping>
    <identity value="cda"/>
    <uri value="http://hl7.org/v3/cda"/>
    <name value="CDA (R2)"/>
  </mapping>
  <mapping>
    <identity value="w5"/>
    <uri value="http://hl7.org/fhir/w5"/>
    <name value="W5 Mapping"/>
  </mapping>
  <mapping>
    <identity value="v2"/>
    <uri value="http://hl7.org/v2"/>
    <name value="HL7 v2 Mapping"/>
  </mapping>
  <mapping>
    <identity value="loinc"/>
    <uri value="http://loinc.org"/>
    <name value="LOINC code for the element"/>
  </mapping>
  <kind value="resource"/>
  <abstract value="false"/>
  <type value="Patient"/>
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient"/>
  <derivation value="constraint"/>
  <snapshot>
    <element id="Patient">
      <path value="Patient"/>
      <short
             value="Information about an individual or animal receiving health care services"/>
      <definition
                  value="Demographics and other administrative information about an individual or animal receiving care or other health-related services."/>
      <alias value="SubjectOfCare Client Resident"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <constraint>
        <key value="dom-2"/>
        <severity value="error"/>
        <human
               value="If the resource is contained in another resource, it SHALL NOT contain nested Resources"/>
        <expression value="contained.contained.empty()"/>
        <xpath value="not(parent::f:contained and f:contained)"/>
        <source value="DomainResource"/>
      </constraint>
      <constraint>
        <key value="dom-1"/>
        <severity value="error"/>
        <human
               value="If the resource is contained in another resource, it SHALL NOT contain any narrative"/>
        <expression value="contained.text.empty()"/>
        <xpath value="not(parent::f:contained and f:text)"/>
        <source value="DomainResource"/>
      </constraint>
      <constraint>
        <key value="dom-4"/>
        <severity value="error"/>
        <human
               value="If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated"/>
        <expression
                    value="contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()"/>
        <xpath
               value="not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))"/>
        <source value="DomainResource"/>
      </constraint>
      <constraint>
        <key value="dom-3"/>
        <severity value="error"/>
        <human
               value="If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource"/>
        <expression
                    value="contained.where((&#39;#&#39;+id in %resource.descendants().reference).not()).empty()"/>
        <xpath
               value="not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat(&#39;#&#39;, $id))]))"/>
        <source value="DomainResource"/>
      </constraint>
      <mapping>
        <identity value="rim"/>
        <map value="Entity. Role, or Act"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="Patient[classCode=PAT]"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="ClinicalDocument.recordTarget.patientRole"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="administrative.individual"/>
      </mapping>
    </element>
    <element id="Patient.id">
      <path value="Patient.id"/>
      <short value="Logical id of this artifact"/>
      <definition
                  value="The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes."/>
      <comment
               value="The only time that a resource does not have an id is when it is being submitted to the server using a create operation."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Resource.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="id"/>
      </type>
      <isSummary value="true"/>
    </element>
    <element id="Patient.meta">
      <path value="Patient.meta"/>
      <short value="Metadata about the resource"/>
      <definition
                  value="The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Resource.meta"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Meta"/>
      </type>
      <isSummary value="true"/>
    </element>
    <element id="Patient.implicitRules">
      <path value="Patient.implicitRules"/>
      <short value="A set of rules under which this content was created"/>
      <definition
                  value="A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content."/>
      <comment
               value="Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. 

This element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it&#39;s meaning or interpretation."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Resource.implicitRules"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="uri"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
    </element>
    <element id="Patient.language">
      <path value="Patient.language"/>
      <short value="Language of the resource content"/>
      <definition value="The base language in which the resource is written."/>
      <comment
               value="Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies  to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource  Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Resource.language"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet">
          <valueReference>
            <reference value="http://hl7.org/fhir/ValueSet/all-languages"/>
          </valueReference>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="Language"/>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
          <valueBoolean value="true"/>
        </extension>
        <strength value="extensible"/>
        <description value="A human language."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/languages"/>
        </valueSetReference>
      </binding>
    </element>
    <element id="Patient.text">
      <path value="Patient.text"/>
      <short value="Text summary of the resource, for human interpretation"/>
      <definition
                  value="A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it &quot;clinically safe&quot; for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety."/>
      <comment
               value="Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied).  This may be necessary for data from legacy systems where information is captured as a &quot;text blob&quot; or where text is additionally entered raw or narrated and encoded in formation is added later."/>
      <alias value="narrative"/>
      <alias value="html"/>
      <alias value="xhtml"/>
      <alias value="display"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="DomainResource.text"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Narrative"/>
      </type>
      <condition value="dom-1"/>
      <mapping>
        <identity value="rim"/>
        <map value="Act.text?"/>
      </mapping>
    </element>
    <element id="Patient.contained">
      <path value="Patient.contained"/>
      <short value="Contained, inline Resources"/>
      <definition
                  value="These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope."/>
      <comment
               value="This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again."/>
      <alias value="inline resources"/>
      <alias value="anonymous resources"/>
      <alias value="contained resources"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="DomainResource.contained"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Resource"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.extension">
      <path value="Patient.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition
                  value="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
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="DomainResource.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.modifierExtension">
      <path value="Patient.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions."/>
      <comment
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="DomainResource.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.identifier">
      <path value="Patient.identifier"/>
      <short value="An identifier for this patient"/>
      <definition value="An identifier for this patient."/>
      <requirements
                    value="Patients are almost always assigned specific numerical identifiers."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.identifier"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Identifier"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-3"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="id"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".id"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="id"/>
      </mapping>
    </element>
    <element id="Patient.active">
      <path value="Patient.active"/>
      <short value="Whether this patient&#39;s record is in active use"/>
      <definition value="Whether this patient record is in active use."/>
      <comment
               value="Default is true. If a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient

This element is labeled as a modifier because when the patient record is marked as not active it is not expected to be used/referenced without being changed back to active."/>
      <requirements
                    value="Need to be able to mark a patient record as not to be used because it was created in error."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Patient.active"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <defaultValueBoolean value="true"/>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="statusCode"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="status"/>
      </mapping>
    </element>
    <element id="Patient.name">
      <path value="Patient.name"/>
      <short value="A name associated with the patient"/>
      <definition value="A name associated with the individual."/>
      <comment
               value="A patient may have multiple names with different uses or applicable periods. For animals, the name is a &quot;HumanName&quot; in the sense that is assigned and used by humans and has the same patterns."/>
      <requirements
                    value="Need to be able to track the patient by multiple names. Examples are your official name and a partner name."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.name"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="HumanName"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-5, PID-9"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="name"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".patient.name"/>
      </mapping>
    </element>
    <element id="Patient.telecom">
      <path value="Patient.telecom"/>
      <short value="A contact detail for the individual"/>
      <definition
                  value="A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted."/>
      <comment
               value="A Patient may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently and also to help with identification. The address may not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner&#39;s phone)."/>
      <requirements
                    value="People have (primary) ways to contact them in some way such as phone, email."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.telecom"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="ContactPoint"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-13, PID-14, PID-40"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="telecom"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".telecom"/>
      </mapping>
    </element>
    <element id="Patient.gender">
      <path value="Patient.gender"/>
      <short value="male | female | other | unknown"/>
      <definition
                  value="Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes."/>
      <comment
               value="The gender may not match the biological sex as determined by genetics, or the individual&#39;s preferred identification. Note that for both humans and particularly animals, there are other legitimate possibilities than M and F, though the vast majority of systems and contexts only support M and F.  Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific gender aspect of interest (anatomical, chromosonal, social, etc.)  However, because these observations are infrequently recorded, defaulting to the administrative gender is common practice.  Where such defaulting occurs, rule enforcement should allow for the variation between administrative and biological, chromosonal and other gender aspects.  For example, an alert about a hysterectomy on a male should be handled as a warning or overrideable error, not a &quot;hard&quot; error."/>
      <requirements
                    value="Needed for identification of the individual, in combination with (at least) name and birth date. Gender of individual drives many clinical processes."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.gender"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <isSummary value="true"/>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="AdministrativeGender"/>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
          <valueBoolean value="true"/>
        </extension>
        <strength value="required"/>
        <description
                     value="The gender of a person used for administrative purposes."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/administrative-gender"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="PID-8"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".patient.administrativeGenderCode"/>
      </mapping>
    </element>
    <element id="Patient.birthDate">
      <path value="Patient.birthDate"/>
      <short value="The date of birth for the individual"/>
      <definition value="The date of birth for the individual."/>
      <comment
               value="At least an estimated year should be provided as a guess if the real DOB is unknown  There is a standard extension &quot;patient-birthTime&quot; available that should be used where Time is required (such as in maternaty/infant care systems)."/>
      <requirements
                    value="Age of the individual drives many clinical processes."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.birthDate"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="date"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-7"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".patient.birthTime"/>
      </mapping>
      <mapping>
        <identity value="loinc"/>
        <map value="21112-8"/>
      </mapping>
    </element>
    <element id="Patient.deceased[x]">
      <path value="Patient.deceased[x]"/>
      <short value="Indicates if the individual is deceased or not"/>
      <definition value="Indicates if the individual is deceased or not."/>
      <comment
               value="If there&#39;s no value in the instance it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.

This element is labeled as a modifier because once a patient is marked as deceased, the actions that are appropriate to perform on the patient may be significantly different."/>
      <requirements
                    value="The fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.deceased[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-30  (bool) and PID-29 (datetime)"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.address">
      <path value="Patient.address"/>
      <short value="Addresses for the individual"/>
      <definition value="Addresses for the individual."/>
      <comment
               value="Patient may have multiple addresses with different uses or applicable periods."/>
      <requirements
                    value="May need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.address"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Address"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-11"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="addr"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".addr"/>
      </mapping>
    </element>
    <element id="Patient.maritalStatus">
      <path value="Patient.maritalStatus"/>
      <short value="Marital (civil) status of a patient"/>
      <definition
                  value="This field contains a patient&#39;s most recent marital (civil) status."/>
      <requirements value="Most, if not all systems capture it."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.maritalStatus"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="MaritalStatus"/>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
          <valueBoolean value="true"/>
        </extension>
        <strength value="extensible"/>
        <description value="The domestic partnership status of a person."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/marital-status"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="PID-16"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="player[classCode=PSN]/maritalStatusCode"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".patient.maritalStatusCode"/>
      </mapping>
    </element>
    <element id="Patient.multipleBirth[x]">
      <path value="Patient.multipleBirth[x]"/>
      <short value="Whether patient is part of a multiple birth"/>
      <definition
                  value="Indicates whether the patient is part of a multiple (bool) or indicates the actual birth order (integer)."/>
      <comment
               value="Where the valueInteger is provided, the number is the birth number in the sequence.
E.g. The middle birth in tripplets would be valueInteger=2 and the third born would have valueInteger=3
If a bool value was provided for this tripplets examle, then all 3 patient records would have valueBool=true (the ordering is not indicated)."/>
      <requirements
                    value="For disambiguation of multiple-birth children, especially relevant where the care provider doesn&#39;t meet the patient, such as labs."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.multipleBirth[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="PID-24 (bool), PID-25 (integer)"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd,  player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.photo">
      <path value="Patient.photo"/>
      <short value="Image of the patient"/>
      <definition value="Image of the patient."/>
      <requirements
                    value="Many EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.photo"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Attachment"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="OBX-5 - needs a profile"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact">
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name">
        <valueString value="Contact"/>
      </extension>
      <path value="Patient.contact"/>
      <short
             value="A contact party (e.g. guardian, partner, friend) for the patient"/>
      <definition
                  value="A contact party (e.g. guardian, partner, friend) for the patient."/>
      <comment
               value="Contact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact."/>
      <requirements
                    value="Need to track people you can contact about the patient."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.contact"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <constraint>
        <key value="ele-1"/>
        <severity value="error"/>
        <human value="All FHIR elements must have a @value or children"/>
        <expression value="hasValue() | (children().count() &gt; id.count())"/>
        <xpath value="@value|f:*|h:div"/>
        <source value="Element"/>
      </constraint>
      <constraint>
        <key value="pat-1"/>
        <severity value="error"/>
        <human
               value="SHALL at least contain a contact&#39;s details or a reference to an organization"/>
        <expression
                    value="name.exists() or telecom.exists() or address.exists() or organization.exists()"/>
        <xpath
               value="exists(f:name) or exists(f:telecom) or exists(f:address) or exists(f:organization)"/>
      </constraint>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.id">
      <path value="Patient.contact.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition
                  value="unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Element.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.extension">
      <path value="Patient.contact.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition
                  value="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
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Element.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.modifierExtension">
      <path value="Patient.contact.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions."/>
      <comment
               value="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 value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="BackboneElement.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.contact.relationship">
      <path value="Patient.contact.relationship"/>
      <short value="The kind of relationship"/>
      <definition
                  value="The nature of the relationship between the patient and the contact person."/>
      <requirements
                    value="Used to determine which contact person is the most relevant to approach, depending on circumstances."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.contact.relationship"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="ContactRelationship"/>
        </extension>
        <strength value="extensible"/>
        <description
                     value="The nature of the relationship between a patient and a contact person for that patient."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/v2-0131"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-7, NK1-3"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="code"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.name">
      <path value="Patient.contact.name"/>
      <short value="A name associated with the contact person"/>
      <definition value="A name associated with the contact person."/>
      <requirements
                    value="Contact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.contact.name"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="HumanName"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-2"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="name"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.telecom">
      <path value="Patient.contact.telecom"/>
      <short value="A contact detail for the person"/>
      <definition
                  value="A contact detail for the person, e.g. a telephone number or an email address."/>
      <comment
               value="Contact may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently, and also to help with identification."/>
      <requirements
                    value="People have (primary) ways to contact them in some way such as phone, email."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.contact.telecom"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="ContactPoint"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-5, NK1-6, NK1-40"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="telecom"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.address">
      <path value="Patient.contact.address"/>
      <short value="Address for the contact person"/>
      <definition value="Address for the contact person."/>
      <requirements
                    value="Need to keep track where the contact person can be contacted per postal mail or visited."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.contact.address"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Address"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-4"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="addr"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.gender">
      <path value="Patient.contact.gender"/>
      <short value="male | female | other | unknown"/>
      <definition
                  value="Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes."/>
      <requirements value="Needed to address the person correctly."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.contact.gender"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="AdministrativeGender"/>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
          <valueBoolean value="true"/>
        </extension>
        <strength value="required"/>
        <description
                     value="The gender of a person used for administrative purposes."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/administrative-gender"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-15"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.organization">
      <path value="Patient.contact.organization"/>
      <short value="Organization that is associated with the contact"/>
      <definition
                  value="Organization on behalf of which the contact is acting or for which the contact is working."/>
      <requirements
                    value="For guardians or business related contacts, the organization is relevant."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.contact.organization"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <targetProfile
                       value="http://hl7.org/fhir/StructureDefinition/Organization"/>
      </type>
      <condition value="pat-1"/>
      <mapping>
        <identity value="v2"/>
        <map value="NK1-13, NK1-30, NK1-31, NK1-32, NK1-41"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="scoper"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.contact.period">
      <path value="Patient.contact.period"/>
      <short
             value="The period during which this contact person or organization is valid to be contacted relating to this patient"/>
      <definition
                  value="The period during which this contact person or organization is valid to be contacted relating to this patient."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.contact.period"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Period"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="effectiveTime"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal">
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name">
        <valueString value="Animal"/>
      </extension>
      <path value="Patient.animal"/>
      <short value="This patient is known to be an animal (non-human)"/>
      <definition value="This patient is known to be an animal."/>
      <comment
               value="The animal element is labeled &quot;Is Modifier&quot; since patients may be non-human. Systems SHALL either handle patient details appropriately (e.g. inform users patient is not human) or reject declared animal records.   The absense of the animal element does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required.  (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal)."/>
      <requirements
                    value="Many clinical systems are extended to care for animal patients as well as human."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.animal"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <constraint>
        <key value="ele-1"/>
        <severity value="error"/>
        <human value="All FHIR elements must have a @value or children"/>
        <expression value="hasValue() | (children().count() &gt; id.count())"/>
        <xpath value="@value|f:*|h:div"/>
        <source value="Element"/>
      </constraint>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="player[classCode=ANM]"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal.id">
      <path value="Patient.animal.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition
                  value="unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Element.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal.extension">
      <path value="Patient.animal.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition
                  value="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
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Element.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal.modifierExtension">
      <path value="Patient.animal.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions."/>
      <comment
               value="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 value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="BackboneElement.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.animal.species">
      <path value="Patient.animal.species"/>
      <short value="E.g. Dog, Cow"/>
      <definition
                  value="Identifies the high level taxonomic categorization of the kind of animal."/>
      <comment
               value="If the patient is non-human, at least a species SHALL be specified. Species SHALL be a widely recognised taxonomic classification.  It may or may not be Linnaean taxonomy and may or may not be at the level of species. If the level is finer than species--such as a breed code--the code system used SHALL allow inference of the species.  (The common example is that the word &quot;Hereford&quot; does not allow inference of the species Bos taurus, because there is a Hereford pig breed, but the SNOMED CT code for &quot;Hereford Cattle Breed&quot; does.)."/>
      <requirements value="Need to know what kind of animal."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Patient.animal.species"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <isSummary value="true"/>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="AnimalSpecies"/>
        </extension>
        <strength value="example"/>
        <description value="The species of an animal."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/animal-species"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="PID-35"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="code"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal.breed">
      <path value="Patient.animal.breed"/>
      <short value="E.g. Poodle, Angus"/>
      <definition
                  value="Identifies the detailed categorization of the kind of animal."/>
      <comment
               value="Breed MAY be used to provide further taxonomic or non-taxonomic classification.  It may involve local or proprietary designation--such as commercial strain--and/or additional information such as production type."/>
      <requirements
                    value="May need to know the specific kind within the species."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.animal.breed"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <isSummary value="true"/>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="AnimalBreed"/>
        </extension>
        <strength value="example"/>
        <description value="The breed of an animal."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/animal-breeds"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="PID-37"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="playedRole[classCode=GEN]/scoper[classCode=ANM, determinerCode=KIND]/code"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.animal.genderStatus">
      <path value="Patient.animal.genderStatus"/>
      <short value="E.g. Neutered, Intact"/>
      <definition
                  value="Indicates the current state of the animal&#39;s reproductive organs."/>
      <requirements
                    value="Gender status can affect housing and animal behavior."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.animal.genderStatus"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <isSummary value="true"/>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="AnimalGenderStatus"/>
        </extension>
        <strength value="example"/>
        <description value="The state of the animal&#39;s reproductive organs."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/animal-genderstatus"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="N/A"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="genderStatusCode"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.communication">
      <path value="Patient.communication"/>
      <short
             value="A list of Languages which may be used to communicate with the patient about his or her health"/>
      <definition
                  value="Languages which may be used to communicate with the patient about his or her health."/>
      <comment
               value="If no language is specified, this *implies* that the default local language is spoken.  If you need to convey proficiency for multiple modes then you need multiple Patient.Communication associations.   For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required."/>
      <requirements
                    value="If a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency is an important things to keep track of both for patient and other persons of interest."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.communication"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <constraint>
        <key value="ele-1"/>
        <severity value="error"/>
        <human value="All FHIR elements must have a @value or children"/>
        <expression value="hasValue() | (children().count() &gt; id.count())"/>
        <xpath value="@value|f:*|h:div"/>
        <source value="Element"/>
      </constraint>
      <mapping>
        <identity value="rim"/>
        <map value="LanguageCommunication"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="patient.languageCommunication"/>
      </mapping>
    </element>
    <element id="Patient.communication.id">
      <path value="Patient.communication.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition
                  value="unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Element.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.communication.extension">
      <path value="Patient.communication.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition
                  value="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
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Element.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.communication.modifierExtension">
      <path value="Patient.communication.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions."/>
      <comment
               value="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 value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="BackboneElement.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.communication.language">
      <path value="Patient.communication.language"/>
      <short
             value="The language which can be used to communicate with the patient about his or her health"/>
      <definition
                  value="The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. &quot;en&quot; for English, or &quot;en-US&quot; for American English versus &quot;en-EN&quot; for England English."/>
      <comment
               value="The structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type."/>
      <requirements
                    value="Most systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Patient.communication.language"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="CodeableConcept"/>
      </type>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet">
          <valueReference>
            <reference value="http://hl7.org/fhir/ValueSet/all-languages"/>
          </valueReference>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="Language"/>
        </extension>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding">
          <valueBoolean value="true"/>
        </extension>
        <strength value="extensible"/>
        <description value="A human language."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/languages"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2"/>
        <map value="PID-15, LAN-2"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map
             value="player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".languageCode"/>
      </mapping>
    </element>
    <element id="Patient.communication.preferred">
      <path value="Patient.communication.preferred"/>
      <short value="Language preference indicator"/>
      <definition
                  value="Indicates whether or not the patient prefers this language (over other languages he masters up a certain level)."/>
      <comment
               value="This language is specifically identified for communicating healthcare information."/>
      <requirements
                    value="People that master multiple languages up to certain level may prefer one or more, i.e. feel more confident in communicating in a particular language making other languages sort of a fall back method."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.communication.preferred"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="PID-15"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="preferenceInd"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".preferenceInd"/>
      </mapping>
    </element>
    <element id="Patient.generalPractitioner">
      <path value="Patient.generalPractitioner"/>
      <short value="Patient&#39;s nominated primary care provider"/>
      <definition value="Patient&#39;s nominated care provider."/>
      <comment
               value="This may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disablity setting, or even organization that will provide people to perform the care provider roles.

It is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources."/>
      <alias value="careProvider"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.generalPractitioner"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Reference"/>
        <targetProfile
                       value="http://hl7.org/fhir/StructureDefinition/Organization"/>
      </type>
      <type>
        <code value="Reference"/>
        <targetProfile
                       value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
      </type>
      <mapping>
        <identity value="v2"/>
        <map value="PD1-4"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="subjectOf.CareEvent.performer.AssignedEntity"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.managingOrganization">
      <path value="Patient.managingOrganization"/>
      <short value="Organization that is the custodian of the patient record"/>
      <definition
                  value="Organization that is the custodian of the patient record."/>
      <comment
               value="There is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association)."/>
      <requirements
                    value="Need to know who recognizes this patient record, manages and updates it."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Patient.managingOrganization"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <targetProfile
                       value="http://hl7.org/fhir/StructureDefinition/Organization"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="scoper"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value=".providerOrganization"/>
      </mapping>
    </element>
    <element id="Patient.link">
      <path value="Patient.link"/>
      <short
             value="Link to another patient resource that concerns the same actual person"/>
      <definition
                  value="Link to another patient resource that concerns the same actual patient."/>
      <comment
               value="There is no assumption that linked patient records have mutual links. 

This element is labelled as a modifier because it may not be the main Patient resource, and the referenced patient should be used instead of this Patient record. This is when the link.type value is &#39;replaced-by&#39;."/>
      <requirements
                    value="There are multiple usecases: 

* Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and * Distribution of patient information across multiple servers."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Patient.link"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <constraint>
        <key value="ele-1"/>
        <severity value="error"/>
        <human value="All FHIR elements must have a @value or children"/>
        <expression value="hasValue() | (children().count() &gt; id.count())"/>
        <xpath value="@value|f:*|h:div"/>
        <source value="Element"/>
      </constraint>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="outboundLink"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.link.id">
      <path value="Patient.link.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition
                  value="unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="Element.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.link.extension">
      <path value="Patient.link.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition
                  value="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
               value="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 value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Element.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.link.modifierExtension">
      <path value="Patient.link.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition
                  value="May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions."/>
      <comment
               value="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 value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="BackboneElement.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element id="Patient.link.other">
      <path value="Patient.link.other"/>
      <short
             value="The other patient or related person resource that the link refers to"/>
      <definition value="The other patient resource that the link refers to."/>
      <comment
               value="Referencing a RelatedPerson here removes the need to use a Person record to associate a Patient and RelatedPerson as the same individual."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Patient.link.other"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <type>
        <code value="Reference"/>
        <targetProfile
                       value="http://hl7.org/fhir/StructureDefinition/RelatedPerson"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="v2"/>
        <map value="PID-3, MRG-1"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <map value="id"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="Patient.link.type">
      <path value="Patient.link.type"/>
      <short value="replaced-by | replaces | refer | seealso - type of link"/>
      <definition
                  value="The type of link between this patient resource and another patient resource."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="Patient.link.type"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <isSummary value="true"/>
      <binding>
        <extension
                   url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
          <valueString value="LinkType"/>
        </extension>
        <strength value="required"/>
        <description
                     value="The type of link between this patient resource and another patient resource."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/link-type"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="rim"/>
        <map value="typeCode"/>
      </mapping>
      <mapping>
        <identity value="cda"/>
        <map value="n/a"/>
      </mapping>
    </element>
  </snapshot>
  <differential>
    <element id="Patient.active">
      <path value="Patient.active"/>
      <min value="1"/>
    </element>
  </differential>
</StructureDefinition>
{
  "resourceType" : "StructureDefinition",
  "id" : "test-ig-sd",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns="http://www.w3.org/1999/xhtml"><table border="0" cellpadding="0" cellspacing="0" style="border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><tr style="border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="The logical name of the element">Name</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Information about the use of the element">Flags</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Minimum and Maximum # of times the the element can appear in the instance">Card.</a></th><th style="width: 100px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Reference to the type of the element">Type</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="../../../publish/formats.html#table" title="Additional information about the element">Description &amp; Constraints</a><span style="float: right"><a href="../../../publish/formats.html#table" title="Legend for this format"><img src="../../../publish/help16.png" alt="doco" style="background-color: inherit"/></a></span></th></tr><tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white;"><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck0.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: white; background-color: inherit" title="Element" class="hierarchy"/> <a href="profile-sd.html#definitions#Patient.active" title="null">active</a><a name="Patient.active"> </a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">1..1</td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a style="opacity: 0.4" href="../../../publish/datatypes.html#boolean">boolean</a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/></tr>
<tr><td colspan="5" class="hierarchy"><br/><a href="../../../publish/formats.html#table" title="Legend for this format"><img src="../../../publish/help16.png" alt="doco" style="background-color: inherit"/> Documentation for this format</a></td></tr></table></div>"
  },
  "url" : "http://hl7.org/fhir/test/StructureDefinition/test-ig-sd",
  "name" : "Test Profile",
  "title" : "Test Patient",
  "status" : "draft",
  "experimental" : true,
  "date" : "2016-06-21T17:44:00+10:00",
  "publisher" : "FHIR Project",
  "description" : "Test Profile to test publishing",
  "fhirVersion" : "3.1.0",
  "mapping" : [
    {
      "identity" : "tst",
      "uri" : "http://testuri.org/",
      "name" : "Test Mapping"
    },
    {
      "identity" : "rim",
      "uri" : "http://hl7.org/v3",
      "name" : "RIM Mapping"
    },
    {
      "identity" : "cda",
      "uri" : "http://hl7.org/v3/cda",
      "name" : "CDA (R2)"
    },
    {
      "identity" : "w5",
      "uri" : "http://hl7.org/fhir/w5",
      "name" : "W5 Mapping"
    },
    {
      "identity" : "v2",
      "uri" : "http://hl7.org/v2",
      "name" : "HL7 v2 Mapping"
    },
    {
      "identity" : "loinc",
      "uri" : "http://loinc.org",
      "name" : "LOINC code for the element"
    }
  ],
  "kind" : "resource",
  "abstract" : false,
  "type" : "Patient",
  "baseDefinition" : "http://hl7.org/fhir/StructureDefinition/Patient",
  "derivation" : "constraint",
  "snapshot" : {
    "element" : [
      {
        "id" : "Patient",
        "path" : "Patient",
        "short" : "Information about an individual or animal receiving health care services",
        "definition" : "Demographics and other administrative information about an individual or animal receiving care or other health-related services.",
        "alias" : [
          "SubjectOfCare Client Resident"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient",
          "min" : 0,
          "max" : "*"
        },
        "constraint" : [
          {
            "key" : "dom-2",
            "severity" : "error",
            "human" : "If the resource is contained in another resource, it SHALL NOT contain nested Resources",
            "expression" : "contained.contained.empty()",
            "xpath" : "not(parent::f:contained and f:contained)",
            "source" : "DomainResource"
          },
          {
            "key" : "dom-1",
            "severity" : "error",
            "human" : "If the resource is contained in another resource, it SHALL NOT contain any narrative",
            "expression" : "contained.text.empty()",
            "xpath" : "not(parent::f:contained and f:text)",
            "source" : "DomainResource"
          },
          {
            "key" : "dom-4",
            "severity" : "error",
            "human" : "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated",
            "expression" : "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()",
            "xpath" : "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))",
            "source" : "DomainResource"
          },
          {
            "key" : "dom-3",
            "severity" : "error",
            "human" : "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource",
            "expression" : "contained.where(('#'+id in %resource.descendants().reference).not()).empty()",
            "xpath" : "not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))",
            "source" : "DomainResource"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "Entity. Role, or Act"
          },
          {
            "identity" : "rim",
            "map" : "Patient[classCode=PAT]"
          },
          {
            "identity" : "cda",
            "map" : "ClinicalDocument.recordTarget.patientRole"
          },
          {
            "identity" : "w5",
            "map" : "administrative.individual"
          }
        ]
      },
      {
        "id" : "Patient.id",
        "path" : "Patient.id",
        "short" : "Logical id of this artifact",
        "definition" : "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
        "comment" : "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Resource.id",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "id"
          }
        ],
        "isSummary" : true
      },
      {
        "id" : "Patient.meta",
        "path" : "Patient.meta",
        "short" : "Metadata about the resource",
        "definition" : "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Resource.meta",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Meta"
          }
        ],
        "isSummary" : true
      },
      {
        "id" : "Patient.implicitRules",
        "path" : "Patient.implicitRules",
        "short" : "A set of rules under which this content was created",
        "definition" : "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content.",
        "comment" : "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. 

This element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Resource.implicitRules",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "uri"
          }
        ],
        "isModifier" : true,
        "isSummary" : true
      },
      {
        "id" : "Patient.language",
        "path" : "Patient.language",
        "short" : "Language of the resource content",
        "definition" : "The base language in which the resource is written.",
        "comment" : "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies  to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource  Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Resource.language",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code"
          }
        ],
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet",
              "valueReference" : {
                "reference" : "http://hl7.org/fhir/ValueSet/all-languages"
              }
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "Language"
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean" : true
            }
          ],
          "strength" : "extensible",
          "description" : "A human language.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/languages"
          }
        }
      },
      {
        "id" : "Patient.text",
        "path" : "Patient.text",
        "short" : "Text summary of the resource, for human interpretation",
        "definition" : "A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
        "comment" : "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied).  This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded in formation is added later.",
        "alias" : [
          "narrative",
          "html",
          "xhtml",
          "display"
        ],
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "DomainResource.text",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Narrative"
          }
        ],
        "condition" : [
          "dom-1"
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "Act.text?"
          }
        ]
      },
      {
        "id" : "Patient.contained",
        "path" : "Patient.contained",
        "short" : "Contained, inline Resources",
        "definition" : "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
        "comment" : "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again.",
        "alias" : [
          "inline resources",
          "anonymous resources",
          "contained resources"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "DomainResource.contained",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Resource"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.extension",
        "path" : "Patient.extension",
        "short" : "Additional Content defined by implementations",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the 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" : "DomainResource.extension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.modifierExtension",
        "path" : "Patient.modifierExtension",
        "short" : "Extensions that cannot be ignored",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.",
        "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" : "DomainResource.modifierExtension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "isModifier" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.identifier",
        "path" : "Patient.identifier",
        "short" : "An identifier for this patient",
        "definition" : "An identifier for this patient.",
        "requirements" : "Patients are almost always assigned specific numerical identifiers.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.identifier",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Identifier"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-3"
          },
          {
            "identity" : "rim",
            "map" : "id"
          },
          {
            "identity" : "cda",
            "map" : ".id"
          },
          {
            "identity" : "w5",
            "map" : "id"
          }
        ]
      },
      {
        "id" : "Patient.active",
        "path" : "Patient.active",
        "short" : "Whether this patient's record is in active use",
        "definition" : "Whether this patient record is in active use.",
        "comment" : "Default is true. If a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient

This element is labeled as a modifier because when the patient record is marked as not active it is not expected to be used/referenced without being changed back to active.",
        "requirements" : "Need to be able to mark a patient record as not to be used because it was created in error.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "Patient.active",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "boolean"
          }
        ],
        "defaultValueBoolean" : true,
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "statusCode"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          },
          {
            "identity" : "w5",
            "map" : "status"
          }
        ]
      },
      {
        "id" : "Patient.name",
        "path" : "Patient.name",
        "short" : "A name associated with the patient",
        "definition" : "A name associated with the individual.",
        "comment" : "A patient may have multiple names with different uses or applicable periods. For animals, the name is a "HumanName" in the sense that is assigned and used by humans and has the same patterns.",
        "requirements" : "Need to be able to track the patient by multiple names. Examples are your official name and a partner name.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.name",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "HumanName"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-5, PID-9"
          },
          {
            "identity" : "rim",
            "map" : "name"
          },
          {
            "identity" : "cda",
            "map" : ".patient.name"
          }
        ]
      },
      {
        "id" : "Patient.telecom",
        "path" : "Patient.telecom",
        "short" : "A contact detail for the individual",
        "definition" : "A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted.",
        "comment" : "A Patient may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently and also to help with identification. The address may not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner's phone).",
        "requirements" : "People have (primary) ways to contact them in some way such as phone, email.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.telecom",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "ContactPoint"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-13, PID-14, PID-40"
          },
          {
            "identity" : "rim",
            "map" : "telecom"
          },
          {
            "identity" : "cda",
            "map" : ".telecom"
          }
        ]
      },
      {
        "id" : "Patient.gender",
        "path" : "Patient.gender",
        "short" : "male | female | other | unknown",
        "definition" : "Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes.",
        "comment" : "The gender may not match the biological sex as determined by genetics, or the individual's preferred identification. Note that for both humans and particularly animals, there are other legitimate possibilities than M and F, though the vast majority of systems and contexts only support M and F.  Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific gender aspect of interest (anatomical, chromosonal, social, etc.)  However, because these observations are infrequently recorded, defaulting to the administrative gender is common practice.  Where such defaulting occurs, rule enforcement should allow for the variation between administrative and biological, chromosonal and other gender aspects.  For example, an alert about a hysterectomy on a male should be handled as a warning or overrideable error, not a "hard" error.",
        "requirements" : "Needed for identification of the individual, in combination with (at least) name and birth date. Gender of individual drives many clinical processes.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.gender",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code"
          }
        ],
        "isSummary" : true,
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "AdministrativeGender"
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean" : true
            }
          ],
          "strength" : "required",
          "description" : "The gender of a person used for administrative purposes.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/administrative-gender"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-8"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender"
          },
          {
            "identity" : "cda",
            "map" : ".patient.administrativeGenderCode"
          }
        ]
      },
      {
        "id" : "Patient.birthDate",
        "path" : "Patient.birthDate",
        "short" : "The date of birth for the individual",
        "definition" : "The date of birth for the individual.",
        "comment" : "At least an estimated year should be provided as a guess if the real DOB is unknown  There is a standard extension "patient-birthTime" available that should be used where Time is required (such as in maternaty/infant care systems).",
        "requirements" : "Age of the individual drives many clinical processes.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.birthDate",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "date"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-7"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime"
          },
          {
            "identity" : "cda",
            "map" : ".patient.birthTime"
          },
          {
            "identity" : "loinc",
            "map" : "21112-8"
          }
        ]
      },
      {
        "id" : "Patient.deceased[x]",
        "path" : "Patient.deceased[x]",
        "short" : "Indicates if the individual is deceased or not",
        "definition" : "Indicates if the individual is deceased or not.",
        "comment" : "If there's no value in the instance it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.

This element is labeled as a modifier because once a patient is marked as deceased, the actions that are appropriate to perform on the patient may be significantly different.",
        "requirements" : "The fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.deceased[x]",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "boolean"
          },
          {
            "code" : "dateTime"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-30  (bool) and PID-29 (datetime)"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.address",
        "path" : "Patient.address",
        "short" : "Addresses for the individual",
        "definition" : "Addresses for the individual.",
        "comment" : "Patient may have multiple addresses with different uses or applicable periods.",
        "requirements" : "May need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.address",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Address"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-11"
          },
          {
            "identity" : "rim",
            "map" : "addr"
          },
          {
            "identity" : "cda",
            "map" : ".addr"
          }
        ]
      },
      {
        "id" : "Patient.maritalStatus",
        "path" : "Patient.maritalStatus",
        "short" : "Marital (civil) status of a patient",
        "definition" : "This field contains a patient's most recent marital (civil) status.",
        "requirements" : "Most, if not all systems capture it.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.maritalStatus",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "MaritalStatus"
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean" : true
            }
          ],
          "strength" : "extensible",
          "description" : "The domestic partnership status of a person.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/marital-status"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-16"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN]/maritalStatusCode"
          },
          {
            "identity" : "cda",
            "map" : ".patient.maritalStatusCode"
          }
        ]
      },
      {
        "id" : "Patient.multipleBirth[x]",
        "path" : "Patient.multipleBirth[x]",
        "short" : "Whether patient is part of a multiple birth",
        "definition" : "Indicates whether the patient is part of a multiple (bool) or indicates the actual birth order (integer).",
        "comment" : "Where the valueInteger is provided, the number is the birth number in the sequence.
E.g. The middle birth in tripplets would be valueInteger=2 and the third born would have valueInteger=3
If a bool value was provided for this tripplets examle, then all 3 patient records would have valueBool=true (the ordering is not indicated).",
        "requirements" : "For disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.multipleBirth[x]",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "boolean"
          },
          {
            "code" : "integer"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-24 (bool), PID-25 (integer)"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd,  player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.photo",
        "path" : "Patient.photo",
        "short" : "Image of the patient",
        "definition" : "Image of the patient.",
        "requirements" : "Many EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.photo",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Attachment"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "OBX-5 - needs a profile"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name",
            "valueString" : "Contact"
          }
        ],
        "path" : "Patient.contact",
        "short" : "A contact party (e.g. guardian, partner, friend) for the patient",
        "definition" : "A contact party (e.g. guardian, partner, friend) for the patient.",
        "comment" : "Contact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact.",
        "requirements" : "Need to track people you can contact about the patient.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.contact",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "BackboneElement"
          }
        ],
        "constraint" : [
          {
            "key" : "ele-1",
            "severity" : "error",
            "human" : "All FHIR elements must have a @value or children",
            "expression" : "hasValue() | (children().count() > id.count())",
            "xpath" : "@value|f:*|h:div",
            "source" : "Element"
          },
          {
            "key" : "pat-1",
            "severity" : "error",
            "human" : "SHALL at least contain a contact's details or a reference to an organization",
            "expression" : "name.exists() or telecom.exists() or address.exists() or organization.exists()",
            "xpath" : "exists(f:name) or exists(f:telecom) or exists(f:address) or exists(f:organization)"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.id",
        "path" : "Patient.contact.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" : "Patient.contact.extension",
        "path" : "Patient.contact.extension",
        "short" : "Additional Content defined by implementations",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element. 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" : "Patient.contact.modifierExtension",
        "path" : "Patient.contact.modifierExtension",
        "short" : "Extensions that cannot be ignored",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.",
        "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",
          "modifiers"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "BackboneElement.modifierExtension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.contact.relationship",
        "path" : "Patient.contact.relationship",
        "short" : "The kind of relationship",
        "definition" : "The nature of the relationship between the patient and the contact person.",
        "requirements" : "Used to determine which contact person is the most relevant to approach, depending on circumstances.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.contact.relationship",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "ContactRelationship"
            }
          ],
          "strength" : "extensible",
          "description" : "The nature of the relationship between a patient and a contact person for that patient.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/v2-0131"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-7, NK1-3"
          },
          {
            "identity" : "rim",
            "map" : "code"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.name",
        "path" : "Patient.contact.name",
        "short" : "A name associated with the contact person",
        "definition" : "A name associated with the contact person.",
        "requirements" : "Contact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.contact.name",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "HumanName"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-2"
          },
          {
            "identity" : "rim",
            "map" : "name"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.telecom",
        "path" : "Patient.contact.telecom",
        "short" : "A contact detail for the person",
        "definition" : "A contact detail for the person, e.g. a telephone number or an email address.",
        "comment" : "Contact may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently, and also to help with identification.",
        "requirements" : "People have (primary) ways to contact them in some way such as phone, email.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.contact.telecom",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "ContactPoint"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-5, NK1-6, NK1-40"
          },
          {
            "identity" : "rim",
            "map" : "telecom"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.address",
        "path" : "Patient.contact.address",
        "short" : "Address for the contact person",
        "definition" : "Address for the contact person.",
        "requirements" : "Need to keep track where the contact person can be contacted per postal mail or visited.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.contact.address",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Address"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-4"
          },
          {
            "identity" : "rim",
            "map" : "addr"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.gender",
        "path" : "Patient.contact.gender",
        "short" : "male | female | other | unknown",
        "definition" : "Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes.",
        "requirements" : "Needed to address the person correctly.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.contact.gender",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code"
          }
        ],
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "AdministrativeGender"
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean" : true
            }
          ],
          "strength" : "required",
          "description" : "The gender of a person used for administrative purposes.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/administrative-gender"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-15"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.organization",
        "path" : "Patient.contact.organization",
        "short" : "Organization that is associated with the contact",
        "definition" : "Organization on behalf of which the contact is acting or for which the contact is working.",
        "requirements" : "For guardians or business related contacts, the organization is relevant.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.contact.organization",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/Organization"
          }
        ],
        "condition" : [
          "pat-1"
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "NK1-13, NK1-30, NK1-31, NK1-32, NK1-41"
          },
          {
            "identity" : "rim",
            "map" : "scoper"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.contact.period",
        "path" : "Patient.contact.period",
        "short" : "The period during which this contact person or organization is valid to be contacted relating to this patient",
        "definition" : "The period during which this contact person or organization is valid to be contacted relating to this patient.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.contact.period",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Period"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "effectiveTime"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.animal",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name",
            "valueString" : "Animal"
          }
        ],
        "path" : "Patient.animal",
        "short" : "This patient is known to be an animal (non-human)",
        "definition" : "This patient is known to be an animal.",
        "comment" : "The animal element is labeled "Is Modifier" since patients may be non-human. Systems SHALL either handle patient details appropriately (e.g. inform users patient is not human) or reject declared animal records.   The absense of the animal element does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required.  (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal).",
        "requirements" : "Many clinical systems are extended to care for animal patients as well as human.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.animal",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "BackboneElement"
          }
        ],
        "constraint" : [
          {
            "key" : "ele-1",
            "severity" : "error",
            "human" : "All FHIR elements must have a @value or children",
            "expression" : "hasValue() | (children().count() > id.count())",
            "xpath" : "@value|f:*|h:div",
            "source" : "Element"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "player[classCode=ANM]"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.animal.id",
        "path" : "Patient.animal.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" : "Patient.animal.extension",
        "path" : "Patient.animal.extension",
        "short" : "Additional Content defined by implementations",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element. 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" : "Patient.animal.modifierExtension",
        "path" : "Patient.animal.modifierExtension",
        "short" : "Extensions that cannot be ignored",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.",
        "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",
          "modifiers"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "BackboneElement.modifierExtension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.animal.species",
        "path" : "Patient.animal.species",
        "short" : "E.g. Dog, Cow",
        "definition" : "Identifies the high level taxonomic categorization of the kind of animal.",
        "comment" : "If the patient is non-human, at least a species SHALL be specified. Species SHALL be a widely recognised taxonomic classification.  It may or may not be Linnaean taxonomy and may or may not be at the level of species. If the level is finer than species--such as a breed code--the code system used SHALL allow inference of the species.  (The common example is that the word "Hereford" does not allow inference of the species Bos taurus, because there is a Hereford pig breed, but the SNOMED CT code for "Hereford Cattle Breed" does.).",
        "requirements" : "Need to know what kind of animal.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "Patient.animal.species",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "isSummary" : true,
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "AnimalSpecies"
            }
          ],
          "strength" : "example",
          "description" : "The species of an animal.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/animal-species"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-35"
          },
          {
            "identity" : "rim",
            "map" : "code"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.animal.breed",
        "path" : "Patient.animal.breed",
        "short" : "E.g. Poodle, Angus",
        "definition" : "Identifies the detailed categorization of the kind of animal.",
        "comment" : "Breed MAY be used to provide further taxonomic or non-taxonomic classification.  It may involve local or proprietary designation--such as commercial strain--and/or additional information such as production type.",
        "requirements" : "May need to know the specific kind within the species.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.animal.breed",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "isSummary" : true,
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "AnimalBreed"
            }
          ],
          "strength" : "example",
          "description" : "The breed of an animal.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/animal-breeds"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-37"
          },
          {
            "identity" : "rim",
            "map" : "playedRole[classCode=GEN]/scoper[classCode=ANM, determinerCode=KIND]/code"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.animal.genderStatus",
        "path" : "Patient.animal.genderStatus",
        "short" : "E.g. Neutered, Intact",
        "definition" : "Indicates the current state of the animal's reproductive organs.",
        "requirements" : "Gender status can affect housing and animal behavior.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.animal.genderStatus",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "isSummary" : true,
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "AnimalGenderStatus"
            }
          ],
          "strength" : "example",
          "description" : "The state of the animal's reproductive organs.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/animal-genderstatus"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "N/A"
          },
          {
            "identity" : "rim",
            "map" : "genderStatusCode"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.communication",
        "path" : "Patient.communication",
        "short" : "A list of Languages which may be used to communicate with the patient about his or her health",
        "definition" : "Languages which may be used to communicate with the patient about his or her health.",
        "comment" : "If no language is specified, this *implies* that the default local language is spoken.  If you need to convey proficiency for multiple modes then you need multiple Patient.Communication associations.   For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required.",
        "requirements" : "If a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency is an important things to keep track of both for patient and other persons of interest.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.communication",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "BackboneElement"
          }
        ],
        "constraint" : [
          {
            "key" : "ele-1",
            "severity" : "error",
            "human" : "All FHIR elements must have a @value or children",
            "expression" : "hasValue() | (children().count() > id.count())",
            "xpath" : "@value|f:*|h:div",
            "source" : "Element"
          }
        ],
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "LanguageCommunication"
          },
          {
            "identity" : "cda",
            "map" : "patient.languageCommunication"
          }
        ]
      },
      {
        "id" : "Patient.communication.id",
        "path" : "Patient.communication.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" : "Patient.communication.extension",
        "path" : "Patient.communication.extension",
        "short" : "Additional Content defined by implementations",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element. 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" : "Patient.communication.modifierExtension",
        "path" : "Patient.communication.modifierExtension",
        "short" : "Extensions that cannot be ignored",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.",
        "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",
          "modifiers"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "BackboneElement.modifierExtension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.communication.language",
        "path" : "Patient.communication.language",
        "short" : "The language which can be used to communicate with the patient about his or her health",
        "definition" : "The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-EN" for England English.",
        "comment" : "The structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type.",
        "requirements" : "Most systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "Patient.communication.language",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "CodeableConcept"
          }
        ],
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet",
              "valueReference" : {
                "reference" : "http://hl7.org/fhir/ValueSet/all-languages"
              }
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "Language"
            },
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean" : true
            }
          ],
          "strength" : "extensible",
          "description" : "A human language.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/languages"
          }
        },
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-15, LAN-2"
          },
          {
            "identity" : "rim",
            "map" : "player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code"
          },
          {
            "identity" : "cda",
            "map" : ".languageCode"
          }
        ]
      },
      {
        "id" : "Patient.communication.preferred",
        "path" : "Patient.communication.preferred",
        "short" : "Language preference indicator",
        "definition" : "Indicates whether or not the patient prefers this language (over other languages he masters up a certain level).",
        "comment" : "This language is specifically identified for communicating healthcare information.",
        "requirements" : "People that master multiple languages up to certain level may prefer one or more, i.e. feel more confident in communicating in a particular language making other languages sort of a fall back method.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.communication.preferred",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "boolean"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-15"
          },
          {
            "identity" : "rim",
            "map" : "preferenceInd"
          },
          {
            "identity" : "cda",
            "map" : ".preferenceInd"
          }
        ]
      },
      {
        "id" : "Patient.generalPractitioner",
        "path" : "Patient.generalPractitioner",
        "short" : "Patient's nominated primary care provider",
        "definition" : "Patient's nominated care provider.",
        "comment" : "This may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disablity setting, or even organization that will provide people to perform the care provider roles.

It is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources.",
        "alias" : [
          "careProvider"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.generalPractitioner",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/Organization"
          },
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/Practitioner"
          }
        ],
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PD1-4"
          },
          {
            "identity" : "rim",
            "map" : "subjectOf.CareEvent.performer.AssignedEntity"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.managingOrganization",
        "path" : "Patient.managingOrganization",
        "short" : "Organization that is the custodian of the patient record",
        "definition" : "Organization that is the custodian of the patient record.",
        "comment" : "There is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association).",
        "requirements" : "Need to know who recognizes this patient record, manages and updates it.",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "Patient.managingOrganization",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/Organization"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "scoper"
          },
          {
            "identity" : "cda",
            "map" : ".providerOrganization"
          }
        ]
      },
      {
        "id" : "Patient.link",
        "path" : "Patient.link",
        "short" : "Link to another patient resource that concerns the same actual person",
        "definition" : "Link to another patient resource that concerns the same actual patient.",
        "comment" : "There is no assumption that linked patient records have mutual links. 

This element is labelled as a modifier because it may not be the main Patient resource, and the referenced patient should be used instead of this Patient record. This is when the link.type value is 'replaced-by'.",
        "requirements" : "There are multiple usecases: 

* Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and * Distribution of patient information across multiple servers.",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "Patient.link",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "BackboneElement"
          }
        ],
        "constraint" : [
          {
            "key" : "ele-1",
            "severity" : "error",
            "human" : "All FHIR elements must have a @value or children",
            "expression" : "hasValue() | (children().count() > id.count())",
            "xpath" : "@value|f:*|h:div",
            "source" : "Element"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "outboundLink"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.link.id",
        "path" : "Patient.link.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" : "Patient.link.extension",
        "path" : "Patient.link.extension",
        "short" : "Additional Content defined by implementations",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element. 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" : "Patient.link.modifierExtension",
        "path" : "Patient.link.modifierExtension",
        "short" : "Extensions that cannot be ignored",
        "definition" : "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions.",
        "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",
          "modifiers"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "BackboneElement.modifierExtension",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "Extension"
          }
        ],
        "isModifier" : true,
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "N/A"
          }
        ]
      },
      {
        "id" : "Patient.link.other",
        "path" : "Patient.link.other",
        "short" : "The other patient or related person resource that the link refers to",
        "definition" : "The other patient resource that the link refers to.",
        "comment" : "Referencing a RelatedPerson here removes the need to use a Person record to associate a Patient and RelatedPerson as the same individual.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "Patient.link.other",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/Patient"
          },
          {
            "code" : "Reference",
            "targetProfile" : "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
          }
        ],
        "isSummary" : true,
        "mapping" : [
          {
            "identity" : "v2",
            "map" : "PID-3, MRG-1"
          },
          {
            "identity" : "rim",
            "map" : "id"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      },
      {
        "id" : "Patient.link.type",
        "path" : "Patient.link.type",
        "short" : "replaced-by | replaces | refer | seealso - type of link",
        "definition" : "The type of link between this patient resource and another patient resource.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "Patient.link.type",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code"
          }
        ],
        "isSummary" : true,
        "binding" : {
          "extension" : [
            {
              "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString" : "LinkType"
            }
          ],
          "strength" : "required",
          "description" : "The type of link between this patient resource and another patient resource.",
          "valueSetReference" : {
            "reference" : "http://hl7.org/fhir/ValueSet/link-type"
          }
        },
        "mapping" : [
          {
            "identity" : "rim",
            "map" : "typeCode"
          },
          {
            "identity" : "cda",
            "map" : "n/a"
          }
        ]
      }
    ]
  },
  "differential" : {
    "element" : [
      {
        "id" : "Patient.active",
        "path" : "Patient.active",
        "min" : 1
      }
    ]
  }
}
@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:Resource.id [ fhir:value "test-ig-sd"];
  fhir:DomainResource.text [
     fhir:Narrative.status [ fhir:value "generated" ];
     fhir:Narrative.div "<div xmlns=\"http://www.w3.org/1999/xhtml\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;\"><tr style=\"border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;\"><th style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"../../../publish/formats.html#table\" title=\"The logical name of the element\">Name</a></th><th style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"../../../publish/formats.html#table\" title=\"Information about the use of the element\">Flags</a></th><th style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"../../../publish/formats.html#table\" title=\"Minimum and Maximum # of times the the element can appear in the instance\">Card.</a></th><th style=\"width: 100px\" class=\"hierarchy\"><a href=\"../../../publish/formats.html#table\" title=\"Reference to the type of the element\">Type</a></th><th style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a href=\"../../../publish/formats.html#table\" title=\"Additional information about the element\">Description &amp; Constraints</a><span style=\"float: right\"><a href=\"../../../publish/formats.html#table\" title=\"Legend for this format\"><img src=\"../../../publish/help16.png\" alt=\"doco\" style=\"background-color: inherit\"/></a></span></th></tr><tr style=\"border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white;\"><td style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck0.png)\" class=\"hierarchy\"><img src=\"tbl_spacer.png\" alt=\".\" style=\"background-color: inherit\" class=\"hierarchy\"/><img src=\"icon_element.gif\" alt=\".\" style=\"background-color: white; background-color: inherit\" title=\"Element\" class=\"hierarchy\"/> <a href=\"profile-sd.html#definitions#Patient.active\" title=\"null\">active</a><a name=\"Patient.active\"> </a></td><td style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/><td style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\">1..1</td><td style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"><a style=\"opacity: 0.4\" href=\"../../../publish/datatypes.html#boolean\">boolean</a></td><td style=\"vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px\" class=\"hierarchy\"/></tr>\r\n<tr><td colspan=\"5\" class=\"hierarchy\"><br/><a href=\"../../../publish/formats.html#table\" title=\"Legend for this format\"><img src=\"../../../publish/help16.png\" alt=\"doco\" style=\"background-color: inherit\"/> Documentation for this format</a></td></tr></table></div>"
  ];
  fhir:StructureDefinition.url [ fhir:value "http://hl7.org/fhir/test/StructureDefinition/test-ig-sd"];
  fhir:StructureDefinition.name [ fhir:value "Test Profile"];
  fhir:StructureDefinition.title [ fhir:value "Test Patient"];
  fhir:StructureDefinition.status [ fhir:value "draft"];
  fhir:StructureDefinition.experimental [ fhir:value "true"^^xsd:boolean];
  fhir:StructureDefinition.date [ fhir:value "2016-06-21T17:44:00+10:00"^^xsd:dateTime];
  fhir:StructureDefinition.publisher [ fhir:value "FHIR Project"];
  fhir:StructureDefinition.description [ fhir:value "Test Profile to test publishing"];
  fhir:StructureDefinition.fhirVersion [ fhir:value "3.1.0"];
  fhir:StructureDefinition.mapping [
     fhir:index 0;
     fhir:StructureDefinition.mapping.identity [ fhir:value "tst" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://testuri.org/" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "Test Mapping" ]
  ], [
     fhir:index 1;
     fhir:StructureDefinition.mapping.identity [ fhir:value "rim" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://hl7.org/v3" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "RIM Mapping" ]
  ], [
     fhir:index 2;
     fhir:StructureDefinition.mapping.identity [ fhir:value "cda" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://hl7.org/v3/cda" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "CDA (R2)" ]
  ], [
     fhir:index 3;
     fhir:StructureDefinition.mapping.identity [ fhir:value "w5" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://hl7.org/fhir/w5" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "W5 Mapping" ]
  ], [
     fhir:index 4;
     fhir:StructureDefinition.mapping.identity [ fhir:value "v2" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://hl7.org/v2" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "HL7 v2 Mapping" ]
  ], [
     fhir:index 5;
     fhir:StructureDefinition.mapping.identity [ fhir:value "loinc" ];
     fhir:StructureDefinition.mapping.uri [ fhir:value "http://loinc.org" ];
     fhir:StructureDefinition.mapping.name [ fhir:value "LOINC code for the element" ]
  ];
  fhir:StructureDefinition.kind [ fhir:value "resource"];
  fhir:StructureDefinition.abstract [ fhir:value "false"^^xsd:boolean];
  fhir:StructureDefinition.type [ fhir:value "Patient"];
  fhir:StructureDefinition.baseDefinition [ fhir:value "http://hl7.org/fhir/StructureDefinition/Patient"];
  fhir:StructureDefinition.derivation [ fhir:value "constraint"];
  fhir:StructureDefinition.snapshot [
     fhir:StructureDefinition.snapshot.element [
       fhir:index 0;
       fhir:Element.id [ fhir:value "Patient" ];
       fhir:ElementDefinition.path [ fhir:value "Patient" ];
       fhir:ElementDefinition.short [ fhir:value "Information about an individual or animal receiving health care services" ];
       fhir:ElementDefinition.definition [ fhir:value "Demographics and other administrative information about an individual or animal receiving care or other health-related services." ];
       fhir:ElementDefinition.alias [
         fhir:value "SubjectOfCare Client Resident";
         fhir:index 0       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.constraint [
         fhir:index 0;
         fhir:ElementDefinition.constraint.key [ fhir:value "dom-2" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "If the resource is contained in another resource, it SHALL NOT contain nested Resources" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "contained.contained.empty()" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "not(parent::f:contained and f:contained)" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "DomainResource" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.constraint.key [ fhir:value "dom-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "If the resource is contained in another resource, it SHALL NOT contain any narrative" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "contained.text.empty()" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "not(parent::f:contained and f:text)" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "DomainResource" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.constraint.key [ fhir:value "dom-4" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "DomainResource" ]       ], [
         fhir:index 3;
         fhir:ElementDefinition.constraint.key [ fhir:value "dom-3" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "contained.where(('#'+id in %resource.descendants().reference).not()).empty()" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "DomainResource" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "Entity. Role, or Act" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "Patient[classCode=PAT]" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "ClinicalDocument.recordTarget.patientRole" ]       ], [
         fhir:index 3;
         fhir:ElementDefinition.mapping.identity [ fhir:value "w5" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "administrative.individual" ]       ]     ], [
       fhir:index 1;
       fhir:Element.id [ fhir:value "Patient.id" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.id" ];
       fhir:ElementDefinition.short [ fhir:value "Logical id of this artifact" ];
       fhir:ElementDefinition.definition [ fhir:value "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes." ];
       fhir:ElementDefinition.comment [ fhir:value "The only time that a resource does not have an id is when it is being submitted to the server using a create operation." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Resource.id" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "id" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ]     ], [
       fhir:index 2;
       fhir:Element.id [ fhir:value "Patient.meta" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.meta" ];
       fhir:ElementDefinition.short [ fhir:value "Metadata about the resource" ];
       fhir:ElementDefinition.definition [ fhir:value "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Resource.meta" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Meta" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ]     ], [
       fhir:index 3;
       fhir:Element.id [ fhir:value "Patient.implicitRules" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.implicitRules" ];
       fhir:ElementDefinition.short [ fhir:value "A set of rules under which this content was created" ];
       fhir:ElementDefinition.definition [ fhir:value "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content." ];
       fhir:ElementDefinition.comment [ fhir:value "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. \n\nThis element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Resource.implicitRules" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "uri" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ]     ], [
       fhir:index 4;
       fhir:Element.id [ fhir:value "Patient.language" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.language" ];
       fhir:ElementDefinition.short [ fhir:value "Language of the resource content" ];
       fhir:ElementDefinition.definition [ fhir:value "The base language in which the resource is written." ];
       fhir:ElementDefinition.comment [ fhir:value "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies  to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource  Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute)." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Resource.language" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "code" ]       ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet" ];
           fhir:Extension.valueReference [
             fhir:link <http://hl7.org/fhir/ValueSet/all-languages>;
             fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/all-languages" ]           ]         ], [
           fhir:index 1;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "Language" ]         ], [
           fhir:index 2;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding" ];
           fhir:Extension.valueBoolean [ fhir:value "true"^^xsd:boolean ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "extensible" ];
         fhir:ElementDefinition.binding.description [ fhir:value "A human language." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/languages>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/languages" ]         ]       ]     ], [
       fhir:index 5;
       fhir:Element.id [ fhir:value "Patient.text" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.text" ];
       fhir:ElementDefinition.short [ fhir:value "Text summary of the resource, for human interpretation" ];
       fhir:ElementDefinition.definition [ fhir:value "A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety." ];
       fhir:ElementDefinition.comment [ fhir:value "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied).  This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded in formation is added later." ];
       fhir:ElementDefinition.alias [
         fhir:value "narrative";
         fhir:index 0       ], [
         fhir:value "html";
         fhir:index 1       ], [
         fhir:value "xhtml";
         fhir:index 2       ], [
         fhir:value "display";
         fhir:index 3       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "DomainResource.text" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Narrative" ]       ];
       fhir:ElementDefinition.condition [
         fhir:value "dom-1";
         fhir:index 0       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "Act.text?" ]       ]     ], [
       fhir:index 6;
       fhir:Element.id [ fhir:value "Patient.contained" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contained" ];
       fhir:ElementDefinition.short [ fhir:value "Contained, inline Resources" ];
       fhir:ElementDefinition.definition [ fhir:value "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope." ];
       fhir:ElementDefinition.comment [ fhir:value "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again." ];
       fhir:ElementDefinition.alias [
         fhir:value "inline resources";
         fhir:index 0       ], [
         fhir:value "anonymous resources";
         fhir:index 1       ], [
         fhir:value "contained resources";
         fhir:index 2       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "DomainResource.contained" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Resource" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 7;
       fhir:Element.id [ fhir:value "Patient.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.extension" ];
       fhir:ElementDefinition.short [ fhir:value "Additional Content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "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." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "DomainResource.extension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 8;
       fhir:Element.id [ fhir:value "Patient.modifierExtension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.modifierExtension" ];
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "DomainResource.modifierExtension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 9;
       fhir:Element.id [ fhir:value "Patient.identifier" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.identifier" ];
       fhir:ElementDefinition.short [ fhir:value "An identifier for this patient" ];
       fhir:ElementDefinition.definition [ fhir:value "An identifier for this patient." ];
       fhir:ElementDefinition.requirements [ fhir:value "Patients are almost always assigned specific numerical identifiers." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.identifier" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Identifier" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-3" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "id" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".id" ]       ], [
         fhir:index 3;
         fhir:ElementDefinition.mapping.identity [ fhir:value "w5" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "id" ]       ]     ], [
       fhir:index 10;
       fhir:Element.id [ fhir:value "Patient.active" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.active" ];
       fhir:ElementDefinition.short [ fhir:value "Whether this patient's record is in active use" ];
       fhir:ElementDefinition.definition [ fhir:value "Whether this patient record is in active use." ];
       fhir:ElementDefinition.comment [ fhir:value "Default is true. If a record is inactive, and linked to an active record, then future patient/record updates should occur on the other patient\n\nThis element is labeled as a modifier because when the patient record is marked as not active it is not expected to be used/referenced without being changed back to active." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to be able to mark a patient record as not to be used because it was created in error." ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.active" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "boolean" ]       ];
       fhir:ElementDefinition.defaultValueBoolean [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "statusCode" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "w5" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "status" ]       ]     ], [
       fhir:index 11;
       fhir:Element.id [ fhir:value "Patient.name" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.name" ];
       fhir:ElementDefinition.short [ fhir:value "A name associated with the patient" ];
       fhir:ElementDefinition.definition [ fhir:value "A name associated with the individual." ];
       fhir:ElementDefinition.comment [ fhir:value "A patient may have multiple names with different uses or applicable periods. For animals, the name is a \"HumanName\" in the sense that is assigned and used by humans and has the same patterns." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to be able to track the patient by multiple names. Examples are your official name and a partner name." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.name" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "HumanName" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-5, PID-9" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "name" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".patient.name" ]       ]     ], [
       fhir:index 12;
       fhir:Element.id [ fhir:value "Patient.telecom" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.telecom" ];
       fhir:ElementDefinition.short [ fhir:value "A contact detail for the individual" ];
       fhir:ElementDefinition.definition [ fhir:value "A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted." ];
       fhir:ElementDefinition.comment [ fhir:value "A Patient may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently and also to help with identification. The address may not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner's phone)." ];
       fhir:ElementDefinition.requirements [ fhir:value "People have (primary) ways to contact them in some way such as phone, email." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.telecom" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "ContactPoint" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-13, PID-14, PID-40" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "telecom" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".telecom" ]       ]     ], [
       fhir:index 13;
       fhir:Element.id [ fhir:value "Patient.gender" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.gender" ];
       fhir:ElementDefinition.short [ fhir:value "male | female | other | unknown" ];
       fhir:ElementDefinition.definition [ fhir:value "Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes." ];
       fhir:ElementDefinition.comment [ fhir:value "The gender may not match the biological sex as determined by genetics, or the individual's preferred identification. Note that for both humans and particularly animals, there are other legitimate possibilities than M and F, though the vast majority of systems and contexts only support M and F.  Systems providing decision support or enforcing business rules should ideally do this on the basis of Observations dealing with the specific gender aspect of interest (anatomical, chromosonal, social, etc.)  However, because these observations are infrequently recorded, defaulting to the administrative gender is common practice.  Where such defaulting occurs, rule enforcement should allow for the variation between administrative and biological, chromosonal and other gender aspects.  For example, an alert about a hysterectomy on a male should be handled as a warning or overrideable error, not a \"hard\" error." ];
       fhir:ElementDefinition.requirements [ fhir:value "Needed for identification of the individual, in combination with (at least) name and birth date. Gender of individual drives many clinical processes." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.gender" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "code" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "AdministrativeGender" ]         ], [
           fhir:index 1;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding" ];
           fhir:Extension.valueBoolean [ fhir:value "true"^^xsd:boolean ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "required" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The gender of a person used for administrative purposes." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/administrative-gender>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/administrative-gender" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-8" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".patient.administrativeGenderCode" ]       ]     ], [
       fhir:index 14;
       fhir:Element.id [ fhir:value "Patient.birthDate" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.birthDate" ];
       fhir:ElementDefinition.short [ fhir:value "The date of birth for the individual" ];
       fhir:ElementDefinition.definition [ fhir:value "The date of birth for the individual." ];
       fhir:ElementDefinition.comment [ fhir:value "At least an estimated year should be provided as a guess if the real DOB is unknown  There is a standard extension \"patient-birthTime\" available that should be used where Time is required (such as in maternaty/infant care systems)." ];
       fhir:ElementDefinition.requirements [ fhir:value "Age of the individual drives many clinical processes." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.birthDate" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "date" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-7" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".patient.birthTime" ]       ], [
         fhir:index 3;
         fhir:ElementDefinition.mapping.identity [ fhir:value "loinc" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "21112-8" ]       ]     ], [
       fhir:index 15;
       fhir:Element.id [ fhir:value "Patient.deceased[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.deceased[x]" ];
       fhir:ElementDefinition.short [ fhir:value "Indicates if the individual is deceased or not" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates if the individual is deceased or not." ];
       fhir:ElementDefinition.comment [ fhir:value "If there's no value in the instance it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.\n\nThis element is labeled as a modifier because once a patient is marked as deceased, the actions that are appropriate to perform on the patient may be significantly different." ];
       fhir:ElementDefinition.requirements [ fhir:value "The fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.deceased[x]" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "boolean" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.type.code [ fhir:value "dateTime" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-30  (bool) and PID-29 (datetime)" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 16;
       fhir:Element.id [ fhir:value "Patient.address" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.address" ];
       fhir:ElementDefinition.short [ fhir:value "Addresses for the individual" ];
       fhir:ElementDefinition.definition [ fhir:value "Addresses for the individual." ];
       fhir:ElementDefinition.comment [ fhir:value "Patient may have multiple addresses with different uses or applicable periods." ];
       fhir:ElementDefinition.requirements [ fhir:value "May need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.address" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Address" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-11" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "addr" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".addr" ]       ]     ], [
       fhir:index 17;
       fhir:Element.id [ fhir:value "Patient.maritalStatus" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.maritalStatus" ];
       fhir:ElementDefinition.short [ fhir:value "Marital (civil) status of a patient" ];
       fhir:ElementDefinition.definition [ fhir:value "This field contains a patient's most recent marital (civil) status." ];
       fhir:ElementDefinition.requirements [ fhir:value "Most, if not all systems capture it." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.maritalStatus" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "MaritalStatus" ]         ], [
           fhir:index 1;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding" ];
           fhir:Extension.valueBoolean [ fhir:value "true"^^xsd:boolean ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "extensible" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The domestic partnership status of a person." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/marital-status>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/marital-status" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-16" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN]/maritalStatusCode" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".patient.maritalStatusCode" ]       ]     ], [
       fhir:index 18;
       fhir:Element.id [ fhir:value "Patient.multipleBirth[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.multipleBirth[x]" ];
       fhir:ElementDefinition.short [ fhir:value "Whether patient is part of a multiple birth" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates whether the patient is part of a multiple (bool) or indicates the actual birth order (integer)." ];
       fhir:ElementDefinition.comment [ fhir:value "Where the valueInteger is provided, the number is the birth number in the sequence.\nE.g. The middle birth in tripplets would be valueInteger=2 and the third born would have valueInteger=3\nIf a bool value was provided for this tripplets examle, then all 3 patient records would have valueBool=true (the ordering is not indicated)." ];
       fhir:ElementDefinition.requirements [ fhir:value "For disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.multipleBirth[x]" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "boolean" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.type.code [ fhir:value "integer" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-24 (bool), PID-25 (integer)" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd,  player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 19;
       fhir:Element.id [ fhir:value "Patient.photo" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.photo" ];
       fhir:ElementDefinition.short [ fhir:value "Image of the patient" ];
       fhir:ElementDefinition.definition [ fhir:value "Image of the patient." ];
       fhir:ElementDefinition.requirements [ fhir:value "Many EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.photo" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Attachment" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "OBX-5 - needs a profile" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 20;
       fhir:Element.id [ fhir:value "Patient.contact" ];
       fhir:Element.extension [
         fhir:index 0;
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name" ];
         fhir:Extension.valueString [ fhir:value "Contact" ]       ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact" ];
       fhir:ElementDefinition.short [ fhir:value "A contact party (e.g. guardian, partner, friend) for the patient" ];
       fhir:ElementDefinition.definition [ fhir:value "A contact party (e.g. guardian, partner, friend) for the patient." ];
       fhir:ElementDefinition.comment [ fhir:value "Contact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to track people you can contact about the patient." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]       ];
       fhir:ElementDefinition.constraint [
         fhir:index 0;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() | (children().count() > id.count())" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "Element" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.constraint.key [ fhir:value "pat-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "SHALL at least contain a contact's details or a reference to an organization" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "name.exists() or telecom.exists() or address.exists() or organization.exists()" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "exists(f:name) or exists(f:telecom) or exists(f:address) or exists(f:organization)" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 21;
       fhir:Element.id [ fhir:value "Patient.contact.id" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.id" ];
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr";
         fhir:index 0       ];
       fhir:ElementDefinition.short [ fhir:value "xml:id (or equivalent in JSON)" ];
       fhir:ElementDefinition.definition [ fhir:value "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 22;
       fhir:Element.id [ fhir:value "Patient.contact.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.extension" ];
       fhir:ElementDefinition.short [ fhir:value "Additional Content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "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." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 23;
       fhir:Element.id [ fhir:value "Patient.contact.modifierExtension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.modifierExtension" ];
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ], [
         fhir:value "modifiers";
         fhir:index 2       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 24;
       fhir:Element.id [ fhir:value "Patient.contact.relationship" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.relationship" ];
       fhir:ElementDefinition.short [ fhir:value "The kind of relationship" ];
       fhir:ElementDefinition.definition [ fhir:value "The nature of the relationship between the patient and the contact person." ];
       fhir:ElementDefinition.requirements [ fhir:value "Used to determine which contact person is the most relevant to approach, depending on circumstances." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.relationship" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "ContactRelationship" ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "extensible" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The nature of the relationship between a patient and a contact person for that patient." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/v2-0131>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/v2-0131" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-7, NK1-3" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "code" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 25;
       fhir:Element.id [ fhir:value "Patient.contact.name" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.name" ];
       fhir:ElementDefinition.short [ fhir:value "A name associated with the contact person" ];
       fhir:ElementDefinition.definition [ fhir:value "A name associated with the contact person." ];
       fhir:ElementDefinition.requirements [ fhir:value "Contact persons need to be identified by name, but it is uncommon to need details about multiple other names for that contact person." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.name" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "HumanName" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-2" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "name" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 26;
       fhir:Element.id [ fhir:value "Patient.contact.telecom" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.telecom" ];
       fhir:ElementDefinition.short [ fhir:value "A contact detail for the person" ];
       fhir:ElementDefinition.definition [ fhir:value "A contact detail for the person, e.g. a telephone number or an email address." ];
       fhir:ElementDefinition.comment [ fhir:value "Contact may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently, and also to help with identification." ];
       fhir:ElementDefinition.requirements [ fhir:value "People have (primary) ways to contact them in some way such as phone, email." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.telecom" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "ContactPoint" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-5, NK1-6, NK1-40" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "telecom" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 27;
       fhir:Element.id [ fhir:value "Patient.contact.address" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.address" ];
       fhir:ElementDefinition.short [ fhir:value "Address for the contact person" ];
       fhir:ElementDefinition.definition [ fhir:value "Address for the contact person." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to keep track where the contact person can be contacted per postal mail or visited." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.address" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Address" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-4" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "addr" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 28;
       fhir:Element.id [ fhir:value "Patient.contact.gender" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.gender" ];
       fhir:ElementDefinition.short [ fhir:value "male | female | other | unknown" ];
       fhir:ElementDefinition.definition [ fhir:value "Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes." ];
       fhir:ElementDefinition.requirements [ fhir:value "Needed to address the person correctly." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.gender" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "code" ]       ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "AdministrativeGender" ]         ], [
           fhir:index 1;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding" ];
           fhir:Extension.valueBoolean [ fhir:value "true"^^xsd:boolean ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "required" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The gender of a person used for administrative purposes." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/administrative-gender>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/administrative-gender" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-15" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 29;
       fhir:Element.id [ fhir:value "Patient.contact.organization" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.organization" ];
       fhir:ElementDefinition.short [ fhir:value "Organization that is associated with the contact" ];
       fhir:ElementDefinition.definition [ fhir:value "Organization on behalf of which the contact is acting or for which the contact is working." ];
       fhir:ElementDefinition.requirements [ fhir:value "For guardians or business related contacts, the organization is relevant." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.organization" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/Organization" ]       ];
       fhir:ElementDefinition.condition [
         fhir:value "pat-1";
         fhir:index 0       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "NK1-13, NK1-30, NK1-31, NK1-32, NK1-41" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "scoper" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 30;
       fhir:Element.id [ fhir:value "Patient.contact.period" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.contact.period" ];
       fhir:ElementDefinition.short [ fhir:value "The period during which this contact person or organization is valid to be contacted relating to this patient" ];
       fhir:ElementDefinition.definition [ fhir:value "The period during which this contact person or organization is valid to be contacted relating to this patient." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.contact.period" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Period" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "effectiveTime" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 31;
       fhir:Element.id [ fhir:value "Patient.animal" ];
       fhir:Element.extension [
         fhir:index 0;
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name" ];
         fhir:Extension.valueString [ fhir:value "Animal" ]       ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal" ];
       fhir:ElementDefinition.short [ fhir:value "This patient is known to be an animal (non-human)" ];
       fhir:ElementDefinition.definition [ fhir:value "This patient is known to be an animal." ];
       fhir:ElementDefinition.comment [ fhir:value "The animal element is labeled \"Is Modifier\" since patients may be non-human. Systems SHALL either handle patient details appropriately (e.g. inform users patient is not human) or reject declared animal records.   The absense of the animal element does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required.  (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal)." ];
       fhir:ElementDefinition.requirements [ fhir:value "Many clinical systems are extended to care for animal patients as well as human." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.animal" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]       ];
       fhir:ElementDefinition.constraint [
         fhir:index 0;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() | (children().count() > id.count())" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "Element" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=ANM]" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 32;
       fhir:Element.id [ fhir:value "Patient.animal.id" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.id" ];
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr";
         fhir:index 0       ];
       fhir:ElementDefinition.short [ fhir:value "xml:id (or equivalent in JSON)" ];
       fhir:ElementDefinition.definition [ fhir:value "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 33;
       fhir:Element.id [ fhir:value "Patient.animal.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.extension" ];
       fhir:ElementDefinition.short [ fhir:value "Additional Content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "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." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 34;
       fhir:Element.id [ fhir:value "Patient.animal.modifierExtension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.modifierExtension" ];
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ], [
         fhir:value "modifiers";
         fhir:index 2       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 35;
       fhir:Element.id [ fhir:value "Patient.animal.species" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.species" ];
       fhir:ElementDefinition.short [ fhir:value "E.g. Dog, Cow" ];
       fhir:ElementDefinition.definition [ fhir:value "Identifies the high level taxonomic categorization of the kind of animal." ];
       fhir:ElementDefinition.comment [ fhir:value "If the patient is non-human, at least a species SHALL be specified. Species SHALL be a widely recognised taxonomic classification.  It may or may not be Linnaean taxonomy and may or may not be at the level of species. If the level is finer than species--such as a breed code--the code system used SHALL allow inference of the species.  (The common example is that the word \"Hereford\" does not allow inference of the species Bos taurus, because there is a Hereford pig breed, but the SNOMED CT code for \"Hereford Cattle Breed\" does.)." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to know what kind of animal." ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.animal.species" ];
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "AnimalSpecies" ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "example" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The species of an animal." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/animal-species>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/animal-species" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-35" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "code" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 36;
       fhir:Element.id [ fhir:value "Patient.animal.breed" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.breed" ];
       fhir:ElementDefinition.short [ fhir:value "E.g. Poodle, Angus" ];
       fhir:ElementDefinition.definition [ fhir:value "Identifies the detailed categorization of the kind of animal." ];
       fhir:ElementDefinition.comment [ fhir:value "Breed MAY be used to provide further taxonomic or non-taxonomic classification.  It may involve local or proprietary designation--such as commercial strain--and/or additional information such as production type." ];
       fhir:ElementDefinition.requirements [ fhir:value "May need to know the specific kind within the species." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.animal.breed" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "AnimalBreed" ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "example" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The breed of an animal." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/animal-breeds>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/animal-breeds" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-37" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "playedRole[classCode=GEN]/scoper[classCode=ANM, determinerCode=KIND]/code" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 37;
       fhir:Element.id [ fhir:value "Patient.animal.genderStatus" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.animal.genderStatus" ];
       fhir:ElementDefinition.short [ fhir:value "E.g. Neutered, Intact" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates the current state of the animal's reproductive organs." ];
       fhir:ElementDefinition.requirements [ fhir:value "Gender status can affect housing and animal behavior." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.animal.genderStatus" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "AnimalGenderStatus" ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "example" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The state of the animal's reproductive organs." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/animal-genderstatus>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/animal-genderstatus" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "genderStatusCode" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 38;
       fhir:Element.id [ fhir:value "Patient.communication" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication" ];
       fhir:ElementDefinition.short [ fhir:value "A list of Languages which may be used to communicate with the patient about his or her health" ];
       fhir:ElementDefinition.definition [ fhir:value "Languages which may be used to communicate with the patient about his or her health." ];
       fhir:ElementDefinition.comment [ fhir:value "If no language is specified, this *implies* that the default local language is spoken.  If you need to convey proficiency for multiple modes then you need multiple Patient.Communication associations.   For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required." ];
       fhir:ElementDefinition.requirements [ fhir:value "If a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency is an important things to keep track of both for patient and other persons of interest." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.communication" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]       ];
       fhir:ElementDefinition.constraint [
         fhir:index 0;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() | (children().count() > id.count())" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "Element" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "LanguageCommunication" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "patient.languageCommunication" ]       ]     ], [
       fhir:index 39;
       fhir:Element.id [ fhir:value "Patient.communication.id" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication.id" ];
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr";
         fhir:index 0       ];
       fhir:ElementDefinition.short [ fhir:value "xml:id (or equivalent in JSON)" ];
       fhir:ElementDefinition.definition [ fhir:value "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 40;
       fhir:Element.id [ fhir:value "Patient.communication.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication.extension" ];
       fhir:ElementDefinition.short [ fhir:value "Additional Content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "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." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 41;
       fhir:Element.id [ fhir:value "Patient.communication.modifierExtension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication.modifierExtension" ];
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ], [
         fhir:value "modifiers";
         fhir:index 2       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 42;
       fhir:Element.id [ fhir:value "Patient.communication.language" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication.language" ];
       fhir:ElementDefinition.short [ fhir:value "The language which can be used to communicate with the patient about his or her health" ];
       fhir:ElementDefinition.definition [ fhir:value "The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. \"en\" for English, or \"en-US\" for American English versus \"en-EN\" for England English." ];
       fhir:ElementDefinition.comment [ fhir:value "The structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type." ];
       fhir:ElementDefinition.requirements [ fhir:value "Most systems in multilingual countries will want to convey language. Not all systems actually need the regional dialect." ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.communication.language" ];
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "CodeableConcept" ]       ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet" ];
           fhir:Extension.valueReference [
             fhir:link <http://hl7.org/fhir/ValueSet/all-languages>;
             fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/all-languages" ]           ]         ], [
           fhir:index 1;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "Language" ]         ], [
           fhir:index 2;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding" ];
           fhir:Extension.valueBoolean [ fhir:value "true"^^xsd:boolean ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "extensible" ];
         fhir:ElementDefinition.binding.description [ fhir:value "A human language." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/languages>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/languages" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-15, LAN-2" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".languageCode" ]       ]     ], [
       fhir:index 43;
       fhir:Element.id [ fhir:value "Patient.communication.preferred" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.communication.preferred" ];
       fhir:ElementDefinition.short [ fhir:value "Language preference indicator" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates whether or not the patient prefers this language (over other languages he masters up a certain level)." ];
       fhir:ElementDefinition.comment [ fhir:value "This language is specifically identified for communicating healthcare information." ];
       fhir:ElementDefinition.requirements [ fhir:value "People that master multiple languages up to certain level may prefer one or more, i.e. feel more confident in communicating in a particular language making other languages sort of a fall back method." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.communication.preferred" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "boolean" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-15" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "preferenceInd" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".preferenceInd" ]       ]     ], [
       fhir:index 44;
       fhir:Element.id [ fhir:value "Patient.generalPractitioner" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.generalPractitioner" ];
       fhir:ElementDefinition.short [ fhir:value "Patient's nominated primary care provider" ];
       fhir:ElementDefinition.definition [ fhir:value "Patient's nominated care provider." ];
       fhir:ElementDefinition.comment [ fhir:value "This may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disablity setting, or even organization that will provide people to perform the care provider roles.\n\nIt is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources." ];
       fhir:ElementDefinition.alias [
         fhir:value "careProvider";
         fhir:index 0       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.generalPractitioner" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/Organization" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/Practitioner" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PD1-4" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "subjectOf.CareEvent.performer.AssignedEntity" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 45;
       fhir:Element.id [ fhir:value "Patient.managingOrganization" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.managingOrganization" ];
       fhir:ElementDefinition.short [ fhir:value "Organization that is the custodian of the patient record" ];
       fhir:ElementDefinition.definition [ fhir:value "Organization that is the custodian of the patient record." ];
       fhir:ElementDefinition.comment [ fhir:value "There is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association)." ];
       fhir:ElementDefinition.requirements [ fhir:value "Need to know who recognizes this patient record, manages and updates it." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.managingOrganization" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/Organization" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "scoper" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value ".providerOrganization" ]       ]     ], [
       fhir:index 46;
       fhir:Element.id [ fhir:value "Patient.link" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link" ];
       fhir:ElementDefinition.short [ fhir:value "Link to another patient resource that concerns the same actual person" ];
       fhir:ElementDefinition.definition [ fhir:value "Link to another patient resource that concerns the same actual patient." ];
       fhir:ElementDefinition.comment [ fhir:value "There is no assumption that linked patient records have mutual links. \n\nThis element is labelled as a modifier because it may not be the main Patient resource, and the referenced patient should be used instead of this Patient record. This is when the link.type value is 'replaced-by'." ];
       fhir:ElementDefinition.requirements [ fhir:value "There are multiple usecases: \n\n* Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and * Distribution of patient information across multiple servers." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.link" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "BackboneElement" ]       ];
       fhir:ElementDefinition.constraint [
         fhir:index 0;
         fhir:ElementDefinition.constraint.key [ fhir:value "ele-1" ];
         fhir:ElementDefinition.constraint.severity [ fhir:value "error" ];
         fhir:ElementDefinition.constraint.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinition.constraint.expression [ fhir:value "hasValue() | (children().count() > id.count())" ];
         fhir:ElementDefinition.constraint.xpath [ fhir:value "@value|f:*|h:div" ];
         fhir:ElementDefinition.constraint.source [ fhir:value "Element" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "outboundLink" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 47;
       fhir:Element.id [ fhir:value "Patient.link.id" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link.id" ];
       fhir:ElementDefinition.representation [
         fhir:value "xmlAttr";
         fhir:index 0       ];
       fhir:ElementDefinition.short [ fhir:value "xml:id (or equivalent in JSON)" ];
       fhir:ElementDefinition.definition [ fhir:value "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.id" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "string" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 48;
       fhir:Element.id [ fhir:value "Patient.link.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link.extension" ];
       fhir:ElementDefinition.short [ fhir:value "Additional Content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "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." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Element.extension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 49;
       fhir:Element.id [ fhir:value "Patient.link.modifierExtension" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link.modifierExtension" ];
       fhir:ElementDefinition.short [ fhir:value "Extensions that cannot be ignored" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. 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. Applications processing a resource are required to check for modifier extensions." ];
       fhir:ElementDefinition.comment [ fhir:value "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." ];
       fhir:ElementDefinition.alias [
         fhir:value "extensions";
         fhir:index 0       ], [
         fhir:value "user content";
         fhir:index 1       ], [
         fhir:value "modifiers";
         fhir:index 2       ];
       fhir:ElementDefinition.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "BackboneElement.modifierExtension" ];
         fhir:ElementDefinition.base.min [ fhir:value "0"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "*" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Extension" ]       ];
       fhir:ElementDefinition.isModifier [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "N/A" ]       ]     ], [
       fhir:index 50;
       fhir:Element.id [ fhir:value "Patient.link.other" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link.other" ];
       fhir:ElementDefinition.short [ fhir:value "The other patient or related person resource that the link refers to" ];
       fhir:ElementDefinition.definition [ fhir:value "The other patient resource that the link refers to." ];
       fhir:ElementDefinition.comment [ fhir:value "Referencing a RelatedPerson here removes the need to use a Person record to associate a Patient and RelatedPerson as the same individual." ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.link.other" ];
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/Patient" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.type.code [ fhir:value "Reference" ];
         fhir:ElementDefinition.type.targetProfile [ fhir:value "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "v2" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "PID-3, MRG-1" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "id" ]       ], [
         fhir:index 2;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ], [
       fhir:index 51;
       fhir:Element.id [ fhir:value "Patient.link.type" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.link.type" ];
       fhir:ElementDefinition.short [ fhir:value "replaced-by | replaces | refer | seealso - type of link" ];
       fhir:ElementDefinition.definition [ fhir:value "The type of link between this patient resource and another patient resource." ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinition.base.path [ fhir:value "Patient.link.type" ];
         fhir:ElementDefinition.base.min [ fhir:value "1"^^xsd:nonNegativeInteger ];
         fhir:ElementDefinition.base.max [ fhir:value "1" ]       ];
       fhir:ElementDefinition.type [
         fhir:index 0;
         fhir:ElementDefinition.type.code [ fhir:value "code" ]       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true"^^xsd:boolean ];
       fhir:ElementDefinition.binding [
         fhir:Element.extension [
           fhir:index 0;
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName" ];
           fhir:Extension.valueString [ fhir:value "LinkType" ]         ];
         fhir:ElementDefinition.binding.strength [ fhir:value "required" ];
         fhir:ElementDefinition.binding.description [ fhir:value "The type of link between this patient resource and another patient resource." ];
         fhir:ElementDefinition.binding.valueSetReference [
           fhir:link <http://hl7.org/fhir/ValueSet/link-type>;
           fhir:Reference.reference [ fhir:value "http://hl7.org/fhir/ValueSet/link-type" ]         ]       ];
       fhir:ElementDefinition.mapping [
         fhir:index 0;
         fhir:ElementDefinition.mapping.identity [ fhir:value "rim" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "typeCode" ]       ], [
         fhir:index 1;
         fhir:ElementDefinition.mapping.identity [ fhir:value "cda" ];
         fhir:ElementDefinition.mapping.map [ fhir:value "n/a" ]       ]     ]
  ];
  fhir:StructureDefinition.differential [
     fhir:StructureDefinition.differential.element [
       fhir:index 0;
       fhir:Element.id [ fhir:value "Patient.active" ];
       fhir:ElementDefinition.path [ fhir:value "Patient.active" ];
       fhir:ElementDefinition.min [ fhir:value "1"^^xsd:nonNegativeInteger ]     ]
  ].

<http://hl7.org/fhir/ValueSet/all-languages> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/languages> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/administrative-gender> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/marital-status> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/v2-0131> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/animal-species> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/animal-breeds> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/animal-genderstatus> a fhir:ValueSet.

<http://hl7.org/fhir/ValueSet/link-type> a fhir:ValueSet.

# - ontology header ------------------------------------------------------------

 a owl:Ontology;
  owl:imports fhir:fhir.ttl.