ezxml_schema.rnc 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. default namespace = "http://ez.no/namespaces/ezpublish3"
  2. namespace image = "http://ez.no/namespaces/ezpublish3/image/"
  3. namespace xhtml = "http://ez.no/namespaces/ezpublish3/xhtml/"
  4. namespace custom = "http://ez.no/namespaces/ezpublish3/custom/"
  5. grammar {
  6. start = element section { sectionContent* }
  7. sectionContent =
  8. element section { sectionContent+ } |
  9. element paragraph { paragraphContent } |
  10. element header { headerContent }
  11. headerContent =
  12. attribute anchor_name { string }?,
  13. attribute level { string }?,
  14. attribute class { string }?,
  15. text
  16. paragraphContent =
  17. attribute class { string }?,
  18. ( inlineContent |
  19. element line { inlineContent } |
  20. element embed { embedAttributes } |
  21. element ol { listContent } |
  22. element ul { listContent } |
  23. element custom {
  24. attribute name { string }
  25. } |
  26. element literal {
  27. attribute class { string }?,
  28. text
  29. } |
  30. element table { tableContent }
  31. )+
  32. listContent =
  33. attribute class { string }?,
  34. element li {
  35. attribute class { string }?,
  36. element paragraph { paragraphContent }+
  37. }+
  38. tableContent =
  39. attribute class { string }?,
  40. attribute width { string }?,
  41. attribute border { string }?,
  42. element tr {
  43. attribute class { string }?,
  44. ( element td { tableCellContent }+ |
  45. element th { tableCellContent }+
  46. )
  47. }+
  48. tableCellContent =
  49. attribute class { string }?,
  50. attribute xhtml:width { string }?,
  51. attribute xhtml:colspan { string }?,
  52. attribute xhtml:rowspan { string }?,
  53. ( sectionContent |
  54. element table { tableContent }
  55. )*
  56. inlineContent =
  57. ( text |
  58. element embed { embedAttributes } |
  59. element embed-inline { embedAttributes } |
  60. element strong { inlineElementContent } |
  61. element emphasize { inlineElementContent } |
  62. element link { linkContent } |
  63. element anchor {
  64. attribute name { string }?,
  65. inlineContent
  66. }
  67. )*
  68. inlineElementContent =
  69. attribute class { string }?,
  70. inlineContent
  71. embedAttributes =
  72. attribute id { string }?,
  73. attribute object_id { string }?,
  74. attribute node_id { string }?,
  75. attribute show_path { string }?,
  76. attribute size { string }?,
  77. attribute align { string }?,
  78. attribute view { string }?,
  79. attribute xhtml:id { string }?,
  80. attribute class { string }?,
  81. attribute target { string }?
  82. linkContent =
  83. attribute class { string }?,
  84. attribute xhtml:id { string }?,
  85. attribute target { string }?,
  86. attribute xhtml:title { string }?,
  87. attribute object_id { string }?,
  88. attribute node_id { string }?,
  89. attribute show_path { string }?,
  90. attribute anchor_name { string }?,
  91. attribute url_id { string }?,
  92. attribute id { string }?,
  93. attribute view { string }?,
  94. inlineContent
  95. }