When DKPro WSD was originally designed, we decided to abstract sense
inventories with the interface SenseInventory. This interface provides basic
methods for accessing sense inventories, but is not itself UIMA-specific.
UIMA-specific behaviour is encapsulated in a further abstraction layer, the
SenseInventoryResourceBase class.
The idea behind this two-level abstraction is that it allows
SenseInventory-implementing classes to be used with non-UIMA applications.
However, I'm now questioning whether anyone would ever want to do this. The
two levels of abstraction result in increased complexity (and hence increased
maintenance requirements, and increased opportunities for bugs).
Perhaps in a future release of DKPro WSD we could refactor our code so that we
have only one level of abstraction rather than two. For example, there would
be no need for both a LsrSenseInventory class and a LsrSenseInventoryResource
class; all the required functionality (both UIMA-specific and UIMA-agnostic)
would be implemented in LsrSenseInventory.
Original issue reported on code.google.com by tristan.miller@nothingisreal.com on 8 Nov 2013 at 4:21
Original issue reported on code.google.com by
tristan.miller@nothingisreal.com
on 8 Nov 2013 at 4:21