The database would require three tables: a records table; a hierarchical relationships mapping table; and a non-hierarchical relationships mapping table.
A potential use is a hierarchical tagging mechanism, whereby tags are not a separate class of data to the items they are tagging: they themselves are records in the main database table. A tag can be a daughter of any number of other tags.
When viewing a single record you can see its parent list, its child list, and its related list (i.e. non-hierarchical relationships). It would be possible to do queries such as: show all records that are the immediate descendants of record X and have any kind of relationship with record Y.