I think the categories can be grouped and assigned to different properties. For example, the property "number of legs" can be 2 or 4. This allows you to present the information this way:
download bmml source – Wireframes created with Balsamiq Mockups
There are several advantages:
- a fewer number of entries / columns
- items can be easily compared and grouped, e.g. you could allow the user to sort/group the rows by certain properties
- it is easier to verify if an item is completely specified, e.g. what is the subspecies an eagle belongs to?
You can use drop down boxes to edit the cell entries.