Immortal Object Server: Difference between revisions
Adamcolton (talk | contribs) No edit summary |
Adamcolton (talk | contribs) No edit summary |
||
| Line 4: | Line 4: | ||
Meta-data consists of hierarchical tagging. If something is tagged as 'vegan' and vegan is a descendant of 'recipe' that that thing is automatically a recipe. | Meta-data consists of hierarchical tagging. If something is tagged as 'vegan' and vegan is a descendant of 'recipe' that that thing is automatically a recipe. | ||
There will also be object data associated with each markdown body. This can be injected (like layout templates) or used by scripts. | |||
=Immortals= | =Immortals= | ||
Immortals are the Imobse root objects. They are are ordered (indexed) as well as having (non-unique) dictionary keys. One of the important features that an object supports is referencing another object. | Immortals are the Imobse root objects. They are are ordered (indexed) as well as having (non-unique) dictionary keys. One of the important features that an object supports is referencing another object. | ||
| Line 34: | Line 35: | ||
**Descendant | **Descendant | ||
**Matches multiple categories | **Matches multiple categories | ||
*Is a file | |||
=Permissions= | =Permissions= | ||
Revision as of 14:34, 18 March 2012
This project arose out of OrgSuite 2. The Immortal Object Server (Imobse) stores objects as ordered dictionaries (each entry has two keys, a string and an integer where the integer set is continuous). Each object has a user, title, hierarchy and data (the object).
Meta-Data
Meta-data consists of hierarchical tagging. If something is tagged as 'vegan' and vegan is a descendant of 'recipe' that that thing is automatically a recipe.
There will also be object data associated with each markdown body. This can be injected (like layout templates) or used by scripts.
Immortals
Immortals are the Imobse root objects. They are are ordered (indexed) as well as having (non-unique) dictionary keys. One of the important features that an object supports is referencing another object.
I am considering dropping the 'object' aspect all together and instead allowing collections of markdown to be grouped.
Scripts
Imobse also supports sets of scripts (JavaScript). Users can customize their JavaScript or import shared JavaScript.
Imobse also holds scripts which are associated with collections that are apps.
- CSS
- CSS link
- JavaScript
- JavaScript link
- html
Apps
An Imobse app is a combination of Immortals and Scripts. The original concept was born out of OrgSuite so I will use that as an example.
An personal organization app could be created by having scripts that support appointments through an interface contract that requires an appointment to have a "Date" attribute. The app can then display all objects with a "Date" attribute on a calendar. A user could choose to have all the objects for that app under a folder in their hierarchy so only 'OrgSuite' objects are manipulated by OrgSuite, or all objects with a Date attribute could be shown on a calendar, making Date semi-standard by convention.
Files
This is a future-feature I would like to add, the ability to store certain file types (images, audio, txt, csv, .doc[x], pdf) and associate them with an object or hierarchy.
Queries
- Title exact | matching
- ID
- Tag
- Exact
- Descendant
- Matches multiple categories
- Is a file
Permissions
There are two permission settings, user and group. Users are ints and groups are strings, following standard variable naming convention [a-zA-Z_][\W]+. Groups also have an owner that follows the same rules.