| <?xml version="1.0"?> |
| <xs:schema xmlns="http://ns.taverna.org.uk/2013/application/plugin" |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:versions="http://ns.taverna.org.uk/2013/application/versions" |
| xmlns:ap="http://ns.taverna.org.uk/2013/application/profile" |
| xmlns:plugin="http://ns.taverna.org.uk/2013/application/plugin" |
| xmlns:jxb="http://java.sun.com/xml/ns/jaxb" jxb:version="1.0" |
| targetNamespace="http://ns.taverna.org.uk/2013/application/plugin" |
| elementFormDefault="qualified"> |
| |
| <xs:annotation> |
| <xs:appinfo> |
| <jxb:schemaBindings> |
| <jxb:package name="uk.org.taverna.commons.plugin.xml.jaxb" /> |
| </jxb:schemaBindings> |
| </xs:appinfo> |
| </xs:annotation> |
| |
| <xs:import namespace="http://ns.taverna.org.uk/2013/application/versions" |
| schemaLocation="ApplicationVersions.xsd" /> |
| |
| <xs:import namespace="http://ns.taverna.org.uk/2013/application/profile" |
| schemaLocation="ApplicationProfile.xsd" /> |
| |
| <xs:element name="pluginInfo"> |
| <xs:complexType> |
| <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="organization" type="xs:string" /> |
| <xs:element name="version" type="versions:semanticVersion" /> |
| <xs:element name="bundle" type="ap:bundleInfo" minOccurs="0" maxOccurs="unbounded" /> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:complexType name="pluginVersions"> |
| <xs:complexContent> |
| <xs:extension base="versions:versions"> |
| <xs:sequence> |
| <xs:element name="organization" type="xs:string" /> |
| <xs:element name="pluginSiteUrl" type="xs:string" minOccurs="0" /> |
| </xs:sequence> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:element name="plugins"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="plugin" type="pluginVersions" |
| minOccurs="1" maxOccurs="unbounded"> |
| <xs:unique name="versionUnique"> |
| <xs:selector |
| xpath="versions:previousVersion/versions:version|versions:latestVersion/versions:version" /> |
| <xs:field xpath="." /> |
| </xs:unique> |
| </xs:element> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:unique name="versionsIdUnique"> |
| <xs:selector xpath="plugin:versions/versions:id" /> |
| <xs:field xpath="." /> |
| </xs:unique> |
| </xs:element> |
| |
| </xs:schema> |