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