summaryrefslogtreecommitdiff
path: root/xml/log4perl.dtd
diff options
context:
space:
mode:
Diffstat (limited to 'xml/log4perl.dtd')
-rw-r--r--xml/log4perl.dtd77
1 files changed, 77 insertions, 0 deletions
diff --git a/xml/log4perl.dtd b/xml/log4perl.dtd
new file mode 100644
index 0000000..8ba9806
--- /dev/null
+++ b/xml/log4perl.dtd
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!-- This adds some functionality onto the log4j.dtd -->
+<!-- Authors: Kevin Goess -->
+<!-- Version: 1.0 -->
+
+
+<!-- include the log4j dtd -->
+<!ENTITY % log4j.dtd SYSTEM "log4j-1.2.dtd">
+%log4j.dtd;
+
+
+<!-- overriding log4j:configuration with log4perl:configuration
+ so that we can use a log4perl:appender -->
+<!ELEMENT log4perl:configuration (renderer*, log4perl:appender*, appender*,
+ (log4perl:filter)*,(category|logger)*,root?, PatternLayout?)>
+
+<!ATTLIST log4perl:configuration
+ xmlns:log4perl CDATA #FIXED "http://log4perl.sourceforge.net/"
+ threshold (all|debug|info|warn|error|fatal|off|null) "null"
+ debug (true|false|null) "null"
+ oneMessagePerAppender (true|false|null) "null"
+>
+
+
+<!-- overriding log4j's appender with log4perl:appender so can include
+ other kinds of param structures -->
+<!ELEMENT log4perl:appender (errorHandler?, (param|param-nested|param-text)*,
+ (layout|log4perl:layout)?, filter*, filter-ref*, appender-ref*)>
+<!ATTLIST log4perl:appender
+ xmlns:log4perl CDATA #FIXED "http://log4perl.sourceforge.net/"
+ name ID #REQUIRED
+ class CDATA #REQUIRED
+>
+
+<!-- a complex param type -->
+<!ELEMENT param-nested ((param|param-nested|param-text)+)>
+<!ATTLIST param-nested
+ name CDATA #REQUIRED
+>
+
+
+<!-- so you can put the value in the text instead of always having to
+ put it in the attribute -->
+<!ELEMENT param-text (#PCDATA)>
+<!ATTLIST param-text
+ name CDATA #REQUIRED
+>
+
+<!-- a top-level PatternLayout to handle global cspecs -->
+<!ELEMENT PatternLayout (cspec+)>
+
+<!-- custom conversion specifiers -->
+<!ELEMENT cspec (#PCDATA)>
+<!ATTLIST cspec
+ name CDATA #REQUIRED
+>
+
+
+<!ELEMENT log4perl:layout ((param|cspec)*)>
+<!ATTLIST log4perl:layout
+ class CDATA #REQUIRED
+>
+
+<!-- This is the filter at the document root, as opposed to the appender
+ children filters. This implement the log4perl-specific boolean appenders
+-->
+<!ELEMENT log4perl:filter (#PCDATA|param|param-nested|param-text)*>
+<!ATTLIST log4perl:filter
+ class CDATA #IMPLIED
+ name CDATA #IMPLIED
+ value CDATA #IMPLIED
+>
+
+<!ELEMENT filter-ref EMPTY>
+<!ATTLIST filter-ref id NMTOKEN #REQUIRED>
+