<module>
  <depends module="util"/>
  <depends module="resolver"/>
  <depends module="catalog"/>
  <depends module="regex"/>
  <depends module="datatype"/>
  <depends module="xsd-datatype"/>
  <depends module="rng-parse"/>
  <depends module="pattern"/>
  <depends module="jaxp"/>
  <depends module="rng-jaxp"/>
  <depends module="rng-validate"/>
  <depends module="nvdl"/>
  <depends module="schematron"/>
  <depends module="xerces"/>
  <depends module="picl"/>
  <depends module="rng-jarv"/>
  <!-- the order is important, because it controls the order of the service providers;
       validate should be last because it provides fallback implementations in terms of other interfaces -->
  <depends module="validate"/>
  <jar>
    <manifest>
      <attribute name="Main-Class" value="com/thaiopensource/relaxng/util/Driver"/>
      <attribute name="Class-Path"
		 value="xercesImpl.jar xml-apis.jar saxon.jar saxon9.jar xalan.jar isorelax.jar resolver.jar"/>
    </manifest>
    <service type="com.thaiopensource.datatype.xsd.regex.RegexEngine"/>
    <service type="org.relaxng.datatype.DatatypeLibraryFactory"/>
    <service type="org.iso_relax.verifier.VerifierFactoryLoader"/>
    <service type="com.thaiopensource.validate.SchemaReaderFactory"/>
    <service type="com.thaiopensource.validate.auto.SchemaReceiverFactory"/>
  </jar>
</module>
