|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
xmlns:tns="http://www.blackperl.com/XML/ChangeLog"
|
|
Packit |
423ecb |
targetNamespace="http://www.blackperl.com/XML/ChangeLog"
|
|
Packit |
423ecb |
elementFormDefault="qualified" attributeFormDefault="unqualified"
|
|
Packit |
423ecb |
version="0.93" id="changelog0.93">
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Refer to this schema using the following namespace:
|
|
Packit |
423ecb |
http://www.blackperl.com/XML/ChangeLog
|
|
Packit |
423ecb |
-->
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
A description of an XML application which itemizes changes over the
|
|
Packit |
423ecb |
life-span of a software project. Changes are tracked by releases, with a
|
|
Packit |
423ecb |
granularity of individual items made up of files that were affected.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
<xsd:appinfo xmlns:dc="http://purl.org/dc/elements/1.1/">
|
|
Packit |
423ecb |
<dc:creator>Randy J. Ray (rjray@blackperl.com)</dc:creator>
|
|
Packit |
423ecb |
<dc:date>2004-11-22</dc:date>
|
|
Packit |
423ecb |
<dc:subject>changelog,xml,schema</dc:subject>
|
|
Packit |
423ecb |
<dc:description>
|
|
Packit |
423ecb |
An XML Schema declaration describing an XML expression of software
|
|
Packit |
423ecb |
project change-logs.
|
|
Packit |
423ecb |
</dc:description>
|
|
Packit |
423ecb |
</xsd:appinfo>
|
|
Packit |
423ecb |
<xsd:appinfo>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
Packit |
423ecb |
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
|
Packit |
423ecb |
<cc:Work rdf:about="">
|
|
Packit |
423ecb |
<dc:title>XML Schema for Changelogs</dc:title>
|
|
Packit |
423ecb |
<dc:description>
|
|
Packit |
423ecb |
An XML Schema declaration describing an XML expression of software
|
|
Packit |
423ecb |
project change-logs.
|
|
Packit |
423ecb |
</dc:description>
|
|
Packit |
423ecb |
<dc:creator>
|
|
Packit |
423ecb |
<cc:Agent>
|
|
Packit |
423ecb |
<dc:title>Randy J. Ray</dc:title>
|
|
Packit |
423ecb |
</cc:Agent>
|
|
Packit |
423ecb |
</dc:creator>
|
|
Packit |
423ecb |
<dc:rights>
|
|
Packit |
423ecb |
<cc:Agent>
|
|
Packit |
423ecb |
<dc:title>Randy J. Ray</dc:title>
|
|
Packit |
423ecb |
</cc:Agent>
|
|
Packit |
423ecb |
</dc:rights>
|
|
Packit |
423ecb |
<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
|
|
Packit |
423ecb |
<cc:license rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/" />
|
|
Packit |
423ecb |
</cc:Work>
|
|
Packit |
423ecb |
<cc:License rdf:about="http://creativecommons.org/licenses/by-sa/2.0/">
|
|
Packit |
423ecb |
<cc:permits rdf:resource="http://web.resource.org/cc/Reproduction" />
|
|
Packit |
423ecb |
<cc:permits rdf:resource="http://web.resource.org/cc/Distribution" />
|
|
Packit |
423ecb |
<cc:requires rdf:resource="http://web.resource.org/cc/Notice" />
|
|
Packit |
423ecb |
<cc:requires rdf:resource="http://web.resource.org/cc/Attribution" />
|
|
Packit |
423ecb |
<cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
|
|
Packit |
423ecb |
<cc:requires rdf:resource="http://web.resource.org/cc/ShareAlike" />
|
|
Packit |
423ecb |
</cc:License>
|
|
Packit |
423ecb |
</rdf:RDF>
|
|
Packit |
423ecb |
</xsd:appinfo>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
mixed="true">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
An open-ended container type for including version-control information
|
|
Packit |
423ecb |
at various levels within the changelog structure. This is the only
|
|
Packit |
423ecb |
type which explicitly permits content from foreign namespaces.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:sequence maxOccurs="unbounded" minOccurs="0">
|
|
Packit |
423ecb |
<xsd:any processContents="lax" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
<xsd:attribute name="source" type="xsd:anyURI" />
|
|
Packit |
423ecb |
<xsd:anyAttribute namespace="##other" processContents="lax" />
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:complexType id="descriptionType" name="descriptionType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
A description block is used to document everything from specific change
|
|
Packit |
423ecb |
items to the release as a whole.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:simpleContent>
|
|
Packit |
423ecb |
<xsd:extension base="xsd:string">
|
|
Packit |
423ecb |
<xsd:attribute default="en-US" name="lang" type="xsd:language" />
|
|
Packit |
423ecb |
</xsd:extension>
|
|
Packit |
423ecb |
</xsd:simpleContent>
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:simpleType id="versionString" name="versionString">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
The versionString type is applied to attributes that describe simple
|
|
Packit |
423ecb |
revision-number strings. It only supports CVS (RCS) styled version
|
|
Packit |
423ecb |
numbers.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:restriction base="xsd:string">
|
|
Packit |
423ecb |
<xsd:pattern value="\d+(\.\d+)*" />
|
|
Packit |
423ecb |
</xsd:restriction>
|
|
Packit |
423ecb |
</xsd:simpleType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:complexType id="fileType" name="fileType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
The fileType definition is used for the file element, a part of the
|
|
Packit |
423ecb |
itemType declaration. It is defined separately so that it can be
|
|
Packit |
423ecb |
referred to from multiple places.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:sequence maxOccurs="1" minOccurs="0">
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
minOccurs="0" maxOccurs="unbounded" />
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
<xsd:attribute name="path" type="xsd:string" use="required" />
|
|
Packit |
423ecb |
<xsd:attribute name="revision" type="tns:versionString" use="optional"/>
|
|
Packit |
423ecb |
<xsd:attribute name="author" type="xsd:NMTOKEN" use="optional" />
|
|
Packit |
423ecb |
<xsd:attribute name="action" use="optional">
|
|
Packit |
423ecb |
<xsd:simpleType>
|
|
Packit |
423ecb |
<xsd:restriction base="xsd:NMTOKEN">
|
|
Packit |
423ecb |
<xsd:enumeration value="ADD" />
|
|
Packit |
423ecb |
<xsd:enumeration value="DELETE" />
|
|
Packit |
423ecb |
<xsd:enumeration value="RESTORE" />
|
|
Packit |
423ecb |
<xsd:enumeration value="MOVE" />
|
|
Packit |
423ecb |
</xsd:restriction>
|
|
Packit |
423ecb |
</xsd:simpleType>
|
|
Packit |
423ecb |
</xsd:attribute>
|
|
Packit |
423ecb |
<xsd:attribute name="note" type="xsd:string" use="optional" />
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:element id="file" name="file" nillable="true" type="tns:fileType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
A file element contains a single block representing a fileType.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:unique name="fileDescriptionLangConstraint">
|
|
Packit |
423ecb |
<xsd:selector xpath="tns:description" />
|
|
Packit |
423ecb |
<xsd:field xpath="@lang" />
|
|
Packit |
423ecb |
</xsd:unique>
|
|
Packit |
423ecb |
</xsd:element>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:complexType id="itemType" name="itemType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
These element blocks define a single change-item within the scope of a
|
|
Packit |
423ecb |
given release. A change-item consists of one or more files that were
|
|
Packit |
423ecb |
affected, and a description of the change itself.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:sequence>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
<xsd:choice minOccurs="1" maxOccurs="1">
|
|
Packit |
423ecb |
<xsd:element ref="tns:file" />
|
|
Packit |
423ecb |
<xsd:element name="fileset" nillable="false">
|
|
Packit |
423ecb |
<xsd:complexType>
|
|
Packit |
423ecb |
<xsd:sequence>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
<xsd:element maxOccurs="unbounded" minOccurs="1" ref="tns:file" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
</xsd:element>
|
|
Packit |
423ecb |
</xsd:choice>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
minOccurs="1" maxOccurs="unbounded" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
<xsd:attribute name="id" type="xsd:ID" />
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:element id="item" name="item" nillable="false" type="tns:itemType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
An item element contains a single block representing an itemType.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:unique name="itemDescriptionLangConstraint">
|
|
Packit |
423ecb |
<xsd:selector xpath="tns:description" />
|
|
Packit |
423ecb |
<xsd:field xpath="@lang" />
|
|
Packit |
423ecb |
</xsd:unique>
|
|
Packit |
423ecb |
</xsd:element>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:complexType id="releaseType" name="releaseType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
The release is the primary piece of information that a changelog
|
|
Packit |
423ecb |
collects and organizes. A release contains an optional description,
|
|
Packit |
423ecb |
followed by one or more item blocks. The release element is also the
|
|
Packit |
423ecb |
greatest user of attributes besides the file element. A release element
|
|
Packit |
423ecb |
must have at least a "version" attribute, uniquely identifying the
|
|
Packit |
423ecb |
release itself. Additionally, it may have "tag" to associate it with
|
|
Packit |
423ecb |
a release-system tag and "date" to specify the date the release was
|
|
Packit |
423ecb |
created.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:sequence>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
minOccurs="0" maxOccurs="unbounded" />
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
<xsd:element maxOccurs="unbounded" minOccurs="1" ref="tns:item" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
<xsd:attribute name="version" type="xsd:token" use="required" />
|
|
Packit |
423ecb |
<xsd:attribute name="tag" type="xsd:NMTOKEN" />
|
|
Packit |
423ecb |
<xsd:attribute name="date" type="xsd:token" use="required" />
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:releaseType">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:unique name="releaseDescriptionLangConstraint">
|
|
Packit |
423ecb |
<xsd:selector xpath="tns:description" />
|
|
Packit |
423ecb |
<xsd:field xpath="@lang" />
|
|
Packit |
423ecb |
</xsd:unique>
|
|
Packit |
423ecb |
</xsd:element>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
<xsd:element id="changelog" name="changelog" nillable="false">
|
|
Packit |
423ecb |
<xsd:annotation>
|
|
Packit |
423ecb |
<xsd:documentation>
|
|
Packit |
423ecb |
The changelog element is intended as the document root element. It
|
|
Packit |
423ecb |
contains an overview element (identical in structure to the description
|
|
Packit |
423ecb |
element, but named differently to prevent collision in XPath queries)
|
|
Packit |
423ecb |
and one or more release blocks.
|
|
Packit |
423ecb |
</xsd:documentation>
|
|
Packit |
423ecb |
</xsd:annotation>
|
|
Packit |
423ecb |
<xsd:complexType>
|
|
Packit |
423ecb |
<xsd:sequence>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
nillable="false" type="tns:descriptionType" />
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
type="tns:informationType" nillable="true" />
|
|
Packit |
423ecb |
<xsd:element maxOccurs="unbounded" minOccurs="1" ref="tns:release" />
|
|
Packit |
423ecb |
</xsd:sequence>
|
|
Packit |
423ecb |
</xsd:complexType>
|
|
Packit |
423ecb |
<xsd:unique name="changelogDescriptionLangConstraint">
|
|
Packit |
423ecb |
<xsd:selector xpath="tns:description" />
|
|
Packit |
423ecb |
<xsd:field xpath="@lang" />
|
|
Packit |
423ecb |
</xsd:unique>
|
|
Packit |
423ecb |
</xsd:element>
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
</xsd:schema>
|
|
Packit |
423ecb |
|