Jul 28
2011

OpenAjax Hub Widgets for Deep Web Surfacing

Posted by Peep Küngas in Widget

Peep Küngas

Deep Web, consisting of online-databases often behind SOAP-based or REST-ful Web services or Web forms, is estimated to contain about 500 times more data than the (visible) Web. However, despite of the advances in search technologies, full potential of the Deep Web has been left largely underexploited. The latter is partially due to the lack of effective solutions for surfacing and visualizing the surfaced data, which by default has no layout information attached unlike documents in the Web.
There is a master thesis available online describing a solution for proxying deep Web resources, specifically those behind SOAP-based Web services, into representation layer of Web applications in form of OpenAjax Hub widgets (a specific class of Web widgets). Although the widgets, generated automatically by the solution, have no explicit data visualization scheme attached, their messages are accompanied with semantic annotations originating from SA-WSDL annotations of Web services for which the widgets were constructed. These annotations are the key mechanism for enabling dynamic exploitation of reusable visualization widgets for exposing data surfaced through invisible widgets.
The latter allows building scalable deep Web surfacing solutions where a limited amount of visualization widgets can be combined and exploited to automatically visualize data from virtually unlimited number of heterogeneous Deep Web sources. The source code of a proof-of-concept implementation is available through github.

Aug 17
2010

Ontology Learning for Cost-Effective Large-scale Semantic Annotation of XML Schemas and Web Service Interfaces

Posted by Peep Küngas in SEMANTIC INTEROPERABILITY

Peep Küngas

The paper with such a title has been accepted to EKAW 2010 (http://ekaw2010.inesc-id.pt/), the 17th International Conference on Knowledge Engineering and Knowledge Management, and will soon appear in the proceedings.

In this paper Shahab Mokarizadeh will introduce a novel unsupervised ontology learning approach, which can be used to automatically derive a reference ontology from a corpus of web services for annotating semantically the Web services in the absence of a core ontology. The approach relies on shallow parsing technique from natural language processing (NLP) in order to identify grammatical patterns of web service message element/part names and exploit them in construction of the ontology. The generated ontology is further enriched by introducing relationships between synonym concepts. The experimental results on a set of global Web services indicate that the proposed ontology learning approach generates an ontology, which can be used to automatically annotate around 52% of element part and field names in a large corpus of heterogeneous Web services.

The proposed solution has been validated on Web services descriptions available at http://www.soatrader.com. Either contact the authors (Shahab Mokarizadeh, me and Mihhail Matskin) or post your question as a comment here, in case you want some insight to the approach before you meet Shahab at EKAW 2010;)

Jul 20
2010

Semantic Integration of OpenAjax Hub Widgets

Posted by Peep Küngas in Widget

Peep Küngas

The problem of automating inter-widget communication in open Web environments where widgets are exposed by independent providers having no a priori knowledge on which other third-party widgets their own widgets are going to be exploited with in Web applications. Rainer Villido has proposed a solution for this in his master thesis. The main idea of the proposed solution is to create a message transformation/aggregation widget, which will listen to all messages delivered by widgets in a Web application, analyze their content, aggregate content from multiple messages, if needed, format the aggregated content and forward to widgets, which know how to interpret this content. This is achieved through the mechanism where the semantics of the content, particular widgets can interpret, is registered at the transformation/aggregation widget during Web application initialization. The aim of such an approach is to simplify creation of new Web applications from existing widgets to the level where selection of suitable widgets will be enough for Web application development.

Automating inter-widget communication, along with the widget-oriented application development paradigm, is an emerging field both in industry and academia where only few attempts have been made in abstracting inter-widget communication above technical integration details. Majority of related work has happened in the area of mashup development where vendor-specific solutions have been provided for combining Web components with tightly coupled interfaces. Moreover, current mashup platforms do not support collaboration between widgets, if widgets have been developed and maintained by different vendors and are not able to interpret messages sent by other widgets either because of message schema heterogeneity or due to the fact that content from several messages has to be combined to provide data required by the target widgets. This limits the creation of sophisticated mashups where Web components could interactively share and exchange data between each other and make it possible to have collaboration between independent Web components. Finally, the state-of-the-art solutions require a clear understanding on which messages should be routed to specific components and this knowledge is manually weaved into mashup business logic. The solution by Rainer liberates developers from taking care of this aspect – not only the messages are constructed such that target widgets can interpret them, but also the aggregation widget takes care of routing the messages to particular widgets.

Mashups and Widgets - where would you place OpenAjax Hub widgets?

Jul 13
2010

Compatibility Evaluation of Mainstream Internet Browsers with Respect to JavaScript Usage

Posted by Peep Küngas in Untagged 

Peep Küngas

Evgeniya Trofimova, one of my bachelor students at University of Tartu, recently defended her thesis on "Compatibility Evaluation of Mainstream Internet Browsers with Respect to JavaScript Usage in Major Internet Sites".

The study was based on usage details of specific JavaScript language constructs at a selection of Web sites from Alexa Top 500 list of most popular Web sites. The JavaScript constructs were extracted from the Web sites and were then analyzed with respect to the compatibility master table available at http://www.quirksmode.org/compatibility.html. The study shows that Safari 4.0 for Windows, followed by Chrome 4, clearly outperforms other browsers with respect to JavaScript compatibility.

The following figure shows the ranking of mainstream browsers with respect to their ability to interpret JavaScript constructs, which are most commonly used in major Web sites.




An excerpt of the thesis follows.




Jun 21
2010

A Plain English Guide to SOA

Posted by Software Advice in erp software

Software Advice

If you’ve been around the enterprise software industry the last few years, no doubt you’ve heard the term “service oriented architecture” (SOA). If you aren’t technical, it’s one of those terms that flies right over your head. That's understandable given the dictionary-sized list of related technical acronyms such as SOAP, XML, CORBA, DCOM, .NET, J2EE, REST, BPEL and WS-CDL.

Software Advice, a website that reviews software systems for manufacturers, recently created a plain english guide to understanding SOA. They propose SOA can be understood through a simple analogy: think of SOA as the information technology (IT) equivalent of managing a large, diverse workforce. To get stuff done in a big organization, you need to:

  • carefully define your goals and what constitutes success;
  • draw on the unique talents and knowledge of each individual;
  • get people to speak the same language and work together as a team; and,
  • measure where things stand and whether success is achieved.

SOA does all that for IT. It catalogs what systems are in place and what they can do (e.g. what data they own). It specifies a common language that they can all use to communicate, even if this common language is not each system’s “native tongue.” With those components in place, the organization can build new applications or processes that make use of the multi-system integration. Finally, a SOA coordinates and monitors the processes that span these systems.

Mar 24
2010

SOA Trader Middleware Extension for Web Services Commercialization Goes Open Source

Posted by Peep Küngas in WEB SERVICES

Peep Küngas

Having the following issues with Web services?:

  • Web services' requests cost money and thus results should be stored locally for further processing leading to increased development costs;
  • Web services' requests take more time than is acceptable to your applications;
  • No transparent error compensation mechanism is available for a case of a data-provisioning Web service failure;
  • No middleware available for brokering access to your Web services;
  • No middleware available for license-based or user-based Web service delivery and monitoring.

If some of the preceding applies, then SOA Trader Web services commercialization middleware extension may help you.

For the last 3 years SOA Trader has been developing and fine-tuned its Web services commercialization middleware extension for simplifying delivery of services on-demand. While one of the development focuses has been separation of functionial and non-functional specifications (i.e. QoS terms, licencing and subscriptions, etc) of Web services, we have been considering also aspects such as caching, QoS monitoring and error compensation. The result is a proxy-like light-weight servlet, which is easy to set-up and to deploy and provides good-enough performance in industrial settings.

Feb 05
2010

Redundancy Detection in Service-Oriented Systems

Posted by Peep Küngas in DATA REDUNDANCY

Peep Küngas

A paper by myself and my colleague, Marlon Dumas at University of Tartu, got recently accepted a paper to WWW 2010 - the highly competitive top conferences on Web technologies. The paper addresses the problem of identifying redundant data in large-scale service-oriented information systems. More specifically, the paper puts forward an automated method to pinpoint potentially redundant data attributes from a given collection of semantically annotated Web service interfaces. The key idea is to construct a service net- work to represent all input and output dependencies between data attributes and operations captured in the service interfaces, and to apply centrality measures from network theory in order to quantify the degree to which an attribute belongs in a given subsystem. The proposed method was tested on Estonian federated governmental information system X-Road consisting of 58 independently-maintained information systems providing altogether about 1000 service operations described in WSDL. The accuracy of the method has been evaluated in terms of precision and recall.



The preceding figure summarizes our experimental results which topped with F-score 0.89. From the figure we can observe the trade-off that occurs between precision and recall when varying with fine-tuning parameters. Essentially, the recall of the classifier can reach around 99%, if certain condition hold. From practical point of view, if an attribute could reasonably qualify as redundant, the classifier will find it. At around 80%, the precision is not optimal, but arguably still acceptable. One could argue that higher precision (at close to 100% recall) would be difficult to attain, given the subjectivity underpinning the notion of redundancy.

If you are interested in learning more about the approach, either wait for WWW 2010 or contact me personally:) Anyway, see you at WWW 2010;)

 

Feb 05
2010

BPM Market, Strategies and Opportunities in the Context of SOA

Posted by Peep Küngas in BPM

Peep Küngas


Finally the presentation of my invited talk on BPM Market, Strategies and Opportunities is available online. Check http://www.itl.ee/?dl=195 for recent updates on BPM and predictions for the period of 2008-2015. Though BPM tools and platforms adoption has been constantly increasing in the global market, the BPM market still represents a niche market.

Nov 25
2009

Classification and comparison of user interface components at major RIA user interface frameworks

Posted by Peep Küngas in RIA

Peep Küngas

In my previous post (http://www.soatrader.com/15-comparison-of-major-ria-user-interface-frameworks.html) I reviewed a number of RIA user interface frameworks. This post summarises the different user interface components, which are supported by the platforms.

Framework Does not require page refresh on user input Basic GUI components Advanced GUI components: tree, menu, tabs set, layout and other Data Grid Charts Animation Audio, Video
Dojo Yes Yes Yes Yes Yes   Yes
YUI Yes Yes Yes Yes Experimental (based on Adobe Flash) Yes No
GWT Yes Yes Yes Yes Yes Yes  
Zapatec (Commercial) Yes Yes Yes Yes based on Adobe Flash Yes No
Chiba Yes Yes No No No No No
XSLTForms Yes Yes No No No No No
formsPlayer (commercial) Yes Yes No No No No Yes
Ubiquity-xforms Yes Yes No No No No No
EMC Xforms Engine Yes Yes No No No No No
Orbeon Forms Yes Yes No No No No No
XUL Yes Yes No No No No No
OpenLazlo Yes Yes Yes Yes Yes Yes Yes
Adobe Flex Yes Yes Free and commercial Free and commercial Free and commercial Free and commercial Yes
Silverlight Yes Yes Yes Yes Yes Yes Yes
JavaFX Yes Yes Yes Yes Yes Yes Yes

 

Nov 21
2009

Comparison of major RIA user interface frameworks

Posted by Peep Küngas in RIA

Peep Küngas

According to ZapThink  SOA architects see Rich Internet Applications (RIA) as the software for consuming services in the SOA context. Although the consumers in such cases do not necessarily have user interfaces, when they do, RIAs typically meet the needs of the business more than traditional browser interfaces or desktop applications.

"As a result, there is increasing demand for RIA capabilities in the enterprise, although people don’t identify the applications that leverage such capabilities as RIAs. Rather, RIA capabilities are features of those applications. This further serves to make indistinct a separately identifiable RIA market. However, this dissolution of the RIA market as a separate market is still several years away, as all indications are that the RIA environments market in particular will continue to experience healthy growth for years to come."

Given the preceding it is important to know the main characteristics of the major RIA technologies. In the following table initial steps towards summarising the characteristics and listing the technologies are taken. Feel free to propose extensions to it.

  • «
  •  Start 
  •  Prev 
  •  1 
  •  2 
  •  Next 
  •  End 
  • »