The “@library” is necessary for declaring a new method (non-native): the namespace and the name used for the library are independent from the namespace and name of the schema where the declaration is.
access (string): this attribute defines access control for using the method. If this attribute is missing, identification is mandatory. Available values are: ‘anonymous’, ‘admin’ and ‘sql’.
const (boolean): if it is activated, this attribute means that the declared method will alter the entity
label (string): label of the method.
library (string): this method isn’t native to the application. This attribute takes the value of the method library where the method definition is found (nms:mylibrary.js).
name (MNTOKEN): unique method name.
static (boolean): if this attribute is activated, the method is considered to be autonomous, all parameters must be specified to the method when it is called up.
Definition of the “Subscribe” out of the box method:
<method name="Subscribe" static="true">
<help>Creation of update of a recipient's subscription to an information service</help>
<param desc="Name of the information service(s) (separated with commas)"
<param desc="Recipient to subscribe and possibly create" name="recipient"
<param desc="Create the recipient if they don't exist" name="create" type="boolean"/>