I have a basic publishing solution for DITA cross-book links in HTML-based outputs:
The solution consists of a DITA plugin (com.synopsys.preserve.keyrefs) that preserves additional scoped-key reference and definition information in the HTML output, along with a perl post-processing script (fix_html_xbook_links.pl) that modifies the HTML files in-place with resolved references.
My approach is to convert cross-book links to pseudo-URL references during preprocess:
This does two things:
I tested the solution with the default DITA-OT html5 and xhtml transformations, and with Oxygen's WebHelp transformation. There are some limitations, described in the Git repo page above.
I'm also hoping to develop a solution for PDFs, but that will be a much harder problem.
Feedback is welcomed!