Feb 27 2009
First KiWi Open Source Release!
Tomorrow is KiWi’s first birthday. And today is the day of KiWi’s first Open Source Release! The KiWi core system is a flexible platform for building different kinds of semantic social software applications on top (currently the Semantic Wiki and the TagIT application). It provides all the core services required in such applications, like editing and tagging, the storage of content and associated meta-data, its own triple store, transactions and versioning over content and meta-data, linked open data server, and many small features semantic social software developers will like (like convenience services for working with ontologies or SKOS thesauruses, etc.). And finally: the KiWi system also has a quite neat user interface by now, rarely found in Semantic Web applications.
Technology-wise, the KiWi system is a component based architecture building on JBoss Seam and Java EE. The main principle is that everything is a content item, and that a content item always consists of human-readable content that is connected with RDF relations and may be annotated by users with semantic tags. This mixture allows content to be shared between applications: a content item that is created in the Wiki application can at the same time be displayed in TagIT as a location on the map or (later) as a blog post in the Blog application. This is made possible by the flexible structures offered by RDF. A particularly salient aspect of the KiWi core system is that it makes using RDF much more convenient for Java developers (no more manual triple store queries) by offering a flexible facading through interfaces annotated with special Java annotations that map Java methods to RDF properties.
KiWi can be downloaded in the following forms:
- a binary package that comes pre-configured with JBoss 4.2.3, the H2 database, and KiWi (the “one-click-install”). Unpack it and run bin/run.sh (or bin\run.bat) to start it, then go to http://localhost:8080/KiWi/, and start editing (or select “Admin” and pre-load ontologies); the binary package requires JDK 6 installed and can be downloaded from http://kenai.com/projects/kiwi/downloads
- a source package that can be used for looking into the KiWi source code and compiling yourself; it requires JDK6, plus JBoss 4.2.3 and a database supported by Hibernate (PostgreSQL, H2, …), and you will need some knowledge on how to configure Java EE applications; the source package can also be downloaded from http://kenai.com/projects/kiwi/downloads
- the most recent source code can always be obtained from the Subversion repository at https://svn.salzburgresearch.at/svn/kiwi/kWi/trunk ; if you plan to participate in the development of KiWi, this is your option – and don’t forget to tell us, if you have good ideas and contributions, we might want to add you as committer; obviously, this option has the same requirements as the packaged source package
- you can furthermore visit the Showcase (updated regularly, may crash from time to time) if you only want to have a quick look into how KiWi works and looks like
Of course, a KiWi that is only one year old is still to young to really fly, and it will even still stumble from time to time, so expect bugs (and many of them!). But nonetheless, we are now inviting all of you, particularly (Open Source) developers and early adopters to try out and work on the KiWi system, build your own applications on top of it, or just experiment and give us feedback. If you think our ideas are interesting and you’d like to contribute, please let us know by sending a mail to info@kiwi-project.eu.
4 responses so far

Congratulations on the release! Let me give some comments and ask some questions here, maybe they are also interesting for others:
No more manual triple store queries? But I hope they are still possible, in case I want to do something that is not possible with the current Java interface.
Linked open data server: Nice! Do you also have a SPARQL endpoint?
You misspelled the svn URL (kWi -> KiWi)
Good that one is no longer tied to PostgreSQL.
Not yet sure about the concrete schedule, as I have a lot of things to do (such as getting my Ph.D. done by the end of this year), but I will have a deeper look into KiWi quite soon and figure out how to port SWiM (the math extension to IkeWiki) to it.
Keep it up!
Of course there will is still the possibility to do manual triple store queries – for the most common cases you just don’t need to do them. SPARQL endpoint is not yet complete, but we are working on it. We’d like to get rid of Sesame first and map SPARQL to our own triple store. If you are really willing to jump on board and port SWiM, we’ll do our best to try to help you. Although KiWi does not share much code with IkeWiki, many of the general principles are the same, and I am sure you’ll like the component- and service-based structure offered by KiWi.
Sebastian,
first shot is very impressive… really what we are looking for in Movation (http://www.movation.no, company for open innovation in mobile services).
But why do you use Wordpress for your home page, and not Kiwi?
I’m exactly there, where I need a “frond-end” which is looking professional (like WordPress) while the information is semantically annotated (as in Kiwi). Any suggestion?
Josef
Hi Josef! You are right to point out a certain contradiction; my reasons for using Wordpress on my homepage are: (1) Wordpress is very light weight, while KiWi is a full Java EE application; this has many advantages, but not for “small” installations like a homepage; in situations where you use Confluence or similar, you might also think about KiWi. (2) Wordpress is a finished and reliable product while KiWi is still a research prototype where the focus is not only on stability and usability but also on experimenting with new research ideas – I don’t want to constantly bug fix my homepage
. (3) The Wordpress team has more developers for the user interface alone than the KiWi project has altogether, so the overall usability of Wordpress is not easy to match. Still, we are working on it, and maybe in some months we have a KiWi release that is stable and usable enough to be used as a replacement for actual productive systems. We definately plan to do so after the end of the project.