Mode-independent Computer Aided Interviewing.

What is Sonar?
Sonar is a survey administration engine built on the Java CAI Framework. It combines JCaiF with industry standard technologies like XML, Javascript and CSS to create a survey interface that is both easy to use, and easy to develop. Sonar's goal is to simplify the life of survey authors and programmers, giving them the powerful tools they need to produce large and complex surveys without all the hassle, while making those surveys portable from CAPI to Web to CATI. Sonar CAPI if a fully featured desktop application that provides a visually attrative interface for computer aided personal interviewing, or computer aided self interviewing.
Download | Screenshots | Learn More...
Upcoming 0.8 Features - November 14, 2006
Here is a glimpse at some of the new features being added for version 0.8:
Referencing Objects
You will be able to reference previously defined objects (SurveyQuestions, ComponentContainers, ResponseLists and ListItems) as the base for new ones. For example, you can have a pre-defined <ResponseList id="yes_or_no">, then whenever you have a yes or no question, you don't have to define each ListItem, just use <ResponseList ref="yes_or_no"/> and it will use a copy of the pre-defined list. You can even use a combination of pre-defined and explicit lists like this:
<ResponseList ref="yes_or_no">
This will make a copy of the ResponseList with id="yes_or_no", and add the additional ListItem "Maybe".
(Note: This is already available in CVS).
CSS Styling
You will be able to use external and inline CSS to set display properties on any SurveyObject. All object tags will have an optional style="" attribute to define properties for an instance of an object. You will also be able to define generic styles for all objects of a given class in external .css files. This will allow you to use different .css files on the same survey.xml, giving it a look appropriate for the context in which it is being used. You may want to have one stylesheet for CAPI mode, and another for Web. Or one stylesheet for your west-coast field offices, and another for your east-coast offices. If you have clients who want their own branding applied to the colors and fonts used, you can do that to! All without making any changes to the survey.xml
Version 0.7 Released - October 29, 2006
Version 0.7 of the JCaiF survey framework and Sonar CAPI application have been released.

New in 0.7 is the FormattedInputItem, which provides a ListItem with an additional text input box for respondent added options. FormattedInputItem has all the format options of FormattedInputQuestion, giving you complete control over what text is allowed, and can be added anywhere in a ResponseList. JCaiF has also had several interface changes to clean up the codebase and standardize method names and function.

The most exciting new feature in Sonar is the inclusion of Apache Velocity template parsing, allowing you to "pipe" variable into the text of your question. A new example survey.xml file is also included to show how to use this new feature, as well as demonstrating all of the currently available JCaiF question types. Sonar also added support for the new FormattedInputItem, using the same red/green background color notification used in the FormattedInputQuestion.

I will be working on additional documentation as well as some real-world examples to show what JCaiF and Sonar are capable of, so look for those in the coming months. I would also like to have another developer and/or tester become a member of this project. Java experience is not necessary, but experience in the Market Research industry would be a huge plus. If you are interested, send me an email at:
Version 0.6 Released - May 06, 2006
Version 0.6 of the JCaiF Framework and Sonar CAPI application have been released. Also version 0.1 of Sonar CAWI has been released for evaluation.
Version 0.5.5 Released - December 12, 2006
Version 0.5.5 of both JCaiF and Sonar has been released. This includes some significant changes on the road to version 0.6, see below for the details.

JCaiF has 2 new classes: SurveyEngine and SurveyWindow. These are interface definitions for all JCaiF containers to implement. They will provide a common API for accessing the survey container from the script. References to both are now being passed to the init() function of SurveyObject class upon which all JCaiF objects are based. The APIs will let you do things like setting the current question in the survey engine, or creating popup windows from within the survey script.

Sonar App has a new look and feel, moving the navigation buttons to the bottom center, and replacing those red rounded rectangles with a more elegent blue LED button. Sonar implements both the SurveyEngine and SurveyWindow classes new to JCaiF, and allows you to jump directly to (or back to) any question in the survey using the engine.setCurrentQuestion() function in your scripts.

JCaiF and Sonar are now well on their way to being ready for real world use. I encourage anyone with the chance to give it a test drive, and tell me where it still needs work before you can use it in a production capacity. I hope to make this product ready for general use in the first part of next year, but I need feedback from users to get the bugs worked out, and polish out the rough edges. If you are have downloaded JCaiF or Sonar, please join the jcaif-devel mailing list and let us know what you think, and what you would like to see in the future.
Sonar Redesigned - November 18, 2005
Sonar will be getting some cosmetic changes going into the 0.6 release, as the old design was largely stolen from Opinion One's OASIS survey platform.

I was personally fond of OASIS's visual style and the appeal it gave to their surveys. However, since Sonar is becoming a survey platform in it's own right, I've decided to give it a look and style of it's own.

A preview of the interface changes can be seen on the Screenshots page. I will try to keep these updated with the latest UI changes as I continue work on version 0.6.
Version 0.5 Released - October 01, 2005
Not many changes since 0.4.1, but I have combined the Sonar Engine and JCaiF Applet into a single Sonar package which will be developed independently from the JCaiF package.

The JCaiF package will recieve only minor updates between now and the 1.0 release. Instead focus will be on adding to the JCaiF CoreComponents and JCaiF MediaComponents packages. Requests for new components can be made in the "Tracker" section of SourceForge.

The Sonar package will focus on improving the Sonar Engine and improving the look and feel of the Sonar Application. Development will also start on a Sonar Servlet, Applet, and Web Start Application. Any bugs encountered or feature requests can be made from the "Tracker" section of SourceForge.
Version 0.4.1 Released - September 23, 2005
I have pushed a new release to include the new text input fields: TextInputQuestion, FormattedInputQuestion and NumberInputQuestion. The new survey.xml shows how to use each of them.

Version 0.4 Released - September 06, 2005
As of JCaiF version 0.4, the Sonar Engine now provides a method to retreive data in the form of a JDOM Element structure. This allows version 0.4 of the JCaiFApplet example program to save XML data files using JDOM's XMLOutputter. You can specify a file by passinga file name as the second argument to JCaiFApplet, otherwise it will default to data.xml.

Looking forward:

Version 0.5 will be the feature freeze for the JCaiF framework. From that point on, I will be adding to the CoreComponents library to provide the set of standard question types developers expect from other CAI packages.

Additionally, 0.5 will see the Sonar Engine split out into it's own package, and merged with the JCaiFApplet package. That way other CAI developers can import just the JCaiF library and CoreComponents, and develop their own survey engine. A JCaiF example Servlet will also be developed in this new combined package, to give an example of Web enabled JCaiF.