<?xml version="1.0" encoding="UTF-8"?>

<xs:schema
    targetNamespace="http://myfaces.apache.org/tobago/tobago-config"
    xmlns:tobago="http://myfaces.apache.org/tobago/tobago-config"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:xml="http://www.w3.org/XML/1998/namespace"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    version="1.5">

  <xs:annotation>
    <xs:documentation>
      <![CDATA[
      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:documentation>
  </xs:annotation>

  <xs:annotation>
    <xs:documentation>
      <![CDATA[
      This is the XML schema for the tobago configuration files version 1.5.

      Use the following definition:

      <tobago-config
          xmlns="http://myfaces.apache.org/tobago/tobago-config"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://myfaces.apache.org/tobago/tobago-config http://myfaces.apache.org/tobago/tobago-config-1.5.xsd"
          version="1.5">
        ...
      </tobago-config>
      ]]>
    </xs:documentation>
  </xs:annotation>

  <xs:element name="tobago-config" type="tobago:tobago-config-type"/>

  <xs:complexType name="tobago-config-type">
    <xs:sequence>
      <xs:element name="name" type="tobago:name-type" minOccurs="0"/>
      <xs:element name="ordering" type="tobago:ordering-type" minOccurs="0"/>
      <xs:element name="theme-config" type="tobago:theme-config-type" minOccurs="0"/>
      <xs:element name="resource-dir" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="create-session-secret" type="xs:boolean" minOccurs="0"/>
      <xs:element name="check-session-secret" type="xs:boolean" minOccurs="0"/>
      <xs:element name="renderers" type="tobago:renderers-type" minOccurs="0"/>
      <xs:element name="theme-definitions" type="tobago:theme-definitions-type" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="version"
                   type="tobago:tobago-config-version-type"
                   use="required"/>
  </xs:complexType>

  <xs:simpleType name="tobago-config-version-type">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1.5"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="ordering-type">
    <xs:sequence>
      <xs:element name="after" type="tobago:before-after-type" minOccurs="0"/>
      <xs:element name="before" type="tobago:before-after-type" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="before-after-type">
    <xs:sequence>
      <xs:element name="name" type="tobago:name-type" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="theme-config-type">
    <xs:sequence>
      <xs:element name="default-theme" type="xs:string"/>
      <xs:element name="supported-theme" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="renderers-type">
    <xs:sequence>
      <xs:element name="renderer" type="tobago:renderer-type" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="renderer-type">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="supported-markup" type="tobago:supported-markup-type"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="supported-markup-type">
    <xs:sequence>
      <xs:element name="markup" type="xs:string" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="theme-definitions-type">
    <xs:sequence>
      <xs:element name="theme-definition" type="tobago:theme-definition-type" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="theme-definition-type">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="display-name" type="xs:string" minOccurs="0"/>
      <xs:element name="deprecated-name" type="xs:string" minOccurs="0"/>
      <xs:element name="resource-path" type="xs:string"/>
      <xs:element name="fallback" type="xs:string" minOccurs="0"/>
      <xs:element name="renderers" type="tobago:renderers-type" minOccurs="0"/>
      <xs:element name="resources" type="tobago:resources-type" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="resources-type">
    <xs:sequence>
      <xs:element name="script" type="tobago:script-type" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="style" type="tobago:style-type" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="production" type="xs:boolean" use="required"/>
  </xs:complexType>

  <xs:complexType name="script-type">
    <xs:attribute name="name" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="style-type">
    <xs:attribute name="name" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:simpleType name="name-type">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>

</xs:schema>
