summaryrefslogtreecommitdiff
path: root/rt/docs/schema.dot
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2012-04-24 11:35:56 -0700
committerIvan Kohler <ivan@freeside.biz>2012-04-24 11:35:56 -0700
commit6587f6ba7d047ddc1686c080090afe7d53365bd4 (patch)
treeec77342668e8865aca669c9b4736e84e3077b523 /rt/docs/schema.dot
parent47153aae5c2fc00316654e7277fccd45f72ff611 (diff)
first pass RT4 merge, RT#13852
Diffstat (limited to 'rt/docs/schema.dot')
-rw-r--r--rt/docs/schema.dot99
1 files changed, 99 insertions, 0 deletions
diff --git a/rt/docs/schema.dot b/rt/docs/schema.dot
new file mode 100644
index 000000000..d81ceee12
--- /dev/null
+++ b/rt/docs/schema.dot
@@ -0,0 +1,99 @@
+digraph g {
+graph [
+rankdir = "RL",
+ concentrate = true,
+ratio = auto
+];
+node [
+fontsize = "18",
+shape = record, fontsize = 18
+];
+edge [
+];
+
+"Records" [shape = record, fontsize = 18, label = "(Any RT::Record)" ];
+"Records" -> "Principals" [label = "Creator → id"];
+"ACL" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"ACL" -> "Principals" [label="PrincipalId → id"];
+"ACL" -> "Records" [label="ObjectId → id"];
+
+"Attachments" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Attachments" -> "Transactions" [label="TransactionId → id"];
+"Attachments" -> "Attachments" [label="Parent → id"];
+
+"CachedGroupMembers" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"CachedGroupMembers" -> "Groups" [label="GroupId → id", weight=2];
+"CachedGroupMembers" -> "Principals" [label="MemberId → id"];
+"CachedGroupMembers" -> "CachedGroupMembers" [label="Via → id"];
+"CachedGroupMembers" -> "Groups" [label="ImmediateParentId → id"];
+
+"CustomFields" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"CustomFieldValues" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"CustomFieldValues" -> "CustomFields" [label="CustomField → id"];
+
+"GroupMembers" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"GroupMembers" -> "Groups" [label="GroupId → id", weight=2];
+"GroupMembers" -> "Principals" [label="MemberId → id", weight = 2];
+
+"Groups" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Groups" -> "Principals" [label="id → id"];
+
+"Links" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Links" -> "Tickets" [label="LocalBase ⇢ id (usually)", style="dotted"];
+"Links" -> "Tickets" [label="LocalTarget ⇢ id (usually)", style="dotted"];
+
+"Principals" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"Attributes" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Attributes" -> "Records" [label="ObjectId → id"];
+
+"Queues" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"ScripActions" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"ScripConditions" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"Scrips" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Scrips" -> "ScripConditions" [label="ScripCondition → id"];
+"Scrips" -> "ScripActions" [label="ScripAction → id"];
+"Scrips" -> "Templates" [label="Template → id"];
+"Scrips" -> "Queues" [label="Queue → id"];
+
+"Templates" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Templates" -> "Queues" [label ="Queue → id" ];
+
+"ObjectCustomFields" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"ObjectCustomFields" -> "CustomFields" [label="CustomField → id"];
+"ObjectCustomFields" -> "Records" [label="ObjectId → id"];
+
+"ObjectCustomFieldValues" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"ObjectCustomFieldValues" -> "CustomFields" [label="CustomField → id"];
+"ObjectCustomFieldValues" -> "Records" [label="ObjectId → id"];
+
+"Tickets" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Tickets" -> "Tickets" [label="EffectiveId → id"];
+"Tickets" -> "Principals" [label="Owner → id"];
+"Queues" -> "Tickets" [style="invis"];
+"Tickets" -> "Queues" [label="Queue → id"];
+
+"Transactions" [shape = record, fontsize = 18, label = "<col0> \N " ];
+"Transactions" -> "Records" [label="ObjectId → id"];
+
+"Users" [shape = record, fontsize = 18, label = "<col0> \N " ];
+
+"Users" -> "Principals" [label="id → id"];
+
+// "Classes" [shape = record, fontsize = 18 label = "<col0> \N " ];
+// "Articles" [shape = record, fontsize = 18 label = "<col0> \N " ];
+// "Articles" -> "Classes" [ label="Class → id"];
+// "Articles" -> "Articles" [ label="Parent → id"];
+// "ObjectClasses" [shape = record, fontsize = 18 label = "<col0> \N " ];
+// "ObjectClasses" -> "Records" [label="ObjectId → id"];
+// "ObjectClasses" -> "Classes" [label="Class → id"];
+// "Topics" [shape = record, fontsize = 18 label = "<col0> \N " ];
+// "ObjectTopics" [shape = record, fontsize = 18 label = "<col0> \N " ];
+// "ObjectTopics" -> "Records" [label="ObjectId → id"];
+// "ObjectTopics" -> "Topics" [label="Topic → id"];
+
+}