-<!-- effect.dtd - DTD to model effects of external procedures inside firm. -->
-<!-- $Id$ -->
+<!--
+* Project: libFIRM
+* File name: effect.dtd
+* Purpose: DTD to model effects of external procedures inside firm.
+* Author: Florian Liekweg
+* Modified by: Boris Boesler
+* Created: Y.X.2004
+* CVS-ID: $Id$
+* Copyright: (c) 1999-2004 Universität Karlsruhe
+* Licence: This file is protected by GPL - GNU GENERAL PUBLIC LICENSE.
+-->
<!-- upload this file to http://www/~firm/ after making changes -->
<!-- content model for all nodes -->
<!-- allow nodes/entity accesses to reference other nodes/an entity -->
-<!ENTITY % firm.id "id ID #REQUIRED">
+<!ENTITY % firm.id "id ID #REQUIRED">
<!-- allow a node to specify a type -->
<!ENTITY % firm.type "type CDATA #REQUIRED">
<!-- allow a node to specify a field -->
<!ENTITY % firm.entity "entity CDATA #REQUIRED">
+<!-- allow a node to specify a typeid -->
+<!ENTITY % typeid "typeid CDATA #REQUIRED">
+
+<!-- allow a node to specify an owner -->
+<!ENTITY % firm.owner "owner CDATA #REQUIRED">
+
<!-- the root element -->
<!ELEMENT effects (type*, entity*, effect*)>
<!ATTLIST effects
<!ATTLIST entity
%firm.id;
%firm.type;
- %firm.entity;>
+ %firm.entity;
+ %firm.owner;>
<!-- a single effect -->
<!ELEMENT effect (arg*, (load|store|alloc|call|join|unknown)*, raise?, ret)>
<!ATTLIST effect
- procname CDATA #REQUIRED>
+ procname CDATA #REQUIRED;
+ %firm.owner;>
<!-- procedure argument -->
<!ELEMENT arg EMPTY>
<!ATTLIST arg
%firm.id;
- number CDATA #REQUIRED>
+ number CDATA #REQUIRED;
+ %firm.type>
<!-- reference another value -->
<!ELEMENT valref EMPTY>
<!-- alloc effect -->
<!ELEMENT alloc EMPTY>
-<!ATTLIST alloc %firm.id;%firm.type;>
+<!ATTLIST alloc %firm.id;
+ %firm.type;>
<!-- call effect -->
-<!ELEMENT call (select,(valref)*)>
+<!ELEMENT call ((select|valref),(valref)*)>
<!ATTLIST call %firm.id;>
<!-- unknown value -->
<!ATTLIST raise %firm.type;>
<!-- ret effect -->
-<!ELEMENT ret (valref?)>
+<!ELEMENT ret (valref?)>
<!--
$Log$
+ Revision 1.8 2004/10/25 13:51:32 boesler
+ minor changes like owner
+
+ Revision 1.7 2004/10/21 15:32:21 boesler
+ minor changes
+
Revision 1.6 2004/10/11 09:55:19 liekweg
Renamed 'return' to 'ret' -flo