Structure is a fundamental if sometimes intangible notion referring to the recognition, observation, nature, and stability of patterns and relationships of entities. From a child's verbal description of a snowflake, to the detailed scientific analysis of the properties of magnetic fields, the concept of structure is now often an essential foundation of nearly every mode of inquiry and discovery in science, philosophy, and art.[1] In early 20th-century and earlier thought, form often plays a role comparable to that of structure in contemporary thought. The neo-Kantianism of Ernst Cassirer (cf. his Philosophy of Symbolic Forms, completed in 1929 and published in English translation in the 1950s) is sometimes regarded as a precursor of the later shift to structuralism and poststructuralism.[2]
The description of structure implicitly offers an account of what a system is made of: a configuration of items, a collection of inter-related components or services. A structure may be a hierarchy (a cascade of one-to-many relationships) or a network featuring many-to-many relationships.
Contents |
In biology, structures exist at all levels of organization, ranging hierarchically from the atomic and molecular to the cellular, tissue, organ, organismic, population and ecosystem level. Usually, a higher-level structure is composed of multiple copies of a lower-level structure.
Chemistry is the science treating matter at the atomic to macromolecular scale, the reactions, transformations and aggregations of matter, as well as accompanying energy and entropy changes during these processes. The chemical structure refers to both molecular geometry and to electronic structure. The structural formula of a chemical compound is a graphical representation of the molecular structure showing how the atoms are arranged. A protein structure is the three dimensional coordinates of the atoms within (macro) molecules made of protein.
A structure usually refers to any large, man-made object permanently fixed to Earth's surface or in its orbit, as a result of construction. These are divided into buildings and nonbuilding structures, and make up the infrastructure of a human society. There are also animal-built structures, such as anthills and beaver dams.
Structures built by humans are broadly divided into categories because of their varying design approaches and standards:
Music is an art form consisting of sound and silence expressed through time. The term musical form, a type of structure, refers to two related concepts:
A social structure is a pattern of relations. They are social organizations of individuals in various life situations. Structures are applicable to people in how a society is as a system organized by a characteristic pattern of relationships. This is known as the social organization of the group. Sociologists have studied the changing structure of these groups. Structure and agency are two confronted theories about human behaviour. The debate surrounding the influence of structure and agency on human thought is one of the central issues in sociology. In this context "agency" refers to the capacity of individual humans to act independently and to make their own free choices. "Structure" here refers to those factors such as social class, religion, gender, ethnicity, customs etc. which seem to limit or influence the opportunities that individuals have.
In computer science, a data structure is a way of storing data in a computer so that it can be used efficiently. Often a carefully chosen data structure will allow the most efficient algorithm to be used. The choice of the data structure often begins from the choice of an abstract data type. A well-designed data structure allows a variety of critical operations to be performed, using as few resources, both execution time and memory space, as possible. Data structures are implemented in a programming language as data types and the references (e.g. relationships, links and pointers) and operations that are possible with them.
Structures are not only represented in the memory space allocated to a program. They are also embedded in relational database designs. These are referred to as Structure Tables. They are a generic way of storing the data of tree information, often found in modern commercial planning and On-line Analytical Processing software products. (e.g. Arthur planning system, the Merchandise Planning System from I2, Pyramid, and Cubes from Microsoft and Oracle.) In the structure of these products, Variable Measures are stored at the intersections of Member objects found in the Levels of tree Hierarchies of multiple Dimensions. User Defined Attributes can be associated with the members in a dimension. This allows dynamic analysis and aggregation at desired level of the data. These meta data structure tables could be named as follows:
Table Name | Key Columns | Data Columns | Comment |
---|---|---|---|
DIMENSION | DIM_NO | DESCRIPTION | A single Dimension has Members in Levels arranged into Hierarchies (Like an inverted tree) |
MEMBER | DIM_NO, MEM_NO, LEV_NO | DESCRIPTION | A Member has User Defined Attributes and belongs to a Dimension; It has (Parent, Ancestor, Child, Descendant) Members unless it is the single top Member or a bottom Level Member. Members are unique in a dimension. Members are also unique in a level. A Member can not exist in two levels. |
LEVEL | DIM_NO, LEV_NO | DESCRIPTION | A Level belongs to one Hierarchy or more in a dimension; It has (Parent, Ancestor, Child, Descendant) Levels in its Dimension. Levels are unique in a dimension. |
HIERARCHY ( Hierarchy ) | DIM_NO, HIER_NO | DESCRIPTION | Multiple Hierarchies belong to a single Dimension and can have Convergent Levels (i.e. that are the same in each Hierarchy) of that Dimension. Hierarchies are unique in a dimension. |
LEVEL_RELATIONSHIP | DIM_NO, HIER_NO, PARENT_LEV, CHILD_LEV | ~ | A Level Relationship represents a pair of vertically adjacent Levels in a Hierarchy of a Dimension, one superior, the other subordinate. No superior Level may have more than one directly subordinate child Level in the same Hierarchy of a Dimension. Level Relationships are unique in a Hierarchy of a Dimension. |
MEMBER_RELATIONSHIP | DIM_NO, HIER_NO, PARENT_MEM, CHILD_MEM | ~ | A Member Relationship is a pair of vertically adjacent Members from vertically adjacent Levels in a Hierarchy of a Dimension. No Member may share a Child with another Member in the same Hierarchy of a Dimension. No Member my have a child in its own level. Member Relationships are unique in a Hierarchy of a Dimension and unique in a dimension. |
ATTRIBUTE | DIM_NO, LEV_NO, ATTRIBUTE | DESCRIPTION | An Attribute is attached to a Level of a Dimension. Attributes are unique in a Level of a Dimension. Attributes have definable data-type constrictions. |
ATTRIBUTE_VALUES | DIM_NO, MEM_NO, ATTRIBUTE | ATTRIBUTE_VALUE | Attribute-values are attached to a Member of a Dimension. the Values of an Attribute must conform the Attribute data-type constraint. |
MEASURE | MEASURE | DESCRIPTION | Measures are unique and represent empirical data which can be used as input to derive other data via functions. Measures have data-type constraints. |
CUBE_DEFINITION | DIM_1, ... ..., DIM_n, DIM_1_TOP_MEM, ... ..., DIM_n_TOP_MEM, DIM_1_BOT_LEV, ... ..., DIM_n_BOT_LEV | DESCRIPTION | Cubes may represent any sub-section of intersections between any Dimensions and Measures are stored there. Cubes are defined by a single top member for each intersecting dimension and a single bottom level for each intersecting dimension. Where multiple measures have the same key, they can be stored on the same row of the Cube. |
CUBE_1, ... | DIM_1,... ...DIM_n, DIM_1_MEMBER, ... ..., DIM_n_MEMBER | MEASURE_1, ... ..., MEASURE_n | A cube is a collection of Variable-Measure-Values, all stored on the Keys of the intersections of the Dimensions that the Cube represents. |
..., CUBE_n | DIM_1, ... ..., DIM_n, MEMBER_1, ... ..., MEMBER_n | MEASURE_1, ... ..., MEASURE_n | A cube is a collection of Variable-Measure-Values stored on the Key of the intersection of the Dimensions it represents. |
A great advantage of storing the structures and measures data in a relational database, is that it can quickly and easily be maintained by writing programs in the native SQL and SQL extension protocol/language of the native database by maintenance programmers. Since these tools are easy to use and there is an ANSI standard for the SQL, database portability can also be facilitated. An API can be developed to support navigation of the Structures and Cubes.
Structure functions most probably required are as follows: First_dimension() Next_dimension() Dimension_name() First_hierarchy() Next_hierarchy() Hierarchy_name() Top_level() Next_level() Bottom_level() Parent_level() Child_level() Top_member() Parent_member() First_child_member() Next_child_member() Ancestor_member_in_level() Descendant_member_in_level() First_peer_member() Next_peer_member() First_attribute_of_member() Next_attribute_of_member() etc.
Cube functions most probably required are as follows: Value_of_member_at_intersection_of cube() Sum_of_children_of_member_for_measure() Sum_of_children_of_member_in_dimension_for_measure() Contribution_of_member_for_measure() Portion_of_parent_member_for_measure() etc.
These functions can be implemented in the relational database as stored procedures and can also be implemented for use in-memory. If both are implemented, then a suit of functions for storing and loading cubes must be implemented. In a three tier client server design, the cube resides in the memory of a Cube service. A presentation layer service connects to the Cube service. A database service connects the Cube service and the database engine service and converts from the in-memory format to the in-database format of the specific database and database-language required.