Current Build

12.16 Resource VisionPrescription - Content

Financial Management Work GroupMaturity Level: 1 Trial Use Compartments: Encounter, Patient, Practitioner

An authorization for the supply of glasses and/or contact lenses to a patient.

This resource covers all prescriptions for glasses and contact lenses for a patient.

This resource is referenced by CarePlan, Claim and ExplanationOfBenefit

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. VisionPrescription TUDomainResourcePrescription for vision correction products for a patient
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierBusiness identifier
... status ?!Σ0..1codeactive | cancelled | draft | entered-in-error
Financial Resource Status Codes (Required)
... patient 0..1Reference(Patient)Who prescription is for
... encounter 0..1Reference(Encounter)Created during encounter / admission / stay
... dateWritten 0..1dateTimeWhen prescription was authorized
... prescriber 0..1Reference(Practitioner | PractitionerRole)Who authorizes the vision product
... reason[x] 0..1Reason or indication for writing the prescription
.... reasonCodeableConceptCodeableConcept
.... reasonReferenceReference(Condition)
... dispense 0..*BackboneElementVision supply authorization
.... product 0..1CodeableConceptProduct to be supplied
Example Vision Prescription Product Codes (Example)
.... eye 0..1coderight | left
VisionEyes (Required)
.... sphere 0..1decimalLens sphere
.... cylinder 0..1decimalLens cylinder
.... axis 0..1integerLens axis
.... prism 0..*BackboneElementLens prism
..... amount 1..1decimalAmount of adjustment
..... base 1..1codeup | down | in | out
VisionBase (Required)
.... add 0..1decimalLens add
.... power 0..1decimalContact lens power
.... backCurve 0..1decimalContact lens back curvature
.... diameter 0..1decimalContact lens diameter
.... duration 0..1SimpleQuantityLens wear duration
.... color 0..1stringColor required
.... brand 0..1stringBrand required
.... note 0..*AnnotationNotes for coatings

doco Documentation for this format

UML Diagram (Legend)

VisionPrescription (DomainResource)Business identifier which may be used by other parties to reference or identify the prescriptionidentifier : Identifier [0..*]The status of the resource instance (this element modifies the meaning of other elements)status : code [0..1] « A code specifying the state of the resource instance. (Strength=Required)FinancialResourceStatusCodes! »A link to a resource representing the person to whom the vision products will be suppliedpatient : Reference [0..1] « Patient »A link to a resource that identifies the particular occurrence of contact between patient and health care providerencounter : Reference [0..1] « Encounter »The date (and perhaps time) when the prescription was writtendateWritten : dateTime [0..1]The healthcare professional responsible for authorizing the prescriptionprescriber : Reference [0..1] « Practitioner|PractitionerRole »Can be the reason or the indication for writing the prescriptionreason[x] : Type [0..1] « CodeableConcept|Reference(Condition) »DispenseIdentifies the type of vision correction product which is required for the patientproduct : CodeableConcept [0..1] « A coded concept describing the vision products. (Strength=Example)ExampleVisionPrescriptionProd...?? »The eye for which the lens applieseye : code [0..1] « A coded concept listing the eye codes. (Strength=Required)VisionEyes! »Lens power measured in dioptres (0.25 units)sphere : decimal [0..1]Power adjustment for astigmatism measured in dioptres (0.25 units)cylinder : decimal [0..1]Adjustment for astigmatism measured in integer degreesaxis : integer [0..1]Power adjustment for multifocal lenses measured in dioptres (0.25 units)add : decimal [0..1]Contact lens power measured in dioptres (0.25 units)power : decimal [0..1]Back curvature measured in millimetresbackCurve : decimal [0..1]Contact lens diameter measured in millimetresdiameter : decimal [0..1]The recommended maximum wear period for the lensduration : Quantity(SimpleQuantity) [0..1]Special color or patterncolor : string [0..1]Brand recommendations or restrictionsbrand : string [0..1]Notes for special requirements such as coatings and lens materialsnote : Annotation [0..*]PrismAmount of prism to compensate for eye alignment in fractional unitsamount : decimal [1..1]The relative base, or reference lens edge, for the prismbase : code [1..1] « A coded concept listing the base codes. (Strength=Required)VisionBase! »Allows for adjustment on two axisprism[0..*]Deals with details of the dispense part of the supply specificationdispense[0..*]

XML Template

<VisionPrescription xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier --></identifier>
 <status value="[code]"/><!-- 0..1 active | cancelled | draft | entered-in-error -->
 <patient><!-- 0..1 Reference(Patient) Who prescription is for --></patient>
 <encounter><!-- 0..1 Reference(Encounter) Created during encounter / admission / stay --></encounter>
 <dateWritten value="[dateTime]"/><!-- 0..1 When prescription was authorized -->
 <prescriber><!-- 0..1 Reference(Practitioner|PractitionerRole) Who authorizes the vision product --></prescriber>
 <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Reason or indication for writing the prescription --></reason[x]>
 <dispense>  <!-- 0..* Vision supply authorization -->
  <product><!-- 0..1 CodeableConcept Product to be supplied --></product>
  <eye value="[code]"/><!-- 0..1 right | left -->
  <sphere value="[decimal]"/><!-- 0..1 Lens sphere -->
  <cylinder value="[decimal]"/><!-- 0..1 Lens cylinder -->
  <axis value="[integer]"/><!-- 0..1 Lens axis -->
  <prism>  <!-- 0..* Lens prism -->
   <amount value="[decimal]"/><!-- 1..1 Amount of adjustment -->
   <base value="[code]"/><!-- 1..1 up | down | in | out -->
  </prism>
  <add value="[decimal]"/><!-- 0..1 Lens add -->
  <power value="[decimal]"/><!-- 0..1 Contact lens power -->
  <backCurve value="[decimal]"/><!-- 0..1 Contact lens back curvature -->
  <diameter value="[decimal]"/><!-- 0..1 Contact lens diameter -->
  <duration><!-- 0..1 Quantity(SimpleQuantity) Lens wear duration --></duration>
  <color value="[string]"/><!-- 0..1 Color required -->
  <brand value="[string]"/><!-- 0..1 Brand required -->
  <note><!-- 0..* Annotation Notes for coatings --></note>
 </dispense>
</VisionPrescription>

JSON Template

{doco
  "resourceType" : "VisionPrescription",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier
  "status" : "<code>", // active | cancelled | draft | entered-in-error
  "patient" : { Reference(Patient) }, // Who prescription is for
  "encounter" : { Reference(Encounter) }, // Created during encounter / admission / stay
  "dateWritten" : "<dateTime>", // When prescription was authorized
  "prescriber" : { Reference(Practitioner|PractitionerRole) }, // Who authorizes the vision product
  // reason[x]: Reason or indication for writing the prescription. One of these 2:
  "reasonCodeableConcept" : { CodeableConcept },
  "reasonReference" : { Reference(Condition) },
  "dispense" : [{ // Vision supply authorization
    "product" : { CodeableConcept }, // Product to be supplied
    "eye" : "<code>", // right | left
    "sphere" : <decimal>, // Lens sphere
    "cylinder" : <decimal>, // Lens cylinder
    "axis" : <integer>, // Lens axis
    "prism" : [{ // Lens prism
      "amount" : <decimal>, // R!  Amount of adjustment
      "base" : "<code>" // R!  up | down | in | out
    }],
    "add" : <decimal>, // Lens add
    "power" : <decimal>, // Contact lens power
    "backCurve" : <decimal>, // Contact lens back curvature
    "diameter" : <decimal>, // Contact lens diameter
    "duration" : { Quantity(SimpleQuantity) }, // Lens wear duration
    "color" : "<string>", // Color required
    "brand" : "<string>", // Brand required
    "note" : [{ Annotation }] // Notes for coatings
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:VisionPrescription;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:VisionPrescription.identifier [ Identifier ], ... ; # 0..* Business identifier
  fhir:VisionPrescription.status [ code ]; # 0..1 active | cancelled | draft | entered-in-error
  fhir:VisionPrescription.patient [ Reference(Patient) ]; # 0..1 Who prescription is for
  fhir:VisionPrescription.encounter [ Reference(Encounter) ]; # 0..1 Created during encounter / admission / stay
  fhir:VisionPrescription.dateWritten [ dateTime ]; # 0..1 When prescription was authorized
  fhir:VisionPrescription.prescriber [ Reference(Practitioner|PractitionerRole) ]; # 0..1 Who authorizes the vision product
  # VisionPrescription.reason[x] : 0..1 Reason or indication for writing the prescription. One of these 2
    fhir:VisionPrescription.reasonCodeableConcept [ CodeableConcept ]
    fhir:VisionPrescription.reasonReference [ Reference(Condition) ]
  fhir:VisionPrescription.dispense [ # 0..* Vision supply authorization
    fhir:VisionPrescription.dispense.product [ CodeableConcept ]; # 0..1 Product to be supplied
    fhir:VisionPrescription.dispense.eye [ code ]; # 0..1 right | left
    fhir:VisionPrescription.dispense.sphere [ decimal ]; # 0..1 Lens sphere
    fhir:VisionPrescription.dispense.cylinder [ decimal ]; # 0..1 Lens cylinder
    fhir:VisionPrescription.dispense.axis [ integer ]; # 0..1 Lens axis
    fhir:VisionPrescription.dispense.prism [ # 0..* Lens prism
      fhir:VisionPrescription.dispense.prism.amount [ decimal ]; # 1..1 Amount of adjustment
      fhir:VisionPrescription.dispense.prism.base [ code ]; # 1..1 up | down | in | out
    ], ...;
    fhir:VisionPrescription.dispense.add [ decimal ]; # 0..1 Lens add
    fhir:VisionPrescription.dispense.power [ decimal ]; # 0..1 Contact lens power
    fhir:VisionPrescription.dispense.backCurve [ decimal ]; # 0..1 Contact lens back curvature
    fhir:VisionPrescription.dispense.diameter [ decimal ]; # 0..1 Contact lens diameter
    fhir:VisionPrescription.dispense.duration [ Quantity(SimpleQuantity) ]; # 0..1 Lens wear duration
    fhir:VisionPrescription.dispense.color [ string ]; # 0..1 Color required
    fhir:VisionPrescription.dispense.brand [ string ]; # 0..1 Brand required
    fhir:VisionPrescription.dispense.note [ Annotation ], ... ; # 0..* Notes for coatings
  ], ...;
]

Changes since R3

VisionPrescription
VisionPrescription.prescriber
  • Type changed from Reference(Practitioner) to Reference(Practitioner|PractitionerRole)
VisionPrescription.reason[x]
  • Remove Reference(Condition), Add Reference(Condition)
VisionPrescription.dispense.prism
  • Max Cardinality changed from 1 to *
  • Type changed from decimal to BackboneElement
VisionPrescription.dispense.prism.amount
  • Added Element
VisionPrescription.dispense.prism.base
  • Added Element
VisionPrescription.dispense.base
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 2 tests of which 2 fail to execute.)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. VisionPrescription TUDomainResourcePrescription for vision correction products for a patient
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierBusiness identifier
... status ?!Σ0..1codeactive | cancelled | draft | entered-in-error
Financial Resource Status Codes (Required)
... patient 0..1Reference(Patient)Who prescription is for
... encounter 0..1Reference(Encounter)Created during encounter / admission / stay
... dateWritten 0..1dateTimeWhen prescription was authorized
... prescriber 0..1Reference(Practitioner | PractitionerRole)Who authorizes the vision product
... reason[x] 0..1Reason or indication for writing the prescription
.... reasonCodeableConceptCodeableConcept
.... reasonReferenceReference(Condition)
... dispense 0..*BackboneElementVision supply authorization
.... product 0..1CodeableConceptProduct to be supplied
Example Vision Prescription Product Codes (Example)
.... eye 0..1coderight | left
VisionEyes (Required)
.... sphere 0..1decimalLens sphere
.... cylinder 0..1decimalLens cylinder
.... axis 0..1integerLens axis
.... prism 0..*BackboneElementLens prism
..... amount 1..1decimalAmount of adjustment
..... base 1..1codeup | down | in | out
VisionBase (Required)
.... add 0..1decimalLens add
.... power 0..1decimalContact lens power
.... backCurve 0..1decimalContact lens back curvature
.... diameter 0..1decimalContact lens diameter
.... duration 0..1SimpleQuantityLens wear duration
.... color 0..1stringColor required
.... brand 0..1stringBrand required
.... note 0..*AnnotationNotes for coatings

doco Documentation for this format

UML Diagram (Legend)

VisionPrescription (DomainResource)Business identifier which may be used by other parties to reference or identify the prescriptionidentifier : Identifier [0..*]The status of the resource instance (this element modifies the meaning of other elements)status : code [0..1] « A code specifying the state of the resource instance. (Strength=Required)FinancialResourceStatusCodes! »A link to a resource representing the person to whom the vision products will be suppliedpatient : Reference [0..1] « Patient »A link to a resource that identifies the particular occurrence of contact between patient and health care providerencounter : Reference [0..1] « Encounter »The date (and perhaps time) when the prescription was writtendateWritten : dateTime [0..1]The healthcare professional responsible for authorizing the prescriptionprescriber : Reference [0..1] « Practitioner|PractitionerRole »Can be the reason or the indication for writing the prescriptionreason[x] : Type [0..1] « CodeableConcept|Reference(Condition) »DispenseIdentifies the type of vision correction product which is required for the patientproduct : CodeableConcept [0..1] « A coded concept describing the vision products. (Strength=Example)ExampleVisionPrescriptionProd...?? »The eye for which the lens applieseye : code [0..1] « A coded concept listing the eye codes. (Strength=Required)VisionEyes! »Lens power measured in dioptres (0.25 units)sphere : decimal [0..1]Power adjustment for astigmatism measured in dioptres (0.25 units)cylinder : decimal [0..1]Adjustment for astigmatism measured in integer degreesaxis : integer [0..1]Power adjustment for multifocal lenses measured in dioptres (0.25 units)add : decimal [0..1]Contact lens power measured in dioptres (0.25 units)power : decimal [0..1]Back curvature measured in millimetresbackCurve : decimal [0..1]Contact lens diameter measured in millimetresdiameter : decimal [0..1]The recommended maximum wear period for the lensduration : Quantity(SimpleQuantity) [0..1]Special color or patterncolor : string [0..1]Brand recommendations or restrictionsbrand : string [0..1]Notes for special requirements such as coatings and lens materialsnote : Annotation [0..*]PrismAmount of prism to compensate for eye alignment in fractional unitsamount : decimal [1..1]The relative base, or reference lens edge, for the prismbase : code [1..1] « A coded concept listing the base codes. (Strength=Required)VisionBase! »Allows for adjustment on two axisprism[0..*]Deals with details of the dispense part of the supply specificationdispense[0..*]

XML Template

<VisionPrescription xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier --></identifier>
 <status value="[code]"/><!-- 0..1 active | cancelled | draft | entered-in-error -->
 <patient><!-- 0..1 Reference(Patient) Who prescription is for --></patient>
 <encounter><!-- 0..1 Reference(Encounter) Created during encounter / admission / stay --></encounter>
 <dateWritten value="[dateTime]"/><!-- 0..1 When prescription was authorized -->
 <prescriber><!-- 0..1 Reference(Practitioner|PractitionerRole) Who authorizes the vision product --></prescriber>
 <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Reason or indication for writing the prescription --></reason[x]>
 <dispense>  <!-- 0..* Vision supply authorization -->
  <product><!-- 0..1 CodeableConcept Product to be supplied --></product>
  <eye value="[code]"/><!-- 0..1 right | left -->
  <sphere value="[decimal]"/><!-- 0..1 Lens sphere -->
  <cylinder value="[decimal]"/><!-- 0..1 Lens cylinder -->
  <axis value="[integer]"/><!-- 0..1 Lens axis -->
  <prism>  <!-- 0..* Lens prism -->
   <amount value="[decimal]"/><!-- 1..1 Amount of adjustment -->
   <base value="[code]"/><!-- 1..1 up | down | in | out -->
  </prism>
  <add value="[decimal]"/><!-- 0..1 Lens add -->
  <power value="[decimal]"/><!-- 0..1 Contact lens power -->
  <backCurve value="[decimal]"/><!-- 0..1 Contact lens back curvature -->
  <diameter value="[decimal]"/><!-- 0..1 Contact lens diameter -->
  <duration><!-- 0..1 Quantity(SimpleQuantity) Lens wear duration --></duration>
  <color value="[string]"/><!-- 0..1 Color required -->
  <brand value="[string]"/><!-- 0..1 Brand required -->
  <note><!-- 0..* Annotation Notes for coatings --></note>
 </dispense>
</VisionPrescription>

JSON Template

{doco
  "resourceType" : "VisionPrescription",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier
  "status" : "<code>", // active | cancelled | draft | entered-in-error
  "patient" : { Reference(Patient) }, // Who prescription is for
  "encounter" : { Reference(Encounter) }, // Created during encounter / admission / stay
  "dateWritten" : "<dateTime>", // When prescription was authorized
  "prescriber" : { Reference(Practitioner|PractitionerRole) }, // Who authorizes the vision product
  // reason[x]: Reason or indication for writing the prescription. One of these 2:
  "reasonCodeableConcept" : { CodeableConcept },
  "reasonReference" : { Reference(Condition) },
  "dispense" : [{ // Vision supply authorization
    "product" : { CodeableConcept }, // Product to be supplied
    "eye" : "<code>", // right | left
    "sphere" : <decimal>, // Lens sphere
    "cylinder" : <decimal>, // Lens cylinder
    "axis" : <integer>, // Lens axis
    "prism" : [{ // Lens prism
      "amount" : <decimal>, // R!  Amount of adjustment
      "base" : "<code>" // R!  up | down | in | out
    }],
    "add" : <decimal>, // Lens add
    "power" : <decimal>, // Contact lens power
    "backCurve" : <decimal>, // Contact lens back curvature
    "diameter" : <decimal>, // Contact lens diameter
    "duration" : { Quantity(SimpleQuantity) }, // Lens wear duration
    "color" : "<string>", // Color required
    "brand" : "<string>", // Brand required
    "note" : [{ Annotation }] // Notes for coatings
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:VisionPrescription;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:VisionPrescription.identifier [ Identifier ], ... ; # 0..* Business identifier
  fhir:VisionPrescription.status [ code ]; # 0..1 active | cancelled | draft | entered-in-error
  fhir:VisionPrescription.patient [ Reference(Patient) ]; # 0..1 Who prescription is for
  fhir:VisionPrescription.encounter [ Reference(Encounter) ]; # 0..1 Created during encounter / admission / stay
  fhir:VisionPrescription.dateWritten [ dateTime ]; # 0..1 When prescription was authorized
  fhir:VisionPrescription.prescriber [ Reference(Practitioner|PractitionerRole) ]; # 0..1 Who authorizes the vision product
  # VisionPrescription.reason[x] : 0..1 Reason or indication for writing the prescription. One of these 2
    fhir:VisionPrescription.reasonCodeableConcept [ CodeableConcept ]
    fhir:VisionPrescription.reasonReference [ Reference(Condition) ]
  fhir:VisionPrescription.dispense [ # 0..* Vision supply authorization
    fhir:VisionPrescription.dispense.product [ CodeableConcept ]; # 0..1 Product to be supplied
    fhir:VisionPrescription.dispense.eye [ code ]; # 0..1 right | left
    fhir:VisionPrescription.dispense.sphere [ decimal ]; # 0..1 Lens sphere
    fhir:VisionPrescription.dispense.cylinder [ decimal ]; # 0..1 Lens cylinder
    fhir:VisionPrescription.dispense.axis [ integer ]; # 0..1 Lens axis
    fhir:VisionPrescription.dispense.prism [ # 0..* Lens prism
      fhir:VisionPrescription.dispense.prism.amount [ decimal ]; # 1..1 Amount of adjustment
      fhir:VisionPrescription.dispense.prism.base [ code ]; # 1..1 up | down | in | out
    ], ...;
    fhir:VisionPrescription.dispense.add [ decimal ]; # 0..1 Lens add
    fhir:VisionPrescription.dispense.power [ decimal ]; # 0..1 Contact lens power
    fhir:VisionPrescription.dispense.backCurve [ decimal ]; # 0..1 Contact lens back curvature
    fhir:VisionPrescription.dispense.diameter [ decimal ]; # 0..1 Contact lens diameter
    fhir:VisionPrescription.dispense.duration [ Quantity(SimpleQuantity) ]; # 0..1 Lens wear duration
    fhir:VisionPrescription.dispense.color [ string ]; # 0..1 Color required
    fhir:VisionPrescription.dispense.brand [ string ]; # 0..1 Brand required
    fhir:VisionPrescription.dispense.note [ Annotation ], ... ; # 0..* Notes for coatings
  ], ...;
]

Changes since Release 3

VisionPrescription
VisionPrescription.prescriber
  • Type changed from Reference(Practitioner) to Reference(Practitioner|PractitionerRole)
VisionPrescription.reason[x]
  • Remove Reference(Condition), Add Reference(Condition)
VisionPrescription.dispense.prism
  • Max Cardinality changed from 1 to *
  • Type changed from decimal to BackboneElement
VisionPrescription.dispense.prism.amount
  • Added Element
VisionPrescription.dispense.prism.base
  • Added Element
VisionPrescription.dispense.base
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 2 tests of which 2 fail to execute.)

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis

PathDefinitionTypeReference
VisionPrescription.status A code specifying the state of the resource instance.RequiredFinancialResourceStatusCodes
VisionPrescription.dispense.product A coded concept describing the vision products.ExampleExampleVisionPrescriptionProductCodes
VisionPrescription.dispense.eye A coded concept listing the eye codes.RequiredVisionEyes
VisionPrescription.dispense.prism.base A coded concept listing the base codes.RequiredVisionBase

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
datewrittendateReturn prescriptions written on this dateVisionPrescription.dateWritten
encounterreferenceReturn prescriptions with this encounter identifierVisionPrescription.encounter
(Encounter)
12 Resources
identifiertokenReturn prescriptions with this external identifierVisionPrescription.identifier30 Resources
patientreferenceThe identity of a patient to list dispenses forVisionPrescription.patient
(Patient)
29 Resources
prescriberreferenceWho authorizes the vision productVisionPrescription.prescriber
(Practitioner, PractitionerRole)
statustokenThe status of the vision prescriptionVisionPrescription.status