code: @Nonnull
    public PSSchema readSchema () throws SchematronReadException
    {
      // Resolve all includes as the first action
      final SAXReaderSettings aSettings = new SAXReaderSettings ().setEntityResolver (m_aEntityResolver);
  
      final IMicroDocument aDoc = SchematronHelper.getWithResolvedSchematronIncludes (m_aResource,
                                                                                      aSettings,
                                                                                      m_aErrorHandler);
      if (aDoc == null || aDoc.getDocumentElement () == null)
        throw new SchematronReadException (m_aResource,
                                           "Failed to resolve includes in Schematron resource " + m_aResource);
  
      if (SchematronDebug.isShowResolvedSourceSchematron ())
        LOGGER.info ("Resolved source Schematron:\n" + MicroWriter.getNodeAsString (aDoc));
  
      return readSchemaFromXML (aDoc.getDocumentElement ());
    }
docs: Read the schema from the resource supplied in the constructor. First all
  includes are resolved and than {@link #readSchemaFromXML(IMicroElement)} is
  called.
  
  @return The read {@link PSSchema}.
  @throws SchematronReadException
  If reading fails