In parts I and II of this series of posts, we have highlighted:

  1. The basic elements that enable operation of an M-Instance, especially Processes, Items, Actions and Data Type. In particular, Processes can take the shape of a User (a representative of a human in an M-Instance), a Device (to enable the connection of an M-Instance with the real world, called Universe), and a Service.
  2. The functional requirements of an initial list of Actions that enable a Process to do useful things in an M-Instance.

We are now going to identify the functional requirements of an initial list of Items that enable a Process to do useful things in an M-Instance. For convenience, Items will be grouped in classes.

Remembers the online presentations at 8 and 15 UTC on 23 June where you can know more about the MPAI Metaverse Model Architecture and the Call for Technologies. Register here for the first and here for the second presentation.

Here are Items with a general applicability.

Functional requirements Item
An M-Instance is an abstract entity bearing an Identifier. An M-Instance may expose its Capabilities. M-Instance
An M-Environment is an abstract entity bearing an Identifier.

1.      An M-Environment is hosted by an M-Instance.

2.      An M-Environment may expose its Capabilities.

3.      The Capabilities of an M-Environment may extend the Capabilities of its hosting M-Instance.

M-Environment
An Item or a Process shall bear Identifiers in such a way that:

1.      An Identifier uniquely references an Item or Process.

2.      An Item can have more than one Identifier.

An Item may have a hierarchical structure, such as:

Item: M-InstanceID, M-EnvironmentID, M-LocationID, ItemID.

Process: M-InstanceID, M-EnvironmentID, ProcessID.

Identifier
With the Rights Item we can express the Actions that a Process can perform on Items, at M-/U-Locations, during a period, e.g.,

Action1 Item1 Location1 T11-T12
Action2 Item2 Location2 T21-T22
Rights
Program is Data (and Metadata) that can be executed.

A Program Item shall be executable in the M-Instance.

A Program Item may be subject to certification before being admitted to an M-Instance

Program
Contract is a special Program that can be activated (Executed) by an external entity, e.g., a User or another already activated Contract. The contract shall include:

1.      Offer: Rights.

2.      Acceptance: By both parties.

3.      Consideration: There may be a Transaction.

The terms of the Contract are enforced in the jurisdiction of the M-Instance.

Contract
An M-Instance/M-Environment may show its Capabilities, i.e., an Item describing the characteristics of an M-Instance/M-Environment, including:

1.      Currencies supported.

2.      Items supported with Data Formats.

3.      Data Types supported.

Capabilities

Here are Items related to the interaction between Processes.

Functional requirements Item
Processes may need to exchange application-level Messages. Message
A Process should be able to expose its Capabilities, i.e., an Item containing a description of its characteristics including:

1.        List of Actions that can be performed.

2.        List of Items supported with Data Formats.

3.        List of Data Types supported.

4.        The cost of performing an Action.

5.        Human represented (User)

6.        Apps on board (Device).

Capabilities
When a Process requests another Process to perform an Action on its ehalf, it issues a Request-Action, an Item including:

1.      Time the Request-Action was issued.

2.      The Source ProcessID.

3.      The Destination ProcessID.

4.      The Action requested.

5.      The ItemIDs relevant to the Action.

6.      The Location of the Items.

7.      The Location of the output Items produced by the Request-Action.

8.      The requested Rights on the output Items.

Request-Action
When a Process has received a Request-Action and succeeds in performing it, it provides a Response-Action, an Item containing:

1.      Time the Response-Action was issued.

2.      The Source ProcessID (Source refers to the Process that issued the request).

3.      The Destination ProcessID.

4.      The output Items produced by performing the Request-Action.

Response-Action
An M-Instance is an abstract entity bearing an Identifier. An M-Instance may expose its Capabilities. M-Instance
An M-Environment is an abstract entity bearing an Identifier.

4.      An M-Environment is hosted by an M-Instance.

5.      An M-Environment may expose its Capabilities.

6.      The Capabilities of an M-Environment may extend the Capabilities of its hosting M-Instance.

M-Environment

Here are Items related to the use of an M-Instance.

Functional requirements Item
Account in an Item that uniquely references a human who has Registered.

A User may have more than one Account with one or more M-Instances or M-Environments.

An Account shall include:

1.      The ID of the Registered human.

2.      An M-Instance-specific subset of the Registered human’s User Data.

3.      The Rights held by each Users in the M-Instance/M-Environment.

4.      The IDs of Devices, Apps, and Users, and Personae.

5.      The validity of:

5.1.   Rights.

5.2.   Account.

Account
Activity Data is an Item containing the record of the Actions made by a User at all M-Locations for a period. Therefore, Activity Data shall include a list of Activities and, for each activity:

1.      The M-LocationID the Activity Data refer to.

2.      The duration (t1-t2) the Activity Data refer to.

3.      The list of Action.

Activity Data
Personal Profile is an Item containing the Data about the human represented by a User. It may include:

1.      First Name

2.      Last Name

3.      Address

4.      Country

5.      Age

6.      Biometric data

7.     

Personal Profile
The Manager of an M-Instance sets Rules, an Item expressing the terms and conditions under which Processes operate in the M-Instance. The Rules may express:

1.      The ability of a User to perform Actions on Items for which it has Rights.

2.      The inability of a User to perform Actions on Items for which it has no Rights.

3.      The duty of a User to perform Actions on Items.

4.      The ability of a User to make Transactions on the Rights of Items.

Rules
Social Graph is a representation of a User’s network of connections with Items and Processes representing the following:

1.      The types and the connections with Items and their M-Locations.

2.      The types and the connections with Devices (frequency of use, etc.).

3.      The types and the connections with Services (frequency of use, etc.).

4.      The types and the connections with Users, groups of Users in terms of:

4.1.   Time

4.2.   M-Locations.

4.3.   Declared purpose.

Social Graph
User Data is an Item that collects all the Data related to a human and their Users:

1.      Rights held by the human’s Users in the M-Instance.

2.      The Personal Profile of the human.

3.      The Personae that the human’s Users impersonate.

4.      The Activity Data of the human’s Users.

5.      The Social Graphs of the human’s Users.

User Data should have a representation that allow easy identification, extraction, and sharing of subsets of a User Data.

User Data

Here are Items with a financial impact.

Functional requirements Item
An Item that may be the object of a Transaction is called Asset. An Asset may be:

1.        MM-Embedded at an M-Location.

2.        Posted to a Service.

An Asset shall:

1.      Preserve the Data Formats of the Item that has spawned it.

2.      Include the date it was created.

Asset
It is useful to consider the Ledger associated with a specific Asset. This Item includes the list of all Transactions executed:

1.      On an Asset.

2.      Starting from the first Transaction and including the last.

3.      The Marketplace on which a Transaction was performed.

Ledger
The Provenance Item shall include the list of all Transactions executed:

4.      On an Asset.

5.      Starting from the first Transaction and including the last.

The Marketplace on which a Transaction was performed.Provenance.

Provenance
Transaction is Item representing the changed state of:

1.        The Rights on an Asset held by a seller User and a buyer User.

2.        The Accounts of the Users and of the Service facilitating/enabling the Transaction (Optional).

The Transaction shall represent:

1.      The Time the Transaction is performed.

2.      The Value moving into the Wallet of User 1 (seller).

3.      The Value moved from the Wallet of User2 (buyer).

4.      The Value moved into the Wallet of User 3 (service) – optional.

5.      The Time the Values were moved.

6.      The Rights to Act owned by User1 after Time.

7.      The Rights to Act owned by User2 after Time.

Transaction
Value is expressed by an Amount and the Currency related to the Amount. It

shall have a representation that enables the expression of the Amount and the Currency used to represent the Amount.

Value
A Wallet is a container of Currency units. A Wallet shall enable the representation of:

1.      Each Currency’s Amounts contained in the Wallet for each Currency.

2.      The Transactions performed.

Wallet

Here are Items specifically used to access a group of Services.

Functional requirements Item
To Authenticate an Entity (an Item that can be perceived), a special Item called AuthenticateIn is produced. This contain:

1.      The (ID of the) Entity Authenticated.

2.      (Optionally) information related to the way AuthenticateOut is rendered.

The Entity to be Authenticated can be:

1.      Speech produced by a User.

2.      The visual appearance of a User, etc.

Information on the rendering of InterpretOut is provided by:

1.      Media type (text, speech, image, etc.) used for rendering.

2.      Spatial Attitude of the Object rendering AuthenticateOut.

AuthenticateIn
AuthenticateOut is the Item containing the result of the Service Acting on the Request-Authenticate Item and information about its rendering. It is rendered as requested in AuthenticateIn. AuthenticateOut
To Discover Items, an Item called DiscoverIn is produced that contains:

1.      A description of the Items to be Discovered.

2.      Information related to the rendering of DiscoverOut.

Items candidate for Discovery may be described by:

1.      Verbal/text description.

2.      Similar Items.

3.      Belonging to specific M-Instances/M-Environments/M-Locations.

4.      Belonging to specific sections of Activity Data.

Information on DiscoverOut Rendering may be provided by:

1.      Media type used for rendering.

2.      Spatial Attitude of the Object rendering DiscoverOut.

DiscoverIn
DiscoverOut is the Item containing the result of the Service Acting on the Request-Discover Item and information about its rendering. It is rendered as requested in DiscoverIn. DiscoverOut
To obtain information on an Item, a User produces InformIn, an Item containing:

1.      A description of the Item about which information is requested.

2.      Information related to the rendering of InformOut.

InformIn may refer to:

1.      Item Metadata

2.      Any other information that a Service may have on the Item.

Information on rendering of InformOut may be provided by:

1.      Media type used for rendering.

2.      Spatial Attitude of the InformOut rendered Object.

InformIn
InformOut is the Item containing the result of the Service Acting on the Request-Inform Item and information about its rendering. It is rendered as requested in InformIn. InformOut
To obtain interpretation of an Item, a User produces InterpretIn, An Item containing:

1.      The ID or the Item to be Interpreted.

2.      Information related to the rendering of InterpretOut.

Items candidate for interpretation may be identified by: Item or ItemID.

Information on InterpretOut Rendering may be provided by:

1.      Media type used for rendering.

2.      Spatial Attitude of InterpretOut rendered Object.

InterpretIn
InterpretOut is the Item containing the result of the Service Acting on the Request-Interpret Item and information about its rendering. It is rendered as requested in InterpretIn. InterpretIn

Here are Items producing a perceptible experience.

Functional requirements Item
An Entity is an Item that can be perceived. MPAI introduces the following perceptible Items: Object, Model, Scene, Event, and Experience. Entity
It is useful to introduce Event, an Entity that includes selected Entities at an M-Location and their Animations during a period. Therefore, an Event shall include:

1.      M-LocationID.

2.      Start Time and End Time.

3.      List of Entities, their Animations, and Interactions.

Event
It is also useful to introduce the Entity Experience, comprising selected Entities of an Event and User Interactions with the Entities of the Event. Therefore, an Experience shall include:

1.      Start Time and End Time

2.      EventID

3.      List of selected Entities, their Animations, and User Interactions.

Experience
Object is an Entity representing an object including:

1.      The type(s) of Media (Audio-Visual-Haptic) composing the Model.

2.      The Data representation.

3.      The Data Format used.

Object
Model is an Object representing an object with its features ready to be MM-Animated or UM-Animated. Model
Persona is a Model representing a human. Persona
Scene is a composition of Objects with the following features:

1.      May be hierarchical.

2.      May be MM-Embedded at a specified M-Location.

3.      Represent Objects:

3.1.   With a Spatial Attitude.

3.2.   Animated by a stream or by an autonomous agent.

Scene
A Stream is an Item made by a continuous flow of Data with the following features:

1.      May be scalable in space and time.

2.      May be used to:

2.1.   Animate a Model.

2.2.   Represent a Digitised Object in an M-Instance.

Stream
Interaction is an Item containing the Request-Action issued by a User on an Entity at an M-Locations and the corresponding Time. Interaction
Map is the basic Item of an AR application. It is an Item containing a structure establishing a correspondence between U-Locations with M-Locations. Therefore, A Map shall include:

1.      The M-Instance the Map refers to.

2.      For each U-Location having one correspondence with an M-Location:

2.1.   The ID of the M-Location corresponding to the U-LocationID.

2.2.   Metadata related to the U-LocationID.

2.3.   Metadata related to the M-LocationID.

Map

Here are Item with a spatial impact.

Functional requirements Item
M-Location is an Identifiable delimited spatial portion of an M-Instance, e.g., the place occupied by representation of a human. An M-Location:

1.      Shall define the space of the M-Instance belonging to the M-Location.

2.      May enable the creation of sub-spaces defining sub-M-Locations

M-Location
U-Location is an Identifiable delimited spatial portion of the Universe, e.g., the place occupied by the human. A U-Location shall:

1.      Define the space in the Universe belonging to the U-Location.

2.      Enable the definition of sub-spaces (sub-U-Locations) comprised in the U-Location.

The enforcement of Rights to a U-Location is not intended to be part of the MPAI-MMM Architecture.

U-Location

Of course, more Items can be identified but those introduced above have been tested to cover a significantly large number of use cases in a variety of application domains.