RelaxNG/publidoc.rnc
changeset 351 715ab7002268
parent 350 58bbf6bb79e2
child 355 469d03c6f570
equal deleted inserted replaced
350:58bbf6bb79e2 351:715ab7002268
   740  & stage*
   740  & stage*
   741  & name*
   741  & name*
   742  & foreign*
   742  & foreign*
   743  & date*
   743  & date*
   744  & math*
   744  & math*
       
   745  & quote*
   745  & initial*
   746  & initial*
   746  & quote*
       
   747  & image*
       
   748  & audio*
       
   749  & smil*
       
   750  & note*
   747  & note*
   751  & link*
   748  & link*
   752  & anchor*
   749  & anchor*
   753  & index*
   750  & index*
       
   751  & image*
       
   752  & audio*
       
   753  & smil*
   754 }
   754 }
   755 
   755 
   756 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sub, sup, var ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   756 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sub, sup, var ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   757 
   757 
   758 sup = element sup { mixed { var* & warning* } }
   758 sup = element sup { mixed { var* & warning* } }
   872    plain.attritute?
   872    plain.attritute?
   873 plain.attritute = attribute plain { xsd:boolean }
   873 plain.attritute = attribute plain { xsd:boolean }
   874 
   874 
   875 latex.content = text
   875 latex.content = text
   876 
   876 
       
   877 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ quote ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   878 
       
   879 quote = element quote { quote.content }
       
   880 
       
   881 quote.content =
       
   882    (phrase, attribution) | inlines
       
   883 
       
   884 phrase = element phrase { phrase.content }
       
   885 
       
   886 phrase.content = inlines
       
   887 
   877 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ initial ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   888 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ initial ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   878 
   889 
   879 initial = element initial { initial.content }
   890 initial = element initial { initial.content }
   880 
   891 
   881 initial.content =
   892 initial.content =
   883    initial.w?
   894    initial.w?
   884 
   895 
   885 initial.c = element c { text }
   896 initial.c = element c { text }
   886 initial.w = element w { inlines }
   897 initial.w = element w { inlines }
   887 
   898 
   888 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ quote ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   899 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ note ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   889 
   900 
   890 quote = element quote { quote.content }
   901 note = element note { note.attributes, note.content }
   891 
   902 
   892 quote.content =
   903 note.attributes =
   893    (phrase, attribution) | inlines
   904    note.label.attribute?
   894 
   905 note.label.attribute = attribute label { text }
   895 phrase = element phrase { phrase.content }
   906 
   896 
   907 note.content =
   897 phrase.content = inlines
   908    (note.w?, block+)
       
   909  | inlines
       
   910 
       
   911 note.w = element w { inlines }
       
   912 
       
   913 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ link ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   914 
       
   915 link = element link { link.attributes, link.content }
       
   916 
       
   917 link.attributes =
       
   918    (uri.attribute | idref.attribute)
       
   919 uri.attribute = attribute uri { xsd:anyURI }
       
   920 idref.attribute = attribute idref { xsd:IDREF }
       
   921 
       
   922 link.content = simple.inlines
       
   923 
       
   924 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ anchor ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   925 
       
   926 anchor = element anchor { anchor.attributes, anchor.content }
       
   927 
       
   928 anchor.attributes =
       
   929    anchor.id.attribute
       
   930 anchor.id.attribute = attribute xml:id { xsd:ID }
       
   931 
       
   932 anchor.content = simple.inlines
   898 
   933 
   899 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ smil ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   934 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ smil ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   900 
   935 
   901 smil = element smil { smil.attributes, smil.content }
   936 smil = element smil { smil.attributes, smil.content }
   902 
   937 
   908 begin.attribute = attribute begin { xsd:decimal }
   943 begin.attribute = attribute begin { xsd:decimal }
   909 end.attribute = attribute end { xsd:decimal }
   944 end.attribute = attribute end { xsd:decimal }
   910 
   945 
   911 smil.content = inlines
   946 smil.content = inlines
   912 
   947 
   913 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ note ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   914 
       
   915 note = element note { note.attributes, note.content }
       
   916 
       
   917 note.attributes =
       
   918    note.label.attribute?
       
   919 note.label.attribute = attribute label { text }
       
   920 
       
   921 note.content =
       
   922    (note.w?, block+)
       
   923  | inlines
       
   924 
       
   925 note.w = element w { inlines }
       
   926 
       
   927 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ link ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   928 
       
   929 link = element link { link.attributes, link.content }
       
   930 
       
   931 link.attributes =
       
   932    (uri.attribute | idref.attribute)
       
   933 uri.attribute = attribute uri { xsd:anyURI }
       
   934 idref.attribute = attribute idref { xsd:IDREF }
       
   935 
       
   936 link.content = simple.inlines
       
   937 
       
   938 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ anchor ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   939 
       
   940 anchor = element anchor { anchor.attributes, anchor.content }
       
   941 
       
   942 anchor.attributes =
       
   943    anchor.id.attribute
       
   944 anchor.id.attribute = attribute xml:id { xsd:ID }
       
   945 
       
   946 anchor.content = simple.inlines
       
   947 
       
   948 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ warning ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   948 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ warning ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   949 
   949 
   950 warning = element warning { warning.attributes, warning.content }
   950 warning = element warning { warning.attributes, warning.content }
   951 
   951 
   952 warning.attributes =
   952 warning.attributes =