blob: bb2368fc8c2f2ee8bdb2dd2e09f1f203670121a5 [file] [log] [blame]
The Android Open Source Project96b00fe2009-03-03 19:30:02 -08001<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
2<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3
4<xsd:annotation>
5 <xsd:documentation>
6 Schema for JDiff API representation.
7 </xsd:documentation>
8</xsd:annotation>
9
10<xsd:element name="api" type="apiType"/>
11
12<xsd:complexType name="apiType">
13 <xsd:sequence>
14 <xsd:element name="package" type="packageType" minOccurs='1' maxOccurs='unbounded'/>
15 </xsd:sequence>
16 <xsd:attribute name="name" type="xsd:string"/>
17 <xsd:attribute name="jdversion" type="xsd:string"/>
18</xsd:complexType>
19
20<xsd:complexType name="packageType">
21 <xsd:sequence>
22 <xsd:choice maxOccurs='unbounded'>
23 <xsd:element name="class" type="classType"/>
24 <xsd:element name="interface" type="classType"/>
25 </xsd:choice>
26 <xsd:element name="doc" type="xsd:string" minOccurs='0' maxOccurs='1'/>
27 </xsd:sequence>
28 <xsd:attribute name="name" type="xsd:string"/>
29</xsd:complexType>
30
31<xsd:complexType name="classType">
32 <xsd:sequence>
33 <xsd:element name="implements" type="interfaceTypeName" minOccurs='0' maxOccurs='unbounded'/>
34 <xsd:element name="constructor" type="constructorType" minOccurs='0' maxOccurs='unbounded'/>
35 <xsd:element name="method" type="methodType" minOccurs='0' maxOccurs='unbounded'/>
36 <xsd:element name="field" type="fieldType" minOccurs='0' maxOccurs='unbounded'/>
37 <xsd:element name="doc" type="xsd:string" minOccurs='0' maxOccurs='1'/>
38 </xsd:sequence>
39 <xsd:attribute name="name" type="xsd:string"/>
40 <xsd:attribute name="extends" type="xsd:string" use='optional'/>
41 <xsd:attribute name="abstract" type="xsd:boolean"/>
42 <xsd:attribute name="src" type="xsd:string" use='optional'/>
43 <xsd:attribute name="static" type="xsd:boolean"/>
44 <xsd:attribute name="final" type="xsd:boolean"/>
45 <xsd:attribute name="deprecated" type="xsd:string"/>
46 <xsd:attribute name="visibility" type="xsd:string"/>
47</xsd:complexType>
48
49<xsd:complexType name="interfaceTypeName">
50 <xsd:attribute name="name" type="xsd:string"/>
51</xsd:complexType>
52
53<xsd:complexType name="constructorType">
54 <xsd:sequence>
55 <xsd:element name="exception" type="exceptionType" minOccurs='0' maxOccurs='unbounded'/>
56 <xsd:element name="doc" type="xsd:string" minOccurs='0' maxOccurs='1'/>
57 </xsd:sequence>
58 <xsd:attribute name="name" type="xsd:string"/>
59 <xsd:attribute name="type" type="xsd:string" use='optional'/>
60 <xsd:attribute name="src" type="xsd:string" use='optional'/>
61 <xsd:attribute name="static" type="xsd:boolean"/>
62 <xsd:attribute name="final" type="xsd:boolean"/>
63 <xsd:attribute name="deprecated" type="xsd:string"/>
64 <xsd:attribute name="visibility" type="xsd:string"/>
65</xsd:complexType>
66
67<xsd:complexType name="paramsType">
68 <xsd:attribute name="name" type="xsd:string"/>
69 <xsd:attribute name="type" type="xsd:string"/>
70</xsd:complexType>
71
72<xsd:complexType name="exceptionType">
73 <xsd:attribute name="name" type="xsd:string"/>
74 <xsd:attribute name="type" type="xsd:string"/>
75</xsd:complexType>
76
77<xsd:complexType name="methodType">
78 <xsd:sequence>
79 <xsd:element name="param" type="paramsType" minOccurs='0' maxOccurs='unbounded'/>
80 <xsd:element name="exception" type="exceptionType" minOccurs='0' maxOccurs='unbounded'/>
81 <xsd:element name="doc" type="xsd:string" minOccurs='0' maxOccurs='1'/>
82 </xsd:sequence>
83 <xsd:attribute name="name" type="xsd:string"/>
84 <xsd:attribute name="return" type="xsd:string" use='optional'/>
85 <xsd:attribute name="abstract" type="xsd:boolean"/>
86 <xsd:attribute name="native" type="xsd:boolean"/>
87 <xsd:attribute name="synchronized" type="xsd:boolean"/>
88 <xsd:attribute name="src" type="xsd:string" use='optional'/>
89 <xsd:attribute name="static" type="xsd:boolean"/>
90 <xsd:attribute name="final" type="xsd:boolean"/>
91 <xsd:attribute name="deprecated" type="xsd:string"/>
92 <xsd:attribute name="visibility" type="xsd:string"/>
93</xsd:complexType>
94
95<xsd:complexType name="fieldType">
96 <xsd:sequence>
97 <xsd:element name="doc" type="xsd:string" minOccurs='0' maxOccurs='1'/>
98 </xsd:sequence>
99 <xsd:attribute name="name" type="xsd:string"/>
100 <xsd:attribute name="type" type="xsd:string"/>
101 <xsd:attribute name="transient" type="xsd:boolean"/>
102 <xsd:attribute name="volatile" type="xsd:boolean"/>
103 <xsd:attribute name="value" type="xsd:string" use='optional'/>
104 <xsd:attribute name="src" type="xsd:string" use='optional'/>
105 <xsd:attribute name="static" type="xsd:boolean"/>
106 <xsd:attribute name="final" type="xsd:boolean"/>
107 <xsd:attribute name="deprecated" type="xsd:string"/>
108 <xsd:attribute name="visibility" type="xsd:string"/>
109</xsd:complexType>
110
111</xsd:schema>