xref: /aosp_15_r20/system/apex/apexd/ApexInfoList.xsd (revision 33f3758387333dbd2962d7edbd98681940d895da)
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  ~ Copyright (C) 2020 The Android Open Source Project
4  ~
5  ~ Licensed under the Apache License, Version 2.0 (the "License");
6  ~ you may not use this file except in compliance with the License.
7  ~ You may obtain a copy of the License at
8  ~
9  ~      http://www.apache.org/licenses/LICENSE-2.0
10  ~
11  ~ Unless required by applicable law or agreed to in writing, software
12  ~ distributed under the License is distributed on an "AS IS" BASIS,
13  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  ~ See the License for the specific language governing permissions and
15  ~ limitations under the License.
16  -->
17<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
18  <xs:element name="apex-info-list">
19    <xs:complexType>
20      <xs:sequence>
21        <xs:element ref="apex-info" minOccurs="1" maxOccurs="unbounded"/>
22      </xs:sequence>
23    </xs:complexType>
24  </xs:element>
25
26  <xs:simpleType name="Partition">
27    <xs:restriction base="xs:string">
28        <xs:pattern value="SYSTEM"/>
29        <xs:pattern value="SYSTEM_EXT"/>
30        <xs:pattern value="PRODUCT"/>
31        <xs:pattern value="VENDOR"/>
32        <xs:pattern value="ODM"/>
33    </xs:restriction>
34  </xs:simpleType>
35
36  <xs:element name="apex-info">
37    <xs:complexType>
38      <xs:attribute name="moduleName" type="xs:string" use="required"/>
39      <xs:attribute name="modulePath" type="xs:string" use="required"/>
40      <xs:attribute name="preinstalledModulePath" type="xs:string"/>
41      <xs:attribute name="versionCode" type="xs:long" use="required"/>
42      <xs:attribute name="versionName" type="xs:string" use="required"/>
43      <xs:attribute name="isFactory" type="xs:boolean" use="required"/>
44      <xs:attribute name="isActive" type="xs:boolean" use="required"/>
45      <xs:attribute name="lastUpdateMillis" type="xs:long"/>
46      <xs:attribute name="provideSharedApexLibs" type="xs:boolean" use="required"/>
47      <xs:attribute name="partition" type="Partition" use="required"/>
48    </xs:complexType>
49  </xs:element>
50</xs:schema>
51