BeOS provided fast extended attributes on files, and optional kernel-maintained indexes on them. It has taken some time, but ext4 and other modern linux filesystems provide reasonable performance on ext attrs. The in-kernel indexer was nifty, but somewhat inflexible.
They also provided conventions for the names and formats of commonly used attributes. For example, the "length" attribute of audio files should be an integer number of seconds, not a string or a floating point number of minutes. I think that this was the most important aspect of making the feature usable on the desktop.
The combination of inotify/tracker (or nepomuk) could do all the same cool things (live queries etc), if people could agree to all use it the same way. Having one clearly defined api to support made it a no-brainer for 3rd party application developers.
The Be community was small enough that converging on a single standard wasn't difficult. The Be weekly newsletter would announce a convention, Be would release first-party apps that supported/expected it, and... done. 3rd party developers either got with the program, or users scorned them.
I turned off the indexer support on my gnome desktop once it became clear that the Nautilus developers were not interested in providing integration with it. Hope the KDE project does better.