This is a follow up thought to my previous post on this topic.
In addition to sets of users and content elements, I realized there also needs to be sets of sets. I do not mean sets which are the union or intersection of other sets. I mean sets where the elements are sets themselves. It is a useful way to organize information.
Take an online forum as an example. If we start at the top, there is the forum which contains area’s of topics. Then each area of topic has sub area of topics. Within each sub area of topic, there is a collection of forum threads. And finally, each forum thread is a collection of posts (after the first one they are commonly known as replies).
The forum can be described as sets. I will start at the bottom and work my way up. At the very bottom is a forum post which is a content element with attributes for the title, body, author, and date.
post := [title, body, author, date]
Moving on up, next we have the forum thread which is a collection of posts. This thread set also has attributes itself which is the title.
thread := {post1…postn}[title]
In expanded form:
thread := {[title, body, author, date]1…post[title, body, author, date]n}[title]
Going up another step we have are first set of sets; the sub area of topic is a set of forum threads that are collections of posts.
sub area of topic := {thread1…threadn}[title]
In expanded form:
sub area of topic := {{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]
Moving on up, we have areas of topics which are sets of sub areas of topics which is a set of sets of sets.
area of topic := {sub area of topic1…sub area of topicn}[title]
In expanded form:
area of topic := {{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]1…{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]n}[title]
Finally, the forum itself is a set of areas of topics which gives us a set of sets of sets of sets.
forum := {area of topic1…area of topicn}[title]
In expanded form:
forum := {{{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]1…{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]n}[title]1…{{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]1…{{[title, body, author, date]1…post[title, body, author, date]n}[title]1…{[title, body, author, date]1…post[title, body, author, date]n}[title]n}[title]n}[title]n}[title]
There is my thought which is sets of sets. Also, the introduction of my thought that sets can also have attributes.