With something like SQLite, I think it's fine to take a super mature platform and retroactively extract a specification from it (while 99% of the people just keep the original implementation), than to start with a crap spec and try to make it mature.
IndexDB set the state of offline storage back, meanwhile Android and iOS developers are using SQLite or equivalents.