Using string literal types causes Web Intents dispatch to match the types to services exactly. Thus a service which accepts http://schema.org/Thing will not be matched with an intent invoked by the client with a type of http://schema.org/Event, despite the types being hierarchical in the schema.org taxonomy.

When these types are used, the client must prepare the payload data field of the intent as a dictionary, with the keys specified in the corresponding schema.org type. For nested types, the values should again be dictionaries with keys corresponding to the defined type.

For example, an intent to follow a schema.org/Person entry can be constructed as follows:

The fields in the person object follow those defined at http://schema.org/Person. All fields are optional. Nested types are defined according to the fields of the type defined in the parent specifier.

Lists of objects may also be passed. In this case, the type seen by the receiver will be a list instead of a dictionary. Services must discriminate this possibility. For example, an invocation with an intent to share a pair of images would be constructed as follows: