root / framework / tags / fusebox51B1 / fusebox.dtd

Revision 271, 2.3 kB (checked in by scorfield, 2 years ago)

Fixes #159 by making all top-level entities optional.

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3Used within the fusebox.xml page to contain the elements that configure the application.
4Ticket 159: made all elements optional - but logistically a Fusebox requires at least one circuit.
5-->
6<!ELEMENT fusebox (circuits?, classes?, lexicons?, parameters?, globalfuseactions?, plugins?)>
7<!--
8        Specify the circuits in this application.
9-->
10<!ELEMENT circuits (circuit+)>
11<!ELEMENT circuit EMPTY>
12<!ATTLIST circuit
13        alias CDATA #REQUIRED
14        path CDATA #REQUIRED
15        parent CDATA #IMPLIED
16        relative (true | false) "true"
17>
18<!--
19        Specify the class declarations in this application.
20-->
21<!ELEMENT classes (class*)>
22<!ELEMENT class EMPTY>
23<!ATTLIST class
24        alias CDATA #REQUIRED
25        type (component | java) "component"
26        classpath CDATA #REQUIRED
27        constructor CDATA #IMPLIED
28>
29<!--
30        Specify the Fusebox 4.1 style lexicon declarations in this application. Deprecated.
31-->
32<!ELEMENT lexicons (lexicon*)>
33<!ELEMENT lexicon EMPTY>
34<!ATTLIST lexicon
35        namespace CDATA #REQUIRED
36        path CDATA #REQUIRED
37>
38<!--
39        Specify the global fuseactions - appinit is optional (since it is new) but all existing
40        applications will already have preprocess followed by postprocess (even if they are empty).
41-->
42<!ELEMENT globalfuseactions (appinit?, preprocess, postprocess)>
43<!ELEMENT appinit ((do | fuseaction)*)>
44<!ELEMENT preprocess ((do | fuseaction)*)>
45<!ELEMENT postprocess ((do | fuseaction)*)>
46<!--
47        Using <do> in a globalfuseaction is deprecated. Use <fuseaction> instead.
48-->
49<!ELEMENT do EMPTY>
50<!ATTLIST do
51        action CDATA #REQUIRED
52>
53<!--
54        Global fuseactions should be specified using the <fuseaction> verb.
55-->
56<!ELEMENT fuseaction EMPTY>
57<!ATTLIST fuseaction
58        action CDATA #REQUIRED
59>
60<!--
61        Specify the plugin declarations for the applications. In the <plugins> section
62        there are a number of phases, within each phase you can have <plugin> declarations.
63-->
64<!ELEMENT plugins (phase+)>
65<!ELEMENT phase (plugin*)>
66<!ATTLIST phase
67        name (fuseactionException | postFuseaction | postProcess | preFuseaction | preProcess | processError) #REQUIRED
68>
69<!ELEMENT plugin (parameter*)>
70<!ATTLIST plugin
71        name CDATA #REQUIRED
72        template CDATA #REQUIRED
73        path CDATA #REQUIRED
74>
75<!--
76        Plugins may have parameters.
77-->
78<!ELEMENT parameters (parameter+)>
79<!ELEMENT parameter EMPTY>
80<!ATTLIST parameter
81        name CDATA #REQUIRED
82        value CDATA #REQUIRED
83>
Note: See TracBrowser for help on using the browser.