XWiki doesn't have a workflow feature built in. Actually the goal of XWiki is to favor contributions by making it as simple as possible to contribute content and making it available to others. A validation workflow would hinder this.

That said, there are many use cases for workflows and if you need some simple steps, you can implement them in an adhoc way using XWiki's concept of Classes and Objects.

For example imagine that you want to have document validation before making a document visible to everyone. You could implement this like this:

  • Create an XClass to represent the validation with a boolean validationStep XProperty.
  • Create a UI (an HTML form) to let your users create new documents (wiki pages) and use some xwiki scripting to add XObjects of type XClass when creating these documents. Then set the validation step to some value (say 1).
  • Then offer a UI that lists all documents matching a given validation step and offer some Review button to move them from a step to another one. You could check if the users belongs to a given Group to be able to see this button for example so that only people with proper permissions would be allowed to do that.

Another even simpler way is to use permissions and have users create new documents in a given space (not viewable by some end users) and then using XWiki's scripting, let reviewers move them to another space (where the permissions are set to let them view them).

Essentially this means creating an Application inside XWiki, see the XWiki dev Guide.

You should also check existing Workflow Extensions.

Some other links:


Get Connected