Plugin file format - Optional element reference
Optional element reference
Plugin applications can decide which elements can be allowed beneath a plugin element (except for the fixed set which are always included). The plugin system provides a variety of optional elements, found below. It is expected that most applications will provide all of these elements. Plugin applications may also add their own, new elements.
Check with the plugin application documentation to see which elements it allows.
Element export
<export
id = extension point id
library? = library id
symbol = symbol name>
<!-- Content: EMPTY -->
</export>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute library
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute symbol
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element import
<import
id = extension point id
library? = library id
symbol = symbol name>
<!-- Content: EMPTY -->
</import>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute library
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute symbol
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element extension-point
<extension-point
id = extension point id
schema? = xsd file name>
<!-- Content: extend? -->
</extension-point>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute schema
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element extend
<extend
library? = library id
symbol = symbol name>
<!-- Content: EMPTY -->
</extend>
<!-- Contained by: extension-point -->
Attribute library
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute symbol
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element extension
<extension
point = extension point id
* = any attributes allowed>
<!-- Content: ANY -->
</extension>
<!-- Contained by: plugin -->
Attribute point
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element event
<event
id = extension point id
signature = signature>
<!-- Content: call -->
</event>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute signature
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element event-handler
<event-handler
event = extension point id
listener = extension point id
* = any attributes allowed>
<!-- Content: ANY -->
</event-handler>
<!-- Contained by: plugin -->
Attribute event
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute listener
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element around
<around
id = extension point id
signature = signature>
<!-- Content: ( call | callback ) -->
</around>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute signature
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element join-point
<join-point
id = extension point id
signature = signature>
<!-- Content: ( call | callback ) -->
</join-point>
<!-- Contained by: plugin -->
Attribute id
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute signature
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element call
<call
library? = library id
symbol = symbol name>
<!-- Content: EMPTY -->
</call>
<!-- Contained by: event, around, join-point -->
Attribute library
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute symbol
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Element callback
<callback
library? = library id
symbol = symbol name
import? = extension point id
type? = { "static" | "non-static" | "ffi" } default "static or ffi">
<!-- Content: EMPTY -->
</callback>
<!-- Contained by: around, join-point -->
Attribute library
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute symbol
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute import
This attribute is variable expanded. Variables are resolved in the context of the plugin.
Attribute type
This attribute is variable expanded. Variables are resolved in the context of the plugin.


