[Twisted-Python] Generic hierarchy interface

Jp Calderone exarkun at meson.dyndns.org
Mon Jun 17 17:04:32 EDT 2002

Hash: SHA1

  Its time has come.  The need is pretty clear, partially for
blog/news and a lot for Reality, and I'm sure for a lot of other
things I'm not aware of.  Basically, what seems to be needed is an
interface that allows for a protocol-defined hierarchy to
protocol-specific data, organised based on protocol-specific meta-data.

  For example, consider email.  The protocol-specific hierarchy describes
message threads (which you are all hopefully familiar with).  The
meta-data is a portion of the xheaders ("References" and "In-Reply-To" in
particular), and the data is the message body.

  The email implementation for this hierarchy interface would then need to
parse headers and xheaders to determine the relationship, and make the
appropriate messages available this available at the appropriate places.

  The appropriate places.  There seem to be three basic relationships that
are of interest: parent, child, and sibling.  Accessor methods for these
should be straightforward enough, and implementions would need to provide
the details for each protocol of extracting them from the meta-data
available.  The other type of access would be absolute and relative "path"
access.  For example, "news://a.server.name/a.group.name/a.message.id".
A Reality example: "reality://server/Sol/Earth/Kansas/Smallville/Clark_Kent"
In this case, each level of depth would only need to implement a standard
accessor interface to allow whatever it may contain to be accessable.

I'm a little out of my element, so I hope this has been at least
somewhat coherent ;)   Anyone have comments, or notice and horrible flaws,
or just see a plain better way to go about it?


- --
"One World, one Web, one Program." - Microsoft(R) promotional ad
"Ein Volk, ein Reich, ein Fuhrer." - Adolf Hitler
- --
 4:20pm up 27 days, 17:02, 5 users, load average: 0.00, 0.00, 0.00
Version: GnuPG v1.0.7 (GNU/Linux)


More information about the Twisted-Python mailing list