1 <!-- effect.dtd - DTD to model effects of external procedures inside firm. -->
4 <!-- upload this file to http://www/~firm/ after making changes -->
6 <!-- content model for all nodes -->
7 <!-- allow nodes/entity accesses to reference other nodes/an entity -->
8 <!ENTITY % firm.id "id ID #REQUIRED">
10 <!-- allow a node to specify a type -->
11 <!ENTITY % firm.type "type CDATA #REQUIRED">
13 <!-- allow a node to specify a field -->
14 <!ENTITY % firm.entity "entity CDATA #REQUIRED">
16 <!-- allow a node to specify a typeid -->
17 <!ENTITY % typeid "typeid CDATA #REQUIRED">
19 <!-- allow a node to specify an owner -->
20 <!ENTITY % firm.owner "owner CDATA #REQUIRED">
22 <!-- the root element -->
23 <!ELEMENT effects (type*, entity*, effect*)>
25 module CDATA #IMPLIED>
27 <!-- an entity reference -->
33 <!-- an entity reference -->
34 <!ELEMENT entity EMPTY>
41 <!-- a single effect -->
42 <!ELEMENT effect (arg*, (load|store|alloc|call|join|unknown)*, raise?, ret)>
44 procname CDATA #REQUIRED;
47 <!-- procedure argument -->
51 number CDATA #REQUIRED;
54 <!-- reference another value -->
55 <!ELEMENT valref EMPTY>
57 refid IDREF #REQUIRED>
60 <!-- for static entities, use a 'select' without a child element -->
61 <!ELEMENT select (valref?)>
62 <!ATTLIST select %firm.entity;>
65 <!ELEMENT load (select)>
70 <!ELEMENT store (select,valref)>
73 <!ELEMENT alloc EMPTY>
74 <!ATTLIST alloc %firm.id;
78 <!ELEMENT call (select,(valref)*)>
79 <!ATTLIST call %firm.id;>
81 <!-- unknown value -->
82 <!ELEMENT unknown EMPTY>
83 <!ATTLIST unknown %firm.id;>
85 <!-- join two or more values -->
86 <!ELEMENT join (valref,valref+)>
87 <!ATTLIST join %firm.id;>
89 <!-- raise an exception -->
90 <!ELEMENT raise (valref)>
91 <!ATTLIST raise %firm.type;>
94 <!ELEMENT ret (valref?)>
99 Revision 1.7 2004/10/21 15:32:21 boesler
102 Revision 1.6 2004/10/11 09:55:19 liekweg
103 Renamed 'return' to 'ret' -flo
105 Revision 1.5 2004/10/05 16:19:04 liekweg
106 Grrr, CVS still messes up XML comments
108 Revision 1.4 2004/10/05 16:18:06 liekweg
109 Grrr, CVS messes up XML comments
111 Revision 1.3 2004/10/05 16:17:22 liekweg
114 Revision 1.2 2004/10/05 15:46:59 liekweg
115 Added comment about this DTD's public location -flo
117 Revision 1.1 2004/10/05 14:34:13 liekweg
118 Added DTD for external effects description -flo