SEO.JSONLD.Grant (SEO v0.3.0-rc.0)

View Source

A grant, typically financial or otherwise quantifiable, of resources. Typically a funder sponsors some SEO.JSONLD.MonetaryAmount to an SEO.JSONLD.Organization or SEO.JSONLD.Person, sometimes not necessarily via a dedicated or long-lived SEO.JSONLD.Project, resulting in one or more outputs, or fundedItems. For financial sponsorship, indicate the funder of a SEO.JSONLD.MonetaryGrant. For non-financial support, indicate sponsor of SEO.JSONLD.Grants of resources (e.g. office space).

Grants support activities directed towards some agreed collective goals, often but not always organized as SEO.JSONLD.Projects. Long-lived projects are sometimes sponsored by a variety of grants over time, but it is also common for a project to be associated with a single grant.

The amount of a SEO.JSONLD.Grant is represented using amount as a SEO.JSONLD.MonetaryAmount.

Helper for building a Schema.org Grant JSON-LD structure.

Summary

Types

t()

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "Grant", 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 Grant JSON-LD map.

Types

attrs()

@type attrs() ::
  %{
    optional(:funded_item) =>
      SEO.JSONLD.Person.t()
      | map()
      | SEO.JSONLD.MedicalEntity.t()
      | SEO.JSONLD.Event.t()
      | SEO.JSONLD.CreativeWork.t()
      | SEO.JSONLD.Product.t()
      | SEO.JSONLD.Organization.t()
      | SEO.JSONLD.BioChemEntity.t(),
    optional(:funder) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:sponsor) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    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()
  }
  | [
      funded_item:
        SEO.JSONLD.Person.t()
        | map()
        | SEO.JSONLD.MedicalEntity.t()
        | SEO.JSONLD.Event.t()
        | SEO.JSONLD.CreativeWork.t()
        | SEO.JSONLD.Product.t()
        | SEO.JSONLD.Organization.t()
        | SEO.JSONLD.BioChemEntity.t(),
      funder: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      sponsor: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      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()
    ]

t()

@type t() :: %{required(String.t()) => term()}

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "Grant", 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(attrs)

@spec build(attrs()) :: t()

Build a Grant JSON-LD map.

Fields

  • :funded_item - Indicates something directly or indirectly funded or sponsored through a SEO.JSONLD.Grant. See also ownershipFundingInfo.
  • :funder - A person or organization that supports (sponsors) something through some kind of financial contribution.
  • :sponsor - A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event.

Inherited properties

Additional properties are available through the inheritance chain. See each ancestor's docs for its properties: