<?xml version="1.0" encoding="UTF-8"?>
<!--
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
            xmlns:tns="nillableComplexType"
            targetNamespace="nillableComplexType">

<xs:complexType name="MyClass" mixed="true">
 <xs:sequence>
  <xs:element name="Name" form="unqualified" nillable="true" minOccurs="0">
   <xs:simpleType>
    <xs:restriction base="xs:string">
     <xs:maxLength value="20"/>
    </xs:restriction>
   </xs:simpleType>
  </xs:element>
  <xs:element name="Values" form="unqualified" nillable="true" minOccurs="0">
   <xs:simpleType>
    <xs:restriction base="xs:base64Binary">
     <xs:maxLength value="3"/>
    </xs:restriction>
   </xs:simpleType>
  </xs:element>
 </xs:sequence>
 <xs:attribute name="id" type="xs:NMTOKEN" use="optional" form="unqualified"/>
</xs:complexType>

</xs:schema>
