]> granicus.if.org Git - docbook-dsssl/commitdiff
Added several Schematron assertions
authorNorman Walsh <ndw@nwalsh.com>
Fri, 27 Dec 2002 18:55:03 +0000 (18:55 +0000)
committerNorman Walsh <ndw@nwalsh.com>
Fri, 27 Dec 2002 18:55:03 +0000 (18:55 +0000)
schema/relaxng/dbpool.rng

index cb746ed401182790c4b161aaa4d48d13a7bb6fc8..795d8055bd85bdb5ba8128f3da82bae8fddc1bbb 100644 (file)
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <grammar xmlns="http://relaxng.org/ns/structure/1.0"
          xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
+         xmlns:s="http://www.ascc.net/xml/schematron"
          datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
 
 <!-- ...................................................................... -->
@@ -2545,6 +2546,7 @@ d. Just Acronym, Emphasis, and Trademark; no other word elements.
       <oneOrMore>
         <ref name="footnote.mix"/>
       </oneOrMore>
+      <s:assert test="count(.//footnote) = 0"/>
     </element>
   </define>
 <!--end of footnote.element-->
@@ -9034,6 +9036,8 @@ OtherCredit. -->
       <zeroOrMore>
         <ref name="word.char.mix"/>
       </zeroOrMore>
+      <s:assert test="not(@linkend)
+                      or local-name(//*[@id=current()/@linkend]) = 'glossentry'"/>
     </element>
   </define>
 <!--end of firstterm.element-->
@@ -9080,6 +9084,8 @@ OtherCredit. -->
       <zeroOrMore>
         <ref name="para.char.mix"/>
       </zeroOrMore>
+      <s:assert test="not(@linkend)
+                      or local-name(//*[@id=current()/@linkend]) = 'glossentry'"/>
     </element>
   </define>
 <!--end of glossterm.element-->
@@ -9523,6 +9529,10 @@ OtherCredit. -->
           </oneOrMore>
         </choice>
       </optional>
+      <s:assert test="not(@startref) or @class='endofrange'"/>
+      <s:assert test="not(@startref) or count(node()) = 0"/>
+      <s:assert test="not(@startref)
+                      or local-name(//*[@id=current()/@startref]) = 'indexterm'"/>
     </element>
   </define>
 <!--end of indexterm.element-->