PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.extensions.r3@5.3.0-ballot-tc
    http://hl7.org/fhir/StructureDefinition/extended-contact-availability
{
  "description": "The details provided in this contact may be used according to the attached availability guidelines.",
  "_filename": "StructureDefinition-extended-contact-availability.json",
  "package_name": "hl7.fhir.uv.extensions.r3",
  "date": "2015-02-21",
  "derivation": "constraint",
  "publisher": "HL7 International / Patient Administration",
  "fhirVersion": "3.0.2",
  "jurisdiction": [ {
    "coding": [ {
      "code": "001",
      "system": "http://unstats.un.org/unsd/methods/m49/m49.htm"
    } ]
  } ],
  "name": "ExtendedContactAvailability",
  "mapping": [ {
    "uri": "http://hl7.org/v3",
    "name": "RIM Mapping",
    "identity": "rim"
  } ],
  "abstract": false,
  "type": "Extension",
  "experimental": "false",
  "resourceType": "StructureDefinition",
  "title": "Extended Contact Availability",
  "package_version": "5.3.0-ballot-tc",
  "extension": [ {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
    "valueCode": "pa"
  }, {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
    "valueInteger": 2
  }, {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
    "valueCode": "draft"
  }, {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics",
    "valueCode": "can-bind"
  }, {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status-reason",
    "valueCode": "Extensions that have been modified for R3 are still draft while real-world experience is collected"
  } ],
  "snapshot": {
    "element": [ {
      "constraint": [ {
        "key": "ele-1",
        "human": "All FHIR elements must have a @value or children",
        "xpath": "@value|f:*|h:div",
        "source": "http://hl7.org/fhir/StructureDefinition/Element",
        "severity": "error",
        "expression": "hasValue() | (children().count() > id.count())"
      }, {
        "key": "ext-1",
        "human": "Must have either extensions or value[x], not both",
        "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
        "source": "http://hl7.org/fhir/StructureDefinition/Extension",
        "severity": "error",
        "expression": "extension.exists() != value.exists()"
      } ],
      "path": "Extension",
      "min": 0,
      "definition": "The details provided in this contact may be used according to the attached availability guidelines.\r\rIf there are multiple values in the extended contact detail, then all of them apply to these availability notes.",
      "short": "Extension",
      "max": "1",
      "id": "Extension",
      "condition": [ "ele-1" ],
      "base": {
        "max": "*",
        "min": 0,
        "path": "Extension"
      }
    }, {
      "path": "Extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "*",
      "id": "Extension.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension",
      "min": 1,
      "definition": "DataType name 'Availability' from R5",
      "short": "DataType name 'Availability' from R5",
      "type": [ {
        "code": "Extension",
        "profile": "http://hl7.org/fhir/StructureDefinition/_datatype"
      } ],
      "sliceName": "_datatype",
      "max": "1",
      "id": "Extension.extension:_datatype",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:_datatype.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:_datatype.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "http://hl7.org/fhir/StructureDefinition/_datatype",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:_datatype.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "max": "1",
      "fixedString": "Availability",
      "id": "Extension.extension:_datatype.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension",
      "min": 0,
      "definition": "Times the {item} is available.",
      "short": "Times the {item} is available",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "availableTime",
      "max": "*",
      "id": "Extension.extension:availableTime",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "*",
      "id": "Extension.extension:availableTime.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "mon | tue | wed | thu | fri | sat | sun.",
      "short": "mon | tue | wed | thu | fri | sat | sun",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "daysOfWeek",
      "max": "*",
      "id": "Extension.extension:availableTime.extension:daysOfWeek",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:daysOfWeek.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:availableTime.extension:daysOfWeek.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "daysOfWeek",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:daysOfWeek.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "code"
      } ],
      "binding": {
        "strength": "required",
        "extension": [ {
          "url": "http://hl7.org/fhir/tools/StructureDefinition/binding-definition",
          "valueMarkdown": "The purpose for which an extended contact detail should be used."
        }, {
          "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString": "DaysOfWeek"
        } ],
        "description": "The purpose for which an extended contact detail should be used.",
        "valueSetReference": {
          "reference": "http://hl7.org/fhir/ValueSet/days-of-week|5.0.0"
        }
      },
      "max": "1",
      "id": "Extension.extension:availableTime.extension:daysOfWeek.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "Always available? i.e. 24 hour service.",
      "short": "Always available? i.e. 24 hour service",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "allDay",
      "max": "1",
      "id": "Extension.extension:availableTime.extension:allDay",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:allDay.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:availableTime.extension:allDay.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "allDay",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:allDay.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "boolean"
      } ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:allDay.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "Opening time of day (ignored if allDay = true).",
      "short": "Opening time of day (ignored if allDay = true)",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "availableStartTime",
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableStartTime",
      "comment": "The timezone is expected to be specified or implied by the context this datatype is used.",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableStartTime.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:availableTime.extension:availableStartTime.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "availableStartTime",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableStartTime.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "time"
      } ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableStartTime.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "Closing time of day (ignored if allDay = true).",
      "short": "Closing time of day (ignored if allDay = true)",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "availableEndTime",
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableEndTime",
      "comment": "The timezone is expected to be specified or implied by the context this datatype is used.",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableEndTime.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:availableTime.extension:availableEndTime.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "availableEndTime",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableEndTime.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "time"
      } ],
      "max": "1",
      "id": "Extension.extension:availableTime.extension:availableEndTime.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "availableTime",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:availableTime.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.value[x]",
      "min": 0,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "base64Binary"
      }, {
        "code": "boolean"
      }, {
        "code": "code"
      }, {
        "code": "date"
      }, {
        "code": "dateTime"
      }, {
        "code": "decimal"
      }, {
        "code": "id"
      }, {
        "code": "instant"
      }, {
        "code": "integer"
      }, {
        "code": "markdown"
      }, {
        "code": "oid"
      }, {
        "code": "positiveInt"
      }, {
        "code": "string"
      }, {
        "code": "time"
      }, {
        "code": "unsignedInt"
      }, {
        "code": "uri"
      }, {
        "code": "Address"
      }, {
        "code": "Age"
      }, {
        "code": "Annotation"
      }, {
        "code": "Attachment"
      }, {
        "code": "CodeableConcept"
      }, {
        "code": "Coding"
      }, {
        "code": "ContactPoint"
      }, {
        "code": "Count"
      }, {
        "code": "Distance"
      }, {
        "code": "Duration"
      }, {
        "code": "HumanName"
      }, {
        "code": "Identifier"
      }, {
        "code": "Money"
      }, {
        "code": "Period"
      }, {
        "code": "Quantity"
      }, {
        "code": "Range"
      }, {
        "code": "Ratio"
      }, {
        "code": "Reference"
      }, {
        "code": "SampledData"
      }, {
        "code": "Signature"
      }, {
        "code": "Timing"
      }, {
        "code": "Meta"
      } ],
      "max": "0",
      "id": "Extension.extension:availableTime.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension",
      "min": 0,
      "definition": "Not available during this time due to provided reason.",
      "short": "Not available during this time due to provided reason",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "notAvailableTime",
      "max": "*",
      "id": "Extension.extension:notAvailableTime",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "*",
      "id": "Extension.extension:notAvailableTime.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "Reason presented to the user explaining why time not available.",
      "short": "Reason presented to the user explaining why time not available",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "description",
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:description",
      "comment": "The reason will generally be provided to give the textual reason for displaying when the {item} is not available, e.g. 'Closed public holidays' or 'Independence Day'. In cases such as this, the `during` might not be included and local knowledge would be required in such cases (as don't desire to keep updating when the holiday occurs each year).\n\ne.g.2: 'Closed for maintenance over the summer' for this example you would want to include the `during` period, unless this was a university hospital and the \"summer\" period was well known, but would recommend its inclusion anyway.",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:description.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:notAvailableTime.extension:description.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "description",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:description.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:description.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.extension",
      "min": 0,
      "definition": "Service not available during this period.",
      "short": "Service not available during this period",
      "type": [ {
        "code": "Extension"
      } ],
      "sliceName": "during",
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:during",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.id",
      "min": 0,
      "definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
      "short": "xml:id (or equivalent in JSON)",
      "mapping": [ {
        "map": "n/a",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "string"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:during.id",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Element.id"
      }
    }, {
      "path": "Extension.extension.extension.extension",
      "min": 0,
      "definition": "An Extension",
      "short": "Extension",
      "slicing": {
        "rules": "open",
        "description": "Extensions are always sliced by (at least) url",
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      },
      "type": [ {
        "code": "Extension"
      } ],
      "max": "0",
      "id": "Extension.extension:notAvailableTime.extension:during.extension",
      "base": {
        "max": "*",
        "min": 0,
        "path": "Element.extension"
      }
    }, {
      "path": "Extension.extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "during",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:during.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.extension.value[x]",
      "min": 1,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "Period"
      } ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.extension:during.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "notAvailableTime",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.extension:notAvailableTime.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.extension.value[x]",
      "min": 0,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "base64Binary"
      }, {
        "code": "boolean"
      }, {
        "code": "code"
      }, {
        "code": "date"
      }, {
        "code": "dateTime"
      }, {
        "code": "decimal"
      }, {
        "code": "id"
      }, {
        "code": "instant"
      }, {
        "code": "integer"
      }, {
        "code": "markdown"
      }, {
        "code": "oid"
      }, {
        "code": "positiveInt"
      }, {
        "code": "string"
      }, {
        "code": "time"
      }, {
        "code": "unsignedInt"
      }, {
        "code": "uri"
      }, {
        "code": "Address"
      }, {
        "code": "Age"
      }, {
        "code": "Annotation"
      }, {
        "code": "Attachment"
      }, {
        "code": "CodeableConcept"
      }, {
        "code": "Coding"
      }, {
        "code": "ContactPoint"
      }, {
        "code": "Count"
      }, {
        "code": "Distance"
      }, {
        "code": "Duration"
      }, {
        "code": "HumanName"
      }, {
        "code": "Identifier"
      }, {
        "code": "Money"
      }, {
        "code": "Period"
      }, {
        "code": "Quantity"
      }, {
        "code": "Range"
      }, {
        "code": "Ratio"
      }, {
        "code": "Reference"
      }, {
        "code": "SampledData"
      }, {
        "code": "Signature"
      }, {
        "code": "Timing"
      }, {
        "code": "Meta"
      } ],
      "max": "0",
      "id": "Extension.extension:notAvailableTime.value[x]",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    }, {
      "path": "Extension.url",
      "min": 1,
      "definition": "Source of the definition for the extension code - a logical name or a URL.",
      "short": "identifies the meaning of the extension",
      "fixedUri": "http://hl7.org/fhir/StructureDefinition/extended-contact-availability",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "uri"
      } ],
      "representation": [ "xmlAttr" ],
      "max": "1",
      "id": "Extension.url",
      "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
      "base": {
        "max": "1",
        "min": 1,
        "path": "Extension.url"
      }
    }, {
      "path": "Extension.value[x]",
      "min": 0,
      "definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
      "short": "Value of extension",
      "mapping": [ {
        "map": "N/A",
        "identity": "rim"
      } ],
      "type": [ {
        "code": "base64Binary"
      }, {
        "code": "boolean"
      }, {
        "code": "code"
      }, {
        "code": "date"
      }, {
        "code": "dateTime"
      }, {
        "code": "decimal"
      }, {
        "code": "id"
      }, {
        "code": "instant"
      }, {
        "code": "integer"
      }, {
        "code": "markdown"
      }, {
        "code": "oid"
      }, {
        "code": "positiveInt"
      }, {
        "code": "string"
      }, {
        "code": "time"
      }, {
        "code": "unsignedInt"
      }, {
        "code": "uri"
      }, {
        "code": "Address"
      }, {
        "code": "Age"
      }, {
        "code": "Annotation"
      }, {
        "code": "Attachment"
      }, {
        "code": "CodeableConcept"
      }, {
        "code": "Coding"
      }, {
        "code": "ContactPoint"
      }, {
        "code": "Count"
      }, {
        "code": "Distance"
      }, {
        "code": "Duration"
      }, {
        "code": "HumanName"
      }, {
        "code": "Identifier"
      }, {
        "code": "Money"
      }, {
        "code": "Period"
      }, {
        "code": "Quantity"
      }, {
        "code": "Range"
      }, {
        "code": "Ratio"
      }, {
        "code": "Reference"
      }, {
        "code": "SampledData"
      }, {
        "code": "Signature"
      }, {
        "code": "Timing"
      }, {
        "code": "Meta"
      } ],
      "max": "0",
      "id": "Extension.value[x]",
      "comment": "To be updated to the Availability datatype when it is available as an extension datatype",
      "base": {
        "max": "1",
        "min": 0,
        "path": "Extension.value[x]"
      }
    } ]
  },
  "status": "active",
  "id": "c8f6a41d-2654-49c8-84c2-c4820b45c39f",
  "kind": "complex-type",
  "url": "http://hl7.org/fhir/StructureDefinition/extended-contact-availability",
  "identifier": [ {
    "value": "urn:oid:2.16.840.1.113883.4.642.5.1580",
    "system": "urn:ietf:rfc:3986"
  } ],
  "context": [ "ContactDetail", "Address" ],
  "version": "5.3.0-ballot-tc",
  "differential": {
    "element": [ {
      "id": "Extension",
      "max": "1",
      "min": 0,
      "path": "Extension",
      "definition": "The details provided in this contact may be used according to the attached availability guidelines.\r\rIf there are multiple values in the extended contact detail, then all of them apply to these availability notes."
    }, {
      "id": "Extension.extension",
      "max": "*",
      "path": "Extension.extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      }
    }, {
      "id": "Extension.extension:_datatype",
      "max": "1",
      "min": 1,
      "path": "Extension.extension",
      "type": [ {
        "code": "Extension",
        "profile": "http://hl7.org/fhir/StructureDefinition/_datatype"
      } ],
      "short": "DataType name 'Availability' from R5",
      "sliceName": "_datatype",
      "definition": "DataType name 'Availability' from R5"
    }, {
      "id": "Extension.extension:_datatype.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "string"
      } ],
      "fixedString": "Availability"
    }, {
      "id": "Extension.extension:availableTime",
      "max": "*",
      "min": 0,
      "path": "Extension.extension",
      "short": "Times the {item} is available",
      "sliceName": "availableTime",
      "definition": "Times the {item} is available."
    }, {
      "id": "Extension.extension:availableTime.extension",
      "max": "*",
      "path": "Extension.extension.extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      }
    }, {
      "id": "Extension.extension:availableTime.extension:daysOfWeek",
      "max": "*",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "mon | tue | wed | thu | fri | sat | sun",
      "sliceName": "daysOfWeek",
      "definition": "mon | tue | wed | thu | fri | sat | sun."
    }, {
      "id": "Extension.extension:availableTime.extension:daysOfWeek.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:availableTime.extension:daysOfWeek.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "daysOfWeek"
    }, {
      "id": "Extension.extension:availableTime.extension:daysOfWeek.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "code"
      } ],
      "binding": {
        "strength": "required",
        "extension": [ {
          "url": "http://hl7.org/fhir/tools/StructureDefinition/binding-definition",
          "valueMarkdown": "The purpose for which an extended contact detail should be used."
        }, {
          "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
          "valueString": "DaysOfWeek"
        } ],
        "description": "The purpose for which an extended contact detail should be used.",
        "valueSetReference": {
          "reference": "http://hl7.org/fhir/ValueSet/days-of-week|5.0.0"
        }
      }
    }, {
      "id": "Extension.extension:availableTime.extension:allDay",
      "max": "1",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "Always available? i.e. 24 hour service",
      "sliceName": "allDay",
      "definition": "Always available? i.e. 24 hour service."
    }, {
      "id": "Extension.extension:availableTime.extension:allDay.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:availableTime.extension:allDay.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "allDay"
    }, {
      "id": "Extension.extension:availableTime.extension:allDay.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "boolean"
      } ]
    }, {
      "id": "Extension.extension:availableTime.extension:availableStartTime",
      "max": "1",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "Opening time of day (ignored if allDay = true)",
      "comment": "The timezone is expected to be specified or implied by the context this datatype is used.",
      "sliceName": "availableStartTime",
      "definition": "Opening time of day (ignored if allDay = true)."
    }, {
      "id": "Extension.extension:availableTime.extension:availableStartTime.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:availableTime.extension:availableStartTime.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "availableStartTime"
    }, {
      "id": "Extension.extension:availableTime.extension:availableStartTime.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "time"
      } ]
    }, {
      "id": "Extension.extension:availableTime.extension:availableEndTime",
      "max": "1",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "Closing time of day (ignored if allDay = true)",
      "comment": "The timezone is expected to be specified or implied by the context this datatype is used.",
      "sliceName": "availableEndTime",
      "definition": "Closing time of day (ignored if allDay = true)."
    }, {
      "id": "Extension.extension:availableTime.extension:availableEndTime.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:availableTime.extension:availableEndTime.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "availableEndTime"
    }, {
      "id": "Extension.extension:availableTime.extension:availableEndTime.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "time"
      } ]
    }, {
      "id": "Extension.extension:availableTime.url",
      "path": "Extension.extension.url",
      "fixedUri": "availableTime"
    }, {
      "id": "Extension.extension:availableTime.value[x]",
      "max": "0",
      "min": 0,
      "path": "Extension.extension.value[x]"
    }, {
      "id": "Extension.extension:notAvailableTime",
      "max": "*",
      "min": 0,
      "path": "Extension.extension",
      "short": "Not available during this time due to provided reason",
      "sliceName": "notAvailableTime",
      "definition": "Not available during this time due to provided reason."
    }, {
      "id": "Extension.extension:notAvailableTime.extension",
      "max": "*",
      "path": "Extension.extension.extension",
      "slicing": {
        "rules": "open",
        "ordered": false,
        "discriminator": [ {
          "path": "url",
          "type": "value"
        } ]
      }
    }, {
      "id": "Extension.extension:notAvailableTime.extension:description",
      "max": "1",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "Reason presented to the user explaining why time not available",
      "comment": "The reason will generally be provided to give the textual reason for displaying when the {item} is not available, e.g. 'Closed public holidays' or 'Independence Day'. In cases such as this, the `during` might not be included and local knowledge would be required in such cases (as don't desire to keep updating when the holiday occurs each year).\n\ne.g.2: 'Closed for maintenance over the summer' for this example you would want to include the `during` period, unless this was a university hospital and the \"summer\" period was well known, but would recommend its inclusion anyway.",
      "sliceName": "description",
      "definition": "Reason presented to the user explaining why time not available."
    }, {
      "id": "Extension.extension:notAvailableTime.extension:description.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:notAvailableTime.extension:description.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "description"
    }, {
      "id": "Extension.extension:notAvailableTime.extension:description.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "string"
      } ]
    }, {
      "id": "Extension.extension:notAvailableTime.extension:during",
      "max": "1",
      "min": 0,
      "path": "Extension.extension.extension",
      "short": "Service not available during this period",
      "sliceName": "during",
      "definition": "Service not available during this period."
    }, {
      "id": "Extension.extension:notAvailableTime.extension:during.extension",
      "max": "0",
      "path": "Extension.extension.extension.extension"
    }, {
      "id": "Extension.extension:notAvailableTime.extension:during.url",
      "path": "Extension.extension.extension.url",
      "fixedUri": "during"
    }, {
      "id": "Extension.extension:notAvailableTime.extension:during.value[x]",
      "min": 1,
      "path": "Extension.extension.extension.value[x]",
      "type": [ {
        "code": "Period"
      } ]
    }, {
      "id": "Extension.extension:notAvailableTime.url",
      "path": "Extension.extension.url",
      "fixedUri": "notAvailableTime"
    }, {
      "id": "Extension.extension:notAvailableTime.value[x]",
      "max": "0",
      "min": 0,
      "path": "Extension.extension.value[x]"
    }, {
      "id": "Extension.url",
      "path": "Extension.url",
      "fixedUri": "http://hl7.org/fhir/StructureDefinition/extended-contact-availability"
    }, {
      "id": "Extension.value[x]",
      "max": "0",
      "min": 0,
      "path": "Extension.value[x]",
      "comment": "To be updated to the Availability datatype when it is available as an extension datatype"
    } ]
  },
  "contact": [ {
    "telecom": [ {
      "value": "http://www.hl7.org/Special/committees/pafm",
      "system": "url"
    } ]
  } ],
  "contextType": "datatype",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension"
}