<?xml version="1.0" encoding="utf-8"?>
<!--
  ~ Copyright (C) 2021 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.
  -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           version="2.0"
           elementFormDefault="qualified"
           attributeFormDefault="unqualified"
           targetNamespace="http://schemas.android.com/art/apex-cache-info/v1_0"
           xmlns:t="http://schemas.android.com/art/apex-cache-info/v1_0" >
  <!-- Data type holding information on the AOT artifact cache in
    `/data/misc/apexdata/com.android.art/dalvik-cache` -->
  <xs:element name="cacheInfo">
    <xs:complexType>
    <xs:sequence>
      <xs:element name="artModuleInfo" minOccurs="1" maxOccurs="1" type="t:moduleInfo" />
      <xs:element name="moduleInfoList" minOccurs="1" maxOccurs="1" type="t:moduleInfoList" />
      <xs:element name="bootClasspath" minOccurs="1" maxOccurs="1" type="t:classpath" />
      <xs:element name="dex2oatBootClasspath" minOccurs="1" maxOccurs="1" type="t:classpath" />
      <xs:element name="systemServerComponents" minOccurs="1" maxOccurs="1" type="t:systemServerComponents" />
    </xs:sequence>
    </xs:complexType>
  </xs:element>

  <!-- List of modules. -->
  <xs:complexType name="moduleInfoList">
    <xs:sequence>
      <xs:element name="moduleInfo" type="t:moduleInfo" />
    </xs:sequence>
  </xs:complexType>

  <!-- Data type representing the provenance of the AOT artifacts in the cache. -->
  <xs:complexType name="moduleInfo">
    <!-- Module name for the active APEX from `/apex/apex-info-list.xml`. -->
    <xs:attribute name="name" type="xs:string" use="required" />
    <!-- Module versionCode for the active APEX from `/apex/apex-info-list.xml`. -->
    <xs:attribute name="versionCode" type="xs:long" use="required" />
    <!-- Module versionName for the active APEX from `/apex/apex-info-list.xml`. -->
    <xs:attribute name="versionName" type="xs:string" use="required" />
    <!-- Module lastUpdateMillis for the active APEX from `/apex/apex-info-list.xml`. -->
    <xs:attribute name="lastUpdateMillis" type="xs:long" use="required" />
  </xs:complexType>

  <!-- Components of a classpath. -->
  <xs:complexType name="classpath">
    <xs:sequence>
      <xs:element name="component" type="t:component" />
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="component">
    <!-- File path of component. -->
    <xs:attribute name="file" type="xs:string" use="required" />
    <!-- Size of component when cache information is generated. -->
    <xs:attribute name="size" type="xs:unsignedLong" use="required" />
    <!-- DEX file checksums within the component. Multidex files have multiple checksums. -->
    <xs:attribute name="checksums" type="xs:string" use="required" />
  </xs:complexType>

  <xs:complexType name="systemServerComponents">
    <xs:sequence>
      <xs:element name="component" type="t:systemServerComponent" />
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="systemServerComponent">
    <xs:complexContent>
      <xs:extension base="component">
        <!-- True if the component is in SYSTEMSERVERCLASSPATH. Otherwise, the component is a
          standalone one. -->
        <xs:attribute name="isInClasspath" type="xs:boolean" use="required" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

</xs:schema>
