Ticket #531: forums-data format.txt

File forums-data format.txt, 2.1 kB (added by mdawaffe, 2 years ago)

proposal: pseudo-spec

Line 
1 forums-data: root element: %version (user+, forum+, topic*, post*) if there are any posts, there must be at least one topic
2
3 user: user container: [%id] (login, pass, email, url?, incept?, title?, nicename?, status?, meta*)
4 forum: forum container: [%id %author] (title, incept?, content?, status?, meta*, forum*, topic*)
5 topic: topic container: %author %in [%id] (title, incept, status?, meta*, tag*, post*)
6 post: post container: %author [%id] (title?, incept, content, status? post*, meta*)
7
8 title: CDATA - no HTML
9 content: CDATA  - HTML that is displayed on page
10 incept: MySQL formatted timestamp (GMT)
11 status: (int) 0 = normal, 1 = deleted
12
13 tag: CDATA - literal, raw tag name
14 meta: CDATA - meta value %key
15
16 %id: type_# (e.g. forum_1, user_49283)
17 %in: id of parent object if xml element has no non-trivial parent
18 %author: user_# || user->login
19
20 <forums-data version="0.72">
21         <user id="user_{ID}">
22                 <login>{user_login}</login>
23                 <pass>{user_pass}</pass>
24                 <email>{user_email}</email>
25                 <url>{user_url}</url>
26                 <incept>{user_registered}</incept>
27                 <title><![CDATA[{display_name}]]></title>
28                 <status>{user_status}</status>
29                 <nicename>{user_nicename}</nicename>
30                 <meta key="{meta_key}"><![CDATA[{meta_value}}]]></meta>
31                 ...
32         </user>
33         ...
34
35         <forum "forum_{forum_id}">
36                 <title><![CDATA[{forum_name}]]></title>
37                 <content><![CDATA[{forum_desc}]]></content>
38         </forum>
39         ...
40
41         <topic id="topic_{topic_id}" author="user_{topic_poster}" in="forum_{forum_id}">
42                 <title><![CDATA[{topic_title}]]></title>
43                 <incept>topic_start_time</incept>
44                 <status>{topic_status}</status>
45                 <meta key="topic_resolved"><![CDATA[{topic_resolved}]]></meta>
46                 <meta key="topic_open"><![CDATA[{topic_open}]]></meta>
47                 <meta key="topic_sticky"><![CDATA[{topic_sticky}]]></meta>
48                 <meta key="{meta_key}"><![CDATA[{meta_value}]]></meta>
49                 ...
50                 <tag><![CDATA[{raw_tag}]]></tag>
51                 ...
52
53                 <post id="post_{post_id}" author="user_{poster_id}">
54                         <content><![CDATA[{post_text}]]></content>
55                         <incept>post_time</incept>
56                         <status>{post_status}</status>
57                         <meta key="ip"><![CDATA[{poster_ip}]]></meta>
58                 </post>
59                 ...
60
61         </topic>
62         ...
63
64 </forums-data>