<?xml version='1.0' encoding='UTF-8'?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://xmlns.oracle.com/reports/network" 
    xmlns="http://xmlns.oracle.com/reports/network">

<xs:element name="discoveryService">
  <xs:complexType>
    <xs:choice>
      <xs:element ref="multicast"/>
      <xs:element ref="namingService"/>
    </xs:choice>
  </xs:complexType>
</xs:element>

<xs:element name="multicast">
  <xs:complexType>
    <xs:attribute name="channel" default="228.5.6.7" type="xs:string"/>
    
    <xs:attribute name="port"  default="14021">
        <xs:simpleType>
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="1"/> 
        </xs:restriction>
        </xs:simpleType>
    </xs:attribute> 
    
    <xs:attribute name="timeout" use="required">
        <xs:simpleType>
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="100"/> 
        </xs:restriction>
        </xs:simpleType>
    </xs:attribute> 
    
    <xs:attribute name="retry"  default="3">
         <xs:simpleType>
         <xs:restriction base="xs:integer">
            <xs:minInclusive value="1"/> 
         </xs:restriction>
         </xs:simpleType>
    </xs:attribute> 
  
  </xs:complexType>
</xs:element>

<xs:element name="namingService">
  <xs:complexType>
    
    <xs:attribute name="name" use="required" type="xs:string"/>
    <xs:attribute name="host"  use="required" type="xs:string"/>
        
    <xs:attribute name="port" use="required">
        <xs:simpleType>
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="1"/> 
        </xs:restriction>
        </xs:simpleType>
    </xs:attribute> 
  </xs:complexType>
</xs:element>

</xs:schema>
