﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:complexType name="WaternetPointType">
    <xs:attribute name="Key" type="xs:int" use="required" />
    <xs:attribute name="X" type="xs:double" use="required" />
    <xs:attribute name="Z" type="xs:double" use="required" />
  </xs:complexType>

  <xs:complexType name="WaternetLineType">
    <xs:sequence>
      <xs:element name="Points">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" maxOccurs="unbounded" name="Point" type="WaternetPointType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="Key" type="xs:int" use="required" />
    <xs:attribute name="Name" type="xs:string" use="required" />
  </xs:complexType>

  <xs:complexType name="WaternetType">
    <xs:sequence>
      <xs:element name="PhreaticLine" type="WaternetLineType"/>
      <xs:element name="HeadLines">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" maxOccurs="unbounded" name="HeadLine" type="WaternetLineType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="WaternetLines">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" maxOccurs="unbounded" name="WaternetLine">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="WaternetLine" type="WaternetLineType" />
                </xs:sequence>
                <xs:attribute name="AssociatedHeadLine" type="xs:int" use="required" />
                <!--references Key of PhreaticLine or HeadLine-->
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="IsGenerated" type="xs:boolean" use="required" />
    <xs:attribute name="UnitWeightWater" type="xs:double" use="required" />
  </xs:complexType>

</xs:schema>