package _struct type Identifier struct { Use string `json:"use,omitempty" bson:"use"` Type CodeableConcept `json:"type,omitempty" bson:"type"` System string `json:"system,omitempty" bson:"system"` Value string `json:"value,omitempty" bson:"value"` Period Period `json:"period,omitempty" bson:"period"` Assigner Reference `json:"assigner,omitempty" bson:"assigner"` Coding Coding } type CodeableConcept struct { Coding []Coding `json:"coding" bson:"coding"` Text string `json:"text,omitempty" bson:"text"` } type Coding struct { System string `json:"system,omitempty" bson:"system"` Version string `json:"version,omitempty" bson:"version"` Code string `json:"code,omitempty" bson:"code"` Display string `json:"display,omitempty" bson:"display"` UserSelected bool `json:"userSelected,omitempty" bson:"userSelected"` } type Period struct { Start string `json:"start,omitempty" bson:"start"` End string `json:"end,omitempty" bson:"end"` } type Reference struct { Reference string `json:"reference,omitempty" bson:"reference"` Display string `json:"display,omitempty" bson:"display"` } type HumanName struct { Use string `json:"use,omitempty" bson:"use"` Text string `json:"text,omitempty" bson:"text"` Family string `json:"family,omitempty" bson:"family"` Given []string `json:"given,omitempty" bson:"given"` Prefix []string `json:"prefix,omitempty" bson:"prefix"` Suffix []string `json:"suffix,omitempty" bson:"suffix"` Period Period `json:"period,omitempty" bson:"period"` } type ContactPoint struct { System string `bson:"system" json:"system"` Value string `bson:"value" json:"value"` Use string `bson:"use" json:"use"` Rank int `bson:"rank" json:"rank"` Period Period `bson:"period" json:"period"` } type Address struct { Use string `json:"use,omitempty" bson:"use"` Type string `json:"type,omitempty" bson:"type"` Text string `json:"text,omitempty" bson:"text"` Line []string `json:"line,omitempty" bson:"line"` Village string `json:"village,omitempty" bson:"village"` District string `json:"district,omitempty" bson:"district"` City string `json:"city,omitempty" bson:"city"` State string `json:"state,omitempty" bson:"state"` PostalCode string `json:"postalCode,omitempty" bson:"postalCode"` Country string `json:"country,omitempty" bson:"country"` Period Period `json:"period,omitempty" bson:"period"` Extension []Extension `json:"extension,omitempty" bson:"extension"` } type Extension struct { URL string `json:"url,omitempty" bson:"url` Extension []ExtensionDetail `json:"extension,omitempty" bson:"extension"` } type ExtensionDetail struct { URL string `json:"url,omitempty" bson:"url,omitempty"` ValueDisplay string `json:"valueDisplay,omitempty" bson:"valueDisplay"` ValueCode string `json:"valueCode,omitempty" bson:"valueCode"` } type Photo struct { ContentType string `json:"contentType,omitempty" bson:"contentType,omitempty"` Language string `json:"language,omitempty" bson:"language,omitempty"` Data string `json:"data,omitempty" bson:"data,omitempty"` URL string `json:"url,omitempty" bson:"url,omitempty"` Size int `json:"size,omitempty" bson:"size,omitempty"` Hash int `json:"hash,omitempty" bson:"hash,omitempty"` Title string `json:"title,omitempty" bson:"title,omitempty"` Creation string `json:"creation,omitempty" bson:"creation,omitempty"` Height int `json:"height,omitempty" bson:"height,omitempty"` Width int `json:"width,omitempty" bson:"width,omitempty"` Frames int `json:"frames,omitempty" bson:"frames,omitempty"` Duration int `json:"duration,omitempty" bson:"duration,omitempty"` Pages int `json:"pages,omitempty" bson:"pages,omitempty"` } type Contact struct { Relationship []CodeableConcept `json:"relationship,omitempty" bson:"relationship"` Name HumanName `json:"name,omitempty" bson:"name"` Telecom []ContactPoint `json:"telecom,omitempty" bson:"telecom"` Address Address `json:"address,omitempty" bson:"address"` Gender string `json:"gender,omitempty" bson:"gender"` Organization Reference `json:"organization,omitempty" bson:"organization"` Period Period `json:"period,omitempty" bson:"period"` } type Communication struct { Language CodeableConcept `json:"language,omitempty" bson:"language"` Text string `json:"preferred,omitempty" bson:"preferred"` } type Link struct { Other Reference `json:"other,omitempty" bson:"other"` Type string `json:"type,omitempty" bson:"type"` } type LinkTarget struct { Target Reference `json:"target,omitempty" bson:"target,omitempty"` Type string `json:"type,omitempty" bson:"type,omitempty"` } type ExtendedContactDetail struct { Purpose CodeableConcept `json:"purpose" bson:"purpose"` Name []HumanName `json:"name,omitempty" bson:"name"` Telecom []ContactPoint `json:"telecom,omitempty" bson:"telecom"` Address []Address `json:"address,omitempty" bson:"address"` Organization Reference `json:"organization,omitempty" bson:"organization"` Period Period `json:"period,omitempty" bson:"period"` } type Quantity struct { Value float64 `json:"value,omitempty" bson:"value,omitempty"` Comparator string `json:"comparator,omitempty" bson:"comparator,omitempty"` Unit string `json:"unit,omitempty" bson:"unit,omitempty"` System string `json:"system,omitempty" bson:"system,omitempty"` Code string `json:"code,omitempty" bson:"code,omitempty"` } type Qualification struct { Identifier []Identifier `json:"identifier,omitempty" bson:"identifier,omitempty"` Code CodeableConcept `json:"code,omitempty" bson:"code,omitempty"` Period Period `json:"period,omitempty" bson:"period,omitempty"` Issuer Reference `json:"issuer,omitempty" bson:"issuer,omitempty"` } type Position struct { Longitude float64 `json:"longitude,omitempty" bson:"longitude,omitempty"` Latitude float64 `json:"latitude,omitempty" bson:"latitude,omitempty"` Altitude float64 `json:"altitude,omitempty" bson:"altitude,omitempty"` } type Availability struct { AvailableTime []AvailabilityAvailableTime `json:"availableTime" bson:"availableTime,omitempty"` NotAvailableTime []AvailabilityNotAvailable `json:"notAvailableTime" bson:"notAvailableTime,omitempty"` } type AvailabilityAvailableTime struct { DaysOfWeek []string `json:"daysOfWeek" bson:"daysOfWeek,omitempty"` AllDay bool `json:"allDay" bson:"allDay,omitempty"` AvailableStartTime string `json:"availableStartTime" bson:"availableStartTime,omitempty"` AvailableEndTime string `json:"availableEndTime" bson:"availableEndTime,omitempty"` } type AvailabilityNotAvailable struct { Description string `json:"description" bson:"description"` // Required During Period `json:"during,omitempty" bson:"during,omitempty"` } type VirtualService struct { ChannelType Coding `json:"channelType,omitempty" bson:"channelType,omitempty"` AddressUrl string `json:"addressUrl,omitempty" bson:"addressUrl,omitempty"` AddressString string `json:"addressString,omitempty" bson:"addressString,omitempty"` AddressContactPoint ContactPoint `json:"addressContactPoint,omitempty" bson:"addressContactPoint,omitempty"` AddressExtendedContact ExtendedContactDetail `json:"addressExtendedContact,omitempty" bson:"addressExtendedContact,omitempty"` AdditionalInfo []string `json:"additionalInfo,omitempty" bson:"additionalInfo,omitempty"` MaxParticipants string `json:"maxParticipants,omitempty" bson:"maxParticipants,omitempty"` SessionKey string `json:"sessionKey,omitempty" bson:"sessionKey,omitempty"` } type Payload struct { Type CodeableConcept `json:"type,omitempty" bson:"type,omitempty"` Mimetype []string `json:"mimetype,omitempty" bson:"mimetype,omitempty"` }