Specification

This is a working document (or rather a placeholder document) that attempts to define the UnixObjects architecture in a more formal manner. This is somewhat difficult because the architecture has already existed for five years (2003–2008) and no attempt to formalize it has ever been done. In particular, the distinction between mandatory requirements and recommended practices has never been worked out. Interoperability is key, however, so an attempt will be made. Right now, though, this is just a place to jot down quick notes in preparation for writing a proper spec at a later date. Comments are welcome!

Mandatory requirements

Pathname resolution and method execution, if implemented, must follow Orgone's @ command exactly. (See man page (PDF))

A distributed software package must install in its entirety under /org/vendortag/.

Recommended practices

t.b.a.

Suggested conventions

Vendor controls name space under /org/vendortag/. However, these subdirectory names are suggested to aid in discovery:

/org/vendortag/bin/ global commands
/org/vendortag/proto/ prototypes
/org/vendortag/shared/ traits objects
/org/vendortag/types/ type root
/org/vendortag/styles/ CSS styles
/org/vendortag/private/ vendor private files (not to be referred from outside /org/vendortag/)

References

t.b.a.