@Nonnull
  @OverrideOnDemand
  public PSSchema createPreprocessedSchema (@Nonnull final PSSchema aSchema,
                                            @Nonnull final IPSQueryBinding aQueryBinding) throws SchematronException
  {
    final PSPreprocessor aPreprocessor = createPreprocessor (aQueryBinding);
    final PSSchema aPreprocessedSchema = aPreprocessor.getAsPreprocessedSchema (aSchema);
    if (aPreprocessedSchema == null)
      throw new SchematronPreprocessException ("Failed to preprocess schema " +
                                               aSchema +
                                               " with query binding " +
                                               aQueryBinding);
    if (SchematronDebug.isShowPreprocessedSchematron ())
      LOGGER.info ("Preprocessed Schematron:\n" +
                      MicroWriter.getNodeAsString (aPreprocessedSchema.getAsMicroElement ()));
    return aPreprocessedSchema;
  }
@Nonnull
  @OverrideOnDemand
  public PSSchema createPreprocessedSchema (@Nonnull final PSSchema aSchema,
                                            @Nonnull final IPSQueryBinding aQueryBinding) throws SchematronException
  {
    final PSPreprocessor aPreprocessor = createPreprocessor (aQueryBinding);
    final PSSchema aPreprocessedSchema = aPreprocessor.getAsPreprocessedSchema (aSchema);
    if (aPreprocessedSchema == null)
      throw new SchematronPreprocessException ("Failed to preprocess schema " +
                                               aSchema +
                                               " with query binding " +
                                               aQueryBinding);
    if (SchematronDebug.isShowPreprocessedSchematron ())
      LOGGER.info ("Preprocessed Schematron:\n" +
                      MicroWriter.getNodeAsString (aPreprocessedSchema.getAsMicroElement ()));
    return aPreprocessedSchema;
  }
@ Nonnull @ OverrideOnDemand public PSSchema createPreprocessedSchema ( @ Nonnull final PSSchema aSchema , @ Nonnull final IPSQueryBinding aQueryBinding ) throws SchematronException { final PSPreprocessor aPreprocessor = createPreprocessor ( aQueryBinding ) ; final PSSchema aPreprocessedSchema = aPreprocessor . getAsPreprocessedSchema ( aSchema ) ; if ( aPreprocessedSchema == null ) throw new SchematronPreprocessException ( "Failed to preprocess schema " + aSchema + " with query binding " + aQueryBinding ) ; if ( SchematronDebug . isShowPreprocessedSchematron ( ) ) LOGGER . info ( "Preprocessed Schematron:\n" + MicroWriter . getNodeAsString ( aPreprocessedSchema . getAsMicroElement ( ) ) ) ; return aPreprocessedSchema ; }
Pre-process the read schema, using the determined query binding.

@param aSchema
The read schema. Never <code>null</code>.
@param aQueryBinding
The determined query binding. Never <code>null</code>.
@return The pre-processed schema and never <code>null</code>.
@throws SchematronException
In case pre-processing fails
Pre - process the read schema using the determined query binding .