-
Notifications
You must be signed in to change notification settings - Fork 62
/
dbschema.json
68 lines (67 loc) · 2.51 KB
/
dbschema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
{
"db_name": "ZeroBlog",
"db_file": "data/zeroblog.db",
"version": 2,
"maps": {
"users/.+/data.json": {
"to_table": [
"comment",
{"node": "comment_vote", "table": "comment_vote", "key_col": "comment_uri", "val_col": "vote"},
{"node": "post_vote", "table": "post_vote", "key_col": "post_id", "val_col": "vote"}
]
},
"users/.+/content.json": {
"to_keyvalue": [ "cert_user_id" ]
},
"data.json": {
"to_table": [ "post" ],
"to_keyvalue": [ "title", "description", "links", "next_post_id", "demo", "modified" ]
}
},
"tables": {
"comment": {
"cols": [
["comment_id", "INTEGER"],
["post_id", "INTEGER"],
["body", "TEXT"],
["date_added", "INTEGER"],
["json_id", "INTEGER REFERENCES json (json_id)"]
],
"indexes": ["CREATE UNIQUE INDEX comment_key ON comment(json_id, comment_id)", "CREATE INDEX comment_post_id ON comment(post_id)"],
"schema_changed": 1426195823
},
"comment_vote": {
"cols": [
["comment_uri", "TEXT"],
["vote", "INTEGER"],
["json_id", "INTEGER REFERENCES json (json_id)"]
],
"indexes": ["CREATE INDEX comment_vote_comment_uri ON comment_vote(comment_uri)", "CREATE INDEX comment_vote_json_id ON comment_vote(json_id)"],
"schema_changed": 1426195822
},
"post": {
"cols": [
["post_id", "INTEGER"],
["title", "TEXT"],
["body", "TEXT"],
["date_published", "INTEGER"],
["json_id", "INTEGER REFERENCES json (json_id)"]
],
"indexes": ["CREATE UNIQUE INDEX post_uri ON post(json_id, post_id)", "CREATE INDEX post_id ON post(post_id)"],
"schema_changed": 1426195823
},
"post_vote": {
"cols": [
["post_id", "INTEGER"],
["vote", "INTEGER"],
["json_id", "INTEGER REFERENCES json (json_id)"]
],
"indexes": ["CREATE INDEX post_vote_post_id ON post_vote(post_id)", "CREATE INDEX post_vote_json_id ON post_vote(post_id)"],
"schema_changed": 1426195826
}
},
"feeds": {
"Comments": "SELECT 'comment' AS type, date_added, post.title AS title, keyvalue.value || ': ' || comment.body AS body, '?Post:' || comment.post_id || '#Comments' AS url FROM comment LEFT JOIN json USING (json_id) LEFT JOIN json AS json_content ON (json_content.directory = json.directory AND json_content.file_name='content.json') LEFT JOIN keyvalue ON (keyvalue.json_id = json_content.json_id AND key = 'cert_user_id') LEFT JOIN post ON (comment.post_id = post.post_id)",
"Posts": "SELECT post_id AS event_uri, 'post' AS type, date_published AS date_added, title AS title, body AS body, '?Post:' || post_id AS url FROM post"
}
}