<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	    targetNamespace="http://www.wa5znu.org/2006/04/xdif/" 
	    xmlns:xdif="http://www.wa5znu.org/2006/04/xdif/"
	    elementFormDefault="qualified">
  
  <!-- Extensions -->
  <xsd:import schemaLocation="space.xsd" namespace="http://www.wa5znu.org/2006/04/xdif/propagation/space/"/>

  <!-- Parts of XDIF broken out into files for easy editing -->
  <xsd:include schemaLocation="propagationMode.xsd" />
  <xsd:include schemaLocation="types.xsd" />
  <xsd:include schemaLocation="mode.xsd" />
  <xsd:include schemaLocation="operator.xsd" />
  <xsd:include schemaLocation="station.xsd" />
  <xsd:include schemaLocation="qsl.xsd" />
  <xsd:include schemaLocation="qso.xsd" />
  <xsd:include schemaLocation="dxcc.xsd" />
  <xsd:include schemaLocation="clubs.xsd" />
  <xsd:include schemaLocation="contest.xsd" />


  <!-- Root element for log -->
  <xsd:element name="log">
    <xsd:complexType>
      <xsd:sequence>
	<!-- Optional definitions for later re-use -->
	<xsd:element ref="xdif:definitions" minOccurs="0" maxOccurs="1" />
	<!-- My station description -->
	<xsd:element ref="xdif:my" />
	<!-- The QSOs element -->
	<xsd:element ref="xdif:qsos" minOccurs="0" maxOccurs="1"/>
	<!-- Any number of foreign elements -->
	<xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" />
      </xsd:sequence>
      <!-- Name of the logger, converter, or utility that created or processed this XDIF file -->
      <xsd:attribute name="programid" type="xsd:string" use="required"/>
      <!-- The version of the logger, converter, or utility that created or processed this XDIF file -->
      <xsd:attribute name="programversion" type="xsd:string" use="required" />
      <!-- Allow foreign attributes -->
      <xsd:anyAttribute namespace="##other"/>
    </xsd:complexType>
  </xsd:element>

</xsd:schema>

