<?xml version="1.0" encoding="UTF-8"?>
<!--
-->

<!ENTITY % att-global 'id ID #IMPLIED' >

<!ENTITY % att-name 'name CDATA #REQUIRED' >

<!ENTITY % att-files 'filename CDATA #REQUIRED
                      mode (append | overwrite) "append"' >

<!ELEMENT loadsim (documentation, import*, default-timer?, throttle-timer?, content-handler*, output, use-sequence+) >

<!ELEMENT documentation (author?, title?, version?, date?, description?) >
<!ELEMENT author (#PCDATA) >
<!ELEMENT title (#PCDATA) >
<!ELEMENT version (#PCDATA) >
<!ELEMENT date (#PCDATA) >
<!ELEMENT description (#PCDATA) >

<!ELEMENT import EMPTY >
<!ATTLIST import type (datasets | timers) #REQUIRED
                 filename CDATA #REQUIRED >

<!--
  To spare the tester from having to specify a timer
  for every link a default can be set.  Just specify
  the timer id (the tid attribute).
-->
<!ELEMENT default-timer EMPTY >
<!ATTLIST default-timer tid CDATA #REQUIRED >

<!ELEMENT throttle-timer EMPTY >
<!ATTLIST throttle-timer tid CDATA #REQUIRED >

<!ELEMENT content-handler EMPTY>
<!ATTLIST content-handler 
          content-type CDATA #REQUIRED
          handler-class CDATA #REQUIRED>
              
<!ELEMENT output (log?, timing?) >

<!ELEMENT log EMPTY >
<!ATTLIST log %att-files; 
          level (fatal | error | warning | information | debug) "fatal">

<!ELEMENT timing EMPTY >
<!ATTLIST timing %att-files; >

<!ELEMENT use-sequence EMPTY >
<!ATTLIST use-sequence 
          filename CDATA #REQUIRED
          hostname CDATA #REQUIRED
          num-virtual-users CDATA #REQUIRED
          duration CDATA #IMPLIED
          num-iterations CDATA #REQUIRED>