74 lines
2.6 KiB
XML
74 lines
2.6 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:x="http://www.w3.org/2001/XMLSchema"
|
|
elementFormDefault="qualified"
|
|
attributeFormDefault="unqualified">
|
|
|
|
<xs:include schemaLocation="./net.xsd"/>
|
|
<xs:include schemaLocation="./unix.xsd"/>
|
|
|
|
<xs:complexType name="t_gomodh_base">
|
|
<xs:attribute name="name" type="t_unix_portablePosixFilename" use="required"/>
|
|
<xs:attribute name="baseUrl" type="t_net_http_basic_uri" use="optional"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="t_gomodh_pkg">
|
|
<xs:complexContent>
|
|
<xs:extension base="t_gomodh_base">
|
|
<xs:all>
|
|
<xs:element name="realUrl" type="t_gomodh_vcs_uri" minOccurs="1"/>
|
|
</xs:all>
|
|
<xs:attribute name="vcsType" type="t_gomodh_vcs" use="required"/>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="t_gomodh_mod">
|
|
<xs:complexContent>
|
|
<xs:extension base="t_gomodh_base">
|
|
<xs:all>
|
|
<xs:element name="realURL" type="t_net_http_basic_uri"/>
|
|
<xs:element name="releases">
|
|
<xs:complexType>
|
|
<xs:sequence minOccurs="1" maxOccurs="unbounded">
|
|
<xs:element name="release">
|
|
<xs:complexType>
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:token">
|
|
<xs:attribute name="dir" type="t_unix_dirpath" use="optional"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="baseDir" type="t_unix_dirpath" use="required"/>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<!-- VCS are also called SCM. -->
|
|
<xs:simpleType name="t_gomodh_vcs">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="bzr"/>
|
|
<xs:enumeration value="fossil"/>
|
|
<xs:enumeration value="git"/>
|
|
<xs:enumeration value="hg"/>
|
|
<xs:enumeration value="svn"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="t_gomodh_vcs_uri">
|
|
<xs:restriction base="xs:anyURI">
|
|
<!--
|
|
Some of the weird ones might be BZR.
|
|
http://doc.bazaar.canonical.com/development/en/user-reference/urlspec-help.html
|
|
-->
|
|
<xs:pattern value="(https?|bzr|aftp|bzr\+ssh|file|ftp|sftp|git|ssh|hg)://.+/?"/>
|
|
<xs:whiteSpace value="collapse"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
</xs:schema>
|