InfoQ

News

A New Way to Write Mashups in IE

Posted by Jonathan Allen on Mar 07, 2008 06:17 AM

Community
.NET
Topics
Web 2.0,
Open Source
Tags
Mashups,
Internet Explorer

A mashup is loosely defined as a web application that combines data and functionality from multiple sources. This is usually done in the browser itself using JavaScript and possibly AJAX techniques. While they have been reasonably successful, mashups generally require planning on part of the site operator.

Microsoft is creating a new way to write mashup-like functionality with what they call "Activities". Rather than being defined within a specific page, users can launch the same set of Activities regardless of what page they are on.

Activities are created by creating an XML file that follows the OpenService Format Specification. This file specifies when the activity can be triggered, what the preview of the activity looks like, and what happens when the activity is run.

The most common activities are probably going to be selection based. The user would select a block of text and then click on an icon to see a list of activities. As the user hovers over each menu item, a preview would appear. Clicking on an item launches that activity, passing in the selected text.

The generation of the preview and the execution of the action are specified in the XML file mentioned above. Both support a small but reasonably comprehensive collection of parameters such as {selection}, {documentUrl}, and {documentTitle}. In addition, the calls can be done as either a "get" or a "post". Previews have the additional limitations of fitting in a 320 by 240 box and being in HTML.

Microsoft is being much more generous with the licensing of the OpenService Format Specification than one would expect. Rather than making it an ECMA specification or restricting it to one of their licenses, they are releasing it under a Creative Commons Attribution-Share Alike License.

For the OpenService Format and WebSlice Format specs, we’re using two separate Creative Commons vehicles to allow developers to freely use and build on our work. We’re licensing our copyright in the OpenService Format Specification under the Creative Commons Attribution-Share Alike License. This license lets others copy, distribute, modify and build upon the specification, even for commercial uses, as long as they simply give credit to Microsoft and license their own changes under the same terms. This license is also consistent with the license adopted by the OpenSearch community, whose work relates to the OpenService Format spec.

Since patents are always a concern, Microsoft made it clear they were releasing any rights to those as well.

Microsoft has developed the Open Specification Promise (“OSP”) to provide a simple and clear patent promise to reassure the broad audience of developers and customers that a given specification can be used for free, easily, now and forever. The OSP was developed with feedback from customers and the open source community, and we’re happy to be making both the OpenService Format and WebSlice Format specifications available under the OSP. The use of the OSP confirms that that these two specifications can be implemented for free. Please refer to this page for complete information and details concerning the OSP.

No comments

Reply

Exclusive Content

Rustan Leino and Mike Barnett on Spec#

Rustan Leino and Mike Barnett of Microsoft Research discuss the technology in Spec# and its futures.

10 Ways to Screw Up with Scrum and XP

Henrik Kniberg talks about 10 possible reasons to fail while doing Scrum and XP. Maybe the team does not have a definition of what Done means to them, or they don't know what their velocity is.

Tips from a Top Sports Team Coach

This article outlines 9 principles Marc Lammers discovered while building the world’s best field hockey team, mapping them to software development practices.

SOA Governance: An Enterprise View

Michael Poulin explains the necessity for SOA governance to ensure an Enterprise SOA's success, relying on concepts from the OASIS SOA Reference Model and Reference Architecture.

Developing Portlets using JSF, Ajax, and Seam (Part 2 of 3)

This article covers setting up a RichFaces portlet using JBoss Portlet Container and JBoss Portlet Bridge, deploying a RichFaces portlet, and RichFaces capabilities.

Scalability Worst Practices

This article discusses scalability worst pratices including The Golden Hammer, Resource Abuse, Big Ball of Mud, Dependency Management, Timeouts, Hero Pattern, Not Automating, and Monitoring.

Do the Hustle

Obie Fernandez shares his experience selling consulting services for both Thoughtworks and Hashrocket and give tips how Ruby developers can work with clients.

Natural Laws of Software Development - Deriving Agile Practices

Jeffries and Hendrickson derive Agile practices from the natural laws of software development. They don't just say "Be Agile!", but they explain why Agile practices make perfect sense.