If you need a system which can fulfil very out of the way requirements you might consider to turn to Drupal.
Drupal is not for the faint-hearted nor for the one who is out for quick success. Drupal teaches you to take each learning step separately until you fully understand the concept behind it.
Once you grasp it you will love it because then everything is built up logically. But it takes quite a time to get there ;(((
Systems we have built on Drupal:
- Bilingual operation English/Arabic
- Extensive Database Search Options including Google(TM) Custom Search
- Extensive Tagging and Taxonomy options including persons, locations and glossary
- and many others