|
1 | 1 | === HTMLBook
|
2 | 2 |
|
3 |
| -Let's write books in HTML! |
4 |
| - |
5 |
| -HTMLBook is built on the premise that: |
| 3 | +Let's write books in HTML! HTMLBook is an open HTML5-based XML standard for the authoring and production of both print and digital books. HTMLBook is built on the following premises:: |
6 | 4 |
|
7 | 5 | * 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.
|
8 | 6 | * HTML is the markup language of the world for the foreseeable future.
|
9 | 7 | * Single-source document processing will remain valuable for the foreseeable future.
|
10 | 8 |
|
11 | 9 | As such, HTMLBook can be characterized in the following ways:
|
12 | 10 |
|
13 |
| -* HTMLBook is a subset of XHTML5. |
14 |
| -* HTMLBook will contain no additional elements or attributes outside of the HTML5 specification. |
15 |
| -* All HTMLBook is HTML5, but not all HTML5 is HTMLBook. |
| 11 | +* HTMLBook is a subset of XHTML5. All HTMLBook is HTML5, but not all HTML5 is HTMLBook. |
| 12 | +* HTMLBook contains no additional elements or attributes outside of the HTML5 specification. |
16 | 13 | * HTMLBook is semantically tailored to the structure of a "book" (including more complex content used in technical and reference documents).
|
17 |
| -* HTMLBook is defined with with an XML schema/DTD. |
18 |
| -* HTMLBook templates will be written in CSS. |
19 |
| -* HTMLBook supports both full-fledged book content, as well as shorter-form content—e.g., articles. |
| 14 | +* HTMLBook is defined with and can be validated against an XML schema. |
| 15 | +* HTMLBook templates can be written in CSS. |
| 16 | +
|
| 17 | +=== Getting Started with HTMLBook |
| 18 | + |
| 19 | +* Read the Working Draft of the HTMLBook Specification here: |
| 20 | + |
| 21 | +https://github.com/oreillymedia/HTMLBook/blob/master/specification.asciidoc |
| 22 | + |
| 23 | +* Get the HTMLBook schema here: |
| 24 | + |
| 25 | +https://github.com/oreillymedia/HTMLBook/tree/master/schema |
| 26 | + |
| 27 | +The main HTMLBook Schema file is +htmlbook.xsd+, which imports Schemas (via W3C) for MathML and SVG validation. |
| 28 | + |
| 29 | +You can validate HTML documents against +htmlbook.xsd+ on the command line using +xmllint+: |
| 30 | + |
| 31 | +---- |
| 32 | +$ xmllint --noout --schema htmlbook.xsd <your_html_filename>.html |
| 33 | +---- |
| 34 | + |
| 35 | +Alternatively, to validate in a GUI XML editor like oXygen, add a +xsi:schemaLocation+ declaration to the root +<html>+ element as follows: |
| 36 | + |
| 37 | +---- |
| 38 | +<html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| 39 | + xsi:schemaLocation="http://www.w3.org/1999/xhtml ../schema/htmlbook.xsd" |
| 40 | + xmlns="http://www.w3.org/1999/xhtml"> |
| 41 | +---- |
| 42 | + |
| 43 | +=== Notes on HTMLBook |
| 44 | + |
| 45 | +* The HTMLBook specification is currently in Working Draft status, and will continue to be developed and revised for the foreseeable future. |
| 46 | + |
| 47 | +* If you have any bugs or feature requests for HTMLBook, please submit them via the Issues tab in GitHub |
| 48 | + |
| 49 | +* 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. |
| 50 | + |
| 51 | +* If you would like to contribute to the HTMLBook project, send us a pull request! |
0 commit comments