SPS, standing for Simple Project Syndication, is a specialized dialect of XML designed for efficient project syndication over the Internet. Its core proposition is an open schema that fosters an information flow amongst people, documents, and tasks within a distributed ecosystem, moving away from traditional hierarchical models.

sps_sample.xml: A practical example of the SPS implementation in XML format.

sps.xsd: The foundational schema that defines the structure and organization of data within the SPS system.

A noteworthy application of SPS was “Open-tasking,” an experimental web application operational from 2004 to 2005. This application leveraged the SPS schema to facilitate task creation and management in a collaborative environment. Users could modify tasks, adding more detail and tailoring them to align with others’ skills. This process allowed for the development of projects that were either deeply specialized or broadly encompassing, depending on the collective skill set of the participants.

A distinctive feature of Open-tasking was its distributed and open architecture, which enabled users to seamlessly transition between roles. As projects evolved, participants could switch from being workers to managers and vice versa, effectively managing the complexity inherent in dynamic project environments.

Element Structure

The top element is <project> that describes the main container for tasks. The element structure for projects is below:

Element Description Example
title The name of the project The Ultimate Potluck
link The URL to the website corresponding to the task. http://plw.media.mit.edu/
treehouse/projects/ultimatePutlock
description Description of the project. We are going to cook food for everyone here. Join us.
language The language the channel is written in. en-us
creator Name and email address for person who created the project. Burak Arikan arikan *at* mit.edu
A project contains any number of <task>s. The sub-elements of a task represents the essential information about the task. These are important for easy syndication of the project.
Element Description Example
title The title of the task. Spicy BBQ Hot dogs
link The URL to the website corresponding to the task. http://plw.media.mit.edu/ treehouse/projects/task/?= bbqhotdogs
description Description of the task. Cooking BBQ hot dogs for fifteen people.
creator Name and email address for person responsible for the project. Burak Arikan arikan *at* mit.edu
implementors List of people who are going to execute the task. It containts sub-elements that are in the <implementor>.
dateStart Date and time of the task. 2004-05-28T12:00:10
duration Duration of the task. P2H
.
dateCreated The task is created on this date and time. 2004-05-17T08:30:00
dateModified The task is created on this date and time. 2004-05-17T08:32:11
milestones List of milestones on the task timeline. It contains sub-elements that are in the <milestone>
budget Budget of the task, that is going to be paid to the implementor by the creator. $15
parentTask Link to the task that is on top of this task. This may not exist. http://plw.media.mit.edu/ treehouse/projects/task/?=bbqparty
nextTask Link to the task after this task. http://plw.media.mit.edu/ treehouse/projects/task/?= mixsauce
prevTask Link to the task before this task. http://plw.media.mit.edu/ treehouse/projects/task/?= doshopping
pubDate Indicates when the task was published. 2004-05-30T09:30:10
Each implementor is a list of people who are exeucting tasks, and they are contained in the <implementor>. Implementor has two elements:
Element Description Example
contact Information about the responsible person. Noah Fields noah **at** noah.cx
role Description of the responsibility. Chef
<milestones> is a list of milestones that points important dates on the task timeline. Milestones are contained in <milestone>. Implementor has two elements:
Element Description Example
title Description of the milestone. Heat hot dogs as directed on package, or grill until heated through.
date DAte and time for the milestone. 2004-04-28T12:30:00

Burak Arikan’s Email List

Bimonthly updates about new work, upcoming shows, and talks.