aboutsummaryrefslogtreecommitdiffstats
path: root/diameter/dictionary.dtd
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2005-09-29 02:20:29 +0000
committerGuy Harris <guy@alum.mit.edu>2005-09-29 02:20:29 +0000
commita275cd2495144bf5bf00d26c3cf5d26c5f69fbd8 (patch)
tree0072cf00502222c5aa6fe2b0fc7debb4326c71b2 /diameter/dictionary.dtd
parent7aa4b4ffe1f575bbb50f03e012b6f77dd5ab02f0 (diff)
Move the Diameter dictionary files to a "diameter" subdirectory, along
the lines of what's done for RADIUS. That keeps them together (and separate from other files), and makes the layout of the top-level source directory closer to the layout of the installation directory, so that if you run Ethereal or Tethereal from the top-level directory on Windows it'll pick up the Diameter dictionary files (if it supports loading them), and can do so on UN*X if we support a mechanism to let it find its control files in the directory in which the binary resides. Use the diameter_DATA, dtds_DATA, and radius_DATA macros in the EXTRA_DIST macro, so you only have to change the lists of Diameter, DTD, and RADIUS files in one place if you add or remove a file. svn path=/trunk/; revision=16050
Diffstat (limited to 'diameter/dictionary.dtd')
-rw-r--r--diameter/dictionary.dtd74
1 files changed, 74 insertions, 0 deletions
diff --git a/diameter/dictionary.dtd b/diameter/dictionary.dtd
new file mode 100644
index 0000000000..6285108f5d
--- /dev/null
+++ b/diameter/dictionary.dtd
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ $Log: dictionary.dtd,v $
+ Revision 1.1 2001/11/01 21:52:44 guy
+ From David Frascone: duUpdate to Diameter dissector to load the
+ dictionary as an XML file rather than building it in, and various
+ Diameter updates.
+
+ Revision 1.1 2001/08/24 18:04:44 chaos
+ Added per Mark's request
+
+ Revision 1.3 2001/07/31 17:43:36 chaos
+ Oops, forgot to turn on validity checking. Fixed some errors found with validity checking turned on
+
+ Revision 1.2 2001/07/31 16:56:15 chaos
+ Lots of changes to support flags like in the draft, and to support commands
+
+-->
+<!ELEMENT dictionary (base, application*)>
+<!ELEMENT base (command*, vendor*, typedefn+, avp+)>
+<!ATTLIST base
+ uri CDATA #IMPLIED
+>
+
+<!ELEMENT application (command*, vendor*, typedefn*, avp*)>
+<!ATTLIST application
+ id CDATA #REQUIRED
+ name CDATA #IMPLIED
+ uri CDATA #IMPLIED
+>
+<!ELEMENT command (#PCDATA)>
+<!ATTLIST command
+ name CDATA #REQUIRED
+ code CDATA #REQUIRED
+ vendor-id IDREF #IMPLIED
+>
+<!ELEMENT vendor EMPTY>
+<!ATTLIST vendor
+ vendor-id ID #REQUIRED
+ code CDATA #REQUIRED
+ name CDATA #IMPLIED
+>
+<!ELEMENT typedefn EMPTY>
+<!ATTLIST typedefn
+ type-name ID #REQUIRED
+ type-parent IDREF #IMPLIED
+ description CDATA #IMPLIED
+>
+<!ELEMENT avp ((type | grouped), (enum*))>
+<!ATTLIST avp
+ name ID #REQUIRED
+ description CDATA #IMPLIED
+ code CDATA #REQUIRED
+ may-encrypt (yes | no) "yes"
+ mandatory (must | may | mustnot | shouldnot) "may"
+ protected (must | may | mustnot | shouldnot) "may"
+ vendor-bit (must | may | mustnot | shouldnot) "mustnot"
+ vendor-id IDREF #IMPLIED
+ constrained (true | false) "false"
+>
+<!ELEMENT type EMPTY>
+<!ATTLIST type
+ type-name IDREF #REQUIRED
+>
+<!ELEMENT grouped (gavp+)>
+<!ELEMENT gavp EMPTY>
+<!ATTLIST gavp
+ name IDREF #REQUIRED
+>
+<!ELEMENT enum EMPTY>
+<!ATTLIST enum
+ name CDATA #REQUIRED
+ code CDATA #REQUIRED
+>