wayland/doc/publican
Pekka Paalanen 95c6014a7f doc: document the Wayland XML dialect
Document the XML tags used to describe Wayland protocols. Previously we
only had the informal specification in the Protocol chapter, and the
DTD. Better late than never.

I have looked into wayland-scanner and libwayland for various
limitations documented here possibly for the first time. I have also
forbid things that are not in use or are known broken, including
unspecified interface for a new_id in an event, or an object argument
with an unspecified interface.

I did investigate writing a RELAX NG compact schema for Wayland and
documenting everything there, then generating DocBook XML from it.
However, it seems generating documentation from schema is actually
really complicated. I found these tools:

- xs3p stylesheet: website looks dead, though Sourceforge still
  has it. Produces XHTML, not DocBook. Has an unfamiliar license.
- xsddoc: the authors wrote that XSLT is not really sufficient, so they
  abandoned this approach and went for Java to create xnsdoc.
- xnsdoc: seems to be proprietary licensed, although one could ask for a
  free license for a FLOSS project.

All in all, it seems to be much easier to just write the documentation
in DocBook, copying the strcture from the DTD manually, than to generate
it. It's not doing to change often, anyway. It also allowed me to
leverage DocBook syntax in full.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
2026-01-22 11:08:28 +02:00
..
html doc: Add a chapter on content updates 2026-01-22 10:49:37 +02:00
xsl doc/xsl: rearrange member doc generation 2025-12-29 16:27:42 +02:00
.gitignore doc: rename "Wayland" to "publican" 2013-04-03 15:44:50 -04:00
Architecture.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Author_Group.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Book_Info.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Client.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Color.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Compositors.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Content_Updates.xml doc: Add a chapter on content updates 2026-01-22 10:49:37 +02:00
Foreword.xml doc: fix a root element validation error 2026-01-22 11:08:28 +02:00
Introduction.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
meson.build doc: document the Wayland XML dialect 2026-01-22 11:08:28 +02:00
Message_XML.xml doc: document the Wayland XML dialect 2026-01-22 11:08:28 +02:00
Protocol.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Server.xml doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Wayland.ent doc: Refactor the build system for complete build dir docs 2025-11-27 17:39:11 +02:00
Wayland.xml doc: document the Wayland XML dialect 2026-01-22 11:08:28 +02:00
Xwayland.xml doc: fix Xwayland image validity 2025-12-29 11:19:01 +02:00