The Collaborative Authoring Tool (CAT) is a web-based platform that allows authors (singly and in collaboration) to create structured documents. Here "structured" means that the parts of the documents are stored in a way that records their semantic meaning. Chapter titles are known to be chapter titles. The solution to a particular exercise is known to be the solution to that exercise. The person who supplied that solution is an attribute of the solution.
The CAT supports the creation of structured documents by requiring the structure of the document be specified. This specification can be done in advance (for example, the user may choose to re-use the structure of an existing document), or it can develop in parallel with the writing.
The CAT lets the author(s) specify the content of the document in a way that accurately preserves its structure. The appearance of the document is handled separately, and possibly by different people. The detailed structure of the documents makes it possible to output the document in a variety of formats. The structures of the blocks in the document can be re-used, as can the output formats. Note: we are currently focusing on the interface for editing the content of the document. Later we will give a detailed treatment of the output step. For now it is sufficient to have a pretty good html version so that authors can get a general idea of how the document is progressing.
The other main feature of the CAT is a hierarchy of authority over the document. Any change to the contents of the document must be approved by an "editor" -- there may be a few editors or only one. There are "privileged users" who have the ability to suggest a wide variety of changes, but those changes are held in a queue until approved by an editor. There also are less privileged users who can only suggest a small number of changes, such as adding a new exercise or reporting a typo. Again, those changes must be approved.
The CAT will handle a wide variety of documents. We focus on textbooks because they have a more complicated structure than most other documents and have to satisfy a wide variety of users. If the CAT can handle textbooks, then it can easily handle research papers, grant proposals, and other documents.
We have worked through a detailed description of the structure of Rob Beezer's book A first course in linear algebra. That exercise suggests that documents are made up of "blocks", and blocks contain "components" and other blocks. Introducing that small amount of terminology has made it much easier for us to convey what we mean by the "structure" of a document.
The home page of Rob's book, and the book in html.
We are also preparing a description of the structure of Guichard's Calculus textbook.
A list of pages to design, primarily concerning the creation of a book from the author's perspective.
Another list of pages. primarily concerning the management of an open source textbook.