dkpro-wsd
dkpro-wsd copied to clipboard
Dispense with SenseInventoryResourceBase abstraction for SenseInventory
Originally reported on Google Code with ID 44
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.
Reported by [email protected] on 2013-11-08 16:21:29