<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
	<xs:include schemaLocation="header.xsd"/>
	
	<xs:complexType name="combat_location">
		<xs:attribute name="planetname" type="name" use="required"/>
		<xs:attribute name="galaxy" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="system" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="planet" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="time" type="datetime" use="required"/>
	</xs:complexType>	

	<xs:simpleType name="combat_winner">
	  <xs:restriction base="xs:string">
	    <xs:enumeration value="attacker"/>
	    <xs:enumeration value="defender"/>
	    <xs:enumeration value="nobody"/>
	  </xs:restriction>
	</xs:simpleType>	
	
	<xs:simpleType name="combat_type">
	  <xs:restriction base="xs:string">
	    <xs:enumeration value="attacker"/>
	    <xs:enumeration value="defender"/>
	  </xs:restriction>
	</xs:simpleType>
		
	<xs:complexType name="loot">
		<xs:attribute name="metal" type="integer_with_zero" use="required"/>
		<xs:attribute name="crystal" type="integer_with_zero" use="required"/>
		<xs:attribute name="deuterium" type="integer_with_zero" use="required"/>
	</xs:complexType>	

	<xs:complexType name="combat_result">
		<xs:sequence>
			<xs:element name="loot" type="loot" minOccurs="1" maxOccurs="1"/>
			<xs:element name="debris" type="debris" minOccurs="1" maxOccurs="1"/>
		</xs:sequence>
		<xs:attribute name="winner" type="combat_winner" use="required"/>
		<xs:attribute name="datetime" type="datetime" use="required"/>
		<xs:attribute name="galaxy" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="system" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="planet" type="xs:positiveInteger" use="required"/>
	</xs:complexType>	
	
	<xs:complexType name="combat_party">
		<xs:sequence>
			<xs:element name="activity" type="activity" minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
		<xs:attribute name="type" type="combat_type" use="required"/>
		<xs:attribute name="galaxy" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="system" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="planet" type="xs:positiveInteger" use="required"/>
		<xs:attribute name="weapon" type="integer_with_zero"/>
		<xs:attribute name="shield" type="integer_with_zero"/>
		<xs:attribute name="armor" type="integer_with_zero"/>
		<xs:attribute name="lost_units" type="integer_with_zero"/>
	</xs:complexType>	

	<xs:complexType name="combat_report">
		<xs:sequence>
			<xs:element name="combat_result" type="combat_result" minOccurs="1" maxOccurs="1"/>
			<xs:element name="combat_party" type="combat_party" minOccurs="2" maxOccurs="16"/>
		</xs:sequence>
		<xs:attribute name="msg_id" type="xs:positiveInteger" use="required"/>
	</xs:complexType>	
	
	
	<xs:complexType name="combat_reports">
		<xs:sequence>
			<xs:element name="header" type="header_data" minOccurs="1" maxOccurs="1"/>
			<xs:element name="combat_report" type="combat_report" minOccurs="1" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>	
		
	<xs:element name="combat_reports" type="combat_reports"/>

</xs:schema>