1. The name of the feature should be generalized to refer to "external" change events rather than "database" change events. Notification may be coming from an external system via, say JMS, which knows that certain data has been modified (maybe by itself). The database is only one source of external notification.
2. Secondary tables, join tables, etc. can be supported through examination of the descriptors. I have done this myself with secondary table.
3. The Oracle database "DCN" feature has been renamed "QCN": Query Change Notification. I'm not sure in what release of Oracle DB this renaming took place.
4. This feature focuses on invalidation while it may be the case that the updated data for an object(s) is part of the change event. When available, it should be possible to update the cache with the new data rather than invalidate.