RelaxNG/publiset.rng
changeset 5 69310bc35b63
parent 2 417bb62f2a77
child 20 79713ffae179
equal deleted inserted replaced
4:1db220a61526 5:69310bc35b63
   115   </define>
   115   </define>
   116   <define name="metadata.attributes">
   116   <define name="metadata.attributes">
   117     <ref name="remap.attributes"/>
   117     <ref name="remap.attributes"/>
   118   </define>
   118   </define>
   119   <define name="metadata.content">
   119   <define name="metadata.content">
   120     <optional>
   120     <interleave>
   121       <ref name="title"/>
   121       <optional>
   122     </optional>
   122         <ref name="title"/>
   123     <optional>
   123       </optional>
   124       <ref name="subtitle"/>
   124       <optional>
   125     </optional>
   125         <ref name="subtitle"/>
   126     <optional>
   126       </optional>
   127       <ref name="source"/>
   127       <zeroOrMore>
   128     </optional>
   128         <ref name="author"/>
       
   129       </zeroOrMore>
       
   130       <optional>
       
   131         <ref name="publisher"/>
       
   132       </optional>
       
   133       <optional>
       
   134         <ref name="language"/>
       
   135       </optional>
       
   136       <optional>
       
   137         <ref name="source"/>
       
   138       </optional>
       
   139     </interleave>
   129   </define>
   140   </define>
   130   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ title, subtitle ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   141   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ title, subtitle ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   131   <define name="title">
   142   <define name="title">
   132     <element name="title">
   143     <element name="title">
   133       <ref name="title.content"/>
   144       <ref name="title.content"/>
   138   </define>
   149   </define>
   139   <define name="subtitle">
   150   <define name="subtitle">
   140     <element name="subtitle">
   151     <element name="subtitle">
   141       <ref name="title.content"/>
   152       <ref name="title.content"/>
   142     </element>
   153     </element>
       
   154   </define>
       
   155   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ author, publisher ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       
   156   <!-- ~~~~~~ author -->
       
   157   <define name="author">
       
   158     <element name="author">
       
   159       <ref name="author.content"/>
       
   160     </element>
       
   161   </define>
       
   162   <define name="author.content">
       
   163     <optional>
       
   164       <ref name="firstname"/>
       
   165     </optional>
       
   166     <ref name="lastname"/>
       
   167   </define>
       
   168   <!-- ~~~~~~ publisher -->
       
   169   <define name="publisher">
       
   170     <element name="publisher">
       
   171       <ref name="publisher.content"/>
       
   172     </element>
       
   173   </define>
       
   174   <define name="publisher.content">
       
   175     <ref name="inlines"/>
       
   176   </define>
       
   177   <!-- ~~~~~~ firstname -->
       
   178   <define name="firstname">
       
   179     <element name="firstname">
       
   180       <ref name="firstname.content"/>
       
   181     </element>
       
   182   </define>
       
   183   <define name="firstname.content">
       
   184     <ref name="inlines"/>
       
   185   </define>
       
   186   <!-- ~~~~~~ lastname -->
       
   187   <define name="lastname">
       
   188     <element name="lastname">
       
   189       <ref name="lastname.content"/>
       
   190     </element>
       
   191   </define>
       
   192   <define name="lastname.content">
       
   193     <ref name="inlines"/>
       
   194   </define>
       
   195   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Language ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       
   196   <define name="language">
       
   197     <element name="language">
       
   198       <ref name="language.attributes"/>
       
   199     </element>
       
   200   </define>
       
   201   <define name="language.attributes">
       
   202     <ref name="lang.attribute"/>
       
   203   </define>
       
   204   <define name="lang.attribute">
       
   205     <attribute name="xml:lang">
       
   206       <data type="language"/>
       
   207     </attribute>
   143   </define>
   208   </define>
   144   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ source ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   209   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ source ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   145   <!-- ~~~~~~ source -->
   210   <!-- ~~~~~~ source -->
   146   <define name="source">
   211   <define name="source">
   147     <element name="source">
   212     <element name="source">