shap@eros-os.org (Jonathan S. Shapiro) wrote on 13.04.00 in <012501bfa515$5fc7f760$c9ddd23f@erosos.org>:
> My tentative belief is that all attribute types must be known to the DCMS
> user agent. That is, I don't think there is value in allowing arbitrary
> users to attach arbitrary attribute types to objects.
(1) Attributes for converters. The converter understands the attribute, the user agent itself doesn't need to.
(2) Other attributes may be a convenient way for the user to tag files with small bits of info. Just have an interface for importing and exporting those attributes, leave the rest to the user.
For example, I might want to mark files that should be handled in some special way, and have a script that searches for all files so marked. Putting the marks "on the file" (even if, for some reason, I can't put them inside) is much preferrable to making a list that *will* get out of sync.
> This is convenient, as it lends itself to internationalizing the attribute
> names more easily. The attributes themselves can simply be named by
> distinguished integers.
I seriously dislike integers. Use names. After all, atoms are a basic Scheme datatype. And they're much easier to keep from colliding.
As for internationalization, you want to localize user interfaces. You do *not* want to internationalize program interfaces. Attribute names are program interfaces.
> If so, I know how to implement it. I was just hoping not to have to. :-)
What's hard about it?
MfG Kai