Bug 712058 - Add support for DITA 1.2-style Next and Previous relationships
Summary: Add support for DITA 1.2-style Next and Previous relationships
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: PressGang CCMS
Classification: Community
Component: Web-UI
Version: 1.x
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Joshua Wulf
QA Contact:
URL:
Whiteboard:
Depends On: 710989
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-06-09 11:48 UTC by Joshua Wulf
Modified: 2014-10-19 22:59 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-02-03 07:44:34 UTC


Attachments (Terms of Use)

Description Joshua Wulf 2011-06-09 11:48:29 UTC
Skynet stores the relationships, and can output them to a DITA reltable. That's pretty straight forward.

With the Docbook output it could implemented like this:

* topics (sections) are stored with no IDs (<- present)

needed to support it:
* a sequence relationship can be specified between tasks A, B, and C linked to a task overview TO

to implement it in the output:
* a copy of A, B, and C - call them A(TO), B(TO), C(TO) are then generated and included in the build with unique IDs, and with the Next and Previous links injected and a link to the overview TO injected
* the dynamically generated version of the topic should be invisible (so it doesn't appear in browse or search)
* if the tasks A,B, and C are not invisible by nature, then the topic is also included in the build as per normal with the Topic ID as the section ID.

This is essentially how DITA does it. IDs are scoped, so the same topic can be included multiple times with unique IDs to allow it to be targeted.

There are probably other, and possibly better ways to implement it with Docbook output; that's the first way I could think of.

Comment 1 Joshua Wulf 2011-06-09 11:49:54 UTC
Actually, Next and Previous relationships are already encoded by Skynet:

<!-- InjectSequence: A, B, C -->

captures it.


Note You need to log in before you can comment on or make changes to this bug.