All I need to know is if the structure proposed below will work in a
portal env. I have no experience portals. I have a data servcie that
someone using WPS wants to connect to.

Here is a representation of the problem (names have been changed to
protect the innocent and simplify the example):

portlet: stockgraph (sg) configured to display a single stock

portal: myStocks with two instances of stockgraph - sg1(ibm),

dataservice: stockGraphProvider

Requirement: stockGraphProvider only called once per render of portal.
<<<----- critical

dataservice request: "ibm,appl"
dataservcie response: {ibm: graphobject1, appl: graphobjec2}