class ParserConfiguration {

	public KnowledgeBase parseDirectiveStatement(String name, List<Argument> arguments,
			SubParserFactory subParserFactory) throws ParsingException {
		final DirectiveHandler<KnowledgeBase> handler = this.directives.get(name);

		if (handler == null) {
			throw new ParsingException("Directive \"" + name + "\" is not known.");
		}

		return handler.handleDirective(arguments, subParserFactory);
	}

	public  ParserConfiguration();
	public  ParserConfiguration(ParserConfiguration other);

}