Skip to content

Instantly share code, notes, and snippets.

@afternoon
Created February 13, 2012 22:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save afternoon/1821066 to your computer and use it in GitHub Desktop.
Save afternoon/1821066 to your computer and use it in GitHub Desktop.
XML Schema for Go Feeds API
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.thoughtworks-studios.com/ns/go">
<xs:element name="pipelines">
<xs:complexType>
<xs:sequence>
<xs:element ref="link"/>
<xs:element ref="pipeline"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="job">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element ref="link"/>
<xs:element ref="id"/>
<xs:element ref="pipeline"/>
<xs:element ref="stage"/>
<xs:element ref="state"/>
<xs:element ref="result"/>
<xs:element ref="properties"/>
<xs:element ref="agent"/>
<xs:element ref="artifacts"/>
<xs:element ref="resources"/>
<xs:element ref="environmentvariables"/>
</xs:sequence>
<xs:attribute name="href" type="xs:anyURI"/>
<xs:attribute name="name" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="properties">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="property"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="property">
<xs:complexType mixed="true">
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="agent">
<xs:complexType>
<xs:attribute name="uuid" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="artifacts">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="artifact"/>
</xs:sequence>
<xs:attribute name="baseUri" use="required" type="xs:anyURI"/>
<xs:attribute name="pathFromArtifactRoot" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="artifact">
<xs:complexType>
<xs:attribute name="path" use="required"/>
<xs:attribute name="type" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="resources">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="resource"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="resource" type="xs:NCName"/>
<xs:element name="environmentvariables">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="variable"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="variable">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:NCName">
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="stage">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element ref="link"/>
<xs:element ref="id"/>
<xs:element ref="pipeline"/>
<xs:element ref="updated"/>
<xs:element ref="result"/>
<xs:element ref="state"/>
<xs:element ref="approvedBy"/>
<xs:element ref="jobs"/>
</xs:sequence>
<xs:attribute name="counter" use="required" type="xs:integer"/>
<xs:attribute name="href" type="xs:anyURI"/>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="updated" type="xs:dateTime"/>
<xs:element name="approvedBy" type="xs:NCName"/>
<xs:element name="jobs">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="job"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="link">
<xs:complexType>
<xs:attribute name="href" use="required" type="xs:anyURI"/>
<xs:attribute name="rel" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="pipeline">
<xs:complexType>
<xs:attribute name="counter" type="xs:integer"/>
<xs:attribute name="href" use="required" type="xs:anyURI"/>
<xs:attribute name="label" type="xs:NMTOKEN"/>
<xs:attribute name="name" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="id" type="xs:string"/>
<xs:element name="state" type="xs:NCName"/>
<xs:element name="result" type="xs:NCName"/>
</xs:schema>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment