├── specification.html ├── .gitignore ├── htmlbook-xsl ├── xspec │ ├── .gitignore │ ├── saxon9he.jar │ ├── src │ │ ├── harnesses │ │ │ ├── .DS_Store │ │ │ ├── saxon │ │ │ │ ├── saxon-xslt-harness.xproc │ │ │ │ └── saxon-xquery-harness.xproc │ │ │ ├── marklogic │ │ │ │ └── ml-xquery-harness.xproc │ │ │ ├── exist │ │ │ │ └── exist-xquery-harness.xproc │ │ │ ├── basex │ │ │ │ ├── basex-standalone-xquery-harness.xproc │ │ │ │ └── basex-server-xquery-harness.xproc │ │ │ └── zorba │ │ │ │ └── zorba-xquery-harness.xproc │ │ ├── schemas │ │ │ ├── find-examples.rnc │ │ │ └── xspec.rnc │ │ ├── compiler │ │ │ ├── generate-query-helper.xsl │ │ │ └── generate-tests-helper.xsl │ │ └── reporter │ │ │ ├── format-xspec-report-folding.xsl │ │ │ └── test-report.css │ ├── java │ │ └── com │ │ │ └── jenitennison │ │ │ └── xslt │ │ │ └── tests │ │ │ ├── XSLTCoverageTraceListener.class │ │ │ └── XSLTCoverageTraceListener.java │ ├── pis.xspec │ ├── fileextension.xspec │ ├── epub.xspec │ ├── tutorial │ │ ├── escape-for-regex.xslt │ │ └── escape-for-regex.xspec │ ├── bin │ │ └── xspec.bat │ ├── indexgen.xspec │ ├── skeleton.html │ └── ncx.xspec ├── localizations │ ├── README │ └── pi.xml ├── pis.xsl ├── mimetypes-by-file-extension.xml ├── valid_epub_types.xml ├── functions-xslt2.xsl ├── functions-exsl.xsl ├── htmlbook.xsl ├── tocgen.xsl ├── ncx.xsl └── param.xsl ├── CODEOWNERS ├── samples ├── images │ └── rain_penguin.png └── markdown │ └── README.md ├── schema ├── mathml3 │ ├── README │ ├── mathml3.xsd │ ├── mathml3-common.xsd │ └── mathml3-strict-content.xsd └── svg │ ├── README │ ├── xlink.xsd │ └── xml.xsd ├── LICENSE ├── README.asciidoc └── stylesheets └── pdf └── pdf.css /specification.html: -------------------------------------------------------------------------------- 1 | index.html -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Mac Finder files 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/.gitignore: -------------------------------------------------------------------------------- 1 | # OS generated files # 2 | ###################### 3 | .DS_Store -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | # These owners will be the default owners for everything in 2 | # the repo. 3 | * @oreillymedia/tools-team -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/saxon9he.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oreillymedia/HTMLBook/HEAD/htmlbook-xsl/xspec/saxon9he.jar -------------------------------------------------------------------------------- /samples/images/rain_penguin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oreillymedia/HTMLBook/HEAD/samples/images/rain_penguin.png -------------------------------------------------------------------------------- /htmlbook-xsl/localizations/README: -------------------------------------------------------------------------------- 1 | Language localizations via docbook-xsl project, snapshot r9779 on 2013-06-11 (http://snapshots.docbook.org/) -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/src/harnesses/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oreillymedia/HTMLBook/HEAD/htmlbook-xsl/xspec/src/harnesses/.DS_Store -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/java/com/jenitennison/xslt/tests/XSLTCoverageTraceListener.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oreillymedia/HTMLBook/HEAD/htmlbook-xsl/xspec/java/com/jenitennison/xslt/tests/XSLTCoverageTraceListener.class -------------------------------------------------------------------------------- /schema/mathml3/README: -------------------------------------------------------------------------------- 1 | W3C MathML XML Schema, via http://www.w3.org/Math/XMLSchema/ 2 | 3 | Note: Some tiny tweaks made to annotation-xml content model (in mathml3-common.xsd) to ensure it was determinist; 4 | see https://github.com/oreillymedia/HTMLBook for file history -------------------------------------------------------------------------------- /samples/markdown/README.md: -------------------------------------------------------------------------------- 1 | This directory contains a sample Markdown document (`open_government_sample.md`) 2 | and how the corresponding content should be converted to HTMLBook (`open_government_sample.html`). 3 | 4 | See https://github.com/oreillymedia/htmlbook.js for open source tooling for converting Markdown to HTMLBook. 5 | -------------------------------------------------------------------------------- /schema/svg/README: -------------------------------------------------------------------------------- 1 | W3C SVG XML Schema, via http://www.w3.org/TR/2002/WD-SVG11-20020108/SVG.xsd 2 | (with some local mods for validity; see https://github.com/oreillymedia/HTMLBook for file history) 3 | 4 | Dependencies also included: 5 | 6 | xlink.xsd, via http://www.w3.org/1999/xlink.xsd 7 | xml.xsd, via http://www.w3.org/2001/xml.xsd -------------------------------------------------------------------------------- /schema/mathml3/mathml3.xsd: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /htmlbook-xsl/pis.xsl: -------------------------------------------------------------------------------- 1 | 8 | 9 | 10 | 11 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/pis.xspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/fileextension.xspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 17 | 18 | 19 |
20 | 21 | 22 | ch01.xhtml 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013 O'Reilly Media, http://oreilly.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/epub.xspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | 16 | 17 | 20 | 21 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /htmlbook-xsl/mimetypes-by-file-extension.xml: -------------------------------------------------------------------------------- 1 | 2 | application/xhtml+xml 3 | text/css 4 | application/xhtml+xml 5 | application/x-dtbncx+xml 6 | application/oebps-package+xml 7 | application/vnd.ms-opentype 8 | font/truetype 9 | image/svg+xml 10 | application/mathml+xml 11 | image/bmp 12 | image/gif 13 | application/postscript 14 | application/pdf 15 | image/png 16 | image/jpeg 17 | image/jpeg 18 | image/tiff 19 | image/tiff 20 | audio/mpeg 21 | audio/mp4 22 | video/mp4 23 | video/ogg 24 | 25 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/tutorial/escape-for-regex.xslt: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 13 | 14 | 15 | 16 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /README.asciidoc: -------------------------------------------------------------------------------- 1 | === HTMLBook 2 | 3 | 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: 4 | 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. 6 | * HTML is the markup language of the world for the foreseeable future. 7 | * Single-source document processing will remain valuable for the foreseeable future. 8 | 9 | As such, HTMLBook can be characterized in the following ways: 10 | 11 | * HTMLBook is a subset of XHTML5. All HTMLBook is XHTML5, but not all XHTML5 is HTMLBook. 12 | * HTMLBook contains no additional elements or attributes outside of the XHTML5 specification. 13 | * HTMLBook is semantically tailored to the structure of a book, including more complex content used in technical and reference documents. 14 | * HTMLBook is defined with and can be validated against an XML schema. 15 | * HTMLBook stylesheets are written in CSS. 16 | 17 | === Getting Started with HTMLBook 18 | 19 | Read the Working Draft of the HTMLBook Specification here: 20 | 21 | http://oreillymedia.github.io/HTMLBook/ 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 .html 33 | ---- 34 | 35 | Alternatively, to validate in a GUI XML editor like oXygen, add a +xsi:schemaLocation+ declaration to the root ++ element as follows: 36 | 37 | ---- 38 | 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! 52 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/bin/xspec.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | SET CP=C:\Program Files (x86)\Oxygen XML Editor\lib\saxon9sa.jar 4 | 5 | SET XSPEC=%1 6 | 7 | REM ========================================== 8 | REM Check if a parameter was passed 9 | REM ========================================== 10 | IF %XSPEC%x == x GOTO notfound 11 | 12 | REM ========================================== 13 | REM Check if xspec document exists 14 | REM ========================================== 15 | IF NOT EXIST %XSPEC% GOTO notfound 16 | GOTO endif1 17 | 18 | :notfound 19 | echo File not found. 20 | echo Usage: 21 | echo xspec filename [coverage] 22 | echo filename should specify an XSpec document 23 | echo if coverage is specified, outputs test coverage report 24 | GOTO end 25 | :endif1 26 | 27 | 28 | SET COVERAGE=%2 29 | 30 | SET TEST_DIR=%~dp1xspec 31 | SET TARGET_FILE_NAME=%~n1 32 | 33 | SET TEST_STYLESHEET="%TEST_DIR%\%TARGET_FILE_NAME%.xsl" 34 | SET COVERAGE_XML="%TEST_DIR%\%TARGET_FILE_NAME%-coverage.xml" 35 | SET COVERAGE_HTML="%TEST_DIR%\%TARGET_FILE_NAME%-coverage.html" 36 | SET RESULT="%TEST_DIR%\%TARGET_FILE_NAME%-result.xml" 37 | SET HTML="%TEST_DIR%\%TARGET_FILE_NAME%-result.html" 38 | 39 | REM ================================================ 40 | REM Create xspec subdirectory for running the tests 41 | REM ================================================ 42 | IF NOT EXIST "%TEST_DIR%" GOTO notestdir 43 | GOTO endif2 44 | :notestdir 45 | echo Creating XSpec Directory at "%TEST_DIR%" ... 46 | mkdir "%TEST_DIR%" 47 | echo. 48 | :endif2 49 | 50 | echo Creating Test Stylesheet... 51 | echo %TEST_STYLESHEET% 52 | echo %XSPEC% 53 | java -cp "%CP%" net.sf.saxon.Transform -o:%TEST_STYLESHEET% -s:%XSPEC% -xsl:"%~dp0\..\src\compiler\generate-xspec-tests.xsl" 54 | echo. 55 | 56 | echo Running Tests... 57 | 58 | REM ======================================= 59 | REM Check if coverage parameter was passed 60 | REM ======================================= 61 | IF %COVERAGE%x == coveragex GOTO coverage 62 | GOTO endif3 63 | :coverage 64 | echo Collecting test coverage data; suppressing progress report... 65 | java -cp "%CP%" net.sf.saxon.Transform -T:com.jenitennison.xslt.tests.XSLTCoverageTraceListener \ 66 | -o:%RESULT% -s:%XSPEC% -xsl:%TEST_STYLESHEET% -it:{http://www.jenitennison.com/xslt/xspec}main 2> %COVERAGE_XML% 67 | 68 | :endif3 69 | 70 | REM ======================================= 71 | REM Run the tests 72 | REM ======================================= 73 | java -cp "%CP%" net.sf.saxon.Transform -o:%RESULT% -s:%XSPEC% -xsl:%TEST_STYLESHEET% -it:{http://www.jenitennison.com/xslt/xspec}main 74 | 75 | echo. 76 | echo Formatting Report... 77 | java -cp "%CP%" net.sf.saxon.Transform -o:%HTML% -s:%RESULT% -xsl:"%~dp0\..\src\reporter\format-xspec-report.xsl" 78 | 79 | REM ======================================= 80 | REM Check if coverage parameter was passed 81 | REM ======================================= 82 | IF %COVERAGE%x == coveragex GOTO coverage2 83 | GOTO endif4 84 | :coverage2 85 | java -cp "%CP%" net.sf.saxon.Transform -l:on -o:%COVERAGE_HTML% -s:%COVERAGE_XML% -xsl:"%~dp0\..\src\reporter\coverage-report.xsl" "tests=%XSPEC%" 86 | %COVERAGE_HTML% 87 | :endif4 88 | 89 | REM ============= 90 | REM Output report 91 | REM ============= 92 | %HTML% 93 | 94 | echo Done. 95 | :end 96 | -------------------------------------------------------------------------------- /htmlbook-xsl/valid_epub_types.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | cover 4 | frontmatter 5 | bodymatter 6 | backmatter 7 | volume 8 | part 9 | chapter 10 | subchapter 11 | division 12 | epigraph 13 | conclusion 14 | afterword 15 | warning 16 | epilogue 17 | foreword 18 | introduction 19 | prologue 20 | preface 21 | preamble 22 | notice 23 | landmarks 24 | lot 25 | index 26 | colophon 27 | appendix 28 | loi 29 | toc 30 | glossary 31 | glossterm 32 | glossdef 33 | biblioentry 34 | bibliography 35 | imprint 36 | errata 37 | copyright-page 38 | acknowledgments 39 | other-credits 40 | titlepage 41 | imprimatur 42 | contributors 43 | halftitlepage 44 | dedication 45 | help 46 | sidebar 47 | annotation 48 | marginalia 49 | practice 50 | note 51 | footnote 52 | rearnote 53 | footnotes 54 | rearnotes 55 | bridgehead 56 | title 57 | halftitle 58 | fulltitle 59 | subtitle 60 | covertitle 61 | concluding-sentence 62 | keyword 63 | topic-sentence 64 | annoref 65 | noteref 66 | page-list 67 | pagebreak 68 | table 69 | table-row 70 | table-cell 71 | list 72 | list-item 73 | 74 | index:index 75 | index:body 76 | index:head 77 | index:legend 78 | index:group 79 | index:entry-list 80 | index:entry 81 | index:term 82 | index:editor-note 83 | index:locator 84 | index:locator-list 85 | index:locator-range 86 | index:xref 87 | index:xref-preferred 88 | index:xref-related 89 | index:term-category 90 | index:term-categories 91 | 92 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/indexgen.xspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 |

Index Feeder

16 |

Let's add some indexterms:

17 |
18 |
19 |

Index heading

20 |

There should hopefully be some index entries to follow

21 |
22 |
23 | 24 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 45 | 46 | 47 | 48 | 49 |
...
50 |
51 | 52 |
53 | 54 | 57 | 58 | 59 | 60 | 61 |
62 |
...
63 |
64 |
65 |
66 | 67 |
68 | 69 |
70 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/tutorial/escape-for-regex.xspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 16 | 17 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 60 | 61 | 62 | 63 | 64 | 67 | 68 | 69 | 70 | 71 | Hello! 72 | Goodbye! 73 | (So long!) 74 | 75 | 76 | 77 | 79 | 80 | 81 | Hello! 82 | Goodbye! 83 | \(So long!\) 84 | 85 | 86 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /htmlbook-xsl/functions-xslt2.xsl: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | 1 15 | 1 32 | 1 33 | 34 | 35 | 36 | 37 | 1 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 74 | 75 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /htmlbook-xsl/functions-exsl.xsl: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | 16 | 1 17 | 18 | 35 | 1 36 | 37 | 38 | 1 39 | 40 | 41 | 42 | 43 | 44 | 46 | 1 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | -------------------------------------------------------------------------------- /stylesheets/pdf/pdf.css: -------------------------------------------------------------------------------- 1 | /* Very basic structural stylesheet for HTMLBook in conjunction 2 | with a PDF formatter such as AntennaHouse or PrinceXML. 3 | Assumes the existence of a user agent stylesheet. */ 4 | 5 | @charset "UTF-8"; 6 | 7 | @page { 8 | size: 7in 9in; 9 | margin: 0.75in 1in; 10 | } 11 | 12 | body[data-type="book"] { 13 | color: cmyk(0%,0%,0%,100%); 14 | hyphens: auto; 15 | } 16 | 17 | /* page counters are tricky */ 18 | 19 | body[data-type="book"] > div[data-type="part"]:first-of-type, 20 | body[data-type="book"] > section[data-type="chapter"]:first-of-type { counter-reset: page 1 } 21 | 22 | body[data-type="book"] > section[data-type="chapter"]+div[data-type="part"] { counter-reset: none } 23 | 24 | /* (((((((((((((( TITLEPAGE )))))))))))))) */ 25 | 26 | section[data-type="titlepage"] { page: titlepage } 27 | 28 | section[data-type="titlepage"] * { text-align: center } 29 | 30 | h2.author { font-style: italic } 31 | 32 | /* (((((((((((((( COPYRIGHT )))))))))))))) */ 33 | 34 | section[data-type="titlepage"] { page: copyright } 35 | 36 | /* (((((((((((((( DEDICATION )))))))))))))) */ 37 | 38 | section[data-type="dedication"] { page: dedication } 39 | 40 | section[data-type="dedication"] p { font-style: italic } 41 | 42 | section[data-type="dedication"] * { text-align: center } 43 | 44 | /* (((((((((((((( TOC )))))))))))))) */ 45 | 46 | nav[data-type="toc"] { page: toc } 47 | 48 | @page toc:right { 49 | @bottom-right-corner { content: counter(page, lower-roman) } 50 | } 51 | 52 | @page toc:left { 53 | @bottom-left-corner { content: counter(page, lower-roman) } 54 | } 55 | 56 | nav[data-type="toc"] ol { list-style-type: none } 57 | 58 | /* (((((((((((((( FOREWORD )))))))))))))) */ 59 | 60 | section[data-type="foreword"] { page: foreword } 61 | 62 | @page foreword:right { 63 | @bottom-right-corner { content: counter(page, lower-roman) } 64 | } 65 | 66 | @page foreword:left { 67 | @bottom-left-corner { content: counter(page, lower-roman) } 68 | } 69 | 70 | /* (((((((((((((( PREFACE )))))))))))))) */ 71 | 72 | section[data-type="preface"] { page: preface } 73 | 74 | @page preface:right { 75 | @bottom-right-corner { content: counter(page, lower-roman) } 76 | } 77 | 78 | @page preface:left { 79 | @bottom-left-corner { content: counter(page, lower-roman) } 80 | } 81 | 82 | /* (((((((((((((( PART )))))))))))))) */ 83 | 84 | div[data-type="part"] { page: part } 85 | 86 | /* (((((((((((((( CHAPTER )))))))))))))) */ 87 | 88 | section[data-type="chapter"] { 89 | page: chapter; 90 | page-break-before: always; 91 | } 92 | 93 | @page chapter:right { 94 | @bottom-right-corner { content: counter(page) } 95 | } 96 | 97 | @page chapter:left { 98 | @bottom-left-corner { content: counter(page) } 99 | } 100 | 101 | /* (((((((((((((( APPENDIX )))))))))))))) */ 102 | 103 | section[data-type="appendix"] { 104 | page: appendix; 105 | page-break-before: always; 106 | } 107 | 108 | @page appendix:right { 109 | @bottom-right-corner { content: counter(page) } 110 | } 111 | 112 | @page appendix:left { 113 | @bottom-left-corner { content: counter(page) } 114 | } 115 | 116 | /* (((((((((((((( GLOSSARY )))))))))))))) */ 117 | 118 | section[data-type="glossary"] { page: glossary } 119 | 120 | @page glossary:right { 121 | @bottom-right-corner { content: counter(page) } 122 | } 123 | 124 | @page glossary:left { 125 | @bottom-left-corner { content: counter(page) } 126 | } 127 | 128 | /* (((((((((((((( BIBLIOGRAPHY )))))))))))))) */ 129 | 130 | section[data-type="bibliography"] { page: bibliography } 131 | 132 | @page bibliography:right { 133 | @bottom-right-corner { content: counter(page) } 134 | } 135 | 136 | @page bibliography:left { 137 | @bottom-left-corner { content: counter(page) } 138 | } 139 | 140 | /* (((((((((((((( INDEX )))))))))))))) */ 141 | 142 | section[data-type="index"] { page: index } 143 | 144 | @page index:right { 145 | @bottom-right-corner { content: counter(page) } 146 | } 147 | 148 | @page index:left { 149 | @bottom-left-corner { content: counter(page) } 150 | } 151 | 152 | /* (((((((((((((( COLOPHON )))))))))))))) */ 153 | 154 | section[data-type="colophon"] { page: colophon } 155 | 156 | /* (((((((((((((( BLOCKS )))))))))))))) */ 157 | 158 | h1, h2, h3, h4, h5 { 159 | hyphens: none; 160 | text-align: left; 161 | } 162 | 163 | img { max-width: 100% } 164 | 165 | /* (((((((((((((( INLINES )))))))))))))) */ 166 | 167 | code { font-family: monospace } 168 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/src/harnesses/saxon/saxon-xslt-harness.xproc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 22 | 23 | 24 |

This pipeline executes an XSpec test suite with the Saxon embedded in Calabash.

25 |

Primary input: A XSpec test suite document.

26 |

Primary output: A formatted HTML XSpec report.

27 |
28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 |
56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /schema/mathml3/mathml3-common.xsd: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /htmlbook-xsl/xspec/skeleton.html: -------------------------------------------------------------------------------- 1 | ]> 2 | 3 | 4 | Book Skeleton 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 |
14 | 15 |
16 |

Book Skeleton

17 |

By Sanders Kleinfeld

18 |

An O'Reilly Media Publication

19 |
20 |
21 |

Copyright 2013 O'Reilly Media, Inc.

22 |

All Rights Reserved

23 | 24 |
25 |