148 weeks agoUnInventing The Data Model
Let's talk about data models of the web and data models desktop programmers use. People used to programming for the desktop implicitly depend on most data being controlled by the app. If you saved some info to some location on the disk you expect it to stay there unless you do something to it. You know when the data change and when they don't. On the web, if you depend on other people's services you have to expect downtimes, lags. You can't "know" if remote data are still the same without checking. Your own data and other's data are fundamentally the same, but still located in different places, and when you're working with other's data you're in fact working with a local copy. To make it reasonably transparent to the programmer, web offers a concept of hyperlinks, that are somewhat similar to pointers or references, with the difference that their target resources could be available or not, could be moved, cached or expired. One can't ignore that resources on the web are working that way and thus one can't ignore the concept of the hyperlink, that is understood. Otherwise there are no other fundamental differences of the web and traditional computing. The data are the same! Somehow RDF folks disagree, they don't want a data format that will mimic conventional data structures spiced with hyperlink support, they created a wholly different data model. Why? Why take such gigantic steps? Can't we just have a standardazed way of exchanging conventional data structures? XML is too relaxed, RDF is way off the map. But we have microformats, right? Well, microformats are too niche, and too restrictive and relaxed at the same time. If you want a vCard, fine, if you want to build a proprietary system that would have it's own structure, then microformats can't help you. And what use in a data format with no supporting tools? All I want is a simple XML-based data format that is a) conventional in data model and b) supports hyperlinks I don't know any other than Padabam.