Documentation tool

Goals

  • The system comes with a complete documentation
  • The documentation comes with the documented bundle
  • The documentation of the bundles integrates to a system documentation
  • Every documentation item is marked as being for one or multiple of the following audiences:
    • Users: this are persons who use the functionality of a bundle without necessarily being able to install the platform themselves. Bundles used only for administration or development do not provide documentation with this scope
    • Admins: this documentation assumes a more technology aware user, it explains dependencies between bundles etc.
    • Developer: documentation for developer, this doesn't substitute the javadoc (it might include it) but provides an overview of the exposed services as well as describing its working
  • The documentation can be browsed:
    • by bundle (seeing only bundles actually providing documentation suitable for the current user)
    • by URI-Path at which functionality is provided
    • by task: this includes howtos and tutorials, if such a documentation entity spans several bundles it is provided by separate bundle that depends on the bundles it documents

Architecture

  • Bundles provide a documentation graph in META-INF/meta.n3
  • When reading the bundle-graphs URIs with the prefix bundle:/// are changed to have the prefix http://<main-hostname>/<bundle-id> where <main-hostname> is a property of the platform of the bundle-graph tool (the bundle assembling the bundle graphs)

Labels

 
(None)