<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (C) 2019 The Android Open Source Project
  ~
  ~ Licensed 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.
  -->

<!-- This defines the format of the XML file generated by
  ~ com.android.compat.annotation.ChangeIdProcessor annotation processor (from
  ~ tools/platform-compat), and is parsed in com/android/server/compat/CompatConfig.java.
-->
<xs:schema version="2.0" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:complexType name="change">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute type="xs:long" name="id" use="required"/>
                <xs:attribute type="xs:string" name="name" use="required"/>
                <xs:attribute type="xs:boolean" name="disabled"/>
                <xs:attribute type="xs:boolean" name="loggingOnly"/>
                <xs:attribute type="xs:boolean" name="noLogging"/>
                <xs:attribute type="xs:int" name="enableAfterTargetSdk"/>
                <xs:attribute type="xs:int" name="enableSinceTargetSdk"/>
                <xs:attribute type="xs:string" name="description"/>
                <xs:attribute type="xs:boolean" name="overridable"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>

    <xs:element name="config">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="compat-change" type="change" maxOccurs="unbounded"
                            minOccurs="0"/>
            </xs:sequence>
        </xs:complexType>
        <xs:unique name="UniqueId">
            <xs:selector xpath="compat-change" />
            <xs:field xpath="@id" />
        </xs:unique>
    </xs:element>
</xs:schema>
