Under Community Review

Publish topics as JSON for Dynamic Delivery publishing output

With the OOB "Dynamic Delivery" Output Format the underlying Topic Content(DITA XML) is published and stored as "XHTML" in the Broker Database. While retrieving the topic content via PCA service, It returns a JSON having a TopicBody field value, which is an XHTML conversion of the DITA XML of the Topic.

So basically we are getting a JSON containing an XHTML field. With this mix of JSON and XHTML types, it is really hard to serialize it to a model object.

It would be great to publish Topic Content as JSON in place of XHTML. It would simplify the serialization of the topic objects in the frontend applications like DXA.

Reference Discussion: https://community.sdl.com/product-groups/sdl-tridion/tridion-docs/f/forum/29488/headless-implementation-of-tridion-docs

  • It's a great idea. I think one of the main ideas here is moving toward a more headless delivery for Tridion Docs. I understand that the DITA community has always pushed back against a JSON representation of DITA, which means on the Content Manager side we are kind of stuck with XML. But there is no reason why we couldn't convert to 100% JSON and headless on the Content Delivery side. This could potentially persuade an entirely new subset of the content management community to adopt Tridion Docs - in particular those who are determined to go headless. Wouldn't it be great if we have a solution that combined the best of both worlds: DITA + Headless together in one product.

    I would also suggest the ability to edit individual topics (i.e. in Draft Space) and also to be able to publish individual topics.