On 11/23/11 2:56 PM, Aliaksandr Autayeu wrote:
Again, it's not a separate project. It's a new module within existing
project. CLI is not part of the library. CLI uses the library. CLI is part
of the project. This should be reflected properly.

Exactly. I used the term sub-project to refer to the discussed module opennlp-cli.

Conceptually they are separate, in terms of dependencies they are separate.
To me that's enough to separate.


That is true for all our components. Someone use only the name finder, then he
don't needs the parser.

Lets say for a moment we do it as proposed.
Then we break with our current separation strategy which relies on java packages.
Why should we break with this for only the cli stuff?
Wouldn't that be an inconsistent decision?

I think it is important to see how this fits into our project layout and what we think
how it should be.

Currently our code lives in three modules, maxent, tools and uima.
The maxent and tools module could be merged into one, but not uima because
we don't want to pull in dependencies for users of the toolkit.

Current structure:
opennlp-maxent
opennlp-tools
opennlp-uima

Only java package separation, modules
only for strong reasons:
opennlp-tools (contains ml code also)
opennlp-uima

Or as proposed:
opennlp-maxent
opennlp-tools
opennlp-cli (depends on the former)
opennlp-uima

With the same arguments to create the cli module
we could end up with something like this:
opennlp-maxent
opennlp-tokenizer
opennlp-sentdetect
opennlp-namefind
opennlp-parser
...

Jörn

Reply via email to