6.6 Objects

An object is an information entity that conveys meaning by evoking human cognitive processing; e.g. a family photo. Objects support operations like delete, edit and view. An object can be an item or a space.

ItemA simple object with no dependents, e.g. a discussion post. An item can be a:

1.   Post: An item whose meaning stands alone, e.g. a post saying “The Internet is a mirror to humanity”.

2.   Comment: An item whose meaning depends on another; e.g. the comment “I agree” makes no sense alone.

3.   Message: An item with sender and receiver; e.g. an email.

4.   Vote: An item that conveys a position choice from a response set, e.g. to rate a post 1-5 stars.

Online spaces contain items

Space. A space is a complex object with dependents, like an an online wall that accepts photos. A space is a parent to the child entities it contains, which depend on it to exist. A space can be deleted, edited or viewed like an item, but can also contain objects; e.g. a bulletin board is a space that can accept posts. The Enter Space operation allows the objects within it to be displayed. If a post item accepts comments or votes then it becomes a space, as it now has dependents. Spaces within spaces give object hierarchies with the system itself the first space. An object hierarchy is like a tree where the spaces are branches and the items are leaves. That items need spaces as leaves need branches gives the rule that:

Rule 3: Every entity is dependent upon a parent space, up to the system space.

 The Move operation changes the parent of a space. That deleting a space must delete any dependent items in it gives:

   Corollary: Deleting a space also deletes any entities it contains.

For example, deleting a discussion thread also deletes any posts made in that thread. Every system entity is part of an object hierarchy where its ancestors are the set of all spaces that contain it, up to the system itself which is the first ancestor. Likewise its offspring are any child objects it contains plus any children they have, etc. All entities have ancestors and any space can have offspring.

Entering a space. Entering an online space is the operation of letting a persona view the items in it. Just as one can lock the door to a physical space, so the owner of an online space can “lock” it, so only certain people can enter it. Equally the owners of items in it may be able to “cover” them, so they are not visible, by limiting display rights. 

Namespace. A namespace is an space whose parent is a persona that inalienably owns it. A namespace by definition cannot be moved or given away. Facebook is based on the management of namespaces. 

Ancestor rights. In social terms, a person is responsible for what they cause. Hence the owner of a space is responsible for anything offensive within it because their space causes it to exist, albeit indirectly, e.g. YouTube is responsible for an offensive video posted within it even though they did not directly post it because without YouTube it could not exist. In general, any space owner is responsible for the effect of an entity within it, whether a post, video, message or tweet. Since once cannot be responsible for what one cannot see, the space owner must be able to see it. In general, any entity added to a space must be visible to the owners of any ancestor spaces, giving the access control rule:

   Rule 4. The owners of any ancestor spaces have the right to view any offspring created.

For example, this gives the administrator the right to view anything on their system, e.g. a private message sent to a YouTube video owner is not seen by other people but is visible to the administrator, as are videos only shared with selected friends. Equally for example a space owner cannot ban the administrator from entering the space. That any ancestor is responsible for any item added from the moment of its addition gives the corollary:

   Corollary.  Ancestor owners have the right to be notified when a new offspring is created

Next