Ajout de <indexset>
authorPatrick PIERRE
sam., 06 déc. 2014 16:18:43 +0100
changeset 355 469d03c6f570
parent 354 4e1427fce4bb
child 356 2fc11c1323b8
Ajout de <indexset>
Data/Documents/torture_test.xml
Data/Topics/centre_pompidou.xml
RelaxNG/publidoc.rnc
RelaxNG/publimeta.rnc
--- a/Data/Documents/torture_test.xml	dim. nov. 30 18:41:43 2014 +0100
+++ b/Data/Documents/torture_test.xml	sam. déc. 06 16:18:43 2014 +0100
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- $Id$ -->
 <publidoc version="1.0">
-  <document id="torture_test" xml:lang="fr">
+  <document id="torture_test" xml:lang="fr" type="example">
     <head>
       <title>Torture test</title>
       <shorttitle>Test</shorttitle>
@@ -52,6 +52,11 @@
         <subject>Littérature</subject>
         <subject>Mathématiques</subject>
       </subjectset>
+      <indexset>
+        <index>
+          <entry>Publidoc</entry>
+        </index>
+      </indexset>
       <abstract>
         <p>
           Ce fichier rassemble un maximum de situations afin de tester les
@@ -104,7 +109,7 @@
         <p>À mes enfants…</p>
       </section>
     </topic>
-    
+
     <!-- ================================================================== -->
     <topic type="inscription">
       <section>
@@ -120,12 +125,16 @@
         </blockquote>
       </section>
     </topic>
-    
+
     <!-- ================================================================== -->
     <division>
       <head>
         <title>Le niveau section</title>
-        <index><entry>section</entry></index>
+        <indexset>
+          <index>
+            <entry>section</entry>
+          </index>
+        </indexset>
         <abstract>
           <p>Où l'on aborde les différents types de section et les sections en
           différentes langues.</p>
@@ -148,7 +157,11 @@
       <topic>
         <head>
           <title>Les types de section</title>
-          <index><entry>section</entry></index>
+          <indexset>
+            <index>
+              <entry>section</entry>
+            </index>
+          </indexset>
         </head>
         <header>
           <media>
@@ -160,7 +173,12 @@
         <section>
           <head>
             <title>Section normale</title>
-            <index><entry>section</entry><entry>section normale</entry></index>
+            <indexset>
+              <index>
+                <entry>section</entry>
+                <entry>section normale</entry>
+              </index>
+            </indexset>
           </head>
           <section>
             <p>Il dirigea la pointe du bambou vers le tableau noir : « Eh bien,
@@ -202,8 +220,15 @@
         <section>
           <head>
             <title>Section profonde</title>
-            <index><entry>section</entry><entry>section profonde</entry></index>
-            <index><entry>classification phylogénétique</entry></index>
+            <indexset>
+              <index>
+                <entry>section</entry>
+                <entry>section profonde</entry>
+              </index>
+              <index>
+                <entry>classification phylogénétique</entry>
+              </index>
+            </indexset>
           </head>
           <section>
             <head>
@@ -259,7 +284,12 @@
           <head>
             <title>Encadré</title>
             <subtitle>« Casser sa pipe »</subtitle>
-            <index><entry>section</entry><entry>type encadré</entry></index>
+            <indexset>
+              <index>
+                <entry>section</entry>
+                <entry>type encadré</entry>
+              </index>
+            </indexset>
           </head>
           <p>
             Il semblerait que cette expression vienne du Premier empire durant
@@ -277,7 +307,12 @@
         <section type="ex">
           <head>
             <title>Exemple</title>
-            <index><entry>section</entry><entry>type exemple</entry></index>
+            <indexset>
+              <index>
+                <entry>section</entry>
+                <entry>type exemple</entry>
+              </index>
+            </indexset>
           </head>
           <p>Quand on meurt on perd le goût de la vie. Quand on casse sa pipe,
           on perd le goût du tabac.</p>
@@ -361,7 +396,7 @@
         </section>
       </topic>
     </division>
-    
+
     <!-- ================================================================== -->
     <division>
       <head>
@@ -593,11 +628,15 @@
               <tr><th>Consonnes sonores</th><th>Consonnes sourdes</th></tr>
               <tr><td>г, б, з, д, в, ж</td><td>к, п, с, т, ф, ш</td></tr>
             </table>
-            
+
             <table type="template">
               <head>
                 <title>Journal de navigation</title>
-                <index><entry>journal de navigation</entry></index>
+                <indexset>
+                  <index>
+                    <entry>journal de navigation</entry>
+                  </index>
+                </indexset>
               </head>
               <thead>
                 <tr>
@@ -652,7 +691,7 @@
               <caption>Archive P²</caption>
             </table>
           </section>
-          
+
           <section>
             <head>
               <title>Tableau CALS</title>
@@ -749,7 +788,7 @@
           </section>
         </topic>
       </division>
-      
+
       <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       <division>
         <head>
@@ -766,7 +805,11 @@
         <topic xml:id="images">
           <head>
             <title>L'image</title>
-            <index><entry>image</entry></index>
+            <indexset>
+              <index>
+                <entry>image</entry>
+              </index>
+            </indexset>
           </head>
           <section>
             <media>
@@ -803,7 +846,11 @@
             </p>
             <media xml:id="cockpit">
               <head>
-                <index><entry>avion</entry></index>
+                <indexset>
+                  <index>
+                    <entry>avion</entry>
+                  </index>
+                </indexset>
               </head>
               <image id="f-gcru">
                 <hotspot x="68.2%" y="49.5%" w="7.5%" h="14.2%"
@@ -844,7 +891,11 @@
             <media>
               <head>
                 <title>Avion de tourisme</title>
-                <index><entry>avion</entry></index>
+                <indexset>
+                  <index>
+                    <entry>avion</entry>
+                  </index>
+                </indexset>
               </head>
               <image id="plane" type="animation"/>
             </media>
@@ -892,7 +943,7 @@
         </topic>
       </division>
     </division>
-    
+
     <!-- ================================================================== -->
     <division type="inline">
       <head>
@@ -1101,6 +1152,6 @@
         </section>
       </topic>
     </division>
-    
+
   </document>
 </publidoc>
--- a/Data/Topics/centre_pompidou.xml	dim. nov. 30 18:41:43 2014 +0100
+++ b/Data/Topics/centre_pompidou.xml	sam. déc. 06 16:18:43 2014 +0100
@@ -11,7 +11,11 @@
         <keyword>France</keyword>
         <keyword>Architecture</keyword>
       </keywordset>
-      <index><entry>Pompidou</entry></index>
+      <indexset>
+        <index>
+          <entry>Pompidou</entry>
+        </index>
+      </indexset>
     </head>
 
     <section>
--- a/RelaxNG/publidoc.rnc	dim. nov. 30 18:41:43 2014 +0100
+++ b/RelaxNG/publidoc.rnc	sam. déc. 06 16:18:43 2014 +0100
@@ -139,6 +139,11 @@
 
 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ index ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
+# ~~~~~~ indexset
+indexset = element indexset { indexset.content }
+
+indexset.content = head.index+
+
 # ~~~~~~ index
 index = element index { index.content }
 head.index = element index { head.index.content }
@@ -200,8 +205,8 @@
  & (source, source?)?
  & keywordset?
  & subjectset?
+ & indexset?
  & abstract?
- & head.index*
  & cover?
  & annotation*
 
@@ -249,7 +254,7 @@
 
 division.head.content =
    (title, shorttitle?, subtitle*)?
- & head.index*
+ & indexset?
  & abstract?
  & annotation*
 
@@ -289,7 +294,7 @@
  & place?
  & keywordset?
  & subjectset?
- & head.index*
+ & indexset?
  & abstract?
  & annotation*
 
@@ -322,7 +327,7 @@
    (title, shorttitle?, subtitle*)?
  & keywordset?
  & subjectset?
- & head.index*
+ & indexset?
  & abstract?
  & audio*
  & annotation*
@@ -375,7 +380,7 @@
 
 block.head.content =
    (title, shorttitle?, subtitle*)?
- & head.index*
+ & indexset?
 
 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
--- a/RelaxNG/publimeta.rnc	dim. nov. 30 18:41:43 2014 +0100
+++ b/RelaxNG/publimeta.rnc	sam. déc. 06 16:18:43 2014 +0100
@@ -36,7 +36,7 @@
  & lang.attribute?
 metadata.for.attribute = attribute for { xsd:NMTOKEN }
 lang.attribute = attribute xml:lang { xsd:language }
-   
+
 metadata.content =
    (title, shorttitle?, subtitle*)?
  & identifier*
@@ -179,7 +179,7 @@
 territory.attribute = attribute territory { xsd:NMTOKENS }
 
 price.content = xsd:float
-   
+
 
 # =============================================================================
 #                                 BLOCK LEVEL