Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
xml
xml
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd<!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Matthew Langston (private) -->
<xs:schema
	xmlns:xs="http://www.w3.org/2001/XMLSchema" version
	targetNamespace="0.0.2">
	<xsd:element name="pipeline">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="base-path" type="xsd:stringhttp://glast-ground.slac.stanford.edu/pipeline"
	xmlns="http://glast-ground.slac.stanford.edu/pipeline"
	elementFormDefault="qualified"
	version="0.0.2">

	<xs:element name="pipeline">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="name" type="TaskNameType"/>
				<xs:element name="type" type="TaskType"/>
				<xs:element name="base-path" type="BasePathType"/>
				<xs:element name="run-log-path" type="RunLogPathType"/>
				<xs:element ref="executable" maxOccurs="unbounded"/>
				<xs:element ref="batch-job-configuration" maxOccurs="unbounded"/>
				<xs:element ref="file" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="processing-step" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	
	<xs:simpleType name="TaskNameType">
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="30"/>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="TaskType">
		<xs:restriction base="xs:NMTOKEN">
			<xs:enumeration value="SimReconDigi"/>
				<xsd<xs:elementenumeration namevalue="run-log-path" type="xsd:stringtest"/>
			<xs:enumeration value="Analysis"/>
				<xsd<xs:elementenumeration refvalue="executable" maxOccurs="unboundedReconstruction"/>
			<xs:enumeration value="Digitization"/>
				<xsd<xs:element ref="batch-job-configuration" maxOccursenumeration value="unboundedReport"/>
				<xsd<xs:elementenumeration refvalue="file" minOccurs="0" maxOccurs="unboundedSystemTest"/>
			<xs:enumeration value="Simulation"/>
			<xs:enumeration value="Reprocessing"/>
				<xsd<xs:elementenumeration refvalue="processing-step" maxOccurs="unbounded"Conversion"/>
		</xs:restriction>
	</xsdxs:sequence>simpleType>
		
	<xsd<xs:attributesimpleType name="name" typeBasePathType">
		<xs:restriction base="xsdxs:string" use>
			<xs:minLength value="required0"/>
			<xsd<xs:attributemaxLength namevalue="type" use="required"200"/>
		</xs:restriction>
	</xs:simpleType>
		<xsd:simpleType>
	<xs:simpleType name="RunLogPathType">
					<xsd<xs:restriction base="xsdxs:NMTOKENstring">
			<xs:minLength value="1"/>
			<xsd<xs:enumerationmaxLength value="SimReconDigi200"/>
		</xs:restriction>
	</xs:simpleType>
	

		<xsd:enumeration value="test"/<!-- Application -->
	<xs:element name="executable" nillable="false">
		<xs:complexType>
			<xs:simpleContent>
			<xsd	<xs:enumerationextension valuebase="AnalysisExecutablePathType"/>
						<xsd:enumeration value="Reconstruction<xs:attribute name="name" type="ExecutableNameType" use="required"/>
						<xsd:enumeration value="Digitization<xs:attribute name="version" type="ExecutableVersionType" use="required"/>
				</xs:extension>
		<xsd:enumeration value="Report"/>	</xs:simpleContent>
		</xs:complexType>
				<xsd:enumeration value="SystemTest"/</xs:element>

	<xs:simpleType name="ExecutablePathType">
						<xsd:enumeration value="Simulation"/>
			<xs:restriction base="xs:string">
			<xsd<xs:enumerationminLength value="Reprocessing1"/>
						<xsd:enumeration<xs:maxLength value="Conversion200"/>
					</xsdxs:restriction>
				</xsdxs:simpleType>
	
		</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="executable">
		<xsd:complexType>
			<xsd:simpleContent>
				<xsd:extension base="xsd:string">
					<xsd:attribute name="name" type="xsd:string" use="required"/>
					<xsd:attribute name="version" type="xsd:string" use="required"/>
				</xsd:extension>
			</xsd:simpleContent>
		</xsd:complexType>
	</xsd:element>
	<xsd<xs:simpleType name="ExecutableNameType">
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="ExecutableVersionType">
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>
	

	<!-- JobConfiguration-->
	<xs:element name="batch-job-configuration">
		<xsd<xs:complexType>
			<xsd<xs:sequence>
				<xsd<xs:element name="working-directory" type="xsd:stringWorkingDirectoryType"/>
				<xsd<xs:element name="log-file-path" type="xsd:stringLogFilePathType"/>
			</xsdxs:sequence>
			<xsd<xs:attribute name="name" type="xsdxs:string" use="required"/>
			<xsd<xs:attribute name="queue" type="BatchQueue" use="required"/>
		</xs:complexType>
		<xsd:simpleType>
					<xsd:restriction base="xsd:NMTOKEN"</xs:element>

	<xs:simpleType name="WorkingDirectoryType">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
						<xsd:enumeration<xs:maxLength value="long200"/>
		</xs:restriction>
	</xs:simpleType>
	
		<xsd<xs:enumerationsimpleType valuename="shortLogFilePathType"/>
		<xs:restriction base="xs:string">
				<xsd<xs:enumerationminLength value="xlong1"/>
						<xsd<xs:enumerationmaxLength value="medium200"/>
					</xsdxs:restriction>
				</xsdxs:simpleType>
			</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="file">
		<xsd:complexType><xs:simpleType name="BatchQueue">
		<xs:restriction base="xs:NMTOKEN">
			<xs:enumeration value="long"/>
			<xsd:simpleContent><xs:enumeration value="short"/>
				<xsd<xs:extensionenumeration basevalue="xsd:stringxlong"/>
					<xsd<xs:attributeenumeration namevalue="name" type="xsd:string" use="required"/>
					<xsd:attribute name="type" use="requiredmedium"/>
		</xs:restriction>
	</xs:simpleType>

	<!-- Dataset -->
	<xs:element name="file">
		<xs:complexType>
				<xsd<xs:simpleType>simpleContent>
							<xsd:restriction<xs:extension base="xsdxs:NMTOKENstring">
								<xsd:enumeration value="MC<xs:attribute name="name" type="DatasetNameType" use="required"/>
								<xsd:enumeration value="Analysis<xs:attribute name="type" type="DatasetType" use="required"/>
								<xsd:enumeration value="text<xs:attribute name="file-type" type="DatasetFileType" use="required"/>
								<xsd:enumeration value="LDF"/></xs:extension>
			</xs:simpleContent>
		</xs:complexType>
			<xsd:enumeration value="DIGI"/</xs:element>

	<xs:simpleType name="DatasetNameType">
								<xsd:enumeration value="RAW"/<xs:restriction base="xs:string">
								<xsd:enumeration<xs:minLength value="rcReport1"/>
								<xsd:enumeration<xs:maxLength value="merit30"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="DatasetType">
				<xsd<xs:enumerationrestriction valuebase="svacxs:NMTOKEN"/>
								<xsd<xs:enumeration value="histogramMC"/>
								<xsd<xs:enumeration value="scriptAnalysis"/>
								<xsd<xs:enumeration value="logtext"/>
								<xsd<xs:enumeration value="ntupleLDF"/>
								<xsd<xs:enumeration value="treeDIGI"/>
								<xsd<xs:enumeration value="RECONRAW"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:attribute><xs:enumeration value="rcReport"/>
					<xsd<xs:attributeenumeration namevalue="file-type" use="required"merit"/>
			<xs:enumeration value="svac"/>
			<xs:enumeration value="histogram"/>
			<xsd:simpleType><xs:enumeration value="script"/>
							<xsd:restriction base="xsd:NMTOKEN"<xs:enumeration value="log"/>
								<xsd<xs:enumeration value="jobOptntuple"/>
								<xsd<xs:enumeration value="roottree"/>
								<xsd<xs:enumeration value="txtRECON"/>
		</xs:restriction>
	</xs:simpleType>
	
				<xsd:enumeration value<xs:simpleType name="fitsDatasetFileType"/>
			<xs:restriction base="xs:NMTOKEN">
					<xsd<xs:enumeration value="pljobOpt"/>
								<xsd<xs:enumeration value="cshroot"/>
								<xsd<xs:enumeration value="tgztxt"/>
								<xsd<xs:enumeration value="xmlfits"/>
								<xsd<xs:enumeration value="shpl"/>
								<xsd<xs:enumeration value="tarcsh"/>
								<xsd<xs:enumeration value="gztgz"/>
			>
					<xsd<xs:enumeration value="tar.gzxml"/>
								<xsd<xs:enumeration value="pdfsh"/>
								<xsd<xs:enumeration value="pstar"/>
								<xsd<xs:enumeration value="htmgz"/>
								<xsd<xs:enumeration value="textar.gz"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:attribute>
				</xsd:extension>
			</xsd:simpleContent><xs:enumeration value="pdf"/>
			<xs:enumeration value="ps"/>
			<xs:enumeration value="htm"/>
			<xs:enumeration value="tex"/>
		</xsdxs:complexType>restriction>
	</xsdxs:element>simpleType>

	<xsd<xs:element name="processing-step">
		<xsd<xs:complexType>
			<xsd<xs:sequence>
			
	<xsd			<xs:element name="input-file" minOccurs="0" maxOccurs="unbounded">
					<xsd<xs:complexType>
						<xsd<xs:attribute name="name" type="xsdxs:string" use="required"/>
					</xsdxs:complexType>
				</xsdxs:element>
				
				<xsd<xs:element name="output-file" minOccurs="0" maxOccurs="unbounded">
					<xsd<xs:complexType>
						<xsd<xs:attribute name="name" type="xsdxs:string" use="required"/>
					</xsdxs:complexType>
				</xsdxs:element>
				
			</xsdxs:sequence>
			<xsd<xs:attribute name="name" type="xsdxs:string" use="required"/>
			<xsd<xs:attribute name="executable" type="xsdxs:string" use="required"/>
			<xsd<xs:attribute name="batch-job-configuration" type="xsdxs:string" use="required"/>
			
		</xsdxs:complexType>
	</xsdxs:element>
</xsdxs:schema>