summaryrefslogtreecommitdiffstats
path: root/addon/doxmlparser/doxygen.dtd
diff options
context:
space:
mode:
Diffstat (limited to 'addon/doxmlparser/doxygen.dtd')
-rw-r--r--addon/doxmlparser/doxygen.dtd225
1 files changed, 175 insertions, 50 deletions
diff --git a/addon/doxmlparser/doxygen.dtd b/addon/doxmlparser/doxygen.dtd
index 5b293d0..319b776 100644
--- a/addon/doxmlparser/doxygen.dtd
+++ b/addon/doxmlparser/doxygen.dtd
@@ -1,37 +1,79 @@
-<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<!-- NOTE: THIS DTD IS NOT UP TO DATE!!! DO NOT DEPEND ON IT -->
-<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- DTD describing the grammar used in doxygen's XML output -->
+<!-- Version 0.1 December 25, 2001 -->
+<!-- Defined by Angelo Hulshout, based on works of Dimitri van Heesch -->
<!-- standard character entities -->
-<!ENTITY lt "&#38;#60;">
-<!ENTITY gt "&#62;">
-<!ENTITY amp "&#38;#38;">
-<!ENTITY apos "&#39;">
-<!ENTITY quot "&#34;">
-
-<!-- required attributes for compounds -->
-<!ENTITY % compound-req.att
+<!ENTITY lt "&#38;#60;">
+<!ENTITY gt "&#62;">
+<!ENTITY amp "&#38;#38;">
+<!ENTITY apos "&#39;">
+<!ENTITY quot "&#34;">
+
+<!--
+ Document root
+-->
+<!ELEMENT doxygen (compounddef)*>
+
+<!--
+ Compound related entities and elements
+-->
+<!ENTITY % compound-req.att
'id ID #REQUIRED
- type (group|file|namespace|
+ kind (group|file|namespace|
class|struct|union|
interface|dispinterface|
valuetype|library) #REQUIRED'
>
-<!-- required attributes for references -->
<!ENTITY % ref-req.att 'idref IDREF #REQUIRED'
>
-<!-- required attributes for inheritance relations -->
<!ENTITY % inheritcompref-req.att
'%ref-req.att;
prot (public|protected|private) #REQUIRED
virt (non-virtual|virtual) #REQUIRED'
>
+<!ELEMENT compounddef (compoundname,
+ basecompoundref*,
+ derivedcompoundref*,
+ sectiondef*,
+ briefdescription,
+ detaileddescription,
+ inheritancegraph?,
+ collaborationgraph?,
+ programlisting?,
+ sourcecode?,
+ location?
+ )
+>
+<!ATTLIST compounddef %compound-req.att;>
+
+<!ELEMENT compoundname (#PCDATA)>
+
+<!ELEMENT location (#PCDATA)>
+<!ATTLIST location file CDATA #REQUIRED line CDATA #REQUIRED >
+
+<!ELEMENT compoundref EMPTY>
+<!ATTLIST compoundref %ref-req.att;>
+
+<!ELEMENT basecompoundref EMPTY>
+<!ATTLIST basecompoundref %inheritcompref-req.att;>
+
+<!ELEMENT derivedcompoundref EMPTY>
+<!ATTLIST derivedcompoundref %inheritcompref-req.att;>
+
+<!ELEMENT memberdef (#PCDATA|type|name|briefdescription|detaileddescription|location|param|initializer|enumvalue)*>
+<!ATTLIST memberdef kind (define|property|variable|typedef|enum|function|signal|prototype|friend|dcop|slot) #REQUIRED id CDATA #REQUIRED virt (normal|virtual|pure-virtual) #REQUIRED prot (public|protected|private) #REQUIRED>
+
+<!ELEMENT briefdescription (#PCDATA|para)*>
+
+<!ELEMENT detaileddescription (#PCDATA|para)*>
+
+<!--
+ Compound attributes related entities and elements
+-->
<!-- required attributes for member sections -->
-<!ENTITY % sec-req.att 'type (user
+<!ENTITY % sec-req.att 'kind (user
|public-type
|public-func
|public-attrib
@@ -59,65 +101,148 @@
) #REQUIRED
'
>
-<!-- required attributes for members -->
<!ENTITY % mem-req.att 'id ID #REQUIRED'>
<!-- optional attributes for function -->
<!ENTITY % func-opt.att 'virt (virtual|pure-virtual) #IMPLIED'>
-<!-- elements -->
-<!ELEMENT doxygen (compounddef)*>
-<!ELEMENT compounddef (compoundname,
- basecompoundref*,
- derivedcompoundref*,
- sectiondef*,
- briefdescription,
- detaileddescription,
- inheritancegraph?,
- collaborationgraph?,
- sourcecode?
- )
->
-<!ATTLIST compounddef %compound-req.att;>
-<!ELEMENT compoundref (#PCDATA)>
-<!ATTLIST compoundref %ref-req.att;>
<!ELEMENT memberref (#PCDATA)>
<!ATTLIST memberref %ref-req.att;>
-<!ELEMENT basecompoundref EMPTY>
-<!ATTLIST basecompoundref %inheritcompref-req.att;>
-<!ELEMENT derivedcompoundref EMPTY>
-<!ATTLIST derivedcompoundref %inheritcompref-req.att;>
+
<!ELEMENT sectionlist (sectiondef)+>
-<!ELEMENT sectiondef (memberlist)>
+
+<!ELEMENT sectiondef (memberdef|memberlist)*>
<!ATTLIST sectiondef %sec-req.att;>
+
<!ELEMENT memberlist (functiondef|variabledef|typedef|definedef|enumdef)+>
-<!ELEMENT functiondef (type?,name,paramlist)>
+
+<!ELEMENT functiondef (type?,name,parameterlist)>
<!ATTLIST functiondef %mem-req.att; %func-opt.att;>
+
<!ELEMENT variabledef (type,name,array?,initializer?)>
<!ATTLIST variabledef %mem-req.att;>
+
+<!ELEMENT parameterlist (title|parametername|parameterdescription)*>
+<!ATTLIST parameterlist kind (param|retval|exception) #REQUIRED>
+
+<!ELEMENT param (attributes?,type?,declname?,defname?,array?,defval?)>
+
+<!ELEMENT parametername (#PCDATA)>
+
+<!ELEMENT parameterdescription (#PCDATA|para)*>
+
+<!ELEMENT defparameterlist (defarg)*>
+
+<!ELEMENT defarg (#PCDATA)>
+
+<!--
+ Programming language declaration related entities and elements
+-->
+<!ELEMENT name (#PCDATA)>
+
<!ELEMENT typedef (type,name)>
<!ATTLIST typedef %mem-req.att;>
-<!ELEMENT definedef (name,defparamlist?,initializer?)>
+
+<!ELEMENT definedef (name,defparameterlist?,initializer?)>
<!ATTLIST definedef %mem-req.att;>
+
<!ELEMENT enumdef (name,enumvaluelist)>
<!ATTLIST enumdef %mem-req.att;>
-<!ELEMENT slotdef (type,name,paramlist)>
+
+<!ELEMENT slotdef (type,name,parameterlist)>
<!ATTLIST slotdef %mem-req.att;>
-<!ELEMENT signaldef (type,name,paramlist)>
+
+<!ELEMENT signaldef (type,name,parameterlist)>
<!ATTLIST signaldef %mem-req.att;>
-<!ELEMENT paramlist (param)*>
-<!ELEMENT param (attributes?,type,declname?,defname?,array?,defval?)>
-<!ELEMENT defparamlist (defarg)*>
-<!ELEMENT defarg (#PCDATA)>
+
<!ELEMENT enumvaluelist (enumvalue)*>
+
<!ELEMENT enumvalue (name,initializer?)>
-<!ELEMENT name (#PCDATA)>
-<!ELEMENT compoundname (#PCDATA)>
+
<!ELEMENT declname (#PCDATA)>
+
<!ELEMENT defname (#PCDATA)>
-<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef)*>
+
+<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef|ref)*>
+
<!ELEMENT defval (#PCDATA|memberref|compoundref)*>
-<!ELEMENT initializer (#PCDATA|memberref|compoundref)*>
+
+<!ELEMENT initializer (#PCDATA|memberref|compoundref|ref)*>
+
<!ELEMENT array (#PCDATA)>
+
<!ELEMENT attributes (#PCDATA)>
+<!--
+ Graph related entities and elements
+-->
+<!ELEMENT collaborationgraph (node)*>
+
+<!ELEMENT inheritancegraph (node)*>
+
+<!ELEMENT node (label|link|childnode)*>
+<!ATTLIST node id CDATA #REQUIRED>
+
+<!ELEMENT childnode (edgelabel)*>
+<!ATTLIST childnode id CDATA #REQUIRED relation CDATA #REQUIRED>
+
+<!ELEMENT label (#PCDATA)>
+
+<!ELEMENT link EMPTY>
+<!ATTLIST link id CDATA #REQUIRED>
+
+<!ELEMENT edgelabel (#PCDATA)>
+
+<!--
+ Source code listing related entities and elements
+-->
+<!ELEMENT codeline (#PCDATA|highlight|ref)*>
+
+<!ELEMENT linenumber (#PCDATA|anchor)*>
+<!ATTLIST linenumber line CDATA #IMPLIED refid CDATA #IMPLIED>
+
+<!ELEMENT sourcecode (linenumber|codeline|highlight|ref)*>
+
+<!ELEMENT itemizedlist (listitem)*>
+
+<!ELEMENT listitem (#PCDATA|para)*>
+
+<!ELEMENT programlisting (#PCDATA|linenumber|codeline|linebreak|highlight)*>
+
+<!--
+ Hypertext related entities and elements
+-->
+<!ELEMENT ulink (#PCDATA)>
+<!ATTLIST ulink url CDATA #REQUIRED>
+
+<!ELEMENT anchor (ref)>
+<!ATTLIST anchor id CDATA #REQUIRED>
+
+<!ELEMENT ref (#PCDATA)>
+<!ATTLIST ref idref CDATA #REQUIRED anchor CDATA #IMPLIED>
+
+<!--
+ Documentation layout entities and elements
+-->
+<!--ELEMENT highlight (#PCDATA|ref)*-->
+<!ELEMENT highlight ANY>
+<!ATTLIST highlight class (preprocessor|keyword|keywordtype|keywordflow|stringliteral|charliteral|comment) #REQUIRED>
+
+<!ELEMENT linebreak EMPTY>
+
+<!--ELEMENT simplesect (title|para)*-->
+<!ELEMENT simplesect ANY>
+<!ATTLIST simplesect kind (see|return|author|version|since|date|bug|note|warning|par|deprecated|pre|post|invariant|remark|attention|todo|test|rcs|enumvalues|examples) #REQUIRED>
+
+<!--ELEMENT computeroutput (#PCDATA)-->
+<!ELEMENT computeroutput ANY>
+
+<!--ELEMENT emphasis (#PCDATA|ref)*-->
+<!ELEMENT emphasis ANY>
+
+<!--ELEMENT title (#PCDATA|ref)*-->
+<!ELEMENT title ANY>
+
+<!--ELEMENT para (#PCDATA|computeroutput|ref|emphasis|parameterlist|simplesect|ulink|programlisting|itemizedlist|linebreak)*-->
+<!ELEMENT para ANY>
+