XJPARSE=/home/ndw/bin/xjparse
-HTMLSTYLE=/projects/oasis/spectools/stylesheets/oasis-docbook-html.xsl
+HTMLSTYLE=html.xsl
FOSTYLE=fo.xsl
+XSLT=saxon
-XSLPARAM=""
+XSLPARAM=
all: docbook-simple.html
-docbook-simple.html: docbook-simple.xml
+docbook-simple.html: docbook-simple.xml html.xsl
$(XJPARSE) $<
$(XSLT) $< $(HTMLSTYLE) $@ $(XSLPARAM)
tidy -q -utf8 -mn -asxml $@
-docbook-simple.fo: docbook-simple.xml
+docbook-simple.fo: docbook-simple.xml fo.xsl
$(XJPARSE) $<
$(XSLT) $< $(FOSTYLE) docbook-simple.fo $(XSLPARAM)
<!DOCTYPE article [
-<!ENTITY standard "Committee Specification">
-<!ENTITY tracker "http://sourceforge.net/tracker/">
+<!ENTITY standard "Working Draft">
+<!ENTITY tracker "http://sourceforge.net/tracker">
<!ENTITY RFE "&tracker;/index.php?func=detail&group_id=21935&atid=384107&">
+<!ENTITY root "http://www.oasis-open.org/docbook/">
]>
-
-<article status="&standard;">
-
+<article lang="en" status="&standard;">
<articleinfo>
-<productname>cs-docbook-simple</productname>
-<productnumber>1.1</productnumber>
+<releaseinfo role="cvs">
+$Id$
+</releaseinfo>
-<releaseinfo role="product"><ulink url="cs-docbook-simple-1.1.xml">XML</ulink></releaseinfo>
-<releaseinfo role="product"><ulink url="cs-docbook-simple-1.1.html">HTML</ulink></releaseinfo>
-<releaseinfo role="product"><ulink url="cs-docbook-simple-1.1.pdf">PDF</ulink></releaseinfo>
+<!-- product --> <productname>sdocbook</productname>
+<!-- productVersion --> <productnumber>1.2CR1</productnumber>
+<!-- artifactType spec; what else? :-) -->
+<!-- stage --> <releaseinfo role="stage">wd</releaseinfo>
+<!-- revision --> <pubsnumber>01</pubsnumber>
+<!-- language en; see /article/@xml:lang -->
+<!-- form xml -->
-<releaseinfo role="location">http://docbook.org/specs</releaseinfo>
+<releaseinfo role="location">&root;specs</releaseinfo>
<title>The Simplified DocBook Document Type</title>
</editor>
</authorgroup>
-<pubdate>01 Apr 2004</pubdate>
+<pubdate>2006-03-09</pubdate>
<copyright><year>2001</year><year>2002</year><year>2003</year><year>2004</year>
-<year>2005</year>
+<year>2005</year><year>2006</year>
<holder>The Organization for the Advancement of Structured Information
Standards [OASIS]. All Rights Reserved.
</holder></copyright>
<abstract>
<para>Simplified DocBook is a subset of
-<ulink url="http://www.oasis-open.org/docbook/xml/">DocBook XML V4.3</ulink>.
+<ulink url="http://www.oasis-open.org/docbook/xml/">DocBook XML V4.5</ulink>.
It is a
a general purpose XML document type suited to articles about computer hardware
and software (though it is by no means limited to these applications).
</para>
</abstract>
-<legalnotice role="status"><title>Status</title>
+<legalnotice role="status">
<para>This is a working draft constructed by the editor. It is not
an official committee work product and may not reflect the consensus
Simplified DocBook is officially available as an <xref linkend="xml-rec"/> Document Type
Definition (DTD).</para>
-<para>The Version 1.1 release is based on DocBook V4.3.</para>
+<para>The Version 1.2 release is based on DocBook V4.5.</para>
<para>The DocBook Technical Committee welcomes bug reports and
requests for enhancement (RFEs) from the user community. The current list
</section>
<section id="docbook">
-<title>The Simplified DocBook Document Type V1.1</title>
+<title>The Simplified DocBook Document Type V1.2CR1</title>
<para>The Simplified DocBook document type is a subset of
-<xref linkend="bib.docbook43"/>.
+<xref linkend="bib.docbook45"/>.
It is distributed from the
<ulink url="http://www.oasis-open.org/docbook/">DocBook site</ulink> at
<ulink url="http://www.oasis-open.org/">OASIS</ulink>.
<para>To use this document type, specify the public and system identifiers
in your document type declaration. For example:</para>
-<screen><![CDATA[<!DOCTYPE article PUBLIC "-//OASIS//DTD Simplified DocBook XML V1.1//EN"
- "http://docbook.org/xml/simple/1.1/sdocbook.dtd">]]></screen>
+<screen><![CDATA[<!DOCTYPE article PUBLIC "-//OASIS//DTD Simplified DocBook XML V1.2CR1//EN"
+ "http://docbook.org/xml/simple/1.2CR1/sdocbook.dtd">]]></screen>
<para>Naturally, you can include an internal subset if you wish.</para>
public and system identifiers of this module's customization layer in your own. For
example:</para>
-<screen><![CDATA[<!DOCTYPE % sdocbook PUBLIC "-//OASIS//DTD Simplified DocBook XML Customization V1.1//EN"
- "http://docbook.org/xml/simple/1.1/sdocbook-custom.dtd">
+<screen><![CDATA[<!DOCTYPE % sdocbook PUBLIC "-//OASIS//DTD Simplified DocBook XML Customization V1.2CR1//EN"
+ "http://docbook.org/xml/simple/1.2CR1/sdocbook-custom.dtd">
%sdocbook;]]></screen>
</section>
</section>
-<section id="s.changes11">
-<title>Changes in Simplified DocBook V1.1</title>
-
-<para>There are no technical changes in the V1.1 official release.</para>
-
-</section>
-
-<section id="s.changescr2">
-<title>Changes in Simplified DocBook V1.1CR2</title>
+<section id="s.changes12CR1">
+<title>Changes in Simplified DocBook V1.2CR1</title>
-<para>Simplified DocBook V1.1CR2 fixes a few bugs present in V1.1CR1. Some of
-these bugs are the result of a build error; although V1.1 is
-based on DocBook XML V4.3, the V1.1CR1 release included bits of
-DocBook XML V4.4. This error has been corrected.</para>
+<para>Version 1.2CR1 is the first candidate release of Simplified DocBook
+based on DocBook V4.5. It fixes the following bugs in V1.1:</para>
<itemizedlist>
<listitem>
-<para>The <sgmltag>imageobjectco</sgmltag> tag has been removed; it should
-never have been present.</para>
-</listitem>
-<listitem>
-<para>The <sgmltag class="attribute">spacing</sgmltag> attribute has been
-removed from <sgmltag>variablelist</sgmltag>.</para>
-</listitem>
-<listitem>
-<para>The <sgmltag>package</sgmltag> element has been
-removed.</para>
-</listitem>
-<listitem>
-<para>The <sgmltag>biblioref</sgmltag> element has been
-removed.</para>
-</listitem>
-<listitem>
-<para>The content model of <sgmltag>subscript</sgmltag> and
-<sgmltag>superscript</sgmltag> have been adjusted so that they no longer
-contain references to elements not present in Simplified DocBook.</para>
+<para>The <sgmltag>caption</sgmltag> element is no longer required on
+<sgmltag>informaltable</sgmltag> (in fact, it is now forbidden, as it should
+always have been).</para>
</listitem>
</itemizedlist>
-
-</section>
-
-<section id="s.changescr1">
-<title>Changes in Simplified DocBook V1.1CR1</title>
-
-<para>Simplified DocBook V1.1CR1 adds the <sgmltag>subscript</sgmltag>
-and <sgmltag>superscript</sgmltag> elements.</para>
-
-</section>
-
-<section id="s.changesb3">
-<title>Changes in Simplified DocBook V1.1b3</title>
-
-<para>Simplified DocBook V1.1b3 adds the <sgmltag>anchor</sgmltag> element to a
-few more parameter entities, fixing the bug where it was not available in all the
-appropriate contexts in V1.1b2.</para>
-
-</section>
-
-<section id="s.changesb2">
-<title>Changes in Simplified DocBook V1.1b2</title>
-
-<para>Simplified DocBook V1.1b2 adds the <sgmltag>anchor</sgmltag> element and
-the <sgmltag class="attribute">remap</sgmltag> attribute.</para>
-
-</section>
-
-<section id="s.changes">
-<title>Changes in Simplified DocBook V1.1b1</title>
-
-<para>Simplified DocBook V1.1 is based on DocBook V4.3. It introduces
-HTML tables but no other additional markup.</para>
-
</section>
<section><title>Release Notes</title>
<appendix id="a.notices">
<title>Notices</title>
-<para>Copyright © 2001, 2002, 2003, 2004, 2005
+<para>Copyright © 2001, 2002, 2003, 2004, 2005, 2006
OASIS Open, Inc. All Rights Reserved.
</para>
<para><revhistory>
<revision>
-<revnumber>1.1</revnumber>
-<date>01 Apr 2005</date>
-</revision>
-<revision>
-<revnumber>1.1CR2</revnumber>
-<date>21 Oct 2004</date>
-</revision>
-<revision>
-<revnumber>1.1CR1</revnumber>
-<date>27 Jul 2004</date>
-</revision>
-<revision>
-<revnumber>1.1b3</revnumber>
-<date>31 Mar 2004</date>
-</revision>
-<revision>
-<revnumber>1.1b2</revnumber>
-<date>18 Mar 2004</date>
-</revision>
-<revision>
-<revnumber>1.1b1</revnumber>
-<date>21 Dec 2003</date>
+<revnumber>1.2CR1</revnumber>
+<date>09 Mar 2006</date>
</revision>
</revhistory>
</para>
<bibliomixed id="xml-rec"/>
<bibliomixed id="rfc2119"/>
-<bibliomixed id="bib.docbook43"/>
+<bibliomixed id="bib.docbook45"/>
</bibliodiv>
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:import href="/projects/oasis/spectools/stylesheets/oasis-docbook-fo.xsl"/>
<xsl:param name="draft.watermark.image"
select="'/sourceforge/docbook/xsl/images/draft.png'"/>
+<!-- These get evaluated before stripping! -->
+
+<xsl:variable name="tcProduct"
+ select="//articleinfo/productname[1]"/>
+<xsl:variable name="tcProductVersion"
+ select="//articleinfo/productnumber[1]"/>
+<xsl:variable name="tcArtifactType" select="'spec'"/>
+<xsl:variable name="tcStage"
+ select="//articleinfo/releaseinfo[@role='stage'][1]"/>
+<xsl:variable name="tcRevision"
+ select="//articleinfo/pubsnumber[1]"/>
+<xsl:variable name="tcLanguage" select="/@xml:lang"/>
+<xsl:variable name="tcForm" select="'xml'"/>
+
+<xsl:variable name="odnRoot">
+ <xsl:value-of select="$tcProduct"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcProductVersion"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcArtifactType"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcStage"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcRevision"/>
+ <xsl:if test="$tcLanguage != 'en' and $tcLanguage != ''">
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcLanguage"/>
+ </xsl:if>
+</xsl:variable>
+
+<xsl:template match="productname" mode="titlepage.mode">
+ <xsl:variable name="pn" select="../productnumber[1]"/>
+
+ <fo:block>
+ <fo:block font-family="{$title.font.family}"
+ space-before="0.5em">Document identifier:</fo:block>
+ <fo:block margin-left="2em">
+ <xsl:value-of select="$odnRoot"/>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="legalnotice[@role='status']" mode="titlepage.mode">
+ <fo:block>
+ <fo:block font-family="{$title.font.family}"
+ space-before="0.5em">
+ <xsl:text>Status:</xsl:text>
+ </fo:block>
+ <fo:block margin-left="2em">
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </fo:block>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="titlepage.mode">
+ <fo:block keep-with-next="always"
+ font-size="18pt"
+ space-before="10pt"
+ space-after="8pt"
+ font-weight="bold"
+ font-family="{$title.font.family}">
+ <xsl:choose>
+ <xsl:when test="/*/@status">
+ <xsl:value-of select="/*/@status"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>???Unknown Status???</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:text> </xsl:text>
+
+ <xsl:if test="../productnumber">
+ <xsl:text>V</xsl:text>
+ <xsl:value-of select="../productnumber[1]"/>
+ <xsl:text>, </xsl:text>
+ </xsl:if>
+
+ <xsl:call-template name="datetime.format">
+ <xsl:with-param name="date" select="."/>
+ <xsl:with-param name="format" select="'d B Y'"/>
+ </xsl:call-template>
+ </fo:block>
+</xsl:template>
+
</xsl:stylesheet>
--- /dev/null
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+<xsl:import href="/projects/oasis/spectools/stylesheets/oasis-docbook-html.xsl"/>
+
+<xsl:variable name="tcProduct" select="//articleinfo/productname[1]"/>
+<xsl:variable name="tcProductVersion" select="//articleinfo/productnumber[1]"/>
+<xsl:variable name="tcArtifactType" select="'spec'"/>
+<xsl:variable name="tcStage"
+ select="//articleinfo/releaseinfo[@role='stage'][1]"/>
+<xsl:variable name="tcRevision" select="//articleinfo/pubsnumber[1]"/>
+<xsl:variable name="tcLanguage" select="/@lang"/>
+<xsl:variable name="tcForm" select="'xml'"/>
+
+<xsl:variable name="odnRoot">
+ <xsl:value-of select="$tcProduct"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcProductVersion"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcArtifactType"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcStage"/>
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcRevision"/>
+ <xsl:if test="$tcLanguage != 'en' and $tcLanguage != ''">
+ <xsl:text>-</xsl:text>
+ <xsl:value-of select="$tcLanguage"/>
+ </xsl:if>
+</xsl:variable>
+
+<xsl:param name="css.path"
+ select="'http://www.oasis-open.org/spectools/css/'"/>
+
+<xsl:param name="css.stylesheet">
+ <xsl:choose>
+ <xsl:when test="$tcStage = 'wd'">oasis-wd.css</xsl:when>
+ <xsl:when test="$tcStage = 'cd'">oasis-cd.css</xsl:when>
+ <xsl:when test="$tcStage = 'pr'">oasis-pr.css</xsl:when>
+ <xsl:when test="$tcStage = 'cs'">oasis-cs.css</xsl:when>
+ <xsl:when test="$tcStage = 'os'">oasis-os.css</xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>Unrecognized stage: '</xsl:text>
+ <xsl:value-of select="$tcStage"/>
+ <xsl:text>'; styling as Working Draft.</xsl:text>
+ </xsl:message>
+ <xsl:text>oasis-wd.css</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:param>
+
+<xsl:template name="user.head.content">
+ <xsl:param name="node" select="."/>
+
+ <meta name="tcProduct" content="{$tcProduct}"/>
+ <meta name="tcProductVersion" content="{$tcProductVersion}"/>
+ <meta name="tcArtifactType" content="{$tcArtifactType}"/>
+ <meta name="tcStage" content="{$tcStage}"/>
+ <meta name="tcRevision" content="{$tcRevision}"/>
+ <meta name="tcLanguage" content="{$tcLanguage}"/>
+ <meta name="tcForm" content="html"/>
+
+ <style type="text/css">
+ span.paranum { color: #7F7F7F;
+ font-style: italic;
+ font-family: monospace;
+ }
+ span.filename { font-weight: bold; }
+ </style>
+</xsl:template>
+
+<xsl:template name="article.titlepage">
+ <div class="titlepage">
+ <p class="logo">
+ <a href="http://www.oasis-open.org/">
+ <img src="http://www.oasis-open.org/spectools/images/oasis.gif"
+ alt="OASIS" border="0" />
+ </a>
+ </p>
+
+ <xsl:apply-templates select="//articleinfo/title"
+ mode="titlepage.mode"/>
+
+ <h2>
+ <xsl:choose>
+ <xsl:when test="$tcStage = 'wd'">Working Draft</xsl:when>
+ <xsl:when test="$tcStage = 'cd'">Committee Draft</xsl:when>
+ <xsl:when test="$tcStage = 'pr'">Public Review Draft</xsl:when>
+ <xsl:when test="$tcStage = 'cs'">Committee Specification</xsl:when>
+ <xsl:when test="$tcStage = 'os'">OASIS Standard</xsl:when>
+ <xsl:otherwise>
+ <xsl:message>
+ <xsl:text>Unrecognized stage: '</xsl:text>
+ <xsl:value-of select="$tcStage"/>
+ <xsl:text>'; labeling as Working Draft.</xsl:text>
+ </xsl:message>
+ <xsl:text>Working Draft</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>, </xsl:text>
+ <xsl:call-template name="datetime.format">
+ <xsl:with-param name="date" select="//articleinfo/pubdate[1]"/>
+ <xsl:with-param name="format" select="'d B Y'"/>
+ </xsl:call-template>
+ </h2>
+
+ <dl>
+ <dt><span class="docid-heading">Document identifier:</span></dt>
+ <dd>
+ <p>
+ <xsl:value-of select="$odnRoot"/>
+ <xsl:text> (</xsl:text>
+ <a href="{$odnRoot}.xml">.xml</a>
+ <xsl:text>, </xsl:text>
+ <a href="{$odnRoot}.html">.html</a>
+ <xsl:text>, </xsl:text>
+ <a href="{$odnRoot}.pdf">.pdf</a>
+ <xsl:text>)</xsl:text>
+ </p>
+ </dd>
+
+ <dt><span class="loc-heading">Location:</span></dt>
+ <dd>
+ <p>
+ <a href="{//articleinfo/releaseinfo[@role='location']}">
+ <xsl:value-of select="//articleinfo/releaseinfo[@role='location']"/>
+ </a>
+ </p>
+ </dd>
+
+ <dt>
+ <span class="editor-heading">
+ <xsl:text>Editor</xsl:text>
+ <xsl:if test="count(//articleinfo//editor) > 1">
+ <xsl:text>s</xsl:text>
+ </xsl:if>
+ <xsl:text>:</xsl:text>
+ </span>
+ </dt>
+ <dd>
+ <xsl:for-each select="//articleinfo//editor">
+ <p>
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+ </p>
+ </xsl:for-each>
+ </dd>
+
+ <dt><span class="abstract-heading">Abstract:</span></dt>
+ <dd>
+ <xsl:apply-templates select="//articleinfo/abstract[1]/*"/>
+ </dd>
+
+ <dt><span class="status-heading">Status:</span></dt>
+ <dd>
+ <xsl:apply-templates
+ select="//articleinfo/legalnotice[@role='status']/*"/>
+ </dd>
+ </dl>
+
+ <xsl:apply-templates select="//articleinfo/copyright" mode="titlepage.mode"/>
+ </div>
+ <hr />
+</xsl:template>
+
+</xsl:stylesheet>