Cutting Edge: MIT's Haystack Project Goes Open-Source
Gerald Bauer <[email protected]>
| Newsgroups | gmane.comp.lang.xul.announce |
|---|---|
| Message-ID | <[email protected]> |
Hi,
The MIT Haystack project (tag-line "the universal
information client") goes open-source under a MIT
license. Now you can grab the Haystack download
package (47+ megs) and play with it to figure out
what's it all about.
Here's my cocktail party one-liner:
Haystack is a "UI motor" in Java using RDF instead
of XML to build Standard Widget Toolkit (SWT) UIs
a.k.a Eclipse UIs.
Carlos Perez writes in his Manageability blog:
<quote>
The most striking feature is the fact that almost
everything is represented in RDF. The data from
information sources, the layout of the visual parts,
the programming language and even the "bytecode" is
encoded in RDF! In short, instead of Lists in Lisp
you've got RDF everywhere!
Fortunately, the project has adopted a variant of N3
instead of the overly verbose and complicated XML
rendition of RDF. One of the biggest misconceptions
about RDF is that its a form of XML. An XML encoding
is actually just one of the multiple ways of rendering
RDF. A long time ago I tried to grok the original RDF
specification, which happened to be presented in the
XML form, let me tell you it was like trying to see
the forest while staring at a tree. Reading an N3
tutorial is such a relief, it'll give you a better
appreciation of RDF.
Okay, if you're thinking, "What's in it for me?".
Fortunately, there's a truck load of opensource riches
to be found inside Haystack. The biggest goldmine is
the fact that everything is rendered using Eclipse
SWT, in otherwords, its just possible to take bits and
pieces of this and graft it on to Eclipse.
You may then ask, why take bits and pieces when I can
take the whole thing? Well, the big problem is that
the project is still in the works and has an extremely
clunky feel to it. I would at least say that its
farther ahead of Chandler, but CleverCactus is
definitely more usable today. (Note: CleverCactus is
written in Swing and it's more responsive, it only
proves that there's more to building a responsive GUI
than choosing a native GUI framework).
Haystack also has a unique approach to building
interfaces, it has something called "User Interface
Continuations" and it allows end users to define their
own views of RDF. This stuff is extremely promising,
matter of fact a lot of stuff that nakedobjects can
learn from.
</quote>
Now if you wonder what does Haystack look like. Read
on.
@prefix dc: <http://purl.org/dc/elements/1.1/>
@prefix slide:
<http://haystack.lcs.mit.edu/schemata/ozoneslide#>
@prefix : <chapter4#>
add { :fontExample
rdf:type slide:Slide ;
dc:title "Font Examples" ;
slide:margin "20" ;
slide:fontFamily "Times" ;
slide:fontSize "14" ;
slide:child ${
rdf:type slide:Paragraph ;
slide:children @(
${ rdf:type slide:Text ;
slide:text "Make it"
}
slide:space
${ rdf:type slide:Text ;
slide:fontSize "200%" ;
slide:fontBold "true" ;
slide:text "big and bold"
}
slide:period
slide:break
${ rdf:type slide:Paragraph ;
slide:fontFamily "Arial" ;
slide:fontItalic "true" ;
slide:children @(
${ rdf:type slide:Text ;
slide:text "Or turn it to italicized
Arial and"
}
slide:space
${ rdf:type slide:Text ;
slide:color "#dddd00" ;
slide:text "gold!"
}
)
}
)
}
}
How's that?
Full story @ http://haystack.lcs.mit.edu
- Gerald
More Links:
-----------
Carlos Perez's Manageability blog:
http://www.freeroller.net/page/ceperez
Notation 3 (N3):
http://www.w3.org/DesignIssues/Notation3.html
---------------------------------------
XUL News Wire - Subscribe/Unsubscribe @
http://lists.sourceforge.net/lists/listinfo/xul-announce
---------------------------------------
-------------------------------------------------------
This SF.net email is sponsored by: eBay
Get office equipment for less on eBay!
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5