The Connexions editing environment provides:
- Both private and public work areas where authors may edit content either individually or in collaboration.
- Methods to create and edit content. The editing interfaces for modules and collections is a web-based graphical user interface, though the CNXML document for modules may also be edited directly through a full source editor.
- Ways to modify content already existing in the repository.
The editing environment provides persistent work areas in which to develop and manage content. Each work area supports basic operations such as object creation, cut/copy/paste, and deletion of both content objects and other files. There are two kinds of work areas provided:
Each user has a private folder to store local copies of content that he or she is working on. Changes made to the local copy do not appear in the repository until the content is published. My Workspace is accessible only by its owner.
Workgroups are functionally identical to My Workspace for managing content, but are owned and accessible by a group of users rather than by an individual. The workgroup and its contents are communal property; each member has the same rights to manage both the workgroup's contents and its membership list.
Create new content
In any work area, a user can create new content objects to prepare for publication in the repository. Many authors will create modules directly on the web, but existing documents can be imported and converted to CNXML by our Importer tool, or a CNXML file can be uploaded directly. Files to be included in the module can be uploaded singly or in a .zip file. Collections must be created through the web interface. Newly created objects do not appear in the repository until they are published.
Modules may be editing using the web-based Edit-in-Place, or the CNXML document may be accessed and edited directly using the Full Source Editor. Collections may be edited using the web-based Collection Composer.
Edit-In-Place is a convenient tool for making quick and easy changes to existing modules. Using Edit-In-Place, you can:
- Add or remove CNXML elements (e.g. paragraphs, lists, equations, exercises, etc.)
- Edit existing elements
- Preview existing documents
Edit-in-Place focuses on one element at a time, and minimizes the amount of CNXML you need to know in order to edit your module.
Full source editor
Not all elements can be edited using Edit-in-Place, and for these you will need to look at the full source code of your module. Connexions provides extensive documentation to help authors learn the different ways they can modify the CNXML document.
The Collection Composer helps you string together multiple modules to create collections. You can also modify how the modules are displayed within the context of your collection: create new titles, augment the original author's links, and decide which versions of the modules should be included in the collection. You can also control certain display parameters, like mathematical symbol sets.
Modifying existing content
The editing environment provides several ways of interacting with and modifying existing published content.
Any user may checkout a local copy of a published piece of content into a work area and make modifications to it. If this is your own content and/or you have been granted a maintainer role, you may republish the modified content. You can request a role change if you need to. These changes will not be visible outside the work area until the content is published as a new version.
Some of the metadata fields on content objects are lists of people who have a specific role for that content, such as author or maintainer. When editing content, a user cannot change another person's roles without that person's agreement. Role change requests remain in a pending state until the other party logs in and approves or rejects them. Note: a content object cannot be published while any role requests for that object remain pending.
You may also email the author of a module or collection directly with feedback by clicking the "E-mail the author" link at the bottom of every module, or at the top of the module next to the author's name.
If a user wishes to take a piece of content in a different direction than its original authors, he or she may wish to derive a new work from the original. This is equivalent to the idea of forking in software development. The derived copy will initially send a role request to the original authors, which is useful for collaborative works or translations. Whether or not the original authors are also included as authors on the derived copy, the published derived copy will automatically give attribution back to the original authors by stating that the content is "Based on work by..."