<-Items Go to ToC Profiles->

Inter-Process Protocol Process Action Backus Naur form

1     Inter-Process Protocol

Processes perform Actions on Items to enable metaverse activities. For instance:

  1. Device UM-Captures Media At U-Location” represents a Device capturing Media at a U-Location.
  2. Device MM-Sends DataMdata to Process” represents a Device sending the resulting Data and Metadata (DataMdata) to a Process in the M-Instance.
  3. “User MM-Embeds Persona At M-Location and User MM-Animates Persona With Stream” represents  User placing an avatar (Persona) at an M-Location and animating it with a data stream.

An elementary activity in an M-Instance involves a Process1 requesting a Process2 to perform an Action. For instance:

  1. MM-Send relies on the Communication Service to make available DataMdata and Items of a Process to another Process.
  2. MM-Embed relies on a Location Service instantiating an Item (e.g., Persona) at an M-Location.

Process1 may coincide with Process2 .

MMM-TEC enables interoperability between M-Instances. This means that, given that appropriate business agreements are in place, a Process in an M-Instance1 can request a Process2 in a different M-Instance2 to perform Actions on Items.  The two Processes can communicate thanks to the Resolution Services of the two M-Instances acting as gateways.

MMM-TEC specifies the following elements of the Inter-Process Protocol (IPP) message:

IPP Message Elements Description
Message ID ID of PA Request or PA Response.
Response ID ID of the Message to which this Message is a response. Absent when the Message is a request.
Source Process ID ID of Process issuing Message.
Process Action Combination of Action, Items/Processes and Complement (see below).
Resolution Service ID Resolution Service forwarding the Message to a Process in an M-Instance (Absent if the two Processes are in the same M-Instance).
Destination Process ID ID of Process to which the Message is sent.
Acknowledgement Acknowledgement, if successful, or Error, if failure.

Figure 1 depicts the IPP steps when the two interacting Processes are in the same M-Instance. PA is short for Process Action.

Figure 1 – The Inter-Process Protocol when the two Processes are in  the same M-Instance.

The process unfolds through the following steps:

  1. Process1 sends a Process Action Request (PA Request) to Process2.
  2. Process2 analyses the PA Request.
  3. If the analysis yields an error,  Process2 sends a Process Action Response (PA Response) with an error to Process1.
  4. Else, Process2  performs the PA Request.
  5. If the execution of the PA Request fails, Process2 sends a PA Response with an error to Process1.
  6. Else, Process2 sends a PA Response to Process1.

Figure 2 depicts the IPP steps when the two Processes are in  different M-Instances. Here, the Process suffixes are prefixed by the letter A or B indicating the M-Instances they belong to.

Figure 2 – The Inter-Process Protocol when the two Processes are in  different M-Instances.

The process unfolds through the following steps:

  1. ProcessA1 sends a PA Request to Resolution ServiceA.
  2. Resolution ServiceA determines the Resolution ServiceB it should forward the PA Request to.
  3. If the determination is not reached it send and error to ProcessA1.
  4. Else it forwards the request to Resolution ServiceB1.
  5. Resolution ServiceB determines the Process it should send the PA Request to.
  6. If the determination is not reached, it send an error to Resolution ServiceA1.
  7. Else it forwards the PA Request to ProcessB1
  8. ProcessB1 analyses the PA Request.
  9. If the analysis of the request fails, it sends an error to Resolution ServiceB.
  10. Else, ProcessB1
    1. May request a Conversion ServiceB to make appropriate conversion of the Formats of the Data in the Items it received.
    2. Performs the request.
  11. If the execution of the PA Request fails, it sends an error to Resolution ServiceB.
  12. Else it sends a PA Response to Resolution ServiceB1.
  13. Resolution ServiceB sends error or PA Response to Resolution ServiceA.
  14. Resolution Servicesends error or PA Response to ProcessA1.
  15. ProcessA1 may request a Conversion ServiceA to make appropriate conversion of the Formats of the Data in the Items it received.

The Error Messages generated by either Resolution Service may be “No Rights to request Process Action to this M-Instance”.

The Error Message generated by a Process may be one of three types:

  1. “Unable to perform request”.
  2. “Transaction of Value required” (actual value provided).
  3. “Conversion Service failure”.
  4. Process Action-specific error.

An Inter-Process Protocol session is set up by the IPP Session Setup whereby:

  1. ProcessA requests Resolution ServiceA to request a session to the Resolution Services of M-Instances hosting at least one invited Process.
  2. Resolution ServiceA forwards the request to all relevant Resolution Services.
  3. A Resolution ServiceB forwards the request to each invited ProcessB‘s of its M-Instance.
  4. An invited ProcessB responds to Resolution ServiceB accepting or rejecting the invitation.
  5. A Resolution ServiceB forwards the response to Resolution ServiceA.
  6. Resolution ServiceA forwards the request to ProcessA.
  7. If at least one invited Process accepts the invitation, the session starts.

2     Process Action

The general Semantics of a Process Action is expressed by:

PA Element Description
Time Time of PA request emission and Time of PA request execution.
Action One of the standard Actions.
Item or Process The Item or the Process on which the Action is performed. Both can be identified by an ID while the Item may also be the actual Item.
S-Complements One or more Items or the Process participating in the execution of the Action at the S-Process side. Each Item/Process is preceded by At, Of, or With.
D-Complements One or more Items or the Process participating in the execution of the Action at the Destination side. Each Item/Process is preceded by At, From, Of, or With.
OutItem The Item produced by the Process Action. It may be identified by its ID or be provided as an Actual Item.

MMM-TEC V2.0 specifies the following Process Actions:

2.1 Authenticate 2.2 Author 2.3 Change 2.4 Convert 2.5 Discover 2.6 Execute
2.7 Hide 2.8 Identify 2.9 Inform 2.10 Interpret 2.11 MM-Add 2.12 MM-Anim
2.13 MM-Disable 2.14 MM-Embed 2.15 MM-Enable 2.16 MM-Send 2.17 Modify 2.18 MU-Actuate
2.19 MU-Send 2.20 Post 2.21 Register 2.22 Resolve 2.23 Transact 2.24 UM-Capture
2.25 UM-Send 20.26 Validate

General notes:

  1. Process Actions are specified with the following conventions:
    1. “S-” indicates Source Complements.
    2. “D-” indicates Destination Complements.
  2. Items, e.g., Rights, Transactions, etc. may be transmitted as IDs or as actual Items.
  3. A Process Actions Request (PA Request) may include a With Transaction S-Complement whereby S-Process pays for the performance of a PA Request.
  4. A Process Actions Response (PA Response) Error may include a With TransactionModel to signal that a Transaction must performed to execute the PA Request.
  5. P-Capabilities include the Process Actions a Process is able to perform.

2.1       Authenticate

Time Time Time of PA request emission and Time of PA request execution.
Action Authenticate The Action of a User requesting an Authentication Service to:
1.     Confirm that an Item or Process is what it claims to be.
2.     Add Rights to Authentication Item response based on Model Rights.
Item or Process Not Applicable.
S-Complements At M-Location Where the Item to be Authenticated is located.
  With Authentication The Authentication Item requesting authentication.
D-Complements At User The requesting User shall receive the Authentication Item response.
With ModelRights If PA Request is successfully performed, User and Authentication Item shall hold Rights based on Model Rights.
OutItem Authentication Authentication Item response.
Acknowledgement FaultyReq The Request is Faulty
  IDs Incorrect
  InRights Insufficient
  M-Location Out of range
  U-Location Out of range

2.2       Author

Time Time Time of PA request emission and Time of PA request execution.
Action Author The Action of a User requesting an Author Service to produce an Item based on provided Items, Data, Qualifiers, and to grant Rights to the Authored Item based on Model Rights.
Item or Process Not Applicable
S-Complements With Items Information used by Author Service may be Items and/or
  With Data Data and
  With Qualifier Data Qualifier.
D-Complements At Process A Process shall receive the Authored Item.
With ModelRights If PA Request is successfully performed, Item shall hold Rights based on ModelRights.
OutItem Item Item produced by Author Service.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Wallet error Insufficient Value

2.3       Change

Time Time Time of PA request emission and Time of PA request execution.
Action Change The Action of a User requesting a Rights Service to Modify the Rights of a Process or an Item based on ModelRights.
Item or Process Rights Rights to be Changed.
S-Complements Not Applicable.
D-Complements At User The requesting User receives the new Rights and Acknowledgement.
With ModelRights If PA Request is successfully performed, Rights shall be based on ModelRights.
OutItem Rights The new Process or Item Rights.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  In Rights Insufficient

2.4       Convert

Time Time Time of PA request emission and Time of PA request execution.
Action Convert The Action of a Process requesting a Conversion Service to:
1.    Change the Data of an Item according to a given Qualifier.
2.    Add Rights to the  Converted Item based on ModelRights.
Item or Process Item The Item to be Converted.
S-Complements At Service The Item can be stores at a Process or
  At M-Location Located at an M-Location.
D-Complements At Process The requesting process receives the Converted Item.
With ModelRights If PA Request is successfully performed, Item shall hold Rights based on ModelRights.
OutItem Item Item or Item ID produced by Conversion Service.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.5       Discover

Time Time Time of PA request emission and Time of PA request execution.
Action Discover The Action of a User requesting a Discovery Service to:
1.     Provide Item IDs or Process IDs relevant to the request contained in Discovery Item.
2.    Add Rights to the Discovery Item response based on ModelRights.
Item or Process Not Applicable
S-Complements At User The User contains the Discovery Item request.
D-Complements At User The User receives the Discovery Item response
With ModelRights If PA Request is successfully performed, Discovery Item shall hold Rights based on ModelRights.
OutItem Item Discovery Item or Item ID produced by Conversion Service.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.6       Execute

Time Time Time of PA request emission and Time of PA request execution.
Action Execute The Action of a Process requesting an Execution Service to:
1.     Execute a Program.
2.    Add Rights to the produced Items based on ModelRights.
Item or Process Program The Program to be Executed.
S-Complements At User Program may be located at User or
  At Service At a Service
D-Complements At Process The result of the execution is made available at a Process.
OutRights ModelRights If PA Request is successfully performed, Item produced shall hold Rights based on ModelRights.
OutItem Item Depending on the Program.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.7       Hide

Time Time Time of PA request emission and Time of PA request execution.
Action Hide The Action of a Process requesting an Identification Service to:
1.     Make the ID of an Item unavailable.
2.    Add Rights to the hidden Item based on ModelRights.
Item or Process Item Item to be Hidden.
S-Complements At Process Item is at a Process or
  At M-Location At an M-Location.
D-Complements At User User receives new ItemID.
OutRights ModelRights If PA Request is successfully performed, Hidden Item shall hold Rights based on ModelRights.
OutItem Rights Rights to Act on the Hidden Item.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.8       Identify

Time Time Time of PA request emission and Time of PA request execution.
Action Identify The Action of a Process requesting an Identification Service to:
1.     Produce an Item from Data & Metadata.
2.    Add Rights to the Item based on ModelRights.
Item or Process DataMdata Data and Metadata used to create the Item.
S-Complements At Process DataMdata are available at the requesting Process.
D-Complements At Process Requesting Process will receive ItemID.
OutRights ModelRights If PA Request is successfully performed, Identifier shall hold Rights based on ModelRights.
OutItem Item Created Item.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.9       Inform

Time Time Time of PA request emission and Time of PA request execution.
Action Inform The Action of requesting an Information Service to:
1.     Provide information about an Item or Process as contained in the Information Item.
2.    Add Rights to Information Item response based on ModelRights.
Item or Process Not Applicable.
S-Complements At M-Location The location of the Item whose information is requested.
  With Information Item containing the request.
D-Complements At User Receives the Information Item response.
OutRights ModelRights If PA Request is successfully performed, Information Item shall hold Rights based on ModelRights.
OutItem Information Item The Information Item response.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.10       Interpret

Time Time Time of PA request emission and Time of PA request execution.
Action Interpret The Action of requesting an Interpretation Service to:
1.     Provide information about an Item or Process as contained in the Interpretation Item.
2.    Add Rights to Interpretation Item response based on ModelRights.
Item or Process Not Applicable.
S-Complements At M-Location The location of the Item whose interpretation is requested.
  With Interpretation Interpretation Item containing the interpretation request.
D-Complements At User Receives the Interpretation Item response.
OutRights ModelRights If PA Request is successfully performed, Interpretation Item shall hold Rights based on ModelRights.
OutItem Interpretation Item The Interpretation Item response.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.11   MM-Add

Time Time Time of PA request emission and Time of PA request execution.
Action MM-Add The Action of a User requesting a Location Service to:
Place an Item at an M-Location with a Spatial Attitude and the following modifications:
–         Resize the Item by Rx, Ry, Rz along the Item’s axes.
–         Change Item Properties per Qualifier.
–         Do not display the Item.
–         Change MM-Embedded Item Rights based on ModelRights.
Item or Process Item Item to be MM-Added.
S-Complements At User Item can be At User or
  At M-Location At an M-Location.
  With Spatial Attitude The Spatial Attitude the Item shall have at M-Location.
  With Qualifier Qualifier of Item’s Data.
D-Complements At M-Location The M-Location where the Item is to be MM-Added.
OutRights ModelRights If PA Request is successfully performed, MM-Added Item shall hold Rights based on ModelRights.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Clash Item clashes with another Item
  M-Location Out of range

2.12   MM-Anim

Time Time Time of PA request emission and Time of PA request execution.
Action MM-Anim The Action of a User requesting a Location Service to Animate the Item with a Stream Item.
Item or Process Item Item to be MM-Animated.
S-Complements  At M-Location Where the Item is MM-Added or MM-Embedded.
  With Stream Item Item is to be MM-Animated with a Stream Item.
D-Complements With Spatial Attitude The Item is to be located with Spatial Attitude.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Clash Item clashes with another Item
  M-Location Out of range

2.13   MM-Disable

Time Time Time of PA request emission and Time of PA request execution.
Action MM-Disable The Action of a User requesting an Identification Service to change the Qualifier of an MM-Enabled Item to disable its display.
Item or Process Item Item to be MM-Disabled.
S-Complements At M-Location M-Location is the target one (the same Item may be located at different M-Locations simultaneously).
D-Complements Not Applicable.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  M-Location Out of range

2.14   MM-Embed

Time Time Time of PA Request emission and Time of PA request execution.
Action MM-Embed The Action of a User requesting a Location Service to place an Item at an M-Location with a Spatial Attitude modified as follows:
–       Resize the Item by Rx, Ry, Rz along the Item’s axes.
–       Change Item Properties per Qualifier.
–       Display the Item.
–       Change the Rights to the MM-Embedded Item based on ModelRights.
Item or Process Item Item to be MM-Embedded.
S-Complements At User Item may be located at User or
  At M-Location The current M-Location of Item.
  With Qualifier Qualifier of Item’s Data.
D-Complements At M-Location The M-Location where the Item is to be MM-Embedded.
  With Spatial Attitude Item is to be located with a Spatial Attitude.
OutRights ModelRights If PA Request is successfully performed, MM-Embedded Item shall hold Rights based on ModelRights.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Clash Item clashes with another Item
  M-Location Out of range

2.15   MM-Enable

Time Time Time of PA request emission and Time of PA request execution.
Action MM-Enable The Action of a User requesting a Location Service to:
1.    Display an Item that is MM-Added at an M-Location.
2.    Add Rights to Act on the selected M-Entities based on ModelRights.
Item or Process Item Item to be MM-Enabled.
S-Complements At M-Location M-Location is the target one (the same Item may be located at different M-Locations simultaneously).
D-Complements Not Applicable.
OutRights ModelRights If PA Request is successfully performed, OutRights based on ModelRights shall be added.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  M-Location Out of range

2.16   MM-Send

Time Time Time of PA request emission and Time of PA request execution.
Action MM-Send The Action of a Process requesting a Communication Service:
1.     To send a Message to a Process.
2.     Granting Rights to the Item, Data, and Qualifier of the Message.
Item or Process Message The Message sent to the other Process.
S-Complements Not Applicable.
D-Complements To Process The Process that receives the Message.
OutRights Rights If PA Request is successfully performed, OutRights based on ModelRights shall be granted to the Message.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.17   Modify

Time Time Time of PA request emission and Time of PA request execution.
Action Modify The Action of a User requesting an Identification Service to produce a new Item from an existing Item from new Data, Qualifiers, and Rights to the new Item based on ModelRights.
Item or Process Item Item to be Modified.
S-Complements At ProcessID Item is at a Process.
  With Data, Qualifier, and OutRights Data, Qialifier, and OutRights provided to Modify Item.
D-Complements Not Applicable.
OutRights ModelRights If PA Request is successfully performed, OutRights based on ModelRights shall be added.
OutItem Item The Modified Item.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  DataMdata Incorrect

2.18   MU-Actuate

Time Time Time of PA request emission and Time of PA request execution.
Action MU-Actuate The Action of a Device rendering at a U-Location an Item available at a Device as Media with a Spatial Attitude.
Item or Process Item Item to be MU-Actuated.
S-Complements At Device Item is located at Device.
D-Complements At U-Location U-Location where the Item is actuated as Media.
  With Spatial Attitude The Spatial Attitude of the Item Actuated as Media.
OutRights Rights If PA Request is successfully performed, Rights shall be produced granting Rights to the Media based on ModelRights to the relevant entity having rights to the U-Location .
OutItem Media Actuated Item.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  U-Location Out of range

2.19   MU-Send

Time Time Time of PA request emission and Time of PA request execution.
Action MU-Send The Action of a Device requesting a Communication Service to send a Message to a Process with OutRights to Data and Qualifier based on ModelRights.
Item or Process Message Message sent to Process.
S-Complements Not Applicable.
D-Complements Process Process that shall receive the Item.
OutRights Rights If  Communication Service successfully performs PA Request, it shall grant OutRights based on ModelRights to Data and Qualifier .
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient

2.20   Post

Time Time Time of PA request emission and Time of PA request execution.
Action Post The Action of a User requesting that a Marketplace Service include to its repertory an Asset with Rights based on ModelRights and a ModelTransaction.
Item or Process Asset Asset User wishes to Post.
S-Complements With ModelTransaction A User wishing to acquire Rights on the Asset shall use a Transaction Item  based on the ModelTransaction.
D-Complements Not Applicable.
OutRights Not Applicable.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Wallet Insufficient Value

2.21   Register

Time Time Time of PA request emission and Time of PA request execution.
Action Register The Action of a human requesting that a Registration Service grant Rights to selected Processes of theirs.
Item or Process Not Applicable.
S-Complements With Personal Profile Human’s Personal Profile.
D-Complements Not Applicable.
OutRights Rights Rights granted to Registering human’s Processes deployed in M-Instance.
OutItem Account Registered human’s Account.
Acknowledgement FaultyReq The Request is Faulty
Wallet Insufficient Value

2.22      Resolve

Time Time Time of PA request emission and Time of PA request execution.
Action Resolve The Action of:
1. A Process requesting that a Resolution Service set up a session between/among two/more than two Processes in two/more than two M-Instances.
2. A Process or Resolution Service responding to a session request.
Item or Process Not Applicable.
S-Complements With Resolution Resolution Item used to request a session or to respond to a session request..
D-Complements Not Applicable.
OutRights Not Applicable
OutItem Resolution Resolution Response.
Acknowledgement FaultyReq The Request is Faulty
Wallet Insufficient Value

2.23   Transact

Time Time Time of PA request emission and Time of PA request execution.
Action Transact The Action of a User1 (“sender”) requesting that a Transaction Service:
1.     Assign Rights on an Asset to User2 (“receiver”).
2.     Cause:
2.1.  Wallet1 of User1 to be increased by Value1.
2.2.  Wallet2 of User2 to be decreased by Value2.
2.3.  Wallet3 of the Service enabling/facilitating the Transaction to be increased by Value3 (optionally).
Item or Process Transaction Transaction Item used in transaction.
S-Complements Not Applicable.
D-Complements Not Applicable.
OutRights Not Applicable.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  Wallet Insufficient Value

2.24   UM-Capture

Time Time Time of PA request emission and Time of PA request execution.
Action The Action of a Device capturing Data from Media at a U-Location.
Item or Process Media The captured Media to be stored in Device as Data, Qualifier and ModelRights.
S-Complements At U-Location.
D-Complements With Qualifier
  With Model Rights
OutRights Rights If  Device successfully performs PA Request, it shall grant to  Device OutRights to use the Data and Qualifier based on ModelRights.
OutItem DataMdata DataMdata residing in Device after capture.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  U-Location Out of range

2.25   UM-Send

Time Time Time of PA request emission and Time of PA request execution.
Action The Action of a Device requesting a Communication Service
1.    To send a Message to a Process.
2.   Granting Rights to Act on the contents of the Message.
Item or Process Message The Message sent to the Process.
S-Complements Not Applicable.
D-Complements To Process Not Applicable.
OutRights Rights If  Communication Service successfully performs PA Request, it shall grant to  Process OutRights to use the DataMdata in Message based on ModelRights.
OutItem Not Applicable.
Acknowledgement FaultyReq The Request is Faulty
IDs Incorrect
  InRights Insufficient
  U-Location Out of range

2.26       Validate

Time Time Time of PA request emission and Time of PA request execution.
Action Authenticate The Action of a User requesting a Validation Service to confirm that a Process Hold identified Rights.
Item or Process Process Not Applicable.
S-Complements With Rights Where the Item to be Authenticated is located.
D-Complements At User The requesting User shall receive the Validation Item response.
OutRights ModelRights If PA Request is successfully performed, OutRights based on ModelRights shall be produced.
OutItem Authentication Authentication Item response.
Acknowledgement FaultyReq The Request is Faulty
  IDs Incorrect
  InRights Insufficient
  M-Location Out of range
  U-Location Out of range

3    Backus-Naur form

statement :=
| zero_or_more_modifiers
action_keyword
zero_or_one_item
zero_or_more_modifiers
zero_or_one_outitem

action_keyword :=
| Authenticate
| Author
| Change
| Convert
| Discover
| Execute
| Hide
| Identify
| Inform
| Interpret
| MM-Add
| MM-Anim
| MM-Disable
| MM-Embed
| MM-Enable
| MM-Send
| Modify
| MU-Actuate
| MU-Send
| Post
| Register
| Transact
| UM-Capture
| UM-Send
| Validate

zero_or_more_modifiers :=
| /* empty */
| one_or_more_modifiers

one_or_more_modifiers :=
| modifier
| modifier one_or_more_modifiers

modifier :=
| ‘@’ TIME
| ‘AtP’ process
| ‘AtI’ item
| ‘OfP’ process
| ‘OfI’ item
| ‘WithP’ process
| ‘WithI’ item

zero_or_one_item :=
| /* empty */
| item

zero_or_one_outitem :=
| /* empty */
| ‘=’ item

item :=
| ID
| JSON_STRING

process :=
| ID

<-Items Go to ToC Profiles->