Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/oreillymedia/HTMLBook

Let's write books in HTML!
https://github.com/oreillymedia/HTMLBook

Last synced: 2 months ago
JSON representation

Let's write books in HTML!

Awesome Lists containing this project

README

        

=== HTMLBook

Let's write books in HTML! HTMLBook is an open, XHTML5-based standard for the authoring and production of both print and digital books. HTMLBook is built on the following premises:

* Books are timeless. The basic "book" structure has persisted for hundreds of years and will continue to persist for our lifetimes, be it in digital or print form.
* HTML is the markup language of the world for the foreseeable future.
* Single-source document processing will remain valuable for the foreseeable future.

As such, HTMLBook can be characterized in the following ways:

* HTMLBook is a subset of XHTML5. All HTMLBook is XHTML5, but not all XHTML5 is HTMLBook.
* HTMLBook contains no additional elements or attributes outside of the XHTML5 specification.
* HTMLBook is semantically tailored to the structure of a book, including more complex content used in technical and reference documents.
* HTMLBook is defined with and can be validated against an XML schema.
* HTMLBook stylesheets are written in CSS.

=== Getting Started with HTMLBook

Read the Working Draft of the HTMLBook Specification here:

http://oreillymedia.github.io/HTMLBook/

Get the HTMLBook schema here:

https://github.com/oreillymedia/HTMLBook/tree/master/schema

The main HTMLBook Schema file is +htmlbook.xsd+, which imports Schemas (via W3C) for MathML and SVG validation.

You can validate HTML documents against +htmlbook.xsd+ on the command line using +xmllint+:

----
$ xmllint --noout --schema htmlbook.xsd .html
----

Alternatively, to validate in a GUI XML editor like oXygen, add a +xsi:schemaLocation+ declaration to the root ++ element as follows:

----

----

=== Notes on HTMLBook

* The HTMLBook specification is currently in Working Draft status, and will continue to be developed and revised for the foreseeable future.

* If you have any bugs or feature requests for HTMLBook, please submit them via the Issues tab in GitHub.

* In the coming months, we will be adding additional tools to the HTMLBook project for authoring and producing books with HTMLBook: CSS stylesheets, scripts for generating EPUB/Mobi, etc.

* If you would like to contribute to the HTMLBook project, send us a pull request!