Coordination Middleware for document-centric applications - PowerPoint PPT Presentation

About This Presentation
Title:

Coordination Middleware for document-centric applications

Description:

Exact equality Exact textual equality DOM interfaces. Restricted Textual equality ignoring ... Uses specific Doctype name DOM. XPath Fulfills an XPath ... – PowerPoint PPT presentation

Number of Views:19
Avg rating:3.0/5.0
Slides: 27
Provided by: csUn5
Category:

less

Transcript and Presenter's Notes

Title: Coordination Middleware for document-centric applications


1
Coordination Middleware for document-centric
applications
  • April 2002

Paolo Ciancarini Robert Tolksdorf Franco Zambonelli
University of Bologna Technische Universität Berlin University of Modena and Reggio Emilia
ciancarini_at_cs.unibo.it tolk_at_cs.tu-berlin.de franco.zambonelli_at_unimo.it
2
Motivations
  • The Internet is "Document Centric"
  • Document-centric computing models are needed
  • A document is a communicable data structure
  • Focus on two key issues
  • coordination models and middleware for the
    engineering of complex content management
    applications
  • XML as "The Standard" for passive and active
    documents

3
Documents
  • Passive document content representation
  • "Formatter programs" like TeX assign rendering
    behavior to mostly procedural (sometimes
    declarative) markup
  • Passive documents have at least two facets
  • The abstract view on content (eg. WYSIWYG)
  • The concrete machine-level representation

4
Documents
  • Documents were dependent from devices
  • (a solution Postscript)
  • Documents were dependent from applications
  • (a solution Rich Text Format)
  • Documents are dependent from the underlying os
  • (think about the document fonts)
  • Documents are dependent from the browser
  • (no WYSIWTS-what you send is what they see)

5
Taxonomy and History

time
2000
1995
1990
6
Active documents
  • Active document content structure behavior
  • The document itself "knows" how to be handled
  • Possible perspectives
  • Reactive documents external applications are
    forced touse the internal behavior to handle
    documents
  • Proactive documents the document/agent can
    handleitself in autonomy (Agents data
    behavior autonomy)
  • Documents virtuels personnalisables (DVP2002)
  • http//iasc.enst-bretagne.fr/DVP2002

7
Middleware for XML Document Agents
  • Middleware that offers services for agents that
  • are specified using XML and
  • "run'' in an XML environment
  • Agents live in a completelyXML oriented world
  • Middleware is implementedoutside the XML world
  • Examples Displets, JXML, Adlets

Middleware
XML
8
Displets Dept. Computer Science, Univ. of
Bologna
  • General-purpose framework for active documents
    and for multi-document-agents applications
  • XML document agents ("Displets") can
  • include re-active behaviors related to rendering,
    printing, be searched..
  • Include pro-active behaviors to produce
    animation, generate new documents, search, etc
  • coordinate with each other

9
The XML Compiler of Displets
  • - XML document -gt DOM tree
  • - DOM tree -gt DOM tree with XSL stylesheet
  • - The DOM tree -gt tree of runnable Java objects
  • The XML document has become a document agent!

10
Coordinable Displets
  • Displets can have associated
  • their own private behavior
  • when on a group the coordination behavior
    enacting coordination laws
  • Static approach
  • compiler-based
  • the document agent and coordination laws
    generated atcompile time
  • no dynamic enteringor leaving of groups

11
XML Middleware for document Agents
  • Coordination middleware thatexploits XML at the
    middlewarelevel in itself
  • Coordination activities of application agents
    occur and are ruled via accesses to shared XML
    information spaces, in which the laws ruling
    coordination reside and are enacted
  • Information space in itselfbecomes sort of an
    active document agent
  • Examples XMLSpaces, MARS-X, XMIDDLE, XML
    Protocol/SOAP

Middleware
XML
12
XMLSpaces TU Berlin XML documents as
field-data
  • lt?xml version"1.0"?gtlt!DOCTYPE address SYSTEM
    "address.dtd"gtltlocationgt ltcity
    name"Trento"/gt lthostgtFACOLTÀ DI
    ECONOMIAlt/hostgt ltstreet name"Via Vigilio
    Inama" no"5"/gtlt/locationgt
  • lt2001, __gt

13
How to match?
  • A formal is an object describing an XML document
  • Can be
  • Another document
    in(2001, ?__)
  • Something elsein(2001, DOCTYPE"address.dtd")
  • There is a variety of relations that identify XML
    documents

lt?xml version"1.0"?gtlt!DOCTYPE address SYSTEM
"address.dtd"gtltlocationgt ltcity
name"Trento"/gt lthostgtFACOLTÀ DI
ECONOMIAlt/hostgt ltstreet name"Via Vigilio
Inama" no"5"/gtlt/locationgt
14
Multiple matching relations in XMLSpaces
  • Relation Meaning Tool used
  • Exact equality Exact textual equality DOM
    interfaces
  • Restricted Textual equality ignoring
  • equality comments, PIs, etc. DOM interfaces
  • DTD Valid towards a DTD XML4J
  • DOCTYPE Uses specific Doctype name DOM
  • XPath Fulfills an XPath expression Xalan-Java
  • XQL Fulfills an XQL expression GMD-IPSI XQL
  • AND Fulfills two matching relations
  • NOT Does not fulfill matching relation
  • OR Fulfills one or two matching relations
  • XOR Fulfills one matching relation

15
MARS-X University of Modena and Reggio Emilia
  • A coordination infrastructure for mobile agents
  • virtual mobility
  • actual agent mobility
  • physical (i.e., device) mobility
  • Local XML dataspaces for mobile agent access
  • shared by a node (or domain of nodes)
  • Linda-like (JavaSpaces)interface to XML data
  • Programmable tuplespace model
    coordinationlaws can be programmed in Java

16
MARS-X Tuple-based Access to the XML Documents
  • XML entries as JavaSpaces tuples
  • on match, the effect of the access on a documents
    can be ruled via properly programmed reactions

class _infoN extends AbstractEntry static final
URL DTDfile new URL(http//mysite/myDTD.dtd)
public Integer f1 public String f2 public
String f3 public Integer f4 _infoN t new
_infoN() t.f1 null t.f2 foo t.f3
bl t.f4 17 myEntry result
space.read (t, null, NO_WAIT) ...
... ltinfoNgt ltf1gt3lt/f1gt
ltf2gtfoolt/f2gt ltf3gtblahlt/f3gt ltf4gt17lt/f4gt lt/info
Ngt ... ltinfoNgt ... lt/infoNgt ...
17
XMIDDLE University College, London
  • A Middleware (i.e., a coordination
    infrastructure) for mobile and ad-hoc networks
  • The nodes/processes in the network share a global
    XML data structure
  • The global data structure is an active document
  • it includes protocols for handling data
    reconciliation and data merging
  • also application specific protocols can be
    defined

18
XMIDDLE The Architecture
  • Coordinables are active processes
  • mobile AND/OR executing on a mobile device
  • Coordination media as XML tree
  • possibly replicated (even partially) and shared
    among processes in the reach
  • Coordination laws rules modifications to the XML
    tree

19
XMIDDLE Coordination over the XML Tree
  • Processes operate and coordinatewith each
    otherby manipulating a shared tree
  • A disconnected process can continue operating
    on a replica of the tree
  • When reconnecting, the globaldocument tree must
    be re-constructed in a consistent way

Disconnection of Process A
Reconnection of Process A with re-conciliation
20
Self-contained XML Middleware
  • Agents are represented as someXML documents as
    well as the data they operate onand the laws
    ruling theircoordination activities
  • Examples WorkSpaces, XSL,XML Script, ADF

Middleware
XML
21
Workspaces TU Berlin XML and XSL only
  • Documents andworksteps asXML documents
  • Workspacesengine is anextended XSLengine

Store Rating
exec("Excel")
ltRATING
ltRATING
Workspaces
PAPER"3"
PAPER"3"
engine
SCORE"4"/gt
SCORE"4"/gt
22
Higher and guarded coordination in workflow graph
  • AND-SPLIT, OR-SPLIT, AND-JOIN, OR-JOIN as
    generative (and destructive) coordination
    operation
  • Transitions may also have conditions

23
Workspaces
  • An XML/XSL based workflow system
  • Workflow graph is split into single steps that
    are represented as XSL documents



24
Discussion
  • Displets
  • suitable for the definition and implementation of
    document agent apps
  • Too static
  • MARS-X
  • suited for complex coordination patterns to be
    dynamically defined, in manipulation of shared
    XML documents by mobile agents
  • restricts the application to use Java agents
  • XMIDDLE
  • suitable for document agents, and seems very
    suitable for mobility
  • possibility of defining coordination laws very
    limited
  • Workspaces
  • provides more uniformity
  • lacks an explicit support for mobility,
  • general-purpose applicability unclear

25
Goal Design ideal XML middleware
  • directly handling, at the application level, the
    activities in XML document agents (Displets)
  • making coordination activities occur in terms of
    manipulation of shared XML documents, (MARS-X,
    XMIDDLE, XMLSpaces)
  • flexible to support user-defined XML grammars
    (XMLSpaces)
  • effectively handling mobility and associated
    issues (XMIDDLE)
  • enabling the ruling the coordination activities
    between application-level document agents in a
    dynamic way (MARS-X)
  • expressing not only document agents behavior but
    also the laws ruling their coordination
    activities in term of XML documents and XML rules
    (WorkSpaces)

26
Conclusions
  • Further consider
  • Mobility
  • Coordination models
  • Embedded systems
  • Organizational structures
  • Conclusion
  • Taking the "coordination viewpoint" on XML based
    middleware is again fruitful
Write a Comment
User Comments (0)
About PowerShow.com