SEO. JSONLD. TipAction
(SEO v0.3.0-rc.0)
View Source
The act of giving money voluntarily to a beneficiary in recognition of services rendered.
Helper for building a Schema.org TipAction JSON-LD structure.
Action inputs and outputs
This type descends from SEO.JSONLD.Action, so build/1 recognizes
two pseudo-fields that expand into Schema.org's hyphenated
<property>-input / <property>-output shorthand (see
Schema.org Actions, Part 4):
:inputs— a keyword list of{property, constraints}entries:outputs— likewise, for<property>-outputannotations
Constraints are passed to SEO.JSONLD.Actions.input_spec/1.
Summary
Types
A JSON-LD map ready to be nested or rendered. String-keyed, always
includes "@type" set to "TipAction", plus any camelCased
field keys the caller provided (see build/1). "@context" is added
at render time by SEO.JSONLD.meta/1 on the top-level node only.
Functions
Build a TipAction JSON-LD map.
Types
@type attrs() :: %{ optional(:recipient) => SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t() | SEO.JSONLD.ContactPoint.t() | SEO.JSONLD.Audience.t(), optional(:price) => String.t() | number(), optional(:price_currency) => String.t(), optional(:price_specification) => SEO.JSONLD.PriceSpecification.t() | map(), optional(:action_process) => SEO.JSONLD.HowTo.t() | map(), optional(:action_status) => :active_action_status | :completed_action_status | :failed_action_status | :potential_action_status, optional(:agent) => SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), optional(:end_time) => DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(), optional(:error) => SEO.JSONLD.Thing.t() | map(), optional(:instrument) => SEO.JSONLD.Thing.t() | map(), optional(:location) => String.t() | SEO.JSONLD.PostalAddress.t() | map() | SEO.JSONLD.VirtualLocation.t() | SEO.JSONLD.Place.t(), optional(:object) => SEO.JSONLD.Thing.t() | map(), optional(:participant) => SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), optional(:provider) => SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), optional(:result) => SEO.JSONLD.Thing.t() | map(), optional(:start_time) => DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(), optional(:target) => URI.t() | String.t() | SEO.JSONLD.EntryPoint.t() | map(), optional(:additional_type) => String.t() | URI.t(), optional(:alternate_name) => String.t(), optional(:description) => SEO.JSONLD.TextObject.t() | map() | String.t(), optional(:disambiguating_description) => String.t(), optional(:identifier) => String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(), optional(:image) => URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(), optional(:main_entity_of_page) => SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(), optional(:name) => String.t(), optional(:owner) => SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), optional(:potential_action) => SEO.JSONLD.Action.t() | map(), optional(:same_as) => URI.t() | String.t(), optional(:subject_of) => SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(), optional(:url) => URI.t() | String.t() } | [ recipient: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t() | SEO.JSONLD.ContactPoint.t() | SEO.JSONLD.Audience.t(), price: String.t() | number(), price_currency: String.t(), price_specification: SEO.JSONLD.PriceSpecification.t() | map(), action_process: SEO.JSONLD.HowTo.t() | map(), action_status: :active_action_status | :completed_action_status | :failed_action_status | :potential_action_status, agent: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), end_time: DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(), error: SEO.JSONLD.Thing.t() | map(), instrument: SEO.JSONLD.Thing.t() | map(), location: String.t() | SEO.JSONLD.PostalAddress.t() | map() | SEO.JSONLD.VirtualLocation.t() | SEO.JSONLD.Place.t(), object: SEO.JSONLD.Thing.t() | map(), participant: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), provider: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), result: SEO.JSONLD.Thing.t() | map(), start_time: DateTime.t() | NaiveDateTime.t() | String.t() | Time.t(), target: URI.t() | String.t() | SEO.JSONLD.EntryPoint.t() | map(), additional_type: String.t() | URI.t(), alternate_name: String.t(), description: SEO.JSONLD.TextObject.t() | map() | String.t(), disambiguating_description: String.t(), identifier: String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(), image: URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(), main_entity_of_page: SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(), name: String.t(), owner: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(), potential_action: SEO.JSONLD.Action.t() | map(), same_as: URI.t() | String.t(), subject_of: SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(), url: URI.t() | String.t() ]
A JSON-LD map ready to be nested or rendered. String-keyed, always
includes "@type" set to "TipAction", plus any camelCased
field keys the caller provided (see build/1). "@context" is added
at render time by SEO.JSONLD.meta/1 on the top-level node only.