Outdated documentation
This looks like a very nice project with lots of effort put into it. I really appreciate that.
However the documentation is severely lacking. There is no usable Getting Started guide, the ones I found were for an outdated version (1.6.2 vs current 1.8.0) and things did not work, e.g TextReader did not have any of the PARAM_* properties, I even tried to look up the file in the source code and see its history, but it doesn't have any (presumably because it was recently moved).
I really like the detail and crosslinks inside the Reference Guide, however some code samples would come in handy.
It also seems to me that individual components are very hard to use outside of a narrow "pipeline" semantics presented in the examples. E.g. I just wanted to create a very simple example with Stanford POS like this one but after 2 hours I gave up.
This seems like such a nice project, please don't let it go to waste by underestimating the value of documentation. New users do not want to have to figure out complex class hierarchies, they want to be productive quickly.
Thanks for the feedback. Well, documentation is always a hard thing to do and in particular to keep up-to-date. There have been some efforts on backing the documentation on actual source code from the project - I think there are a few such sections in the user guide and/or developer guide. This is good because the respective examples are then never outdated (although the documentation text around it may be). The example code on the website is locked to a specific version though because we have no resources to update them all the time (volunteers welcome ;) )
Have you seen our separate examples project? https://github.com/dkpro/dkpro-core-examples
The TextReader has the PARAM_* constants since basically forever. I don't know why you came to the conclusion they are missing. Most of them are probable inherited from its base class, but they should appear when you hit auto-complete in your IDE.
UIMA is geared towards the pipeline concept, yes. But we have some Groovy-based examples (close enough to Java) that also illustrate other ways, e.g. https://dkpro.github.io/dkpro-core/groovy/recipes/treetagger-postag-no-reader-access-direct/
We do not have an interface as simple as the Simple CoreNLP. A basic Stanford POS example would look more-or-less like this:
JCas doc = JCasFactory.createJCas();
doc.setDocumentText("Lucy is in the sky with diamonds.");
doc.setDocumentLanguage("en");
AnalysisEngineFactory.createEngine(StanfordSegmenter.class).process(doc);
AnalysisEngineFactory.createEngine(StanfordPosTagger.class).process(doc);
Collection<POS> pos = JCasUtil.select(doc, POS.class);
Adding to the many correct things @reckart has already set: we do have something that tries to simplify usage called DKPro Toolbox: https://github.com/dkpro/dkpro-toolbox