А я расскажу про внутренности.
Глава представлена в виде отдельного файла в формате DocBook XML. Необходим парсер, который разобъёт главу по параграфам, назначив каждому из них свой GUID. Все параграфы должны быть представлены цепочкой, точно знать кто и за кем идёт.
Модель, в которой будут храниться параграфы, должна уметь выдавать html в интерфейс и при сохранении конвертировать html в docbook xml. Так же модель должна уметь делать экспорт всей главы в docbook xml.