summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorEliel C. Sardanons <eliels@gmail.com>2009-05-16 20:01:22 +0000
committerEliel C. Sardanons <eliels@gmail.com>2009-05-16 20:01:22 +0000
commit2f996a3ab48899f7ede64028f34d49ce89fc0f48 (patch)
treee4e44b28cc5c02310a85a4e52bffe52daa92c1b0 /doc
parent766972a3cd8262fb06438c2363a0068472b9b627 (diff)
Allow to include sections of other parts of the xml documentation.
Avoid duplicating xml documentation by allowing to include other parts of the xml documentation using XInclude. Example: <xi:include xpointer="xpointer(/docs/function[@name='CHANNEL']/synopsis)" /> (Insert this line to include the synopsis of the CHANNEL function xml documentation). It is also possible to include documentation from other files in the 'documentation/' directory using the href="" attribute inside a xinclude element. (closes issue #15107) Reported by: lmadsen (issue #14444) Reported by: ewieling git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@194982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'doc')
-rw-r--r--doc/appdocsxml.dtd39
1 files changed, 25 insertions, 14 deletions
diff --git a/doc/appdocsxml.dtd b/doc/appdocsxml.dtd
index ba0ef2726..c06f720e1 100644
--- a/doc/appdocsxml.dtd
+++ b/doc/appdocsxml.dtd
@@ -1,4 +1,15 @@
- <!ELEMENT docs (application|function|agi)* >
+ <!ELEMENT docs (application|function|agi)*>
+ <!ATTLIST docs xmlns:xi CDATA #FIXED "http://www.w3.org/2001/XInclude">
+
+ <!ELEMENT xi:include (xi:fallback?) >
+ <!ATTLIST xi:include
+ xmlns:xi CDATA #FIXED "http://www.w3.org/2001/XInclude"
+ href CDATA #IMPLIED
+ parse (xml|text) "xml"
+ xpointer CDATA #IMPLIED
+ encoding CDATA #IMPLIED
+ accept CDATA #IMPLIED
+ accept-language CDATA #IMPLIED >
<!ELEMENT application (synopsis?,syntax?,description?,see-also?)>
<!ATTLIST application name CDATA #REQUIRED>
@@ -12,19 +23,19 @@
<!ATTLIST agi name CDATA #REQUIRED>
<!ATTLIST agi language CDATA #REQUIRED>
- <!ELEMENT see-also (ref*)>
+ <!ELEMENT see-also (ref|xi:include)*>
- <!ELEMENT ref (#PCDATA)*>
+ <!ELEMENT ref (#PCDATA)>
<!ATTLIST ref type (application|function|astcli|link|manpage|filename|agi) #REQUIRED>
<!ELEMENT synopsis (#PCDATA)>
- <!ELEMENT syntax (parameter*)>
+ <!ELEMENT syntax (parameter|xi:include)*>
<!ATTLIST syntax argsep CDATA ",">
- <!ELEMENT description (para|note|warning|variablelist|enumlist)*>
+ <!ELEMENT description (para|note|warning|variablelist|enumlist|xi:include)*>
- <!ELEMENT parameter (optionlist|enumlist|argument|para|note|warning|parameter)*>
+ <!ELEMENT parameter (optionlist|enumlist|argument|para|note|warning|parameter|xi:include)*>
<!ATTLIST parameter name CDATA "">
<!ATTLIST parameter required (yes|no|true|false) "false">
<!ATTLIST parameter multiple (yes|no|true|false) "false">
@@ -34,24 +45,24 @@
<!ATTLIST parameter argsep CDATA ",">
<!ELEMENT optionlist (option+)>
- <!ELEMENT option (argument|para|note|warning|variablelist|enumlist)*>
+ <!ELEMENT option (argument|para|note|warning|variablelist|enumlist|xi:include)*>
<!ATTLIST option name CDATA #REQUIRED>
<!ATTLIST option argsep CDATA ",">
<!ATTLIST option implies CDATA "">
<!ATTLIST option hasparams CDATA "">
<!ELEMENT enumlist (enum+)>
- <!ELEMENT enum (para|note|warning|parameter|enumlist)*>
+ <!ELEMENT enum (para|note|warning|parameter|enumlist|xi:include)*>
<!ATTLIST enum name CDATA "">
- <!ELEMENT argument (para|note|warning|variablelist|argument)*>
+ <!ELEMENT argument (para|note|warning|variablelist|argument|xi:include)*>
<!ATTLIST argument name CDATA #REQUIRED>
<!ATTLIST argument multiple (yes|no|true|false) "false">
<!ATTLIST argument required (yes|no|true|false) "false">
<!ATTLIST argument hasparams (yes|no|true|false|optional) "false">
<!ATTLIST argument argsep CDATA ",">
- <!ELEMENT para (#PCDATA|astcli|literal|emphasis|filename|directory|replaceable|variable)*>
+ <!ELEMENT para (#PCDATA|astcli|literal|emphasis|filename|directory|replaceable|variable|xi:include)*>
<!ELEMENT literal (#PCDATA)>
<!ELEMENT emphasis (#PCDATA)>
<!ELEMENT filename (#PCDATA)>
@@ -59,11 +70,11 @@
<!ELEMENT directory (#PCDATA)>
<!ELEMENT astcli (#PCDATA)>
- <!ELEMENT note (para+)>
- <!ELEMENT warning (para+)>
+ <!ELEMENT note (para+|xi:include*)>
+ <!ELEMENT warning (para+|xi:include*)>
- <!ELEMENT variablelist (variable+)>
- <!ELEMENT variable (#PCDATA|value|para)*>
+ <!ELEMENT variablelist (variable+|xi:include*)>
+ <!ELEMENT variable (#PCDATA|value|para|xi:include)*>
<!ATTLIST variable name CDATA "">
<!ELEMENT value (#PCDATA)>