UDDF distinguishes between dives with a <rebreather>, dives with an open system, or apnea dives. The kind of dive is set via <divemode> and its attribute type. An attribute type="closedcircuit" indicates a dive with a closed circuit rebreather, while type="semiclosedcircuit" denotes a semi-closed rebreather. type="opencircuit" sets the type to a dive with an open system ("scuba"), and type="apnea" indicates an apnea dive. The attributes are mutually exclusive. Given a <divemode> element with one of the three attributes, the type of dive is remaining until another dive type is initiated via the next <divemode> element with another type attribute. This may happen arbitrarily often.
In principal it is possible, for example, to begin an apnea dive and later to switch to an open circuit scuba dive. Of course, this requires that the <divecomputer> used can be switched between the different types of diving under water.
(see also <waypoint>)
<samples> <!-- beginning of dive; diving with a closed circuit rebreather using the start gas --> <!-- with internal id "my_nitrox" (declared inside the <gasdefinitions> section) --> <waypoint> <depth>0.0</depth> <divetime>0.0</divetime> <divemode type="closedcircuit"/> <switchmix ref="my_nitrox"/> </waypoint> <!-- following <waypoint> statements --> . . . <!-- as an exercise, change to open circuit after 30 minutes --> <waypoint> <depth>10.0</depth> <divetime>1800.0</divetime> <divemode type="opencircuit"/> </waypoint> <!-- following <waypoint> statements --> . . . <!-- end of dive after 45 minutes (with OC)--> <waypoint> <depth>0.0</depth> <divetime>2700.0</divetime> </waypoint> </samples>