Based on inflection of English nouns. Methods for transforming a string (representing an english word) between it's singular and plural forms. It's a little weird perhaps, but potentially could be a powerful tool, the main question is where to use it.
Basic implementation (Java 1.4):
Idiomatic collection patterns (eg: a singular 'Page' will always map to a collection 'Pages', or a 'Notes' collection will always be a set of 'Note' objects). But developers shouldn't have to specifically code or configure each variant, so no need to explicitly link classes together (eg: mapping code should "know" that 'Page' is a singular instance of 'Pages').
Associations - two ways of looking at them? The 'degrees' or precise structure, in which classes are connected (eg: 0..1... 1...*), OR predicates for joining entities in a model (eg: belongs_to, has_many, is_a)... Are these two views really just the same thing? Question is how closely predicates actually map to the underlying program. Is it just a convenient shorthand for modelling, or actually directly implemented in the programming language.
Use of the Inflector.singularize()/Inflector?.pluralize() method pair obviously has a great deal of utility for code generation. But what is the potential for the inflector to be used at run-time, combined with dynamic reflection?
What are the arguments against pluralization?
What is the relationship of PluralizationMapping to Reversibility?