INTEROPen CareConnect Base STU3 Implementation Guide
3.0.0 - CI Build

INTEROPen CareConnect Base STU3 Implementation Guide - Local Development build (v3.0.0). See the Directory of published versions

Extension: Extension-CareConnect-NHSCommunication-1

This extension is constrained to support the communication preferences for a resource in the NHS.

The official URL for this extension is:

https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-NHSCommunication-1

Status: draft
Extension maintained by: INTEROpen

Context of Use

This extension may be used on the following element(s):

  • {"type"=>"Patient"}
  • {"type"=>"Practitioner"}

Usage info

Usage:

Formal Views of Extension Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from Extension

Summary

Mandatory: 2 elements (4 nested mandatory elements)
Fixed Value: 6 elements
Prohibited: 1 element

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionNHS communication preferences for a resource
... extension 0..*ExtensionSlice: Unordered, Open by value:url
... extension:language 1..1ExtensionLanguages which may be used for communication
.... url 1..1uri"language"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptLanguages which may be used for communication
Binding: Care Connect Human Language (required)
... extension:preferred 0..1ExtensionLanguage preference indicator
.... url 1..1uri"preferred"
.... valueBoolean 1..1booleanIndicates whether or not this language is preferred (over other languages up a certain level)
.... url 1..1uri"modeOfCommunication"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptA valueset to describe the mode the patient can communicate in, representing the method of expression of the language.
Binding: Care Connect Language Ability Mode (required)
... extension:communicationProficiency 0..1ExtensionThe level of proficiency in communicating a language
.... url 1..1uri"communicationProficiency"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptA valueset to describe the level of proficiency in communicating a language
Binding: Care Connect Language Ability Proficiency (required)
... extension:interpreterRequired 0..1ExtensionInterpreter preference indicator
.... url 1..1uri"interpreterRequired"
.... valueBoolean 1..1booleanIndicates whether an interpreter is required for communication purposes
... url 1..1uri"https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-NHSCommunication-1"
... value[x] 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension I0..*ExtensionNHS communication preferences for a resource
... id 0..1stringxml:id (or equivalent in JSON)
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:language 1..1ExtensionLanguages which may be used for communication
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"language"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptLanguages which may be used for communication
Binding: Care Connect Human Language (required)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"preferred"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueBoolean 1..1booleanIndicates whether or not this language is preferred (over other languages up a certain level)
... extension:modeOfCommunication 0..*ExtensionMode of communication for the selected language
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"modeOfCommunication"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptA valueset to describe the mode the patient can communicate in, representing the method of expression of the language.
Binding: Care Connect Language Ability Mode (required)
... extension:communicationProficiency 0..1ExtensionThe level of proficiency in communicating a language
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"communicationProficiency"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptA valueset to describe the level of proficiency in communicating a language
Binding: Care Connect Language Ability Proficiency (required)
... extension:interpreterRequired 0..1ExtensionInterpreter preference indicator
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"interpreterRequired"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueBoolean 1..1booleanIndicates whether an interpreter is required for communication purposes
... url 1..1uri"https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-NHSCommunication-1"

doco Documentation for this format

This structure is derived from Extension

Summary

Mandatory: 2 elements (4 nested mandatory elements)
Fixed Value: 6 elements
Prohibited: 1 element

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionNHS communication preferences for a resource
... extension 0..*ExtensionSlice: Unordered, Open by value:url
... extension:language 1..1ExtensionLanguages which may be used for communication
.... url 1..1uri"language"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptLanguages which may be used for communication
Binding: Care Connect Human Language (required)
... extension:preferred 0..1ExtensionLanguage preference indicator
.... url 1..1uri"preferred"
.... valueBoolean 1..1booleanIndicates whether or not this language is preferred (over other languages up a certain level)
.... url 1..1uri"modeOfCommunication"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptA valueset to describe the mode the patient can communicate in, representing the method of expression of the language.
Binding: Care Connect Language Ability Mode (required)
... extension:communicationProficiency 0..1ExtensionThe level of proficiency in communicating a language
.... url 1..1uri"communicationProficiency"
.... valueCodeableConcept:valueCodeableConcept 1..1CodeableConceptA valueset to describe the level of proficiency in communicating a language
Binding: Care Connect Language Ability Proficiency (required)
... extension:interpreterRequired 0..1ExtensionInterpreter preference indicator
.... url 1..1uri"interpreterRequired"
.... valueBoolean 1..1booleanIndicates whether an interpreter is required for communication purposes
... url 1..1uri"https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-NHSCommunication-1"
... value[x] 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension I0..*ExtensionNHS communication preferences for a resource
... id 0..1stringxml:id (or equivalent in JSON)
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:language 1..1ExtensionLanguages which may be used for communication
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"language"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptLanguages which may be used for communication
Binding: Care Connect Human Language (required)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"preferred"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueBoolean 1..1booleanIndicates whether or not this language is preferred (over other languages up a certain level)
... extension:modeOfCommunication 0..*ExtensionMode of communication for the selected language
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"modeOfCommunication"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptA valueset to describe the mode the patient can communicate in, representing the method of expression of the language.
Binding: Care Connect Language Ability Mode (required)
... extension:communicationProficiency 0..1ExtensionThe level of proficiency in communicating a language
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"communicationProficiency"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueCodeableConcept 1..1CodeableConceptA valueset to describe the level of proficiency in communicating a language
Binding: Care Connect Language Ability Proficiency (required)
... extension:interpreterRequired 0..1ExtensionInterpreter preference indicator
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... url 1..1uriidentifies the meaning of the extension
..... value[x] 0..1Value of extension
...... valueBase64Binarybase64Binary
...... valueBooleanboolean
...... valueCodecode
...... valueDatedate
...... valueDateTimedateTime
...... valueDecimaldecimal
...... valueIdid
...... valueInstantinstant
...... valueIntegerinteger
...... valueMarkdownmarkdown
...... valueOidoid
...... valuePositiveIntpositiveInt
...... valueStringstring
...... valueTimetime
...... valueUnsignedIntunsignedInt
...... valueUriuri
...... valueAddressAddress
...... valueAgeAge
...... valueAnnotationAnnotation
...... valueAttachmentAttachment
...... valueCodeableConceptCodeableConcept
...... valueCodingCoding
...... valueContactPointContactPoint
...... valueCountCount
...... valueDistanceDistance
...... valueDurationDuration
...... valueHumanNameHumanName
...... valueIdentifierIdentifier
...... valueMoneyMoney
...... valuePeriodPeriod
...... valueQuantityQuantity
...... valueRangeRange
...... valueRatioRatio
...... valueReferenceReference(Any)
...... valueSampledDataSampledData
...... valueSignatureSignature
...... valueTimingTiming
...... valueMetaMeta
.... url 1..1uri"interpreterRequired"
.... value[x] 1..1(Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... value[x]:valueBoolean 1..1booleanIndicates whether an interpreter is required for communication purposes
... url 1..1uri"https://fhir.hl7.org.uk/STU3/StructureDefinition/Extension-CareConnect-NHSCommunication-1"

doco Documentation for this format

 

Other representations of extension: Schematron

Terminology Bindings

Terminology Bindings

PathConformanceValueSet
Extension.extension:language.value[x]:valueCodeableConceptrequiredCare Connect Human Language
Extension.extension:modeOfCommunication.value[x]:valueCodeableConceptrequiredCare Connect Language Ability Mode
Extension.extension:communicationProficiency.value[x]:valueCodeableConceptrequiredCare Connect Language Ability Proficiency

Constraints

Constraints

IdPathDetailsRequirements
ele-1ExtensionAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1ExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()