description: MedNet Interface (MNI) - Patient Profile package_name: swiss.mednet.fhir derivation: constraint name: MNIPatient type: Patient elements: address: {type: Address, mustSupport: true, index: 20} name: {type: HumanName, mustSupport: true, index: 16} birthDate: {mustSupport: true, index: 19} extension: short: Extension type: Extension mustSupport: true array: true base: {max: '*', min: 0, path: DomainResource.extension} index: 2 slicing: rules: open discriminator: - {path: url, type: value} min: 0 slices: citizenship: match: {url: null} schema: constraint: ch-pat-3: {human: ISO Country Alpha-2 or ISO Country Alpha-3 code, severity: error, expression: '(extension.where(url=''code'').value.coding.code.length()=2 and extension.where(url=''code'').value.coding.code.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-2'')) or (extension.where(url=''code'').value.coding.code.length()=3 and extension.where(url=''code'').value.coding.code.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-3''))'} isModifier: false short: Citizenship(s) of patient type: Extension mustSupport: true url: http://hl7.org/fhir/StructureDefinition/patient-citizenship base: {max: '*', min: 0, path: DomainResource.extension} index: 3 min: 0 contained: {short: It is possible to include the generalPractitioner or a contact organization as embedded resource in this contained object. This way it is not needed to include it in the Bundle, mustSupport: true, index: 1} photo: short: currently ignored by MedNet, but could be implemented in the future mustSupport: true index: 31 elements: contentType: {mustSupport: true, index: 32} data: {mustSupport: true, index: 33} url: {mustSupport: true, index: 34} size: {mustSupport: true, index: 35} hash: {mustSupport: true, index: 36} required: [contentType] communication: mustSupport: true index: 56 elements: language: mustSupport: true index: 57 elements: coding: mustSupport: true index: 58 elements: system: pattern: {type: Uri, value: 'urn:ietf:bcp:47'} mustSupport: true index: 59 code: {mustSupport: true, index: 60} display: {mustSupport: true, index: 61} required: [system, code] required: [coding] preferred: {mustSupport: true, index: 62} id: {short: 'The id is unique within the space of all resources of the same type on the same server It can be any combination of upper- or lower-case ASCII letters ''A''..''Z'', and ''a''..''z'', numerals (''0''..''9''), ''-'' and ''.'' with a length limit of 64 characters. (This might be an integer, an un-prefixed OID, UUID or any other identifier pattern that meets these constraints.)', mustSupport: true, index: 0} identifier: mustSupport: true index: 4 slicing: rules: open discriminator: - {path: system, type: value} - {path: type.coding.system, type: value} - {path: type.coding.code, type: value} min: null slices: AHVN13: match: system: urn:oid:2.16.756.5.32 type: coding: {system: null, code: null} schema: short: AHVN13 / NAVS13 mustSupport: true index: 5 elements: system: pattern: {type: Uri, value: 'urn:oid:2.16.756.5.32'} mustSupport: true index: 6 value: {short: AHVN13 / NAVS13 of the patient (13 digits starting ith 756), mustSupport: true, index: 7} required: [value, system] LocalPid: match: system: null type: coding: {system: 'http://terminology.hl7.org/CodeSystem/v2-0203', code: MR} schema: short: Local patient identifiers mustSupport: true index: 8 elements: type: mustSupport: true index: 9 elements: coding: mustSupport: true index: 10 elements: system: pattern: {type: Uri, value: 'http://terminology.hl7.org/CodeSystem/v2-0203'} mustSupport: true index: 11 code: pattern: {type: Code, value: MR} mustSupport: true index: 12 display: pattern: {type: String, value: Medical record number} mustSupport: true index: 13 required: [system, code] required: [coding] system: {short: 'Uri that defines the Software that delivers the Patient ID. If possible this uri should be unique for each Patient database for example https://mysoftware.ch/patientDB/123456', mustSupport: true, index: 14} value: {mustSupport: true, index: 15} required: [value, type] telecom: {type: ContactPoint, mustSupport: true, index: 17} generalPractitioner: type: Reference short: Patient's nominated primary care provider. We allow multiple general practitioner, since gynecologist can also be listed as general practitioner mustSupport: true refers: ['https://mednet.swiss/fhir/StructureDefinition/mni-practitionerRole'] index: 63 gender: {mustSupport: true, index: 18} maritalStatus: binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-core/ValueSet/ch-core-maritalstatus'} mustSupport: true index: 21 elements: coding: index: 22 slicing: rules: open ordered: false discriminator: - {path: system, type: value} - {path: code, type: value} min: null slices: international: match: {system: 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus', code: null} schema: mustSupport: true index: 23 elements: system: pattern: {type: Uri, value: 'http://terminology.hl7.org/CodeSystem/v3-MaritalStatus'} mustSupport: true index: 24 code: {short: 'Authorized values : S (Never Married) | M (Married) | W (Widowed) | D (Divorced) | U (unmarried) | T (Domestic partner) | L (Legally Separated) | A (Annulled) | I (Interlocutory) | P (Polygamous) | C (Common Law)', mustSupport: true, index: 25} display: {short: 'Authorized values : Never Married (S) | Married (M) | Widowed (W) | Divorced (D) | unmarried (U) | Domestic partner (T) | Legally Separated (L) | Annulled (A) | Interlocutory (I)) | Polygamous (P)) | Common Law (C)', mustSupport: true, index: 26} required: [system, code] swiss: match: {system: 'http://fhir.ch/ig/ch-core/CodeSystem/ech-11-maritalstatus', code: null} schema: mustSupport: true index: 27 elements: system: pattern: {type: Uri, value: 'http://fhir.ch/ig/ch-core/CodeSystem/ech-11-maritalstatus'} mustSupport: true index: 28 code: {short: 'Authorized values : 1 (Unmarried) | 2 (Married) | 3 (Widowed) | 4 (Divorced) | 5 (Unmarried) | 6 (Domestic partner) | 7 (Legally Separated) | 9 (Unknown)', mustSupport: true, index: 29} display: {short: 'Authorized values : Unmarried (1) | Married (2) | Widowed (3) | Divorced (4) | Unmarried (5) | Domestic partner (6) | Legally Separated (7) | Unknown (9).', mustSupport: true, index: 30} required: [system, code] contact: mustSupport: true index: 37 slicing: slices: MNIContact: match: {} schema: mustSupport: true index: 37 elements: relationship: mustSupport: true index: 38 slicing: rules: open discriminator: - {path: coding.system, type: value} - {path: coding.code, type: value} min: null slices: KIND: match: coding: {system: 'http://terminology.hl7.org/CodeSystem/v2-0131', code: null} schema: short: Kind of relation ship, for example Emergency contact, Employer binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/patient-contactrelationship'} mustSupport: true index: 39 elements: coding: mustSupport: true index: 40 elements: system: pattern: {type: Uri, value: 'http://terminology.hl7.org/CodeSystem/v2-0131'} mustSupport: true index: 41 code: {short: C (Emergency Contact) | E (Employer) | F (Federal Agency) | I (Insurance Company) | N (Next-of-Kin) | S (State Agency) | U (Unknown), mustSupport: true, index: 42} display: {mustSupport: true, index: 43} required: [system, code] text: {short: 'If the relationship can not be coded, it can be described in plain text in this field', mustSupport: true, index: 44} FamilyMember: match: coding: {system: 'http://terminology.hl7.org/CodeSystem/v3-RoleCode', code: null} schema: short: FamilyMember relation ship, for example sister binding: {strength: required, valueSet: 'http://terminology.hl7.org/ValueSet/v3-FamilyMember'} mustSupport: true index: 45 elements: coding: mustSupport: true index: 46 elements: system: pattern: {type: Uri, value: 'http://terminology.hl7.org/CodeSystem/v3-RoleCode'} mustSupport: true index: 47 code: {short: CHILD (child) | DAU (natural daugher) | SON (natural son) | FTH (father) | MTH (mother) | ..., mustSupport: true, index: 48} display: {mustSupport: true, index: 49} required: [system, code] text: {short: 'If the relationship can not be coded, it can be described in plain text in this field', mustSupport: true, index: 50} name: {type: HumanName, mustSupport: true, index: 51} telecom: {type: ContactPoint, mustSupport: true, index: 52} address: {type: Address, mustSupport: true, index: 53} gender: {mustSupport: true, index: 54} organization: type: Reference mustSupport: true refers: ['https://mednet.swiss/fhir/StructureDefinition/mni-organization'] index: 55 package_version: 0.17.0 extensions: citizenship: constraint: ch-pat-3: {human: ISO Country Alpha-2 or ISO Country Alpha-3 code, severity: error, expression: '(extension.where(url=''code'').value.coding.code.length()=2 and extension.where(url=''code'').value.coding.code.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-2'')) or (extension.where(url=''code'').value.coding.code.length()=3 and extension.where(url=''code'').value.coding.code.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-3''))'} min: 0 isModifier: false short: Citizenship(s) of patient index: 3 type: Extension mustSupport: true url: http://hl7.org/fhir/StructureDefinition/patient-citizenship base: {max: '*', min: 0, path: DomainResource.extension} class: profile kind: resource url: https://mednet.swiss/fhir/StructureDefinition/mni-patient base: http://hl7.org/fhir/StructureDefinition/Patient version: 0.17.0