<?xml version="1.0" encoding="gb2312" ?>
<xs:schema targetNamespace="http://www.h3c.com/netconf/config:1.0"
                  elementFormDefault="qualified"
                  xmlns="http://www.h3c.com/netconf/config:1.0"
                  xmlns:base="http://www.h3c.com/netconf/base:1.0"
                  xmlns:netconf ="urn:ietf:params:xml:ns:netconf:base:1.0"
                  xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://www.h3c.com/netconf/base:1.0" schemaLocation="basetype.xsd"></xs:import>
  <xs:import schemaLocation="netconf.xsd" namespace="urn:ietf:params:xml:ns:netconf:base:1.0"></xs:import>

  <xs:element name="MAC">
    <xs:complexType>
       <xs:choice maxOccurs="unbounded">      
        <xs:element name="MacUnicastTable" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="Unicast" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="VLANID" minOccurs="0"  nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="1"></xs:minInclusive>
                            <xs:maxInclusive value="4094"></xs:maxInclusive>                     
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="MacAddress" minOccurs="0" type="base:MacAddress" nillable="true">
                    </xs:element>
                    <xs:element name="PortIndex" minOccurs="0"  type="base:NameAndIndexUnion" nillable="true">
                    </xs:element>
                    <xs:element name="Status" minOccurs="0"  nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:enumeration value="2"/>
                            <xs:enumeration value="3"/>
                            <xs:enumeration value="4"/>                                                        
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        <xs:element name="MacGroupTable" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="Group" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="VLANID" minOccurs="0"  nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="1"></xs:minInclusive>
                            <xs:maxInclusive value="4094"></xs:maxInclusive>      
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="MacAddress" minOccurs="0" type="base:MacAddress" nillable="true">
                    </xs:element>
                    <xs:element name="Status" minOccurs="0"  nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:enumeration value="5"/>
                            <xs:enumeration value="6"/>      
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>                   
                    <xs:element name="PortList" minOccurs="0"  type="base:PortList" nillable="true">
                    </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        <xs:element name="MacAging" minOccurs="0">
           <xs:complexType>
           <xs:all>
            <xs:element name="AgingTime" minOccurs="0" type="base:UnsignedInteger32" nillable="true">
           </xs:element>
           </xs:all>
           <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
        </xs:complexType>
       </xs:element>
       
       <xs:element name="MacVLAN" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="VLANLearn" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="VLANID" minOccurs="0"  nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="1"></xs:minInclusive>
                            <xs:maxInclusive value="4094"></xs:maxInclusive>  
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="LearnEnable" minOccurs="0" type="base:Boolean"  nillable="true">
                    </xs:element>

                    <xs:element name="LearnMaxNum" minOccurs="0" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="0"></xs:minInclusive>
                            <xs:maxInclusive value="65535"></xs:maxInclusive>  
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                   </xs:element>
                   <xs:element name="VLANForwardingEnable" minOccurs="0" type="base:Boolean" nillable="true">
                   </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        
        <xs:element name="MacPort" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="PortLearn" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="PortIndex" minOccurs="0" type="base:NameAndIndexUnion" nillable="true">
                    </xs:element>
                    <xs:element name="LearnEnable" minOccurs="0" type="base:Boolean"  nillable="true">
                    </xs:element>
                    <xs:element name="LearnMaxNum" minOccurs="0" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="0"></xs:minInclusive>
                            <xs:maxInclusive value="65535"></xs:maxInclusive>  
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                   </xs:element>
                   <xs:element name="PortForwardingEnable" minOccurs="0" type="base:Boolean" nillable="true">
                   </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        
        <xs:element name="MacPortConfig" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="PortConfig" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="IfIndex" minOccurs="0" type="base:NameAndIndexUnion"  nillable="true">
                    </xs:element>
                    <xs:element name="PortBridgeEnable" minOccurs="0" type="base:Boolean"  nillable="true">
                    </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        
        <xs:element name="MacFwdSrcCheck" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="FwdSrcCheck" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="IfIndex" minOccurs="0" type="base:NameAndIndexUnion"  nillable="true">
                    </xs:element>
                    <xs:element name="FwdSrcCheckEnable" minOccurs="0" type="base:Boolean"  nillable="true">
                    </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        
        <xs:element name="SRVs" minOccurs="0">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded">
              <xs:element name="SRV" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:all>
                    <xs:element name="IfIndex" minOccurs="0" type="base:NameAndIndexUnion"  nillable="true">
                    </xs:element>
                    <xs:element name="SrvID" minOccurs="0" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:minInclusive value="1"></xs:minInclusive>
                            <xs:maxInclusive value="4096"></xs:maxInclusive>
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="LrnPriority" minOccurs="0" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:restriction base="base:UnsignedInteger32">
                            <xs:enumeration value="1"/>
                            <xs:enumeration value="2"/>
                          </xs:restriction>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                  </xs:all>
                  <xs:attributeGroup ref="base:RowAttributeGroup"></xs:attributeGroup>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <xs:attributeGroup ref="base:TableAttributeGroup"></xs:attributeGroup>
          </xs:complexType>
        </xs:element>
        
      </xs:choice>
     <xs:attributeGroup ref="base:NodeAttributeGroup"></xs:attributeGroup>
    </xs:complexType>
  </xs:element>
</xs:schema>

