An Application on the HAT PDA is represented with a comprehensive structure encoding all key aspects of its interaction with the HAT PDA and the owner. It includes:
It is easier to illustrate the different aspects with specific examples:
Data Plugand include information such as version, name, textual description, potentially with no screenshots as plugs typically do not have a user interface. To give a HAT PDA owner an idea of what data it pulls in, it would include a "data preview" with some sample data. Permissions would say that the application has rights to write to the
Externalsetup, indicating the address to redirect user to. Finally, data fetching authorization can be disabled at the source, therefore to make sure that a plug is still active, an
Externalstatus check is needed.
Applicationwith platform set to iOS and list information similar to Data Plugs, but screenshots should also be provided. Notables is an example of where the service consists of a user application as well as a backend service handling requests to share notables on social media as well as take them down. It therefore needs permissions to 1) write data to
rumpelnamespace, where notables are stored, 2) read data from
rumpelnamespace to render all notables as well as owner's profile information, 3) set up data plugs and 4) associated data debit, which allows backend service to access shared notables. Setup in this case is also external — HAT PDA owner needs to be redirected to the Notables application. The URL the owner gets redirected to include access token as a query parameter. Finally, external status check ensures that the backend can periodically get a new access token to fetch data from the HAT PDA.