blob: e0605f0716b5e719d1df16d634f6e4770075cfe9 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!--
! Licensed to the Apache Software Foundation (ASF) under one
! or more contributor license agreements. See the NOTICE file
! distributed with this work for additional information
! regarding copyright ownership. The ASF licenses this file
! to you 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"
xmlns:cl="cluster" targetNamespace="cluster" elementFormDefault="qualified">
<!-- definition of simple types -->
<xs:element name="instance_name" type="xs:string" />
<xs:element name="cluster_name" type="xs:string" />
<xs:element name="log_dir" type="xs:string" />
<xs:element name="txn_log_dir" type="xs:string" />
<xs:element name="id" type="xs:string" />
<xs:element name="client_ip" type="xs:string" />
<xs:element name="cluster_ip" type="xs:string" />
<xs:element name="key" type="xs:string" />
<xs:element name="value" type="xs:string" />
<xs:element name="dir" type="xs:string" />
<xs:element name="NFS" type="xs:boolean" />
<xs:element name="store" type="xs:string" />
<xs:element name="iodevices" type="xs:string" />
<xs:element name="java_home" type="xs:string" />
<xs:element name="username" type="xs:string" />
<xs:element name="web_port" type="xs:string" />
<xs:element name="client_port" type="xs:integer" />
<xs:element name="cluster_port" type="xs:integer" />
<xs:element name="http_port" type="xs:integer" />
<xs:element name="debug_port" type="xs:integer" />
<xs:element name="metadata_node" type="xs:string" />
<xs:element name="enabled" type="xs:boolean" />
<xs:element name="replication_port" type="xs:integer" />
<xs:element name="replication_factor" type="xs:integer" />
<xs:element name="auto_failover" type="xs:boolean" />
<xs:element name="replication_time_out" type="xs:integer" />
<!-- definition of complex elements -->
<xs:element name="working_dir">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:dir" />
<xs:element ref="cl:NFS" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="master_node">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:id" />
<xs:element ref="cl:client_ip" />
<xs:element ref="cl:cluster_ip" />
<xs:element ref="cl:java_home" minOccurs="0" />
<xs:element ref="cl:log_dir" minOccurs="0" />
<xs:element ref="cl:client_port" />
<xs:element ref="cl:cluster_port" />
<xs:element ref="cl:http_port" />
<xs:element ref="cl:debug_port" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="data_replication">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:enabled" />
<xs:element ref="cl:replication_port" />
<xs:element ref="cl:replication_factor" />
<xs:element ref="cl:auto_failover" />
<xs:element ref="cl:replication_time_out" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="property">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:key" />
<xs:element ref="cl:value" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="env">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:property" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="node">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:id" />
<xs:element ref="cl:cluster_ip" />
<xs:element ref="cl:java_home" minOccurs="0" />
<xs:element ref="cl:log_dir" minOccurs="0" />
<xs:element ref="cl:txn_log_dir" minOccurs="0" />
<xs:element ref="cl:iodevices" minOccurs="0" />
<xs:element ref="cl:debug_port" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="substitute_nodes">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:node" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="cluster">
<xs:complexType>
<xs:sequence>
<xs:element ref="cl:instance_name" />
<xs:element ref="cl:cluster_name" />
<xs:element ref="cl:username" />
<xs:element ref="cl:env" minOccurs="0" />
<xs:element ref="cl:java_home" minOccurs="0" />
<xs:element ref="cl:log_dir" minOccurs="0" />
<xs:element ref="cl:txn_log_dir" minOccurs="0" />
<xs:element ref="cl:store" minOccurs="0" />
<xs:element ref="cl:iodevices" minOccurs="0" />
<xs:element ref="cl:working_dir" />
<xs:element ref="cl:metadata_node" />
<xs:element ref="cl:data_replication" minOccurs="0" />
<xs:element ref="cl:master_node" />
<xs:element ref="cl:node" maxOccurs="unbounded" />
<xs:element ref="cl:substitute_nodes" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>