<!ENTITY % arguments SYSTEM "http://dtd.invrs.org/argumentVector_v1.0a4.dtd">
%arguments;

<!ELEMENT ufoConfiguration (plainConfiguration | (arguments?,(flock|pilot|template)*) )>
<!ATTLIST ufoConfiguration 
	version (1.0a4) #REQUIRED
	>
<!-- possible values of ufoConfiguration.arguments:
    + pluginDirectories (semicolon (';', windows), or colon(':', others) delimited list of plugin-Directories
	-->

<!ELEMENT plainConfiguration EMPTY>
<!ATTLIST plainConfiguration
	configFile CDATA #REQUIRED
	>

<!ELEMENT flock (arguments?, pilot*)>
<!ATTLIST flock 
	typename CDATA #REQUIRED
	fromTemplate (true|false) "false"
	>

<!ELEMENT pilot (arguments?, behaviour?, steerable?)>
<!ATTLIST pilot
	typename CDATA #REQUIRED
	fromTemplate (true|false) "false"
	>

<!ELEMENT behaviour (arguments?, behaviour*)>
<!ATTLIST behaviour
	typename CDATA #REQUIRED
	fromTemplate (true|false) "false"
	>

<!ELEMENT steerable (arguments?)>
<!ATTLIST steerable
	typename CDATA #REQUIRED
	fromTemplate (true|false) "false"
	>

<!ELEMENT template (flock|pilot|behaviour|steerable)>
<!ATTLIST template
	name CDATA #REQUIRED
	>

