Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Apr 2013 12:11:44 +0000 (UTC)
From:      Gabor Kovesdan <gabor@FreeBSD.org>
To:        doc-committers@freebsd.org, svn-doc-projects@freebsd.org
Subject:   svn commit: r41368 - projects/xml-tools/share/xml
Message-ID:  <201304041211.r34CBiM6044242@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gabor
Date: Thu Apr  4 12:11:43 2013
New Revision: 41368
URL: http://svnweb.freebsd.org/changeset/doc/41368

Log:
  - Backport some constraints from DocBook 5.0; this will help keeping
    things consistent and facilitate a future technology upgrade

Modified:
  projects/xml-tools/share/xml/freebsd.sch

Modified: projects/xml-tools/share/xml/freebsd.sch
==============================================================================
--- projects/xml-tools/share/xml/freebsd.sch	Thu Apr  4 12:10:48 2013	(r41367)
+++ projects/xml-tools/share/xml/freebsd.sch	Thu Apr  4 12:11:43 2013	(r41368)
@@ -38,4 +38,173 @@
       <assert test="(. = 'freebsd8') or (. = 'freebsd9') or (. = 'freebsd10')">Invalid os value (<xsl:value-of select="."/>); must be either 'freebsd8', 'freebsd9' or 'freebsd10'.</assert>
     </rule>
   </pattern>
+
+<!--
+	Backported constraints from DocBook 5.0
+-->
+
+   <pattern name="Glossary 'firstterm' type constraint">
+      <rule context="firstterm[@linkend]">
+         <assert test="name(//*[@id=current()/@linkend]) = 'glossentry'">@linkend on firstterm must point to a glossentry.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Footnote reference type constraint">
+      <rule context="footnoteref">
+         <assert test="name(//*[@id=current()/@linkend]) = 'footnote'">@linkend on footnoteref must point to a footnote.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Glossary 'glossterm' type constraint">
+      <rule context="glossterm[@linkend]">
+         <assert test="name(//*[@id=current()/@linkend]) = 'glossentry'">@linkend on glossterm must point to a glossentry.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Synopsis fragment type constraint">
+      <rule context="synopfragmentref">
+         <assert test="name(//*[@id=current()/@linkend]) = 'synopfragment'">@linkend on synopfragmentref must point to a synopfragment.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Glosssary 'see' type constraint">
+      <rule context="glosssee[@otherterm]">
+         <assert test="name(//*[@id=current()/@otherterm]) = 'glossentry'">@otherterm on glosssee must point to a glossentry.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Glossary 'seealso' type constraint">
+      <rule context="glossseealso[@otherterm]">
+         <assert test="name(//*[@id=current()/@otherterm]) = 'glossentry'">@otherterm on glossseealso must point to a glossentry.</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Glossary term definition constraint">
+      <rule context="termdef">
+         <assert test="count(firstterm) = 1">A termdef must contain exactly one firstterm</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Cardinality of segments and titles">
+      <rule context="seglistitem">
+         <assert test="count(seg) = count(../segtitle)">The number of seg elements must be the same as the number of segtitle elements in the parent segmentedlist</assert>
+      </rule>
+   </pattern>
+
+   <pattern name="Element exclusion">
+      <rule context="annotation">
+         <assert test="not(.//annotation)">annotation must not occur in the descendants of annotation</assert>
+      </rule>
+      <rule context="caution">
+         <assert test="not(.//caution)">caution must not occur in the descendants of caution</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of caution</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of caution</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of caution</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of caution</assert>
+      </rule>
+      <rule context="important">
+         <assert test="not(.//caution)">caution must not occur in the descendants of important</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of important</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of important</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of important</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of important</assert>
+      </rule>
+      <rule context="note">
+         <assert test="not(.//caution)">caution must not occur in the descendants of note</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of note</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of note</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of note</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of note</assert>
+      </rule>
+      <rule context="tip">
+         <assert test="not(.//caution)">caution must not occur in the descendants of tip</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of tip</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of tip</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of tip</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of tip</assert>
+      </rule>
+      <rule context="warning">
+         <assert test="not(.//caution)">caution must not occur in the descendants of warning</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of warning</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of warning</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of warning</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of warning</assert>
+      </rule>
+      <rule context="caption">
+         <assert test="not(.//caution)">caution must not occur in the descendants of caption</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of caption</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of caption</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of caption</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of caption</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of caption</assert>
+         <assert test="not(.//sidebar)">sidebar must not occur in the descendants of caption</assert>
+         <assert test="not(.//table)">table must not occur in the descendants of caption</assert>
+         <assert test="not(.//task)">task must not occur in the descendants of caption</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of caption</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of caption</assert>
+      </rule>
+      <rule context="equation">
+         <assert test="not(.//caution)">caution must not occur in the descendants of equation</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of equation</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of equation</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of equation</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of equation</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of equation</assert>
+         <assert test="not(.//table)">table must not occur in the descendants of equation</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of equation</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of equation</assert>
+      </rule>
+      <rule context="example">
+         <assert test="not(.//caution)">caution must not occur in the descendants of example</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of example</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of example</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of example</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of example</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of example</assert>
+         <assert test="not(.//table)">table must not occur in the descendants of example</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of example</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of example</assert>
+      </rule>
+      <rule context="figure">
+         <assert test="not(.//caution)">caution must not occur in the descendants of figure</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of figure</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of figure</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of figure</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of figure</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of figure</assert>
+         <assert test="not(.//table)">table must not occur in the descendants of figure</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of figure</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of figure</assert>
+      </rule>
+      <rule context="table">
+         <assert test="not(.//caution)">caution must not occur in the descendants of table</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of table</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of table</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of table</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of table</assert>
+         <assert test="not(.//informaltable)">informaltable must not occur in the descendants of table</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of table</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of table</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of table</assert>
+      </rule>
+      <rule context="footnote">
+         <assert test="not(.//caution)">caution must not occur in the descendants of footnote</assert>
+         <assert test="not(.//epigraph)">epigraph must not occur in the descendants of footnote</assert>
+         <assert test="not(.//equation)">equation must not occur in the descendants of footnote</assert>
+         <assert test="not(.//example)">example must not occur in the descendants of footnote</assert>
+         <assert test="not(.//figure)">figure must not occur in the descendants of footnote</assert>
+         <assert test="not(.//footnote)">footnote must not occur in the descendants of footnote</assert>
+         <assert test="not(.//important)">important must not occur in the descendants of footnote</assert>
+         <assert test="not(.//indexterm)">indexterm must not occur in the descendants of footnote</assert>
+         <assert test="not(.//note)">note must not occur in the descendants of footnote</assert>
+         <assert test="not(.//sidebar)">sidebar must not occur in the descendants of footnote</assert>
+         <assert test="not(.//table)">table must not occur in the descendants of footnote</assert>
+         <assert test="not(.//task)">task must not occur in the descendants of footnote</assert>
+         <assert test="not(.//tip)">tip must not occur in the descendants of footnote</assert>
+         <assert test="not(.//warning)">warning must not occur in the descendants of footnote</assert>
+      </rule>
+      <rule context="sidebar">
+         <assert test="not(.//sidebar)">sidebar must not occur in the descendants of sidebar</assert>
+      </rule>
+   </pattern>
 </schema>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304041211.r34CBiM6044242>