This question is on my mind too. My clients documentations are usually a mix of MS Word &amp; Visio. Lots of repetition and gunk in between.<p>Ideally, I&#x27;d love to find a mechanism that:<p><pre><code>  - provides the OO principles in documents; Encapsulations, Abstraction, Polymorphism, Inheritance .
  - Accessible &amp; maintainable by non-techies.
  - Allows scripting (I toyed with PlantUML, but it was a bit rigid).</code></pre>