Move auth-client as independent
[aaf/authz.git] / auth-client / src / main / xsd / locate_1_0.xsd
1 <!-- 
2  * ============LICENSE_START====================================================
3  * org.onap.aaf
4  * ===========================================================================
5  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
6  * ===========================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END====================================================
19  *
20 -->
21
22 <xs:schema 
23         xmlns:xs="http://www.w3.org/2001/XMLSchema" 
24         xmlns:locate="urn:locate:v1_0"
25         targetNamespace="urn:locate:v1_0" 
26         elementFormDefault="qualified">
27         
28         <xs:complexType name="endpoint">
29                 <xs:sequence>
30                         <!-- Must be set to "token" -->
31                         <xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1"/>
32                         <xs:element name="major" type="xs:int" minOccurs="1" maxOccurs="1"/>
33                         <xs:element name="minor" type="xs:int" minOccurs="1" maxOccurs="1"/>
34                         <xs:element name="patch" type="xs:int" minOccurs="1" maxOccurs="1"/>
35                         <xs:element name="pkg" type="xs:int" minOccurs="1" maxOccurs="1"/>
36                         <xs:element name="latitude" type="xs:float" minOccurs="1" maxOccurs="1"/>
37                         <xs:element name="longitude" type="xs:float" minOccurs="1" maxOccurs="1"/>
38                         <xs:element name="protocol" type="xs:string" minOccurs="1" maxOccurs="1"/>
39                         <xs:element name="subprotocol" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
40                         <xs:element name="hostname" type="xs:string" minOccurs="1" maxOccurs="1"/>
41                         <xs:element name="port" type="xs:int" minOccurs="1" maxOccurs="1"/>
42                 </xs:sequence>
43         </xs:complexType>
44         
45         <xs:element name="endpoints">
46                 <xs:complexType>
47                         <xs:sequence>
48                                 <xs:element name="endpoint" type="locate:endpoint" minOccurs="0" maxOccurs="unbounded"/>
49                         </xs:sequence>
50                 </xs:complexType>
51         </xs:element>
52
53     <xs:complexType name="mgmt_endpoint">
54                 <xs:complexContent>
55                         <xs:extension base="locate:endpoint">
56                                 <xs:sequence>   
57                                         <xs:element name="special_ports"  minOccurs="0" maxOccurs="unbounded" >
58                                                 <xs:complexType>
59                                                         <xs:sequence>
60                                                                 <xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1"/>
61                                                                 <xs:element name="port" type="xs:int" minOccurs="1" maxOccurs="1"/>
62                                                                 <xs:element name="protocol" type="xs:string" minOccurs="1" maxOccurs="1"/>
63                                                                 <xs:element name="protocol_versions" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
64                                                         </xs:sequence>
65                                                 </xs:complexType>
66                                         </xs:element>
67                                 </xs:sequence>
68                         </xs:extension>
69                 </xs:complexContent>                    
70         </xs:complexType>
71
72         <xs:element name="mgmt_endpoints">
73                 <xs:complexType>
74                         <xs:sequence>
75                                 <xs:element name="mgmt_endpoint" type="locate:mgmt_endpoint" minOccurs="0" maxOccurs="unbounded"/>
76                         </xs:sequence>
77                 </xs:complexType>
78         </xs:element>
79 </xs:schema>