John Burkhardt "I wish people who have trouble communicating would just shut up." Tom Lehrer

February 2003
Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28  
Jan   Mar


Click here to visit the Radio UserLand website.

Subscribe to "John Burkhardt" in Radio UserLand.

Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.

Disclaimer: the views expressed on this site do not nessecarily reflect those of my employer

Friday, February 07, 2003

Better Living Through Software on Tim Berners-Lee:

Tim made the point that "web services" are about performing remote operations.  When viewed in high contrast, "web services" build a web of interconnected verbs, while "semantic web" builds a web of interconnected nouns.  It was encouraging to see a journalist relaying the message that the two worlds will be complimentary, rather than succumb to the typical Zoroastrian storyline.


4:05:56 PM    

What is a Data Model Delegate?  A new article on the Groove Dev Zone sheds some light on the concept.  Its an idea that we've been working toward with our own tool APIs.  Many Groove tools are built using reusable "Engine" components.  For example, we provide a record based engine called, not surprisingly, RecordSetEngine.  This is an API that distributes a collection of records, and allows a tool to set fields or add and remove records.  A Data Model Delegate, or DMD, provides a type safe wrapper around an Engine by providing an abstraction in the tools problem domain.  For example, the Discussion Tool DMD hides records and instead provides interfaces like IGrooveDiscussionEntry.  We provide support for marking a component as the "Delegate" component in a tool.  And an API for accessing the component, as well as its identity using its SupportedType.  For example, the discussion tool defines the supported type:

"urn:groove.net:tools.platform.Discussion"

This identifier allows code external to the tool to discover the type of DMD it can expect to find.  It is conceptually a lot like an interface ID.  This system makes it easy for a tool to connect to Groove Web Services.  The GrooveTools service uses the Delegate component and SupportedType to determine which web service to use for the underlying tool.  EIS also provides support for connecting to components using DMDs and Supported Types.

So if you're building a new tool, it is worth it to understand these concepts and consider providing DMD support.


8:32:52 AM    

© Copyright 2003 John Burkhardt.

Comments by: YACCS