Component descriptors

Component descriptors are .xml documents that give WorldServer the information it needs to identify and register the components that are being deployed. This information is stored in a file named desc.xml.

The basic format of the file is as follows:
<components>

<!--
SDK-based components are self-describing. Only the class name is required for them to be properly handled, unlike the legacy implementations. 
You should feel free to provide comments like this to describe each component as desired. Note that this is a departure from the old desc.xml.
     -->

<!--
Use the auto_action tag to identify an automatic action component. Each automatic action should have a separate tag entry. The name of the automatic 
action will be retrieved from the implementation class. Please make sure that each automatic action is defined with a unique name since this is how 
the user will identify it.
    -->

<auto_action class=" "/>

<!--
Use the ais_trigger tag to identify an AIS trigger component. Each AIS trigger should have a separate tag entry. The name of the AIS trigger will be 
retrieved from the implementation class. Please make sure that each AIS trigger is defined with a unique name since this is how the user will identify it.
    -->

<ais_trigger class=" " />

[...]

</components>

If you are already accustomed to creating WorldServer components, this format may seem familiar. However, such entries work only for components developed with the SDK. For custom components in WorldServer Classic, you need to specify additional information in the component entries. For example, for the auto_action tag, apart from the class attribute, you also need to define the name, description, and version attributes. With the SDK, this is no longer the case, though, because SDK-based implementations are self-describing. This means that the system is able to retrieve this information from the implementation classes.

It may take a while for you to migrate your custom code. For this reason, WorldServer continues to support components developed against the core APIs in addition to those developed against the SDK. This backward compatibility might not be indefinite and applies only to the core component framework classes, not to the core APIs used within the component implementations. The desc.xml files have support both for the former component entries and for the new SDK-based component entries.

You should define each component entry based on how it was developed (from the core framework classes or from the SDK framework classes). If the component is based on the SDK, only the class attribute is supported. If you include other attributes in the tag definition, the deployment might fail. If the component is for WorldServer Classic, you need to include the extra attributes required for such implementations.

Component description entries are only necessary for component classes, not for each of their dependencies.