I think the discussion omits some important considerations.
1. It is a fact of biology that animals are divided into species that
never, or almost never, overlap. It is a fact of geology that hills
are not divided into non-overlapping "species". It is a further fact
of geology that minerals are mostly but not entirely divided into
non-overlapping "species".
When there is a division into non-overlapping species, a few of the
characteristics of a species can serve to distinguish it from the
others that exist. We can often have an if-and-only-if definition
that will work for all species that exist, even if we can imagine and
maybe genetic engineering could create new species not distinguished
by the definition. In a limited domain of experience, e.g a child's
experience or even the experience of farmers working a particular
region, if-and-only-if definitions work even if they would fail when
the flora of Sumatra had to be taken into account.
Philosophers have discussed this under the heading of "natural kinds".
2. Sowa has hinted that logic likes (and maybe requires)
if-and-only-if definitions. This isn't so. We can have sufficient
conditions expressed as logical formulas for regarding something as a
rose and also necessary conditions without the two having to co-incide
into a necessary and sufficient condition. Theories based on
prototypes can also be expressed logically.
3. Biology tells us that all roses have in common important properties that
no-one has discovered yet. Geology doesn't tell us that all hills
have in common important undiscovered properties differentiating them,
on the one hand from hillocks, and on the other hand from mountains.
Moreover, there are no committees of geologists trying to formalize
these particular distinctions. There is no truth waiting to be
discovered about what distinguishes hills from hillocks.
Nevertheless, both ordinary language and geologists find these terms,
(hillock, hill, mountain) useful. You are unlikely to find a glacier
on a hillock or a hill, and you might find one on a mountain.
4. I am working on a theory of "approximate concepts" for which
if-and-only-if definitions are inappropriate, and where there isn't
even a truth of the matter to be approximated. The slogan is to build
solid logical structures on conceptual foundations of quicksand.
Example: it is definite that Mount Everest was climbed in 1953 even
though it is not well defined what rocks and ice are parts of Mount
Everest. Maybe there will be a paper soon.
5. HPKB and other projects need to tolerate loose ontologies, i.e. use
necessary conditions and sufficient conditions without supposing that
necessary and sufficient conditions are to be had.