DPML Part Directive
Strategy XML Directive

The StrategyType definition is an abstract element definition that all concrete strategy defintions must extend.

    <!-- XSD schema definition -->
    <complexType name="StrategyType" abstract="true"/>

The Metro runtime model defines a concrete component strategy under the dpml:metro namespace that is used to define the resources, services, and internal composition of an object. A second concrete strategy defintion named resource (uder the dpml:antlib namespace) is used by the Depot build system to define antlib loading criteria. If a foreign strategy element is declared the associated schema is resolved by locating a class implementing the org.w3c.dom.ls.LSResourceResolver service (via java.util.ServiceLoader). The runtime strategy handler will be resolved by reading a uri value from an attribute named handler. The uri is used to identify a plug-in part supporting the runtime handling of the foreign strategy.


Example part definition using the <component> strategy:

<?xml version="1.0"?>

<part xmlns="dpml:part">


  <component xmlns="dpml:metro" class="org.acme.Widget"/>