I'm not sure I totally get the question... but the possibilities are so much more then the notes client...
You say "data binding"... that can mean different things in different areas... So me... an XPage or Custom control can "bind" to a Document, View, or Java Bean. All that really means it's it's now like a "global variable". Nothing too fancy really.
An Xpage can't "bind" to a collection or array... At least I don't THINK so... not directly... It can bind to something called "Object Data"... which to me is similar to a Java Bean...
A Panel can have a document as a data source... all that means is the document is available to the panel but not outside it... so it's kinda like an xpage there but with a more focused scope I guess.
Typically I prefer to bind documents and views as high up as possible... so ideally on the page... then anything can use them... that's just a preference though as sometimes you do just want them in a custom control or whatever...
A Repeat control is a good control to "bind" to a collection or array or multi-value field. Then it'll just repeat over all the values....
When it comes to opportunities... that's where the "Java Bean" thing comes into play... These could be "Managed"... or not... But once you're using a Java object/bean then you can do anything you want with it... the data can literally come from anywhere... so that really does give you the maximum flexibility...
Hope that helps. Let me know if you have any other questions...
Dave
NotesIn9.com