Kurt Cagle has an interesting piece on the term Open Standard and what, if anything, it means. Rather than a definition, I’m more interested in a shiboleth, a single test that can tell us whether source or a standard (or any other intellectual thingy) is open.
How about this: source code or a standard is open only if it can be forked against the objections of the maintainer. At first glance, this looks horrible — forking is usually considered the worst fate for a standard, a loud non-confidence vote in the maintainer — but that’s the point. Just as a true Democracy (in the modern, non-Athenian sense) allows you to throw out your government, a truly open standard or source code base allows you to throw out your maintainer. If the copyright terms, patents, or anything else prevent forking, then a standard or source code base is not open.
Sometimes a fork forces the original maintainer to get in gear. In the world of source code, XEmacs is an excellent example — while the maintainers of Emacs stubbornly refused to add anything but the most minimal support for modern GUIs, the early success of the GUI-fied XEmacs eventually forced them at least partly into the modern world, however reluctantly. Other times, a fork fixes something that is broken. In the world of standards, XML, with a more agile standards process and sharper focus (at least in the early days), forked and then completely replaced SGML. Linux is a stranger kind of fork, stealing all of the utilities that were being designed for Hurd without bothering with Hurd itself.
Like the ballot box for a politician, the fork — or even the threat of it — is what makes maintainers listen.