I hope it is helpful to see how Domino addresses the users "wish list".
I'll describe how Domino has met the challenges and how other solutions have problems.
The following gives a brief overview of the "solution". You will find more detailed information throughout the site.

No limit to the type of information stored:
The architecture of the traditional database centers on records or differing types. ( Company record , Employee record etc.)
Each record holds information about one entity. This information is stored in fields and each field is designed to be of a specified type ( text, numeric, date etc). ( A SQL or Access database follows this architecture)
Users are very limited in the choice of information stored. Any addition to the database requires development effort to design, implement and test record layout changes.
This type of development platform works well in situations where database designers want control over what a user can and can not do. In a financial package, it is probably just as well that a user cannot store a graphic image in an account balance field.
However, in a system designed for collaboration and the free flow of ideas, traditional record layouts can be overly restrictive.
The Notes Solution: Lotus Notes has no concept of "record type" or "record layout" !
Any document, ( the Notes equivalent of a record ), can contain any number of items, of any type. New items may be added to documents at any time without compromising the integrity of the database.
In addition to the basic data types: string, number, date etc., a document may contain any number of "rich text items".
Rich text items may hold any type of information whatsoever, including application files, attachments, embedded objects etc.
This flexibility, built into the Notes database at the lowest level, allows Domino to implement some incredibly powerful functionality.

No Limit to how information is manipulated:
Any information stored in a Notes document may be cut and pasted from one database document to another.
Links, attachments, embedded objects may be moved. All these items are accessible from code. Since the design elements used in a database are stored in the database itself, they too may be cut and pasted with ease. This makes development extremely rapid. Forms, views, buttons, code etc may be copied from one database to another and, in many cases, they work without any modification.

Related information should be stored together (Encapsulation).
Users want the flexibility of storing any type of information in the database. At the same time they want to ensure that all relevant information is kept together. If a user wants to create a new copy of an existing database ( with or without the data that is currently stored in it ), then the process should be straight forward. There should be no concern that a critical DLL is being forgotten, or that an index file is being missed.
Lotus Notes addresses this concern by storing all related data in a single file. In Notes this is
the NSF file ( Notes Storage Facility). Notes goes one step further by storing the complete design of the database in the database.

Collaboration: Users want to collaborate on their projects.
Users want to work together on a project. In traditional systems, users may access shared documents but only at different times. Were they to access a document at the same time, the system would normally disallow one of the new document updates to be saved. Similarly, when two users access a single record in a database at the same time, one record update is stored while the other is rejected. One method to avoid this is record locking, in which a record is locked and unavailable while the update takes place.
Lotus Notes can handle simultaneous updates to a single document. The updates are merged together. Even when the same field is simultaneously updated by two users, Notes keeps copies of both updates so that the a database administrator at a later time can determine which update should be saved.

Users want to work anywhere, anytime:
Client-Server solutions often require the user to be connected to the server at all times. This can be problematic when the user is travelling. Finding a telephone can be difficult or impossible. The ideal solution is to be able to work using a stand alone machine, disconnected from the master database. In the past, even when such a solution has existed, the result has not been ideal. Working off-line has usually meant that only a reduced functionality is available. Changes made while the user is disconnected have led to problems when he or she reconnects to the network. Lotus Notes allows users to work on their databases while disconnected. In most cases the full functionality of the database is still available. More importantly, when the user resynchronizes with the master database, no updates are lost. This is because of Notes replication, discussed below.

When ready, users want their work to be synchronized with other users:
Changes made to a database on a stand alone machine ( such as a lap top ) should be easily synchronized with other copies when required. Although easily stated, this requirement raises an unbelievable number of issues. Lotus Notes competitive advantage rests squarely on its ability to resolve these synchronization issues. Lotus Notes employs a very sophisticated replication process. Microsoft claims that it implements "Replication" but in comparison its process is years behind Notes. Some of the questions that replication must address:
How do we determine which documents in a database are replicated to each user ?
If a user has deleted documents, should these documents be deleted in all database copies ?
Should this user be able to Add new documents; Edit other people's documents; Edit his own documents ?
Should the user see all the fields on this document ? How about editing this or that field ?
If two users edit the same field, whose changes take precedence ?
If there are many copies of the database, on many servers, how do we determine which copy replicates with which ?
If the users access level to the database has changed, how is that knowledge replicated to other copies ?

This list of questions goes on and on. Lotus Notes has been addressing these issues for many, many years.
Other products, which claim that they, too, have "replication", simply do not understand the issues.

Security: Users want to protect their information.
Security was mentioned above as an issue when replication takes place.
When a user accesses a database, how do we ensure that they only see what they should see.
What about cases where their security level changes.
Maybe one week in every month they are the facilitator for a meeting. Do we need to continually change their personal access rights ? Lotus Notes has very sophisticated security built into it. Down to the field level users are granted create, read, update delete rights. Sections of documents may be visible, or not, based on dynamic criteria. Developers can set up arbitrary roles for Databases and assign security levels to these roles ( i.e. Administrator, Facilitator etc.) Users and\or Groups of users may be assigned roles with the click of the mouse.
Lotus Notes security is second to none.

Internet Access:
It can be argued that the Internet enabling of Lotus Notes was (obviously) not built in from the beginning.
However, Lotus realized early on that the Notes architecture could very easily be modified to serve up content to the web.
You may have noticed that
Notes is unique because of its database architecture and its "back end" processing. We have not mentioned the Notes interface at all. The truth is that the front-end choice is unrestricted. Lotus Notes historically used the Notes client as its graphical interface. However, there is no inherent reason why the Lotus Notes back-end should not serve up content to other front ends. Realizing this, Lotus added the ability for the Notes Server to generate HTML code and named this functionality "Domino". Users liked that name so much that Lotus decided to rename its server product "Domino". The Domino server is a fully functional web server ( in addition to being a "Notes server").

Communication: Users want to be in communication with each other.
Notes is far far more that a simple Email system. Any study that attempts to compare the price of Notes to the price of other email systems simply does not understand the true nature of Lotus Notes.
Comparing Lotus Notes to an email system is similar to comparing an Ocean going liner to a row boat because they can both transport objects across a body of water.
That having been said, the ability to send email has been recognized as an integral part of any collaborative system. For this reason, Lotus has been improving the email capability of Notes.
It seems to me that Lotus has given up its efforts to distinguish Notes from simple "email" systems and is trying to sell Notes as an email product. In my estimation this is a grave error. They are choosing to play someone else's game.

I will be expanding this section as time allows.

The above page outlines how Lotus Notes addresses the issues.
The next step is to describe in more detail how the architecture of Lotus Notes has been developed to support this functionality.

I suggest, if you are following these links, that you now read The Notes Tutorial page.