2 * Sixth - System for data storage, computation, exploration and interaction.
3 * Copyright ©2012-2016, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of version 3 of the GNU Lesser General Public License
7 * or later as published by the Free Software Foundation.
10 package eu.svjatoslav.sixth.data.model;
12 public interface InformationUnit {
15 * Mobile. Can be shared and can move accross cores.
23 * 2 collection Can have any number of dimensions. Infinite in every
24 * dimension. Every dimension behaves similarly to a column in a table.
26 * Could be used as a stack FILO Could be used as a pipe FIFO
28 * List would correspond to 1 dimensional collection. Dict would correspond
29 * to 2 dimensional collection. Entries could be easilly appended, inserted
32 * All dimensions are indexed. It is possible to quickly retrieve any
33 * element(s) by querying against any dimensions.
35 * Queries can be geometrical too.
37 * Every dimension could be inclusive or exclusive. Inclusive dimension
38 * allows multiple same values in the same location simultaneously.
39 * Exclusive dimension allows only one value at the location.
41 * Attempt to store new value at the occupied location would overwrite the
44 * Exclusive dimensions could be grouped. This will guarantee unique
45 * combination within group.
47 * Every dimension could have undefined or fixed type.
49 * Classes are multidimensional collections. Instances of classes are
54 * list of input parameters list of output parameters