Jeff Walter <jeffinmotion <at> gmail.com> writes:

> 
> Hey All,Little philosophical/architectural question here...


Hello

Interesting question; I'll try to provide a possible answer by sketching the way
I build my application. 

Basically I've a rich client application (Flex) accessing (create, modify, view)
various resources on the server. These resources are exactly all the "objects"
that can be manipulated within the application. I considered each resource as
being kind of a "virtual web page", with one URI and  one (or several if
required) "layouts" (representations). The application accesses the  required
resources, and assembles them for display. 

To be a little more specific, my resources' representation currently  rely on
atom (which is indeed a generic resource format, blogs being only a specific and
restrained use; other formats may be used, rss, custom xml, etc): when the
client GETs a resource, it receives an atom feed, and it applies to it a display
template, corresponding to the way that resource's representation should be
presented to the user in the current context of the application (eg the
application is made of interacting zones, each one displaying a template
populated by a resource's representation). 

An important point is that each resource includes links to all other resources
it is logically linked to: the client has absolutly NO knowledge of the links
between resources, it virtually navigates between them as needed. If A is linked
to A and B, when the client accesses A it receives its representation, including
a link to B and a link to C; then if the client wants to access B it uses that
link (equivalent to a human "clicking" on a link). The navigation logic (links)
is part of the resources (=controller), each resource is published to the
application/browser using a representation format, the application/browser
aggregates a meaningful and "pretty" display of several resources 
representation.

Example: think of iTunes. Your songs and playlist are resources, as well as
authors, music types, albums, etc, all linked together. iTMS online content is
also a set of similar resources. All of them are represented in a XML format
specific to Apple; iTunes is responsible for displaying several resources at the
same time, allowing navigation between navigation, switching views, etc. 

I hope this makes sense.

Regards

Reply via email to