IBML is the XML-based language which I use to write the texts on my personal website in. HTML pages are generated by XSL transformation (server side, since not all browsers can do this). It trys to set up something like a
bibliophile web design. The general objectives are:
- It should combine web design with the typography of German traditional scholarly journals from philological disciplines because I believe that these layouts are very pleasant to the eye – in any event compared to scientific journals with their monotonous standard LaTeΧ layouts.
- As web technology develops quickly (HTML, CSS) texts should be in a format that allows for converting to an up-to-date markup. That is why I store them in XML. This should prevent the loss of texts when relaunching websites resulting in broken links.
- Readers should easily follow updates via channels of there own choice (Facebook, Twitter, syndication). This is achieved by a script that updates these channels simultanously.
- Metadata become more and more important for the communication between different platforms, formats and channels but providing a whole bunch of them is unacceptably time-consuming if you set them manually. I save them once in a database and process them by scripts in order to make them suitable for XML-RPC based blog pings, Schema.org, Open Graph, Dublin Core, Flattr, BibTeΧ, RIS, Atom (syndication), Twitter Cards, and XML sitemaps. Moreover this allows for fast access without parsing the XML file.
- It should be legible on small displays of mobile devices since their share grows rapidly.
- And, of course, pages must load fast.
As the fundamental text structure does not differ from other formats it should be not so difficult to create plugins and packages for other publishing programs that allow writing texts with LaTeΧ or LibreOffice in future. In conjunction with LaTeΧ it would be possible to use biblatex then. XML itself is not all comfortable for typing continuous text in my opinion.
For further information view the layout test page or the credits page.