Ian Mayo wrote: > I'm aspiring to use atom:category elements in a number of > schemes to define a series of attributes of my data items, as > espoused at: > http://www.majordojo.com/2006/05/overloading-atomcategory.php > > I'm relatively comfortable with the representation of privacy > and security via scheme, term, and label, but am stumbling at > the challenge of representing these concepts in a schema. It > appears that XSD isn't able to define a set of valid terms > for one scheme, with another set that are only valid in > association with another scheme. > > Having had a look around at various specifications based on > Atom (including the Google data ones), they don't go as far > as defining a computer-readable schema, they stop at the > human-readable schema (as for the Atom spec). > > Would somebody mind giving me an idea of why it appears to > have become acceptable to define these data-exchange > mechanisms just using a human-readable format that can't be > enforced by computer? For a system involving the exchange of > data using an Atom-derived format, the lack of a > computer-enforceable schema seems a real handicap.
That is one reason why I recommend using atom:category only for user categorization, and extension elements for everything else. If you don't want users to add, remove, and change the categories then using atom:category will create problems because (1) there is no standard way of communicating what schemes/categories should be exposed to the end-user for editing, (2) there is no (standard) way to communicate your categorization restrictions (schema) to a client that allows the user to change the categorization, (3) even if there was such a standard schema mechanism, it is very difficult to convert that machine-readable schema into a user interface that makes sense for the user. That blog post linked to James's explanation of how his software uses atom:category, but it seems to me that his software could have used extension elements instead of categories for the application-specific metadata without any trouble. - Brian
