RelaxNG/publidoc.rng
changeset 36 d23cfb7be79e
parent 35 de4114d12ef1
child 37 83b7ec3c3132
equal deleted inserted replaced
35:de4114d12ef1 36:d23cfb7be79e
   311     </element>
   311     </element>
   312   </define>
   312   </define>
   313   <define name="publisher.content">
   313   <define name="publisher.content">
   314     <ref name="label"/>
   314     <ref name="label"/>
   315     <optional>
   315     <optional>
   316       <ref name="url"/>
   316       <ref name="link"/>
   317     </optional>
   317     </optional>
   318   </define>
   318   </define>
   319   <!-- ~~~~~~ firstname -->
   319   <!-- ~~~~~~ firstname -->
   320   <define name="firstname">
   320   <define name="firstname">
   321     <element name="firstname">
   321     <element name="firstname">
   357       <choice>
   357       <choice>
   358         <value>author</value>
   358         <value>author</value>
   359         <value>illustrator</value>
   359         <value>illustrator</value>
   360       </choice>
   360       </choice>
   361     </attribute>
   361     </attribute>
   362   </define>
       
   363   <!-- ~~~~~~ url -->
       
   364   <define name="url">
       
   365     <element name="url">
       
   366       <ref name="url.content"/>
       
   367     </element>
       
   368   </define>
       
   369   <define name="url.content">
       
   370     <data type="anyURI"/>
       
   371   </define>
   362   </define>
   372   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ place ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   363   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ place ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   373   <define name="place">
   364   <define name="place">
   374     <element name="place">
   365     <element name="place">
   375       <ref name="place.content"/>
   366       <ref name="place.content"/>
   903     </oneOrMore>
   894     </oneOrMore>
   904     <optional>
   895     <optional>
   905       <ref name="caption"/>
   896       <ref name="caption"/>
   906     </optional>
   897     </optional>
   907     <optional>
   898     <optional>
   908       <ref name="url"/>
   899       <ref name="link"/>
   909     </optional>
   900     </optional>
   910   </define>
   901   </define>
   911   <!-- ~~~~~~ image -->
   902   <!-- ~~~~~~ image -->
   912   <define name="image">
   903   <define name="image">
   913     <element name="image">
   904     <element name="image">
  1040   <define name="number.roman.content">
  1031   <define name="number.roman.content">
  1041     <data type="token">
  1032     <data type="token">
  1042       <param name="pattern">[dlxvi]+</param>
  1033       <param name="pattern">[dlxvi]+</param>
  1043     </data>
  1034     </data>
  1044   </define>
  1035   </define>
  1045   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ date ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1036   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ date ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1046   <define name="date">
  1037   <define name="date">
  1047     <element name="date">
  1038     <element name="date">
  1048       <ref name="date.attributes"/>
  1039       <ref name="date.attributes"/>
  1049       <ref name="date.content"/>
  1040       <ref name="date.content"/>
  1050     </element>
  1041     </element>
  1079       <zeroOrMore>
  1070       <zeroOrMore>
  1080         <ref name="sup"/>
  1071         <ref name="sup"/>
  1081       </zeroOrMore>
  1072       </zeroOrMore>
  1082     </mixed>
  1073     </mixed>
  1083   </define>
  1074   </define>
  1084   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ name ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1075   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ name ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1085   <define name="name">
  1076   <define name="name">
  1086     <element name="name">
  1077     <element name="name">
  1087       <ref name="name.attributes"/>
  1078       <ref name="name.attributes"/>
  1088       <ref name="name.content"/>
  1079       <ref name="name.content"/>
  1089     </element>
  1080     </element>
  1105     </attribute>
  1096     </attribute>
  1106   </define>
  1097   </define>
  1107   <define name="name.content">
  1098   <define name="name.content">
  1108     <ref name="inlines"/>
  1099     <ref name="inlines"/>
  1109   </define>
  1100   </define>
  1110   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ note ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1101   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ note ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1111   <define name="note">
  1102   <define name="note">
  1112     <element name="note">
  1103     <element name="note">
  1113       <ref name="note.attributes"/>
  1104       <ref name="note.attributes"/>
  1114       <ref name="note.content"/>
  1105       <ref name="note.content"/>
  1115     </element>
  1106     </element>
  1128       <oneOrMore>
  1119       <oneOrMore>
  1129         <ref name="p"/>
  1120         <ref name="p"/>
  1130       </oneOrMore>
  1121       </oneOrMore>
  1131     </choice>
  1122     </choice>
  1132   </define>
  1123   </define>
  1133   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ foreign ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1124   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ foreign ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1134   <define name="foreign">
  1125   <define name="foreign">
  1135     <element name="foreign">
  1126     <element name="foreign">
  1136       <ref name="foreign.attributes"/>
  1127       <ref name="foreign.attributes"/>
  1137       <ref name="foreign.content"/>
  1128       <ref name="foreign.content"/>
  1138     </element>
  1129     </element>
  1143     </optional>
  1134     </optional>
  1144   </define>
  1135   </define>
  1145   <define name="foreign.content">
  1136   <define name="foreign.content">
  1146     <ref name="inlines"/>
  1137     <ref name="inlines"/>
  1147   </define>
  1138   </define>
  1148   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ highlight ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1139   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ highlight ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1149   <define name="highlight">
  1140   <define name="highlight">
  1150     <element name="highlight">
  1141     <element name="highlight">
  1151       <ref name="highlight.content"/>
  1142       <ref name="highlight.content"/>
  1152     </element>
  1143     </element>
  1153   </define>
  1144   </define>
  1154   <define name="highlight.content">
  1145   <define name="highlight.content">
  1155     <ref name="inlines"/>
  1146     <ref name="inlines"/>
  1156   </define>
  1147   </define>
  1157   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mentioned ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1148   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mentioned ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1158   <define name="mentioned">
  1149   <define name="mentioned">
  1159     <element name="mentioned">
  1150     <element name="mentioned">
  1160       <ref name="mentioned.content"/>
  1151       <ref name="mentioned.content"/>
  1161     </element>
  1152     </element>
  1162   </define>
  1153   </define>
  1163   <define name="mentioned.content">
  1154   <define name="mentioned.content">
  1164     <ref name="inlines"/>
  1155     <ref name="inlines"/>
  1165   </define>
  1156   </define>
  1166   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ quote ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1157   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ quote ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1167   <define name="quote">
  1158   <define name="quote">
  1168     <element name="quote">
  1159     <element name="quote">
  1169       <ref name="quote.content"/>
  1160       <ref name="quote.content"/>
  1170     </element>
  1161     </element>
  1171   </define>
  1162   </define>
  1172   <define name="quote.content">
  1163   <define name="quote.content">
  1173     <ref name="inlines"/>
  1164     <ref name="inlines"/>
  1174   </define>
  1165   </define>
  1175   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ acronym ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1166   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ acronym ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1176   <define name="acronym">
  1167   <define name="acronym">
  1177     <element name="acronym">
  1168     <element name="acronym">
  1178       <ref name="acronym.content"/>
  1169       <ref name="acronym.content"/>
  1179     </element>
  1170     </element>
  1180   </define>
  1171   </define>
  1181   <define name="acronym.content">
  1172   <define name="acronym.content">
  1182     <ref name="inlines"/>
  1173     <ref name="inlines"/>
  1183   </define>
  1174   </define>
  1184   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ term ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1175   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ term ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1185   <define name="term">
  1176   <define name="term">
  1186     <element name="term">
  1177     <element name="term">
  1187       <ref name="term.content"/>
  1178       <ref name="term.content"/>
  1188     </element>
  1179     </element>
  1189   </define>
  1180   </define>
  1190   <define name="term.content">
  1181   <define name="term.content">
  1191     <ref name="inlines"/>
  1182     <ref name="inlines"/>
  1192   </define>
  1183   </define>
  1193   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ link ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1184   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ link ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1194   <define name="link">
  1185   <define name="link">
  1195     <element name="link">
  1186     <element name="link">
  1196       <ref name="link.attributes"/>
  1187       <ref name="link.attributes"/>
  1197       <ref name="link.content"/>
  1188       <ref name="link.content"/>
  1198     </element>
  1189     </element>
  1199   </define>
  1190   </define>
  1200   <define name="link.attributes">
  1191   <define name="link.attributes">
  1201     <optional>
  1192     <choice>
  1202       <choice>
  1193       <ref name="uri.attribute"/>
  1203         <ref name="uri.attribute"/>
  1194       <ref name="idref.attribute"/>
  1204         <ref name="idref.attribute"/>
  1195     </choice>
  1205       </choice>
       
  1206     </optional>
       
  1207   </define>
  1196   </define>
  1208   <define name="uri.attribute">
  1197   <define name="uri.attribute">
  1209     <attribute name="uri">
  1198     <attribute name="uri">
  1210       <data type="anyURI"/>
  1199       <data type="anyURI"/>
  1211     </attribute>
  1200     </attribute>