Oihana PHP System

Grant extends Intangible

A grant, typically financial or otherwise quantifiable, of resources.

Typically a funder sponsors some MonetaryAmount to an Organization or Person, sometimes not necessarily via a dedicated or long-lived Project, resulting in one or more outputs, or fundedItems.

For financial sponsorship, indicate the funder of a MonetaryGrant. For non-financial support, indicate sponsor of Grants of resources (e.g. office space).

Grants support activities directed towards some agreed collective goals, often but not always organized as 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 Grant is represented using amount as a MonetaryAmount.

Example

{
    "@context": "https://schema.org",
    "@type": "Grant",
    "name": "Horizon Europe Grant – AI for Sustainable Agriculture",
    "identifier": "HEU-AGRI-AI-2025-0142",
    "funder":
    {
        "@type": "Organization",
        "name": "European Commission"
    },
    "grantee":
    {
        "@type": "Organization",
        "name": "Université de Paris"
    },
    "fundedItem":
    {
         "@type": "ResearchProject",
         "name": "Intelligence Artificielle pour l'Agriculture Durable"
    },
    "amount":
    {
         "@type": "MonetaryAmount",
         "currency": "EUR",
         "value": 2500000
    },
    "startDate": "2025-01-01",
    "endDate": "2027-12-31"
}
Tags
see
http://schema.org/Grant

Table of Contents

Constants

CONTEXT  = 'https://schema.org'
JSON-LD @context declaration for Schema.org.

Properties

$_from  : string|null
The metadata to indicates the edge 'from' identifier.
$_id  : null|string
The metadata identifier of the item.
$_key  : null|string
The metadata unique key identifier of the thing.
$_rev  : null|string
The metadata revision value of the thing.
$_to  : string|null
The metadata to indicates the edge 'to' identifier.
$active  : bool|null
The active flag.
$additionalType  : array<string|int, mixed>|string|null|object
An additionalType for the item.
$alternateName  : string|object|null
An alias for the item.
$amount  : int|float|MonetaryAmount|null
The amount of money.
$created  : null|string|DateTime
Date of creation of the resource.
$description  : string|null
A short description of the item.
$disambiguatingDescription  : string|null
A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.
$endDate  : string|int|DateTime|null
The end date and time of the event or item (in ISO 8601 date format).
$fundedItem  : null|Organization|Person|Product|Event|CreativeWork
Indicates something directly or indirectly funded or sponsored through a Grant.
$funder  : null|Organization|Person
A person or organization that supports (sponsors) something through some kind of financial contribution.
$grantee  : null|array<string|int, mixed>|Audience|ContactPoint|Organization|Person
The person, organization, contact point, or audience that has been granted.
$hasPart  : string|Thing|array<string|int, mixed>|null
Indicates an item that this part of this item.
$id  : null|int|string
The unique identifier of the item.
$identifier  : string|null
The identifier of the item.
$image  : string|object|null
The image reference of this resource.
$isPartOf  : string|Thing|array<string|int, mixed>|null
Indicates an item that this item is part of.
$license  : string|object|null
A legal document giving official permission to do something with the resource.
$modified  : null|string|DateTime
Date on which the resource was changed.
$name  : int|string|null
The name of the item.
$publisher  : string|array<string|int, mixed>|Person|Organization|null
The publisher of the resource.
$sponsor  : null|Organization|Person
A person or organization that supports a thing through a pledge, promise, or financial contribution.
$startDate  : string|int|DateTime|null
The start date and time of the item (in ISO 8601 date format).
$url  : int|string|null
URL of the item.
$atContext  : string|null
The JSON-LD `@context` value.
$atType  : string|null
The JSON-LD `@type` value.

Methods

__construct()  : mixed
Constructor to hydrate public properties from an array or stdClass.
jsonSerialize()  : array<string|int, mixed>
Serializes the current object into a JSON-LD array.
withAtContext()  : $this
Sets the internal JSON-LD `@context` attribute.
withAtType()  : $this
Sets the internal JSON-LD `@type` attribute.
withJSONLDMeta()  : $this
Initializes both JSON-LD metadata: `@type` and `@context`.

Constants

CONTEXT

JSON-LD @context declaration for Schema.org.

public mixed CONTEXT = 'https://schema.org'

Properties

$_from

The metadata to indicates the edge 'from' identifier.

public string|null $_from

$_id

The metadata identifier of the item.

public null|string $_id

$_key

The metadata unique key identifier of the thing.

public null|string $_key

$_rev

The metadata revision value of the thing.

public null|string $_rev

$_to

The metadata to indicates the edge 'to' identifier.

public string|null $_to

$active

The active flag.

public bool|null $active

$additionalType

An additionalType for the item.

public array<string|int, mixed>|string|null|object $additionalType

$alternateName

An alias for the item.

public string|object|null $alternateName

$created

Date of creation of the resource.

public null|string|DateTime $created

$description

A short description of the item.

public string|null $description

$disambiguatingDescription

A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.

public string|null $disambiguatingDescription

$endDate

The end date and time of the event or item (in ISO 8601 date format).

public string|int|DateTime|null $endDate

Note : not standard.

$funder

A person or organization that supports (sponsors) something through some kind of financial contribution.

public null|Organization|Person $funder

$hasPart

Indicates an item that this part of this item.

public string|Thing|array<string|int, mixed>|null $hasPart

$id

The unique identifier of the item.

public null|int|string $id

$identifier

The identifier of the item.

public string|null $identifier

$image

The image reference of this resource.

public string|object|null $image

$isPartOf

Indicates an item that this item is part of.

public string|Thing|array<string|int, mixed>|null $isPartOf

$license

A legal document giving official permission to do something with the resource.

public string|object|null $license

$modified

Date on which the resource was changed.

public null|string|DateTime $modified

$name

The name of the item.

public int|string|null $name

$sponsor

A person or organization that supports a thing through a pledge, promise, or financial contribution.

public null|Organization|Person $sponsor

E.g. a sponsor of a Medical Study or a corporate sponsor of an event.

$startDate

The start date and time of the item (in ISO 8601 date format).

public string|int|DateTime|null $startDate

Note : not standard.

$url

URL of the item.

public int|string|null $url

$atContext

The JSON-LD `@context` value.

private string|null $atContext = null

Default is https://schema.org.

$atType

The JSON-LD `@type` value.

private string|null $atType = null

This can be manually set or automatically inferred from the class name.

Methods

__construct()

Constructor to hydrate public properties from an array or stdClass.

public __construct([array<string|int, mixed>|object|null $init = null ]) : mixed

This allows objects to be quickly populated with associative data without manually setting each property.

Parameters
$init : array<string|int, mixed>|object|null = null

A data array or object used to initialize the instance. Keys must match public property names.

Tags
throws
ReflectionException
example
use org\schema\Person;
use org\schema\constants\Prop;

$person = new Person
([
    Prop::NAME => 'Jane Doe',
    Prop::URL  => 'https://example.com/janedoe'
]);

echo $person->name; // Outputs: Jane Doe

jsonSerialize()

Serializes the current object into a JSON-LD array.

public jsonSerialize() : array<string|int, mixed>

Includes public properties, the JSON-LD @context and @type. Null values are automatically removed.

Tags
throws
ReflectionException

If reflection fails when accessing properties.

example
use org\schema\Person;
use org\schema\constants\Prop;

$person = new Person
([
    Prop::NAME => 'John Smith',
    Prop::ID   => 'jsmith-001'
]);

echo json_encode($person, JSON_PRETTY_PRINT);

Output:

{
   "@type": "Person",
   "@context": "https://schema.org",
   "id": "jsmith-001",
   "name": "John Smith"
}
Return values
array<string|int, mixed>

JSON-LD representation of the object.

withAtContext()

Sets the internal JSON-LD `@context` attribute.

public withAtContext(string $context) : $this

Useful if you need a custom JSON-LD context.

Parameters
$context : string
Return values
$this

withAtType()

Sets the internal JSON-LD `@type` attribute.

public withAtType(string $type) : $this

Allows overriding the default type inferred from the class.

Parameters
$type : string
Return values
$this

withJSONLDMeta()

Initializes both JSON-LD metadata: `@type` and `@context`.

public withJSONLDMeta([string|null $atType = null ][, string|null $atContext = null ]) : $this

Can be called from constructor or later to override default values.

Parameters
$atType : string|null = null

Optional JSON-LD type

$atContext : string|null = null

Optional JSON-LD context

Return values
$this

        
On this page

Search results