vocabulary Blog
;
/*
* Value Types */
Author Id is written as Auto Counter; Comment Id is written as Auto Counter; Name is written as String(64); Ordinal is written as Unsigned Integer(32); Post Id is written as Auto Counter; Style is written as String(20); Text is written as Text; Topic Id is written as Auto Counter;
/*
* Entity Types */
Author is identified by its Id; author-Name is of at most one Author,
Author is called one Name;
Comment is identified by its Id; Author wrote Comment,
Comment was written by one Author;
Content is identified by Style and Text where
Content is of at most one Style, Content has one Text, Text is of Content;
Content provides text of Comment,
Comment consists of one text-Content;
Post is identified by its Id; Post was written by one Author,
Author wrote Post;
Topic is identified by its Id; Post belongs to one Topic,
Topic contains Post;
Topic belongs to at most one parent-Topic [acyclic]; Topic is called one topic-Name,
Name is of at most one Topic;
Paragraph is where
Post includes Ordinal paragraph;
Content is of Paragraph,
Paragraph contains one Content;
Paragraph has Comment,
Comment is on one Paragraph;
/*
* Constraints: */
either Content provides text of Comment or Content is of Paragraph but not both;