<?xml version="1.0"?>
<!--

    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="http://ns.taverna.org.uk/2013/application/versions"
	xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:versions="http://ns.taverna.org.uk/2013/application/versions"
	xmlns:jxb="http://java.sun.com/xml/ns/jaxb" jxb:version="1.0"
	targetNamespace="http://ns.taverna.org.uk/2013/application/versions"
	elementFormDefault="qualified">

	<xs:annotation>
		<xs:appinfo>
			<jxb:schemaBindings>
				<jxb:package name="org.apache.taverna.versions.xml.jaxb" />
			</jxb:schemaBindings>
		</xs:appinfo>
	</xs:annotation>

	<xs:simpleType name="semanticVersion">
		<xs:annotation>
			<xs:documentation>A semantic version.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:pattern value="[0-9]+\.[0-9]+(\.[0-9]+(\.[0-9A-Za-z_-]+)?)?" />
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="version">
		<xs:sequence>
			<xs:element name="version" type="semanticVersion" />
			<xs:element name="file" type="xs:string" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="versions">
		<xs:sequence>
			<xs:element name="id" type="xs:string" />
			<xs:element name="name" type="xs:string" />
			<xs:element name="description" type="xs:string" />
			<xs:element name="latestVersion" type="version" minOccurs="1"
				maxOccurs="1" />
			<xs:element name="previousVersion" type="version"
				minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

</xs:schema>
