<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
targetNamespace="nz.ac.aut.scrumcity"
xmlns:sc="nz.ac.aut.scrumcity"
elementFormDefault="qualified"
>

    <complexType name="ChangeRequestType">
    	<sequence>
    		<element name="Title" type="string" maxOccurs="1"
    		         minOccurs="1">
    		</element>
    		<element name="RequestedBy" type="string" maxOccurs="1" 
    		         minOccurs="1"></element>
    		<element name="Description" type="string" maxOccurs="1"
    		         minOccurs="1"></element>
    		<element name="Date" type="dateTime" maxOccurs="1"
    		         minOccurs="1"></element>
    	</sequence>
    </complexType>

 <element name="SysArtifactDoc">
   <complexType>
    <sequence>
    <element name="ArtifactDoc" maxOccurs="unbounded" minOccurs="1">
    	<complexType>
    		<sequence>
    			<element name="Author" type="string" maxOccurs="1"
    			         minOccurs="0">
    				<annotation>
    					<documentation>
    					 Name of the system artifact author
    					</documentation>
    				</annotation></element>
    			<element name="Title" type="string" maxOccurs="1"
    				minOccurs="1">
                    <annotation>
                    	<documentation>
                    	Name of the system artifact, i.e. 
                    	package, class, or method name.
                    	</documentation>
                    </annotation>
    			</element>
    			<element name="ArtifactQName" type="string"
    				maxOccurs="1" minOccurs="1">
    				<annotation>
    					<documentation>
    					A unique fully qualified name of this 
    					artifact. 
    					Example: 'com.package.class.method'
    					</documentation>
    				</annotation>
    			</element>
    			<element name="ShortDesc" type="string" 
    			         maxOccurs="1" minOccurs="1">
    				<annotation>
    					<documentation>
    					 A short (preferably less than 50 words) 
    					 description of the purpose of this 
    					 artifact.
    					</documentation>
    				</annotation>
    			</element>
    			<element name="Documentation" type="string" 
    			         maxOccurs="1" minOccurs="0">
    				<annotation>
    					<documentation>
    					An elaborated description of this
    					artifact
    				    </documentation>
    				</annotation></element>
    			<element name="DeveloperNotes" type="string" 
    			         maxOccurs="1" minOccurs="0">
    				<annotation>
    					<documentation>
    					 Notes to guide developers who might 
    					 need to modify/maintain this artifact
    					 </documentation>
    				</annotation></element>
    			<element name="UsageNotes" type="string"
    			         maxOccurs="1" minOccurs="0">
    				<annotation>
    					<documentation>
    					Concise comment or example on how 
    					this artifact can be used
    					</documentation>
    				</annotation></element>
    			<element name="Date" type="dateTime">
    				<annotation>
    					<documentation>
    					The date when the system artifact 
    					was first created.
    					</documentation>
    				</annotation></element>
    			 <element name="ChangeRequests" maxOccurs="1"
    			          minOccurs="0">
                    <annotation>
                    	<documentation>
                    	Any change requests for this artifact.
                    	</documentation>
                    </annotation>
                    <complexType>
    			 		<sequence>
    			 		<element name ="ChangeRequest" 
    			 		type="sc:ChangeRequestType" minOccurs="1"
    			 		 maxOccurs="unbounded"></element>
    			  		</sequence>
    			 	</complexType>
    			 </element>
    		</sequence>
    	</complexType>
    </element>
    </sequence>
    </complexType> 
  </element>
</schema>
