[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extension mechanism



Here are some other facets I see surrounding extension mechanisms,
with my preferences stated below:

  "Wrapping" or "boxing" extensions
    Extension modules define a wrapper element, properties of the
    extension appear as children of the extension.

  Entities and Properties
    Certain elements are identified as "entities" (as in
    "entity-relationship model" for RDBs or as classes in OO or RDF).
    Direct child elements of those entities are either properties or
    other entities.  Entities and properties are fully qualified,
    either in the core Atom namespace or an extension namespace.

  Display unknown entities/properties by default
  Don't display unknown entities/properties by default
    This relates to how one "ignores what they don't understand."  In
    HTML <body>, unknown elements are treated as if the element tags
    didn't exist -- their content is displayed by default.


My preference is for "Entities and Properties" and "Don't display
unknown entities/properties by default."  The latter is somewhat in
perspective of the former: if these are like columns in a table (where
everybody can add their own columns), it doesn't make sense to
arbitrarily display every column value.  Instead, display well-known
columns, columns the user asks for, and columns where another
extension column flags that they should be displayed (ie. by providing
a stylesheet).

  -- Ken