fpdoc.dtd 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <!-- $Id: fpdoc.dtd,v 1.1 2000/07/13 06:33:47 michael Exp $
  2. XML Document Type Definition (DTD) for FreePascal/KCL fpdoc documents.
  3. This DTD is not finished yet!!! Currently it is mainly used as a demo/test
  4. for the new FCL XML units.
  5. (c) 1999 Sebastian Guenther, [email protected]
  6. -->
  7. <!-- Elements used for descriptions -->
  8. <!ELEMENT DESCR (#PCDATA|REF)*>
  9. <!ELEMENT REF (DESCR)>
  10. <!ATTLIST REF dest CDATA #IMPLIED>
  11. <!-- Elements used for building up the logical structure -->
  12. <!ELEMENT DOC (LIBRARY|UNIT|PROGRAM)>
  13. <!ATTLIST DOC name CDATA #REQUIRED version CDATA #IMPLIED xml:lang NMTOKEN "en">
  14. <!ELEMENT LIBRARY ((DESCR)?, (UNIT)*)>
  15. <!ELEMENT UNIT ((DESCR)?, (CONST|VAR|PROCEDURE|FUNCTION|CLASS)+)>
  16. <!ELEMENT CONST (DESCR)?>
  17. <!ATTLIST CONST name CDATA #REQUIRED type CDATA #REQUIRED>
  18. <!ELEMENT VAR (DESCR)?>
  19. <!ATTLIST VAR name CDATA #REQUIRED type CDATA #REQUIRED>
  20. <!ELEMENT PROCEDURE ((DESCR)?,(ARG)*)>
  21. <!ATTLIST PROCEDURE name CDATA #REQUIRED>
  22. <!ELEMENT FUNCTION ((DESCR)?,(ARG)*,(RESULT))>
  23. <!ATTLIST FUNCTION name CDATA #REQUIRED>
  24. <!ELEMENT ARG (DESCR)?>
  25. <!ATTLIST ARG name CDATA #REQUIRED type CDATA #IMPLIED ref (const|var) #IMPLIED>
  26. <!ELEMENT CLASS ((DESCR)?, (PUBLIC|PROTECTED|PRIVATE|PUBLISHED|CONSTRUCTOR|DESTRUCTOR|PROCEDURE|FUNCTION|VAR)*)>
  27. <!ATTLIST CLASS name CDATA #REQUIRED ancestor CDATA #IMPLIED>
  28. <!ELEMENT PUBLIC EMPTY>
  29. <!ELEMENT PROTECTED EMPTY>
  30. <!ELEMENT PRIVATE EMPTY>
  31. <!ELEMENT PUBLISHED EMPTY>
  32. <!ELEMENT CONSTRUCTOR ((DESCR)?,(ARG)*)>
  33. <!ATTLIST CONSTRUCTOR name CDATA "Create">
  34. <!ELEMENT DESTRUCTOR ((DESCR)?,(ARG)*)>
  35. <!ATTLIST DESTRUCTOR name CDATA "Destroy">