xref: /aosp_15_r20/prebuilts/devtools/repository/sdk-stats-1.xsd (revision 4bfccde5c7e9ea06f821db40ef0af54f6695c320)
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 * Copyright (C) 2012 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<xsd:schema
18    targetNamespace="http://schemas.android.com/sdk/android/stats/1"
19    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
20    xmlns:ast="http://schemas.android.com/sdk/android/stats/1"
21    elementFormDefault="qualified"
22    attributeFormDefault="unqualified"
23    version="1">
24
25    <!--
26        A simple list of platforms provided by the SDK Manager and some
27        statistics on them, namely the market share percentage for that
28        platform.
29        This can be used by the SDK Manager or the ADT New Project Wizard
30        to give users an idea of the relative install base of platforms.
31
32        Scope, Caveat & Limitation:
33        The "share percentage" corresponds to the Platform Versions table
34        from the SDK Dashboard as seen at
35        http://developer.android.com/resources/dashboard/platform-versions.html
36        However the data is not automatically generated and there is NO
37        freshness implied.  The values may or may not be up-to-date and it is
38        most likely they will only get refreshed when there's a significant
39        change that affects the usage of the SDK tools.
40
41        =>  The data is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
42        OR CONDITIONS OF ANY KIND, either express or implied.
43    -->
44
45    <xsd:element name="sdk-stats" type="ast:platformsListType" />
46
47    <xsd:complexType name="platformsListType">
48        <xsd:annotation>
49            <xsd:documentation>
50                A simple list of platform stats.
51            </xsd:documentation>
52        </xsd:annotation>
53        <xsd:choice minOccurs="0" maxOccurs="unbounded">
54            <xsd:element name="platform" type="ast:platformType" />
55        </xsd:choice>
56    </xsd:complexType>
57
58
59    <!-- The definition of stats for a platform. -->
60
61    <xsd:complexType name="platformType">
62        <xsd:annotation>
63            <xsd:documentation>Stats information for a given Android platform.
64                The api-level acts as a key, and it is epxected there should only
65                be one platform listed with the same API-level.
66            </xsd:documentation>
67        </xsd:annotation>
68        <xsd:all>
69            <!-- The Android API Level for the platform. An int > 0. -->
70            <xsd:element name="api-level" type="xsd:positiveInteger"  />
71
72            <!-- The official codename for this platform, for example "Cupcake". -->
73            <xsd:element name="codename"  type="xsd:normalizedString" />
74
75            <!-- The official version name of this platform, for example "Android 1.5". -->
76            <xsd:element name="version"   type="xsd:normalizedString" />
77
78            <!-- An approximate share percentage of this platform. -->
79            <xsd:element name="share" type="ast:percent" />
80        </xsd:all>
81    </xsd:complexType>
82
83
84    <!-- A decimal percentage, between 0.0 and 100.0% -->
85
86    <xsd:simpleType name="percent" id="percent">
87        <xsd:annotation>
88            <xsd:documentation>A decimal percentage, between 0.0 and 100.0%.</xsd:documentation>
89        </xsd:annotation>
90        <xsd:restriction base="xsd:decimal">
91            <xsd:minInclusive value="0"/>
92            <xsd:maxInclusive value="100"/>
93        </xsd:restriction>
94    </xsd:simpleType>
95
96</xsd:schema>
97