Interoperability Minutes 2007-04-11

From MemberWiki

Jump to: navigation, search

Full minutes: /member/wiki/Interoperability_Minutes_2007-04-11

Contents

OpenAjax Alliance Interoperability Committee meeting minutes 2007-04-11

Attendees

  • Phil Berkland <berkland(at)us.ibm.com>
  • Kin Blas <jblas(at)adobe.com>
  • Gideon Lee <glee(at)openspot.com>
  • Jon Ferraiolo <jferrai(at)us.ibm.com>
  • Kevin Hakman <khakman(at)tibco.com>
  • Ted Thibodeau <tthibodeau(at)openlinksw.com>
  • Bertrand Le Roy <Bertrand.Le.Roy(at)microsoft.com>
  • Bruce Johnson <bruce(at)google.com>
  • Howard Weingram <weingram(at)tibco.com>
  • Ted C Howard <thoward(at)customcreditsystems.com>

Original Agenda

  • Agenda
    • Interoperability Working Group Charter
      • /member/wiki/Interoperability_Charter
      • Proposed (new) timeline:
        • Discussion today
        • Freeze the charter on April 11
        • Creation Review phone call on April 25
        • Member voting April 26 - May 3
        • Steering Committee voting May 3 - May 10
    • OpenAjax Hub publish/subscribe feature discussion
      • How important is ruthlessness about small footprint, performance, and time-to-market?
      • High-level design: Pub/sub vs AOP
      • Event naming. Here are some options for how events might be named:
        • Java style (e.g., org.openajax.registerLibrary)
        • OpenAjax Registry prefix (e.g., /OpenAjax/registerLibrary)
        • URIs (e.g., http://openajax.org/registerLibrary or urn:openajax:registerLibrary)
        • Any arbitrary string
      • Hierarchical topic names: Allowed or disallowed? If allowed, does the Hub manage the segments (i.e., does the Hub internal logic ever call ".split")?
      • Wildcards: Yes or No? If Yes, how exactly should it work? Do we leverage JavaScript regular expressions somehow?
      • Jon's very recent email on a possible lightweight approach:
        1. Define a separator character, such as "/" or "."
        2. The topics that are broadcast via OpenAjax.publish() must not contain wildcard characters
        3. Ok to use wildcards when subscribing
        4. Internally, subscribers are stored within a one-dimensional associative array indexed by topic name. These topic names might contain wildcards as in "foo/bar/*" or not as in "foo/bar/zzz".
        5. When a topic is published for the first time, the internal engine builds a cache of potential wildcards to which the given topic might apply. For example, if the topic is "foo/bar" then wildcard possibilities would be "*/bar", "foo/*" and "*/*". (Obviously there are issues here. For example, maybe we only allow wildcards at the very end.) Then the topic is dispatched to all listeners registered for "foo/bar", "*/bar", "foo/*", and "*/*", all of which are found by direct lookup into the one-dimensional associative array indexed by topic name.
    • Detailed proposals for OpenAjax Registry
    • Bertrand's proposal that Registry entries for Foo.* also reserve Foo$*

Minutes

Topic: Interoperability Charter

Jon: open charter discussion

(Jon describes working group, background on OAA process document, describes charter changes as result of face to face meeting)

Jon: any objections on freezing charter?

(no objections)

Kevin: were there any comments from members on charter at all?

Jon: only at beginning

Bruce (?): anything which should be controversial?

Jon: no

(discussion on events names, how many and what sorts of events to pursue within the WG)

kevin: only events related to scope of core OAA hub functionality

Resolution: add language about how any standard events must be relevant to technologies developed by WG and language about how toolkits and other external software could add new events

Action: Jon to update charter

Jon: will push back schedule a week so charter changes can be reviewed

(no objections)

Topic: Pub/sub feature in Hub

agree size, schedule, performance are all important

are we willing to go in phases or do we want everything from beginning?

Howard: current implementation provides functionality and small size , no trade-off

Bruce: wildcard discussion

Howard: not as far apart is it looks, mainly wildcards, no real performance issues, very small

Jon: is all relative, 1st implementation was 15k compacted, for some small people, for others it is huge , Alex says too big

Kevin: support Alex, markup was not rejected for size, but for redundancy, every toolkit already has pub/sub, no value add for including it

Jon: pub/sub come in mashup scenarios, trying to prevent n-squared problem

Bruce: don't run into that n-squared scenario because use one controller

Howard: internet ties economies, small changes has magnifying effects, having listener listen to aggregate channels is very powerful, is worth looking at leverage you get from making small changes?

Bertrand: if we have wildcard, do we still need filter?

Howard: yes, on few lines of code

Bertrand: is redundant

Howard: wildcards provides standardized ways single string, filters require code, reg expr pattern matching

Bertrand: 2 features filter with different ways

Jon: postpone discussion on filters, first decide to support wildcards

Howard: will send note discussing scenarios

Bruce: what are examples of vocabulary of events where wildcards help? what patterns doe it encourage?

Howard: use case: 2 items on page, one pub, one sub, not pub/sub on same names or topics, payload is not identical. when that happens sub listens to range of events, example of onpage service. things which are built as utilities instead of in every toolkit

(Howard mentioned scenario where subscriber and publisher are out of sync in terms of version number, presumably when publisher has moved to a higher version number than subscriber.)

(Howard mentioned scenario of logger where it wants to subscribe to lots of events in order to send them to a logging service and doesn't actually look at any of the events.)

(Also, some discussion of subscribing to symbol/ibm/trade, symbol/*/trade or symbol/ibm/*)

Bruce: gives you power without describing how to use it, set of ticker symbol wild card the , 2 different axis, need addition filter, pushes a lot into name, but not sufficient information in name

Howard:: this type of naming scheme is used rampantly on server now

Bruce: should put together specific set of event names, this is what we do with and without wildcards

Howard: wildcards are a matter of usecases, wildcards provide simple mech is aggregating channels

Jon: suggest creating wiki page where we list sample events/topic name where will help

Howard: wildcards are used to aggregate channels, not involved in definition of topic space

Bruce: what about multiple axis problem?

Howard: multiple wildcards, topics are not the only way to filter

Bruce: if it is too powerful, people will start doing things that prevent interop

(Howard mentioned sometime during the phone call that wildcards allow filtering based on topic names, but the filter mechanism allows filtering based on analyzing the content.)

(Consensus is to continue discussion with email, and have meeting in 2 weeks)

(Jon will create wiki page that collects use cases around hierarchical event names)

Personal tools