<?xml version="1.0" encoding='ISO-8859-1'?> <!-- --> <!-- Jonathan: an Open Distributed Processing Environment --> <!-- Copyright (C) 2000 France Telecom R&D --> <!-- Copyright (C) 2001 Kelua SA --> <!-- --> <!-- This library is free software; you can redistribute it and/or --> <!-- modify it under the terms of the GNU Lesser General Public --> <!-- License as published by the Free Software Foundation; either --> <!-- version 2 of the License, or (at your option) any later version. --> <!-- --> <!-- This library is distributed in the hope that it will be useful, --> <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of --> <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --> <!-- Lesser General Public License for more details. --> <!-- --> <!-- You should have received a copy of the GNU Lesser General Public --> <!-- License along with this library; if not, write to the Free Software --> <!-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --> <!-- --> <!-- Release: 3.0 --> <!-- --> <!-- Contact: jonathan@objectweb.org --> <!-- --> <!-- Author: Fabien Delpiano, Bruno Dumant --> <!-- --> <!-- --> <!-- configuration.dtd: DTD for configuration descriptions. --> <!-- A configuration description may contain any number of elements. --> <!ELEMENT CONFIGURATION (ELEM)*> <!-- A configuration description has no required attribute. Root --> <!-- configurations need to provide two attributes: one to describe the Kernel --> <!-- class to use to return the actual bootstrap configuration, the other --> <!-- to describe the generated Kernel class. Both should be scoped java class --> <!-- names. --> <!-- Configurations may also specify a scope (using the name of an existing --> <!-- configuration). --> <!ATTLIST CONFIGURATION bootstrap CDATA #IMPLIED generated CDATA #IMPLIED scope CDATA #IMPLIED > <!-- Elem describes an element in a configuration. It contains the description --> <!-- of a property, of an atom, of an assemblage, or of an alias. --> <!ELEMENT ELEM (PROPERTY | ATOM | ASSEMBLAGE | ALIAS)> <!-- An element description has one required attributes: its name in the --> <!-- enclosing configuration. --> <!ATTLIST ELEM name CDATA #REQUIRED > <!ELEMENT ATOM EMPTY> <!-- An atom has one required attributes: the name of the class used to --> <!-- instanciate it. --> <!ATTLIST ATOM class CDATA #REQUIRED > <!-- Assemblages are used to register implicitly elements by providing a means --> <!-- to create them on demand. An assemblage has two required nested elements: --> <!-- the factory and the configuration to use --> <!ELEMENT ASSEMBLAGE (MY_FACTORY, MY_CONFIGURATION)> <!ELEMENT MY_FACTORY (ATOM | ALIAS)> <!ELEMENT MY_CONFIGURATION (CONFIGURATION | ALIAS)> <!ELEMENT ALIAS EMPTY> <!-- Aliases provide a means to designate other objects in the configuration. --> <!-- The only required attribute is the name of the designated object in the --> <!-- configuration. --> <!ATTLIST ALIAS name CDATA #REQUIRED > <!ELEMENT PROPERTY EMPTY> <!-- Properties are used to register values of a number of primitive types. --> <!-- A property has two required attributes: the type of the property, and --> <!-- its value (as a string). --> <!ATTLIST PROPERTY type CDATA #REQUIRED value CDATA #REQUIRED > <!-- Not very well supported, but needed to make kernel kcfs --> <!ELEMENT INCLUDE EMPTY> <!ATTLIST INCLUDE file CDATA #REQUIRED >