FOAF, DC, SIOC, SKOS are famous vocabularies commonly used in the Semantic Web. Many other custom vocabularies exist and are created everyday. Vocabularies play an important role in the Semantic Web as they enable interoperability across various RDF data sources, and are used by RDF publisher and consumers who refer to them in their data. Each term (class or property) of a vocabulary can be looked up for reference documentation on what it describes and how to use it.
There are tools for creating vocabularies such as a simple text editor for file based vocabularies, Protégé, OntoWiki, Knoodl etc., but they either require a strong knowledge in RDF, don't handle of the publishing out of the box, or require to install a desktop application.
Introducing Neologism
Neologism is a lightweight web-based vocabulary editor and publishing tool built with Drupal. It makes vocabulary authoring easy and fun. Just create a vocabulary, add classes and properties to it, and your vocabulary is instantly published and available online! Several formats are supported via content negotiation: HTML, RDF/XML and N3. All the term URIs are dereferenceable and point to their human readable description. Neologism currently supports a subset of RDFS+OWL which includes rdfs:label, rdfs:comment, rdfs:domain, rdfs:range, rdfs:subClassOf, rdfs:subPropertyOf, owl:inverseOf, owl:disjointWith, owl:FunctionalProperty, owl:InverseFunctionalProperty.
A nice feature of Neologism is its overview Diagram. It allows authors to check their vocabulary for inconsistencies, and it's also very convenient for the vocabulary users to see and understand how the classes are linked to each other. The author of the vocabulary can move the classes around and can save the layout that represents the vocabulary best.
To see Neologism in action, watch our screencast or check out the demo site. You can also download the latest version of Neologism from the Neologism repository.
The Neologism project is naturally free and open source and is maintained by Cosmin Basca, Stéphane Corlosquet, Richard Cyganiak, Sergio Fernández and Thomas Schandl. Feedback or bug reports will be well appreciated.
Neologism at the European Semantic Web Conference - ESWC 2008
Our Neologism paper was accepted for the 4th Workshop on Scripting for the Semantic Web colocated with ESWC earlier this month in Tenerife, Spain. Richard and Sergio did a great presentation and the feedback was very positive, including interest from folks willing to host their existing vocabularies with Neologism.
Drupalities
Neologism is based on Drupal 5 and the contributed modules CCK and multiselect (which were not available for Drupal 6 when we started the project earlier this year). Neologism is implemented as a Drupal module and therefore can be used on existing Drupal sites. It relies on the PHP Content Negotiation library and on RAP for the RDF serialization. Since we wanted to package Neologism as a whole web application with Drupal + modules + libraries, we could not host the project on the Drupal repository, and google code is used instead. The Neologism application uses the native Drupal installer and profile system to enable the right modules during the installation. During this process, the necessary CCK fields are also created automatically via hook_enable() and the .install file.
Coming next
Using Drupal as development platform brings us many features for free such as collaborative editing, permissions, access control, caching and many more. There are other aspects we plan to work on where Drupal will be likely to help like translations and versioning of vocabularies.
It is not yet possible to reuse external vocabularies in Neologism, and this is what we are mainly working on at the moment. An integration with Organic Groups could allow each vocabulary to have its own group and enable collaborative teams to work on specific vocabularies. We also have in mind to create hooks so that the default behavior of Neologism can be altered to fulfill the various needs of the users via sub-modules.
| Attachment | Size |
|---|---|
| Class editing screenshot | 16.04 KB |
| Vocabulary preview | 53.27 KB |

Comments
Great project!
Great project!
Making a distribution out of it that will be hosted separate from the Drupal project however will cost a lot of energy. I'm a bit afraid about the future of the project, you'll need to constantly keep pumping energy in, roll out security updates yourself,...
--
Check out more of my writing on our blog and my Twitter account.
Not so problematic
Our approach is not any different than what the Drupaled guys do. We've developed Neologism in such a way that keeping it up to date is really easy. No Drupal core hack! All the logic is in the Neologism module which contains the required libraries. The only components outside the module directory are the profile and the theme files for the class and property content types. We plan to mirror the module on drupal.org so that people can make use of the Update status module and keep up to date. Finally, the RDF API in Drupal 6 and more will make things even easier...
primary repository
Wouldn't it then be also possible to choose drupal cvs as the primary repository (e.g. where feature requests and issue queue's live) for the neologism module?
--
Check out more of my writing on our blog and my Twitter account.
GPL v3 vs GPL v2
Neologism is GPL v3. Drupal CVS requires GPLv2. Although the legal world finds them compatible, Drupal CVS only allows GPL v2.
Not sure if Neologism has that as a concern, as it could, conceivably, dual license.
3rd party code
FWIW, the main driving factor behind our decision was the need to include 3rd party code; specifically for a WYSIWYG editor and the Audio module. One of the clear things we heard from people using early versions of the install profile was that including a wysiwyg editor was essential for them. While I consider text editors to be instruments of the devil, hey, so it goes.
Our preference would have been to host on the d.o. infrastructure (as we do with the modules we maintain) -- it has many advantages, including centralizing discussion about the profile in the issue queue, and I see us moving in that direction with the D6 release of DrupalEd, text editor or not. Hendler's point re GPL v2 or v3 is also a consideration. But even then, given "We plan to mirror the module on drupal.org so that people can make use of the Update status module and keep up to date" this whole conversation seems like a done deal, as people will have the best of both worlds.
On a more relevant note, this project looks amazing. Thanks for your work on this, and for releasing it out -- I'm looking forward to testing it out.
Cheers,
Bill
FunnyMonkey
Tools for Teachers
FunnyMonkey
Congrats
Nice work! Great to see such progress in creating user friendly, yet standards compliant apps.
This is exactly what open source is about.
great project does anyone know of any bible vocabularies?
I am with www.bible.org and am working on a free study envirement www.nextbible.org and I am very interested in using or developing a bible vocabulary for use in collaboration and finding bible material on the web.
Does anyone know of any work in this area? or can you point me to folks interested in developing these vocabularies.
david
Director of www.bible.org . The home of the NET Bible and thousands of trustworthy Bible study materials all available as a free download to the world
see http://netbible.org a free web based Bible Study Environment
see http://labs.bibl
don't get me wrong, I really
don't get me wrong, I really think the project is great and I'm sure that we will be using it somewhere in the near future. I was just curious why this decision was made and concerned about the extra effort it will take to maintain the project.
--
Check out more of my writing on our blog and my Twitter account.
We wanted the Neologism
We wanted the Neologism project to be platform independent. Some components like the Flex viewer are not Drupal related and intend to have a broader scope than just Neologism, it didn't make sense to keep all its source files in the module directory. A nice side effect is that we have a whole svn repository for ourselves, and we are not restricted when it comes to check in libraries in the repository. It just made things easier. That said, the Drupal.org repository and the issue tracker are great for Drupal related projects, and I encourage using them whenever suited!
There are a couple of things
There are a couple of things that I can think of that would make this immediately usable in a broad basis, outside of communities of people who are interested in making machine-readable RDF schema. That is a local-renaming/alias for the elements that make up the schema
"Properties", "Class", "Sub class", "Super Class" etc can become elements that users can annotate content on a site with, for instance. But, they have names that are self explanatory for people who don't understand semantic web technology theory to fill in with delcarations. The actual RDF schema still contains the correct names for these elements, but people don't have to see these labels in the "standard" way, (unless they want to). I can think of several learning communities that could benefit from this. From letting a community annotate content, then displaying it as a graph, making the RDF available, etc. At the same time, the students learn to collaboratively develop a vocabulary in a way that plugs into RDF schema, and they learn about creating a "Pattern Language" (shared meaning) around content objects
Sam Rose
Social Synergy
Open Source Ecology
P2P Foundation
Sam Rose
Hollymead Capital Partners
P2P Foundation
Social Media Classroom
Drupal module
I'd like to use Neologism, but don't want to have to make up my own install process.
When will the Drupal module be available?
It is already available for developers
http://drupal.org/project/neologism
installing Neologism
I retrieved the module from CVS, but I have no idea how to install it.
readme.txt says I have to install dependencies -- RAP, PHP Content Negotiation, Neologism Flash browser-- I have no idea how to do that.
I improved the instructions
I improved the instructions in the readme file, see http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/neologism/r...
In the future, please file issues at http://drupal.org/node/add/project-issue/neologism
improved Neologism readme.txt
Thank you.
I just installed Drupal, and this is my first install of a
contributed module, so every extra detail is very
helpful to me.