I don't know if anyone else is interested, but I was messing around with XML Spy, editing config.xml, and hit the generate DTD button through idle curiosity, it produced this which may be useful, or not. I didn't commit it in case it prove to be more trouble than its worth. If its popular I will.
I thought it might make a good starting point for rationalising the elements, attributes and enumerated values in the config into a consistent set. d.
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Danny Angus (Thought Interactive) --> <!ELEMENT James (postmaster, servernames, usernames, inboxRepository+)> <!ELEMENT account EMPTY> <!ATTLIST account login CDATA #REQUIRED password CDATA #REQUIRED > <!ELEMENT administrator_accounts (account)> <!ELEMENT algorithm (#PCDATA)> <!ELEMENT articleIDDomainSuffix (#PCDATA)> <!ELEMENT articleIDPath (#PCDATA)> <!ELEMENT attachError (#PCDATA)> <!ELEMENT attachment (#PCDATA)> <!ELEMENT authRequired (#PCDATA)> <!ELEMENT authenticate-client (#PCDATA)> <!ELEMENT authoritative (#PCDATA)> <!ELEMENT bind (#PCDATA)> <!ELEMENT client-sockets (factory)> <!ELEMENT config (James?, spoolmanager?, dnsserver?, remotemanager?, pop3server?, smtpserver?, nntpserver?, nntpauth?, nntp-repository?, mailstore?, users-store?, database-connections?, objectstorage?, sockets?, thread-manager?, sqlFile?, filestore?)> <!ELEMENT configuration (spoolPath, threadCount, threadIdleTime)> <!ELEMENT connectiontimeout (#PCDATA)> <!ELEMENT data-source (driver, dburl, user, password, max)> <!ATTLIST data-source name CDATA #REQUIRED class CDATA #REQUIRED > <!ELEMENT data-sources (data-source+)> <!ELEMENT database-connections (data-sources)> <!ELEMENT dburl (#PCDATA)> <!ELEMENT delayTime (#PCDATA)> <!ELEMENT deliveryThreads (#PCDATA)> <!ELEMENT destination EMPTY> <!ATTLIST destination URL CDATA #REQUIRED > <!ELEMENT dnsserver (servers, authoritative)> <!ELEMENT driver (#PCDATA)> <!ELEMENT factory (keystore?)> <!ATTLIST factory name (plain | ssl) #REQUIRED class (org.apache.avalon.cornerstone.blocks.sockets.DefaultServerSocketFactory | org.apache.avalon.cornerstone.blocks.sockets.DefaultSocketFactory | org.apache.avalon.cornerstone.blocks.sockets.TLSServerSocketFactory) #REQUIRED > <!ELEMENT file (#PCDATA)> <!ELEMENT filestore (#PCDATA)> <!ELEMENT gatewayPort (#PCDATA)> <!ELEMENT handler (#PCDATA | helloName | administrator_accounts | connectiontimeout | authRequired | maxmessagesize | verifyIdentity)*> <!ELEMENT helloName (#PCDATA)> <!ATTLIST helloName autodetect CDATA #REQUIRED > <!ELEMENT inboxRepository (repository)> <!ELEMENT inline (#PCDATA)> <!ELEMENT is-daemon (#PCDATA)> <!ELEMENT keystore (file, password, type, protocol, algorithm, authenticate-client)> <!ELEMENT mailet ANY> <!ATTLIST mailet match CDATA #REQUIRED class CDATA #REQUIRED > <!ELEMENT mailetpackage (#PCDATA)> <!ELEMENT mailetpackages (mailetpackage)> <!ELEMENT mailstore (repositories, spoolRepository+)> <!ELEMENT matcherpackage (#PCDATA)> <!ELEMENT matcherpackages (matcherpackage)> <!ELEMENT max (#PCDATA)> <!ELEMENT max-threads (#PCDATA)> <!ELEMENT maxRetries (#PCDATA)> <!ELEMENT maxmessagesize (#PCDATA)> <!ELEMENT message (#PCDATA)> <!ELEMENT min-spare-threads (#PCDATA)> <!ELEMENT min-threads (#PCDATA)> <!ELEMENT model (#PCDATA)> <!ELEMENT models (model+)> <!ELEMENT name (#PCDATA)> <!ELEMENT newsgroup (#PCDATA)> <!ELEMENT newsgroups (newsgroup+)> <!ELEMENT nntp-repository (readOnly, rootPath, tempPath, articleIDPath, articleIDDomainSuffix, newsgroups, spool)> <!ELEMENT nntpauth (authRequired)> <!ELEMENT nntpserver (port, bind, useTLS, handler)> <!ELEMENT notice (#PCDATA)> <!ELEMENT objectstorage (repositories)> <!ELEMENT outgoing (#PCDATA)> <!ELEMENT passThrough (#PCDATA)> <!ELEMENT password (#PCDATA)> <!ELEMENT pop3server (port, bind, useTLS, handler)> <!ELEMENT port (#PCDATA)> <!ELEMENT postmaster (#PCDATA)> <!ELEMENT prefix (#PCDATA)> <!ELEMENT priority (#PCDATA)> <!ELEMENT processor (#PCDATA | mailet)*> <!ATTLIST processor name CDATA #REQUIRED > <!ELEMENT protocol (#PCDATA)> <!ELEMENT protocols (protocol)> <!ELEMENT readOnly (#PCDATA)> <!ELEMENT recipients (#PCDATA)> <!ELEMENT remotemanager (port, bind, useTLS, handler)> <!ELEMENT replyto (#PCDATA)> <!ELEMENT repositories (repository+)> <!ELEMENT repository (protocols?, types?, config?, destination?, sqlFile?, models?)> <!ATTLIST repository destinationURL CDATA #REQUIRED type (MAIL | SPOOL) #IMPLIED class (org.apache.avalon.cornerstone.blocks.masterstore.File_Persistent_Object_Repository | org.apache.avalon.cornerstone.blocks.masterstore.File_Persistent_Stream_Repository | org.apache.james.mailrepository.AvalonMailRepository | org.apache.james.mailrepository.AvalonSpoolRepository | org.apache.james.mailrepository.JDBCMailRepository | org.apache.james.mailrepository.JDBCSpoolRepository | org.apache.james.userrepository.DefaultUsersJdbcRepository | org.apache.james.userrepository.JamesUsersJdbcRepository | org.apache.james.userrepository.ListUsersJdbcRepository | org.apache.james.userrepository.UsersFileRepository) #IMPLIED name CDATA #REQUIRED > <!ELEMENT repositoryPath (#PCDATA)> <!ELEMENT rootPath (#PCDATA)> <!ELEMENT sender (#PCDATA)> <!ELEMENT server (#PCDATA)> <!ELEMENT server-sockets (factory+)> <!ELEMENT servername (#PCDATA)> <!ELEMENT servernames (servername)> <!ATTLIST servernames autodetect CDATA #REQUIRED > <!ELEMENT servers (server)> <!ELEMENT smtpserver (#PCDATA | port | bind | handler | useTLS)*> <!ELEMENT sockets (server-sockets, client-sockets)> <!ELEMENT spool (configuration)> <!ELEMENT spoolPath (#PCDATA)> <!ELEMENT spoolRepository (repository)> <!ELEMENT spoolmanager (threads, mailetpackages, matcherpackages, processor+)> <!ELEMENT sqlFile (#PCDATA)> <!ELEMENT static (#PCDATA)> <!ELEMENT tempPath (#PCDATA)> <!ELEMENT thread-group (name, priority, is-daemon, max-threads, min-threads, min-spare-threads)> <!ELEMENT thread-manager (thread-group)> <!ELEMENT threadCount (#PCDATA)> <!ELEMENT threadIdleTime (#PCDATA)> <!ELEMENT threads (#PCDATA)> <!ELEMENT type (#PCDATA)> <!ELEMENT types (type)> <!ELEMENT useTLS (#PCDATA)> <!ELEMENT user (#PCDATA)> <!ELEMENT usernames EMPTY> <!ATTLIST usernames ignoreCase CDATA #REQUIRED enableAliases CDATA #REQUIRED enableForwarding CDATA #REQUIRED > <!ELEMENT users-store (repository+)> <!ELEMENT verifyIdentity (#PCDATA)>
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
