RelaxNG/publidoc.rnc
changeset 183 f9b4457d0778
parent 182 af222772225f
child 184 68fd62d59f7c
--- a/RelaxNG/publidoc.rnc	sam. mars 16 20:42:16 2013 +0100
+++ b/RelaxNG/publidoc.rnc	dim. mars 17 12:41:21 2013 +0100
@@ -376,18 +376,25 @@
    x.attribute
  & y.attribute
  & w.attribute
- & h.attribute
- & (hotspot.type.attribute & dx.attribute? & dy.attribute?)?
+ & h.attribute?
+ & (hotspot.type.attribute
+  & dx.attribute?
+  & dy.attribute?
+  & dw.attribute?
+  & dh.attribute?)?
 x.attribute = attribute x { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?%"} }
 y.attribute = attribute y { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?%"} }
 w.attribute = attribute w { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?%"} }
 h.attribute = attribute h { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?%"} }
-hotspot.type.attribute = attribute type { "pulse" | "border" }
-dx.attribute = attribute dx { xsd:token {pattern = "-?\d{1,2}(\.\d)?"} }
-dy.attribute = attribute dy { xsd:token {pattern = "-?\d{1,2}(\.\d)?"} }
+hotspot.type.attribute = attribute type { "normal" | "visible" | "pulse" }
+dx.attribute = attribute dx { xsd:token {pattern = "-?\d{1,2}(\.\d{1,2})?"} }
+dy.attribute = attribute dy { xsd:token {pattern = "-?\d{1,2}(\.\d{1,2})?"} }
+dw.attribute = attribute dw { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?"} }
+dh.attribute = attribute dh { xsd:token {pattern = "\d{1,2}(\.\d{1,2})?"} }
    
 hotspot.content =
-   (p | link | image | audio | video)
+   (p | link | image | audio | video),
+   scenario?
    
 # ~~~~~~ media.caption
 media.caption = element caption { caption.attributes, caption.content }
@@ -396,6 +403,29 @@
    x.attribute?
  & y.attribute?
 
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ scenario ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+# ~~~~~~ scenario
+scenario = element scenario { scenario.content }
+
+scenario.content =
+   init*,
+   onclick*
+
+# ~~~~~~ init
+init = element init { init.attributes }
+
+init.attributes =
+   init.action.attribute
+init.action.attribute = attribute action { "hide" }
+
+# ~~~~~~ onclick
+onclick = element onclick { onclick.attributes }
+
+onclick.attributes =
+   onclick.action.attribute
+onclick.action.attribute = attribute action { "show" }
+
 
 # =============================================================================
 #                                 HEAD LEVEL