1: <?php
2:
3: /**
4: * XHTML 1.1 Ruby Annotation Module, defines elements that indicate
5: * short runs of text alongside base text for annotation or pronounciation.
6: */
7: class HTMLPurifier_HTMLModule_Ruby extends HTMLPurifier_HTMLModule
8: {
9:
10: /**
11: * @type string
12: */
13: public $name = 'Ruby';
14:
15: /**
16: * @param HTMLPurifier_Config $config
17: */
18: public function setup($config)
19: {
20: $this->addElement(
21: 'ruby',
22: 'Inline',
23: 'Custom: ((rb, (rt | (rp, rt, rp))) | (rbc, rtc, rtc?))',
24: 'Common'
25: );
26: $this->addElement('rbc', false, 'Required: rb', 'Common');
27: $this->addElement('rtc', false, 'Required: rt', 'Common');
28: $rb = $this->addElement('rb', false, 'Inline', 'Common');
29: $rb->excludes = array('ruby' => true);
30: $rt = $this->addElement('rt', false, 'Inline', 'Common', array('rbspan' => 'Number'));
31: $rt->excludes = array('ruby' => true);
32: $this->addElement('rp', false, 'Optional: #PCDATA', 'Common');
33: }
34: }
35:
36: // vim: et sw=4 sts=4
37: