Optional
descriptionA short description to explain the capability.
Optional
paramsSpecifies parameters which the intent issuer can/must pass along with the intent.
Parameters are part of the contract between the intent publisher and the capability provider. They do not affect the intent routing, unlike the qualifier.
Optional
privateControls if this capability is visible to other micro applications. If private, which is by default, the capability is not visible to other micro applications; thus, it can only be invoked or looked up by the providing micro application.
Optional
propertiesArbitrary metadata to be associated with the capability.
Optional
qualifierThe qualifier is a dictionary of arbitrary key-value pairs to differentiate capabilities of the same type
and is like
an abstract description of the capability. It should include enough information to uniquely identify the capability.
Intents must exactly match the qualifier of the capability, if any.
Categorizes the capability in terms of its functional semantics (e.g., microfrontend
if providing a microfrontend).
It can be an arbitrary string
literal and has no meaning to the platform.
The term capability refers to the Intention API of the SCION Microfrontend Platform.
A capability represents some functionality of a micro application that is available to qualified micro applications through the Intention API. A micro application declares its capabilities in its manifest. Qualified micro applications can browse capabilities similar to a catalog, or interact with capabilities via intent.
A capability is formulated in an abstract way consisting of a type and optionally a qualifier. The type categorizes a capability in terms of its functional semantics. A capability may also define a qualifier to differentiate different capabilities of the same type.
A capability can have private or public visibility. If private, which is by default, the capability is not visible to other micro applications; thus, it can only be invoked or browsed by the providing micro application itself.
A capability can specify parameters which the intent issuer can/must pass along with the intent. Parameters are part of the contract between the intent publisher and the capability provider. They do not affect the intent routing, unlike the qualifier.
Metadata can be associated with a capability in its properties section. For example, if providing a microfrontend, the URL to the microfrontend can be added as property, or if the capability contributes an item to a menu, its label to be displayed.