Restructuring Archive » XWiki Evaluation
en

XWiki Evaluation

Software

 Software name: XWiki
 Software version: 1.3.2
 Website: http://www.xwiki.org

Dependencies

 Used for this evaluation;
 Required software: MySQL
 Version: 5.1.24
 Required software: MySQL Connector/J
 Version: 5.1.6
 Required software: Apache Tomcat
 Version: 6.0.14

Requirements Fulfillment

E0 The software must be free and open source

To be considered for use by the opensolaris.org website, the software must be available under an OSI approved open source license.

 Yes. LGPL v2.1 http://www.xwiki.org/xwiki/bin/view/Main/License

E1 The software must have a page history

A page history is considered essential in order that page edits may be logged and, if necessary, reverted. This must also work for page translations. Revision 'diffs' are also highly desirable.

 Yes. Page histories, which may be reverted, and revision diffs are available and these also work for page translations. http://platform.xwiki.org/xwiki/bin/view/Features/VersionControl

E2 The software must have pluggable authentication

The software must be able to be integrated with the opensolaris.org authentication application through the development of suitable code. (See auth.opensolaris.org for more details). Roles held in the OpenSolaris user management system must be mapped to the wiki software's notion of roles in order that permissions may be set appropriately.

 Yes. Pluggable authentication is addressed by implementing the XWikiAuthService interface, mapping of roles held in the auth database to wiki roles should be possible by implementing the XWikiRightService interface. http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Authentication#HCustomAuthentication, http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/user/api/XWikiAuthService.html, http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/user/api/XWikiRightService.html

E3 The software must be Java based

In order that the wiki software can be extended and maintained, given the infrastructure resources, the most sensible choice of technology on which to base the software is Java.

 Yes. XWiki is written in Java. http://www.xwiki.org/xwiki/bin/view/Main/

E4 The software must have a WYSIWYG editor

Not everyone who wishes to contribute to the site will be familiar with the text formatting rules of a particular wiki or indeed with wikis themselves. A 'what you see is what you get' editor makes it easier for people to contribute. The editor should have tool bars, a preview capability and support rich formatting. Ideally, the software should also support pluggable editors.

 Yes. A WYSIWYG editor (TinyMCE) is provided, which has toolbars and supports rich formatting. http://platform.xwiki.org/xwiki/bin/view/Features/PageEditing. A GWT editor is being developed. http://dev.xwiki.org/xwiki/bin/view/Design/NewWysiwygEditorBasedOnGwt

E5 The software must support non-ASCII titles

The software must allow the creation of pages with non-ASCII titles

 Yes. UTF-8 allowed in titles.

E6 The software must support UTF-8

UTF-8 must be the only allowed encoding

 Yes. Encoding can be configured. http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Encoding

E7 The software must support UTF-8 export

Export to other formats, say PDF, should work for non-ASCII characters.

 Yes. UTF-8 export is supported. There are issues with PDF export in that some UTF-8 characters are replaced with '#'. http://jira.xwiki.org/jira/browse/XWIKI-1609

E8 The software must support language tagging

All pages should be tagged with the content-language, that is, authors declare the content-language at page creation time.

 Yes. Languages may be set at page creation time, and each page displays the languages for which there is a translation. http://platform.xwiki.org/xwiki/bin/view/Features/I18N

E9 The software must support translation linking

All language versions of a page should be cross-linked. That is, source pages should point to available translations; translated pages should point back to source. (Translation is not a lossless process. Readers of translated material like to be able to easily refer back to the material in the source language. Many users find the source [typically English] versions first - through search, navigation etc. Linking from the English increases the 'findability' of the translations.)

 Yes. Each page displays the languages for which there is a translation, and page translations are versioned and can be accessed at any version with request parameters. http://platform.xwiki.org/xwiki/bin/view/Features/I18N

E10 The software must support an internationalized UI

All UI strings should be externalized into resource bundles, which allows for easy translation of the UI.

 Yes. Internationalized development is supported. http://platform.xwiki.org/xwiki/bin/view/DevGuide/InternationalizingApplications

E11 The software must support a translation API

Translation processes are greatly simplified if there's an API that allows the content to move in and out. Moving content in and out through the UI does not scale.

 Yes. Some support for the Confluence XMLRPC API which should allow for page retrieval and creation (and resource bundles may be edited as wiki pages). http://platform.xwiki.org/xwiki/bin/view/Features/XMLRPC

E12 The software language support must scale

Any language content model should clearly scale to support many languages.

 Yes. There is an example of large scale multiple language support at http://club.mandriva.com/xwiki/bin/view/Main/

C13 The software should have an active community

In order that defects may be addressed and enhancements be made the software should have an active community with at least mailing list support. Current user guides, administration guides, development guides and API documentation are also highly desirable.

 Yes. Multiple mailing list support is available http://dev.xwiki.org/xwiki/bin/view/Community/MailingLists and the volume of messages reported by http://xwiki.markmail.org/ and monitoring of the users' mailing list suggests that these forums are active. The issue tracking site at http://jira.xwiki.org/jira/secure/Dashboard.jspa also gives an indication of fix activity. There is a list of references indicating widespread usage. http://www.xwiki.org/xwiki/bin/view/References/
 Documentation is available. http://enterprise.xwiki.org/xwiki/bin/view/Main/Documentation

C14 The software should have pluggable content storage

The requirements for extracting content for use elsewhere or indeed for importing content may change over time. While versioned flat-file storage is probably acceptable, it is desirable for the software to have alternative storage capabilities (a database, for example).

 Yes. Hibernate is used in the persistence layer allowing for a variety of content storage options. At least HSQLDB, MySQL, PostgreSQL, Oracle, DB2, Derby and Microsoft SQL Server are supported. http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Installation#HInstallandconfigureaRelationalDatabase
 Other storage mechanisms may be provided by implementing appropriate interfaces. There is also a deprecated JCR implementation.

C15 The software should have pluggable 'look and feel'

For the wiki software to render a familiar look and feel, consistent with the rest of the opensolaris.org website, it should be possible to 'skin' the pages with a pluggable look and feel which may be changed when required. If the software does not natively support this, something like Sitemesh may provide an acceptable alternative.

 Yes. See http://platform.xwiki.org/xwiki/bin/view/Features/Skins

C16 The software should be easy to build, install and manage

Due to the nature of open source projects, the requirements of the wiki may change over time. As well as being flexible enough to meet these needs in terms of deployment and structural re-organization, the software should also have management capabilities or tools to aid the day-to-day administration.

 Yes. There is a fully automated Maven-based build environment. http://dev.xwiki.org/xwiki/bin/view/Community/Building
Installation may be via a war file or standalone distribution. http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Installation
Management may be performed via the configuration files, web-based interface or by using the XWiki Entrprise Manager. http://manager.xwiki.org/xwiki/bin/view/Main/

C17 The software should be susceptible to search indexing

Whatever search technology is chosen for the opensolaris.org site (see http://auth.opensolaris.org/restructuring.html for a brief discussion), the wiki software should be susceptible to indexing by the search software. It should also be able to restrict searches to a particular language.

 Yes. Clearly the search technology has a bearing on this, but a variety of options are possible. Lucene is available as a plugin, there are reports of Google site search being successfully integrated and the backend database is directly searchable through Hibernate queries. http://code.xwiki.org/xwiki/bin/view/Plugins/LucenePlugin

C18 The software should support accessibility

The software should support the use of assistive technologies for people with disabilities. This link provides use cases for people with disabilities and this link provides 16 rules for "Section 508" compliance for web-based applications.

 Yes. Configurable skins mean that pages may be presented in accordance with the W3C WCAG guidlines on which "Section 508" compliance Subpart B 1194.22 paragraphs a-k are based. Paying particular attention to the WAI Guideline 3 style sheets should be used to control presentation and markup should be used as per the specifications.

C19 The software should have support for feeds

The software should support RSS or Atom feeds (for recent changes, for example).

 Yes. See http://platform.xwiki.org/xwiki/bin/view/Features/RSSFeeds

C20 The software should have support for file attachments

The software should support attaching files to a page.

 Yes. See http://platform.xwiki.org/xwiki/bin/view/Features/Attachments

C21 The software should have support for footnotes

The software should support adding footnotes to a page.

 Yes. There is a footnote macro - see http://code.xwiki.org/xwiki/bin/view/Macros/FootnoteMacro

C22 The software should have support for page redirection

The software should support page redirection.

 Yes. See http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Configuration#HRedirections

C23 The software should have taxonomy support (namespaces, categories and hierarchies)

The software should support content structuring with support for page taxonomies, for example, page hierarchies, namespaces and/or categories.

 Yes. XWiki supports spaces, categories (tags) and arbitrarily deep hierarchies of pages. http://platform.xwiki.org/xwiki/bin/view/Features/Spaces

C24 The software should have support for change notification

The software should support notification of page updates, watch lists or similar. This capability should be localized.

 Yes. Support for RSS feeds and WatchLists. http://code.xwiki.org/xwiki/bin/view/Applications/WatchlistApplication

C25 The software should support tracking for orphaned pages

Pages without referring links should be readily identifiable.

 Yes. XWiki supports backlinks (links to the current page), so identifying pages without backlinks is possible with script. It is also possible to identify pages with no parent - see http://platform.xwiki.org/xwiki/bin/view/Features/Programming

C26 The software should support page comments

The ability to comment on a page is distinct from being able to edit the page. The software should support users commenting on pages.

 Yes. Page comments are supported.

C27 The software should support right-to-left layout

The software should support right-to-left GUI layouts.

 No. This might be possible to partially implement with custom skins and templates, but there is no direct support for it. RTL text should be supported by the browser based on Unicode direction. There is also an HTML attribute to explicitly specify this (for quotations, for example). There is no support XWiki support for this. http://www.w3.org/TR/REC-html40/struct/dirlang.html#h-8.2

C28 The software should support versioned translation linking

Translation linking (see above) should link to the correct version. For example, suppose v1.13 of an English page is translated into Korean. The Korean page should link to v1.13, even after the English page is updated to v1.14.

 Yes. It is possible to link to a specific language and version of a page. Different language translations have their own versioning. However, this must be achieved manually using URL parameterization (?rev=x.y) as the default bahaviour is to link to the latest 'source' page.

C29 The software should support translation priority

Some core material [install guides, faqs, admin guides etc] would be important to translate. Consequently, it would be useful if authors could rank the translation priority of their material. That way any translation volunteers, could quickly identify the more urgent material.

 No. It may be possible to write some code to achieve this, but there is no direct support for it.

C30 Content export

The software should support exporting of content into other formats such as PDF, XML, ODF. The ability to export multiple pages in this manner is also desirable (although this overlaps somewhat with the 'pluggable content storage' requirement above, this export requirement is more specific as the above is a more general point directed towards management and backup concerns).

 Yes. Exporting to other formats is supported, for single pages and for multiple pages. http://platform.xwiki.org/xwiki/bin/view/Features/Exports

O31 Virtual server support

In order to give greater flexibility for deployment, it is desirable that the software supports running virtual servers based on hostname. For example, abc.xyz.com is distinct from def.xyz.com even though the two hostnames resolve to the same IP address.

 Yes. See http://platform.xwiki.org/xwiki/bin/view/AdminGuide/Virtualization

O32 Localized page listing

The software should support listing of all pages in a particular language.

 Yes. This should be possible with a small piece of script which directly queries the database. See http://platform.xwiki.org/xwiki/bin/view/DevGuide/velocityHqlExamples

Tags:
Created by admin on 2009/10/26 12:11
Last modified by admin on 2009/10/26 12:11

XWiki Enterprise 2.7.1.34853 - Documentation