CH Core (R4)
5.0.0-ci-build - ci-build
CH Core (R4), published by HL7 Switzerland. This guide is not an authorized publication; it is the continuous build for version 5.0.0-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7ch/ch-core/ and changes regularly. See the Directory of published versions
Active as of 2024-10-09 |
Definitions for the ch-core-address-ech-11-placeofbirth data type profile.
Guidance on how to interpret the contents of this table can be found here
0. Address | |
2. Address.use | |
Control | 0..0 |
4. Address.type | |
Control | 0..0 |
6. Address.text | |
Control | 0..0 |
8. Address.line | |
Control | 0..0 |
10. Address.city | |
Definition | optional if country is not Switzerland |
Short | Place of Birth (municipality) |
12. Address.city.extension:bfs | |
Slice Name | bfs |
14. Address.district | |
Control | 0..0 |
16. Address.state | |
Definition | Canton 2 letter abbreviation |
Short | Canton |
18. Address.postalCode | |
Control | 0..0 |
20. Address.country | |
Definition | Country if place of Birth is not Switzerland |
Short | Country if place of Birth is not Switzerland |
22. Address.period | |
Control | 0..0 |
Guidance on how to interpret the contents of this table can be found here
0. Address | |
Definition | An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world. |
Short | An address expressed using postal conventions (as opposed to GPS or other location definition formats) |
Comments | Note: address is intended to describe postal addresses for administrative purposes, not to describe absolute geographical coordinates. Postal addresses are often used as proxies for physical locations (also see the Location resource). Note: address is intended to describe postal addresses for administrative purposes, not to describe absolute geographical coordinates. Postal addresses are often used as proxies for physical locations (also see the Location resource). |
Control | 0..* This element is affected by the following invariants: ele-1 |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ch-addr-2: For a Swiss address, a canton abbreviation from the value set 'eCH-0007 Canton Abbreviation' must be used. ( country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').empty() or
(country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH') = false) or
(country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH').exists() and
(state.empty() or state.memberOf('http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonabbreviation'))) ) |
2. Address.use | |
Definition | The purpose of this address. |
Short | home | work | temp | old | billing - purpose of this address |
Comments | Applications can assume that an address is current unless it explicitly says that it is temporary or old. |
Control | 0..01 |
Binding | The codes SHALL be taken from AddressUsehttp://hl7.org/fhir/ValueSet/address-use|4.0.1 (required to http://hl7.org/fhir/ValueSet/address-use|4.0.1 )The use of an address. |
Type | code |
Is Modifier | true because This is labeled as "Is Modifier" because applications should not mistake a temporary or old address etc.for a current/permanent one |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Requirements | Allows an appropriate address to be chosen from a list of many. |
Example | <br/><b>General</b>:home |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
4. Address.type | |
Definition | Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both. |
Short | postal | physical | both |
Comments | The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource). The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource). |
Control | 0..01 |
Binding | The codes SHALL be taken from AddressTypehttp://hl7.org/fhir/ValueSet/address-type|4.0.1 (required to http://hl7.org/fhir/ValueSet/address-type|4.0.1 )The type of an address (physical / postal). |
Type | code |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Example | <br/><b>General</b>:both |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
6. Address.text | |
Definition | Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts. |
Short | Text representation of the address |
Comments | Can provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part. |
Control | 0..01 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Requirements | A renderable, unencoded form. |
Example | <br/><b>General</b>:137 Nowhere Street, Erewhon 9132 |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
8. Address.line | |
Definition | This component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information. |
Short | Street name, number, direction & P.O. Box etc. |
Control | 0..0* |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Example | <br/><b>General</b>:137 Nowhere Street |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
34. Address.city | |
Definition | optional if country is not Switzerland The name of the city, town, suburb, village or other community or delivery center. |
Short | Place of Birth (municipality)Name of city, town etc. |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Municpality |
Example | <br/><b>General</b>:Erewhon |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
36. Address.city.extension:bfs | |
Slice Name | bfs |
Definition | Extension for eCH-0011 - bfs number (ministry of statistics number) |
Short | Extension |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | Extension(eCH-0007 Municipality Id – BFS Gemeindenummer) (Extension Type: Choice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta) |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() )ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
38. Address.district | |
Definition | The name of the administrative area (county). |
Short | District name (aka county) |
Comments | District is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead. |
Control | 0..01 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | County |
Example | <br/><b>General</b>:Madison |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
40. Address.state | |
Definition | Canton 2 letter abbreviation Sub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes). |
Short | CantonSub-unit of country (abbreviations ok) |
Control | 0..1 |
Binding | For example codes, see For codes, see eCH-0007 Canton Abbreviation incl. FL (Fürstentum Liechtenstein) (example to http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonflabbreviation )Use these values for a Swiss or Liechtenstein address |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Province, Territory |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
42. Address.postalCode | |
Definition | A postal code designating a region defined by the postal service. |
Short | Postal code for area |
Control | 0..01 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Zip |
Example | <br/><b>General</b>:9132 |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
44. Address.country | |
Definition | Country if place of Birth is not Switzerland Country - a nation as commonly understood or generally accepted. |
Short | Country if place of Birth is not SwitzerlandCountry (e.g. can be ISO 3166 2 or 3 letter code) |
Comments | ISO 3166 3 letter codes can be used in place of a human readable country name. |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
46. Address.country.extension:countrycode | |
Slice Name | countrycode |
Definition | The content of the country code element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, if the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2. |
Short | ISO Country Alpha-2 or ISO Country Alpha-3 code |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | Extension(SC-coding) (Extension Type: Coding) |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() )ch-addr-1: ISO Country Alpha-2 or ISO Country Alpha-3 code ( ((value.code.length()=2) and value.code.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2')) or ((value.code.length() = 3) and value.code.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3')) )ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
48. Address.period | |
Definition | Time period when address was/is in use. |
Short | Time period when address was/is in use |
Control | 0..01 |
Type | Period |
Is Modifier | false |
Summary | true |
Requirements | Allows addresses to be placed in historical context. |
Example | <br/><b>General</b>:{ "start" : "2010-03-23", "end" : "2010-07-01" } |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
Guidance on how to interpret the contents of this table can be found here
0. Address | |
Definition | An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world. |
Short | An address expressed using postal conventions (as opposed to GPS or other location definition formats) |
Comments | Note: address is intended to describe postal addresses for administrative purposes, not to describe absolute geographical coordinates. Postal addresses are often used as proxies for physical locations (also see the Location resource). |
Control | 0..* This element is affected by the following invariants: ele-1 |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ch-addr-2: For a Swiss address, a canton abbreviation from the value set 'eCH-0007 Canton Abbreviation' must be used. ( country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').empty() or
(country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH') = false) or
(country.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/iso21090-SC-coding').value.code.startsWith('CH').exists() and
(state.empty() or state.memberOf('http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonabbreviation'))) ) |
2. Address.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
4. Address.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. 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 can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | Additional content defined by implementations |
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. |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Address.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
6. Address.use | |
Definition | The purpose of this address. |
Short | home | work | temp | old | billing - purpose of this address |
Comments | Applications can assume that an address is current unless it explicitly says that it is temporary or old. |
Control | 0..0 |
Binding | The codes SHALL be taken from AddressUse (required to http://hl7.org/fhir/ValueSet/address-use|4.0.1 )The use of an address. |
Type | code |
Is Modifier | true because This is labeled as "Is Modifier" because applications should not mistake a temporary or old address etc.for a current/permanent one |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Requirements | Allows an appropriate address to be chosen from a list of many. |
Example | <br/><b>General</b>:home |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
8. Address.type | |
Definition | Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both. |
Short | postal | physical | both |
Comments | The definition of Address states that "address is intended to describe postal addresses, not physical locations". However, many applications track whether an address has a dual purpose of being a location that can be visited as well as being a valid delivery destination, and Postal addresses are often used as proxies for physical locations (also see the Location resource). |
Control | 0..0 |
Binding | The codes SHALL be taken from AddressType (required to http://hl7.org/fhir/ValueSet/address-type|4.0.1 )The type of an address (physical / postal). |
Type | code |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Example | <br/><b>General</b>:both |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
10. Address.text | |
Definition | Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts. |
Short | Text representation of the address |
Comments | Can provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part. |
Control | 0..0 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Requirements | A renderable, unencoded form. |
Example | <br/><b>General</b>:137 Nowhere Street, Erewhon 9132 |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
12. Address.line | |
Definition | This component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information. |
Short | Street name, number, direction & P.O. Box etc. |
Control | 0..0 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Example | <br/><b>General</b>:137 Nowhere Street |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
45. Address.city | |
Definition | optional if country is not Switzerland |
Short | Place of Birth (municipality) |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Municpality |
Example | <br/><b>General</b>:Erewhon |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
47. Address.city.id | |
Definition | unique id for the element within a resource (for internal references) |
Short | xml:id (or equivalent in JSON) |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
49. Address.city.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Address.city.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
51. Address.city.extension:bfs | |
Slice Name | bfs |
Definition | Extension for eCH-0011 - bfs number (ministry of statistics number) |
Short | Extension |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | Extension(eCH-0007 Municipality Id – BFS Gemeindenummer) (Extension Type: Choice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta) |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
53. Address.city.value | |
Definition | The actual value |
Short | Primitive value for string |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Max Length: | 1048576 |
55. Address.district | |
Definition | The name of the administrative area (county). |
Short | District name (aka county) |
Comments | District is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead. |
Control | 0..0 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | County |
Example | <br/><b>General</b>:Madison |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
57. Address.state | |
Definition | Canton 2 letter abbreviation |
Short | Canton |
Control | 0..1 |
Binding | For example codes, see eCH-0007 Canton Abbreviation incl. FL (Fürstentum Liechtenstein) (example to http://fhir.ch/ig/ch-core/ValueSet/ech-7-cantonflabbreviation )Use these values for a Swiss or Liechtenstein address |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Province, Territory |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
59. Address.postalCode | |
Definition | A postal code designating a region defined by the postal service. |
Short | Postal code for area |
Control | 0..0 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Alternate Names | Zip |
Example | <br/><b>General</b>:9132 |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
61. Address.country | |
Definition | Country if place of Birth is not Switzerland |
Short | Country if place of Birth is not Switzerland |
Comments | ISO 3166 3 letter codes can be used in place of a human readable country name. |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
63. Address.country.id | |
Definition | unique id for the element within a resource (for internal references) |
Short | xml:id (or equivalent in JSON) |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
65. Address.country.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Address.country.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
67. Address.country.extension:countrycode | |
Slice Name | countrycode |
Definition | The content of the country code element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, if the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2. |
Short | ISO Country Alpha-2 or ISO Country Alpha-3 code |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | Extension(SC-coding) (Extension Type: Coding) |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() )ch-addr-1: ISO Country Alpha-2 or ISO Country Alpha-3 code ( ((value.code.length()=2) and value.code.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2')) or ((value.code.length() = 3) and value.code.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3')) ) |
69. Address.country.value | |
Definition | The actual value |
Short | Primitive value for string |
Control | 0..1 |
Type | string |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Max Length: | 1048576 |
71. Address.period | |
Definition | Time period when address was/is in use. |
Short | Time period when address was/is in use |
Control | 0..0 |
Type | Period |
Is Modifier | false |
Summary | true |
Requirements | Allows addresses to be placed in historical context. |
Example | <br/><b>General</b>:{ "start" : "2010-03-23", "end" : "2010-07-01" } |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |