[dojo-contributors] Proposal for enhanced dojo.data APIs and use in form widgets

Alex Russell slightlyoff at google.com
Wed May 26 14:19:29 EDT 2010


On Wed, May 26, 2010 at 10:47 AM, Charles Wiecha <cwiecha at gmail.com> wrote:
> Alex -- thanks for the pointer...I've found his paper on the ACM portal and
> it looks quite relevant in terms of the type of expressions and dependencies
> we'd like to express.
>
> Then the question remains as to how best to use dojo.data to do this...the
> future feature page mentions dependency calculations in addition to
> validation etc...

Validation falls out of the dependency calculations in this model
which makes it incredibly powerful. I think that WRT dojo.data,
there's going to be some intermediate layer in which you express your
model and then hook up your UI and data sources to this new thing
which manages some aspects of it.

> it would be good to assemble a few folks interested in this
> from different perspectives to be sure there's good coverage and not just
> for what we would like to do...
>
> Thanks again for the reference...I'll dig into it.  For others here's the
> link: http://portal.acm.org/citation.cfm?id=1449927  (depending on your
> organization there might be a charge...).
>
> Charlie
>
> On Wed, May 26, 2010 at 1:16 PM, Alex Russell <slightlyoff at google.com>
> wrote:
>>
>> This is great work!
>>
>> Have you run across Sean Parent et. al.'s Property Models work? I
>> think it'd simplify expressing many of the patterns outlined and make
>> using them easier.
>>
>> On Wed, May 26, 2010 at 10:11 AM, Charles Wiecha <cwiecha at gmail.com>
>> wrote:
>> > Hi all -- Rahul Akolkar and I at IBM Research are new to this list and
>> > have
>> > joined since we have been working with Chris Mitchell, Jared Jurkiewicz,
>> > and
>> > Doug Hays on some ideas related to future features for dojo.data and
>> > also
>> > how form widgets could take advantage of dojo.data.  We've written up
>> > some
>> > thoughts and preliminary demos which Doug has posted for folks to look
>> > at
>> > using his workspace at http://doughays.dojotoolkit.org/patterns/
>> >
>> > Rahul and I would like to get some discussion going on these ideas, and
>> > to
>> > see how we could help move along some of the known future features for
>> > dojo.data like versioning, attribution, dependencies etc since those
>> > features seem pretty well aligned with what we'd like to do for forms
>> > and
>> > data sources.
>> >
>> > Would anybody like to dig into this with us?  I'm attaching a more
>> > "formal"
>> > proposal below but the basic idea is to push on dojo.data to support
>> > some
>> > additional metadata useful in MVC patterns, and then to build out
>> > additional
>> > widget bindings to dojo.data so we have a uniform way to use MVC
>> > patterns in
>> > larger units like the master/detail and list-to-list pages shown on
>> > doug's
>> > site.
>> >
>> > Please check it out and let us know if you think this would be helpful
>> > and
>> > particularly would like to help refine the design...the demos posted are
>> > at
>> > this point only for concept so don't pay too much attention to code
>> > details
>> > -- that's all up for change as we get consensus here.
>> >
>> > Thanks!  Charlie Wiecha and Rahul Akolkar
>> >
>> > ps: the examples posted have been reworked to use the dojo packaging and
>> > class mechanisms for their data models...these updates will be posted
>> > shortly.  In the meantime, the models are just inlined in the page.
>> >
>> > ---------------------------------------------------------
>> >
>> > Proposal for enhanced support for data-centric RIAs in Dojo
>> >
>> > We are interested in extending support for using Dojo to build a class
>> > of
>> > Rich Internet Applications that focus on rich data interaction --
>> > essentially end-to-end CRUD applications that are central to eCommerce
>> > and
>> > Business Process Management (BPM). These solution domains are a key
>> > interest
>> > for enterprise users of Dojo and would benefit from extended support in
>> > two
>> > areas of the Dojo framework: dojo.data APIs and data aware form widgets.
>> >
>> > "Data-rich" internet applications support CRUD operations that project
>> > back-end data out to the client through intermediate layers of
>> > transformation, validation, and integration with other related or
>> > dependent
>> > data. This data pipeline requires rich support for managing both the
>> > underlying data values and a set of related properties or metadata
>> > helpful
>> > in their validation and presentation. Importantly, we believe the
>> > pipeline,
>> > and its client-side endpoint in the application data model, must project
>> > cleanly out to the view layer by allowing a uniform and consistent set
>> > of
>> > widgets (both grid and form) to bind to data and be directed in their
>> > behavior by associated metadata such as read/only, required, relevance,
>> > and
>> > validity status.
>> >
>> > The dojo.data API enables widgets and other application code to handle
>> > many
>> > of the above considerations by being datastore aware and programming to
>> > the
>> > dojo.data APIs. We believe there is a need to extend the dojo.data APIs
>> > to
>> > also support meta-data properties in addition to the data items and item
>> > attributes; such as those we have described for data bound widgets where
>> > these properties influence the validity, relevance, read-only status
>> > etc. of
>> > the bound widgets. Support for metadata in the dojo.data APIs would be a
>> > step toward enabling some of the future features identified at Dojo
>> > Campus
>> > Data API Future Features including schema, versioning, attribution, and
>> > derivation.
>> >
>> > We are further interested in leveraging such a metadata capability in
>> > the
>> > data APIs to then define an extended form widget library which is data
>> > aware
>> > and able to serve as building blocks for higher level frameworks of UI
>> > patterns such as Master/Detail and List to list patterns. The approach
>> > shown
>> > in Data-centric RIAs is to apply the existing dojo.data API to support
>> > simple data binding in Dojo form widgets. In this way, we seek to allow
>> > form
>> > widgets to bind to individual data items as easily as grid and other
>> > set-oriented widgets bind to data sources today. Building on this
>> > extended
>> > MVC support in the forms package, we have prototyped a preliminary set
>> > of
>> > higher level patterns, including a first List2List pattern, which are
>> > available at the above link.
>> >
>> > This proposal is certainly preliminary in terms of the details of both
>> > the
>> > form widget interface extensions to support data binding using the
>> > dojo.data
>> > package, as well as suggestions for possible extended dojo.data
>> > interfaces
>> > themselves to pull in support for metadata such as item validity,
>> > relevance,
>> > R/O status etc. We look forward to comments and broader community
>> > feedback
>> > on these ideas. For starters, has there been any work done already on
>> > the
>> > dojo.data future features listed above?
>> >
>> > Thanks, Charlie Wiecha and Rahul Akolkar
>> >
>> > _______________________________________________
>> > dojo-contributors mailing list
>> > dojo-contributors at mail.dojotoolkit.org
>> > http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors
>> >
>> >
>> _______________________________________________
>> dojo-contributors mailing list
>> dojo-contributors at mail.dojotoolkit.org
>> http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors
>
>
> _______________________________________________
> dojo-contributors mailing list
> dojo-contributors at mail.dojotoolkit.org
> http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors
>
>


More information about the dojo-contributors mailing list