| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 | 
							- <?xml version="1.0"?>
 
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
-     <xsd:element name="executable">
 
-         <xsd:complexType>
 
-             <xsd:sequence>
 
-                 <xsd:element name="category" type="xsd:string"/>
 
-                 <xsd:element name="title" type="xsd:string"/>
 
-                 <xsd:element name="description" type="xsd:string"/>
 
-                 <xsd:element name="version" type="xsd:string"/>
 
-                 <xsd:element name="documentation-url" type="xsd:string"/>
 
-                 <xsd:element name="license" type="xsd:string"/>
 
-                 <xsd:element name="contributor" type="xsd:string"/>
 
-                 <xsd:element name="parameters" type="parameters" maxOccurs="unbounded"/>
 
-             </xsd:sequence>
 
-         </xsd:complexType>
 
-     </xsd:element>
 
-     <xsd:complexType name="parameters">
 
-       <xsd:choice minOccurs="0" maxOccurs="unbounded">
 
-         <xsd:element name="label" type="xsd:string"/>
 
-         <xsd:element name="description" type="xsd:string"/>
 
-         <xsd:element name="integer" type="scalarType"/>
 
-         <xsd:element name="integer-vector" type="scalarType"/>
 
-         <xsd:element name="boolean" type="scalarType"/>
 
-         <xsd:element name="boolean-vector" type="scalarType"/>
 
-         <xsd:element name="float" type="scalarType"/>
 
-         <xsd:element name="float-vector" type="scalarType"/>
 
-         <xsd:element name="double" type="scalarType"/>
 
-         <xsd:element name="double-vector" type="scalarType"/>
 
-         <xsd:element name="string" type="paramType"/>
 
-         <xsd:element name="string-vector" type="paramType"/>
 
-         <xsd:element name="point" type="pointType"/>
 
-         <xsd:element name="point-vector" type="pointType"/>
 
-         <xsd:element name="region" type="pointType"/>
 
-         <xsd:element name="region-vector" type="pointType"/>
 
-         <xsd:element name="string-enumeration" type="enumerationType"/>
 
-         <xsd:element name="integer-enumeration" type="enumerationType"/>
 
-         <xsd:element name="float-enumeration" type="enumerationType"/>
 
-         <xsd:element name="double-enumeration" type="enumerationType"/>
 
-         <xsd:element name="file" type="indexedParamType"/>
 
-         <xsd:element name="directory" type="paramType"/>
 
-         <xsd:element name="transform" type="typedIndexParamType"/>
 
-         <xsd:element name="image" type="typedIndexParamType"/>
 
-         <xsd:element name="geometry" type="typedIndexParamType"/>
 
-         <xsd:element name="table" type="typedIndexParamType"/>
 
-         <xsd:element name="measurement" type="typedIndexParamType"/>
 
-       </xsd:choice>
 
-     </xsd:complexType>
 
-     <xsd:complexType name="paramType">    
 
-       <xsd:choice minOccurs="0" maxOccurs="unbounded">
 
-         <xsd:element name="name" type="xsd:string"/>
 
-         <xsd:element name="flag" type="flagType" />
 
-         <xsd:element name="longflag" type="flagType"/>
 
-         <xsd:element name="description" type="xsd:string"/>
 
-         <xsd:element name="label" type="xsd:string"/>
 
-         <xsd:element name="default" type="xsd:string"/>
 
-       </xsd:choice>
 
-       <xsd:attribute name="multiple" type="xsd:boolean"/>
 
-       <xsd:attribute name="hidden" type="xsd:boolean"/>
 
-     </xsd:complexType>
 
-     
 
-     <xsd:complexType name="scalarType" >
 
-       <xsd:complexContent>
 
-         <xsd:extension base="paramType">
 
-           <xsd:sequence>
 
-             <xsd:element name="constraints" type="constraintsType"  minOccurs="0" />
 
-           </xsd:sequence>
 
-         </xsd:extension>
 
-       </xsd:complexContent>
 
-     </xsd:complexType>
 
-     <xsd:complexType name="pointType" >
 
-       <xsd:complexContent>
 
-         <xsd:extension base="paramType">
 
-           <xsd:attribute name="coordinateSystem">
 
-             <xsd:simpleType>
 
-               <xsd:restriction base="xsd:string">
 
-                 <xsd:enumeration value="RAS"/>
 
-                 <xsd:enumeration value="IJK"/>
 
-               </xsd:restriction>
 
-             </xsd:simpleType>
 
-           </xsd:attribute>
 
-         </xsd:extension>
 
-       </xsd:complexContent>
 
-     </xsd:complexType>
 
-     <xsd:complexType name="enumerationType" >
 
-       <xsd:complexContent>
 
-         <xsd:extension base="paramType">
 
-           <xsd:sequence>
 
-             <xsd:element name="element" type="xsd:string"/>
 
-           </xsd:sequence>
 
-         </xsd:extension>
 
-       </xsd:complexContent>
 
-     </xsd:complexType>
 
-     <xsd:complexType name="indexedParamType" >
 
-       <xsd:all>
 
-         <xsd:element name="name" type="xsd:string"/>
 
-         <xsd:element name="label" type="xsd:string"/>
 
-         <xsd:element name="description" type="xsd:string"/>
 
-         <xsd:element name="channel" maxOccurs="1">
 
-           <xsd:simpleType>
 
-             <xsd:restriction base="xsd:string">
 
-               <xsd:enumeration value="input"/>
 
-               <xsd:enumeration value="output"/>
 
-             </xsd:restriction>
 
-           </xsd:simpleType>
 
-         </xsd:element>
 
-         <xsd:element name="index" type="xsd:nonNegativeInteger"/>
 
-       </xsd:all>
 
-       <xsd:attribute name="fileExtensions" type="xsd:string"/>
 
-     </xsd:complexType>
 
-     <xsd:complexType name="typedIndexParamType" >
 
-       <xsd:complexContent>
 
-         <xsd:extension base="indexedParamType">
 
-           <xsd:attribute name="reference" type="xsd:string"/>
 
-           <xsd:attribute name="type" type="xsd:string"/>
 
-           <xsd:attribute name="hidden" type="xsd:boolean"/>
 
-         </xsd:extension>
 
-       </xsd:complexContent>
 
-     </xsd:complexType>
 
-     
 
-     <xsd:complexType name="flagType">
 
-       <xsd:simpleContent>
 
-         <xsd:extension base="xsd:string">
 
-           <xsd:attribute name="alias" type="xsd:string"/>
 
-           <xsd:attribute name="deprecatedalias" type="xsd:string"/>
 
-         </xsd:extension>
 
-       </xsd:simpleContent>
 
-     </xsd:complexType>
 
-     
 
-     <xsd:complexType name="constraintsType">
 
-       <xsd:sequence>
 
-         <xsd:element name="minimum" type="xsd:double"/>
 
-         <xsd:element name="maximum" type="xsd:double"/>
 
-         <xsd:element name="step" type="xsd:double"/>
 
-       </xsd:sequence>
 
-     </xsd:complexType>
 
- </xsd:schema>
 
 
  |