Topic: data record

topics > computer science > data > Group: data structures

data type
access to components of a data object
attribute-value pairs as information
data alignment
data as a named set of data objects
data type as constructors, selectors, and predicates
database record
forms as a UserInterface
fundamental concepts such as type, attributes, relationships are all the same
index sequence for array access
object-defined names
object-oriented fields
object-oriented objects
objects as a set of attributes
packed data
property sheets for objects
programming with forms
semantic networks
semi-structured text
semistructured messages for automated processing
variable as reference to storage
variant data types
user-defined data type


A data record is a set of data fields. Each field has a name. Fields may be typed. The fields for a data record may be fixed or variable.

A data record represents a fact or an entity. Fields define the roles of a fact or the attributes of an entity. There are many ways to represent information. For example the color of a can of paint could be a field or a row relating colors and cans.

A data record with fixed fields typically corresponds to contiguous memory. Each field is at a fixed offset. The memory layout may be specified. If the data fields have a fixed size, the data record has a fixed size. A data record may extend a shorter record. Its fields occur after the base fields.

A data record with variable fields typically corresponds to a hash table. Each field is an index into the hash table. The data record is a local naming scope for its fields.

A row of a database table is a data record with fields defined by the table's columns. The fields may be stored separately. For example, nullable fields may store the null bit in a separate data structure.

An object is a data record with a type field. The type defines the layout of the record and its operations.

Unix treats files as a sequence of bytes. This avoids knowing the layout of a data record. (cbb 6/06)

Subtopic: data record as fact up

Quote: a data record can implement a simple fact in a remarkable variety of field configurations [»kentW2_1989]
Quote: some of the ways to record that a salesman serves a territory [»kentW2_1989]
Quote: every fact in a database may be represented in many ways; most actual databases employ a sizable variety of these options [»kentW2_1989]
Quote: business programming needs data records, decimal arithmetic, report generation, large databases [»glasRL9_1997]
Quote: the meaning of a plex depends on its use, i.e., the algorithms applied to its components [»rossDT5_1964]

Subtopic: data record as primary data structure up

Quote: proposal for successor of ALGOL 60; replaces tree structures with records [»wirtN6_1966]

Subtopic: field up

Note: the field concept is fundamental; name (the field), memory (its memory base), definition (the offset), and type (size of field); so long at an offset [»cbb_1990, OK]
Note: a pointer machine has local pointers (fields) and global pointers (objects); pointing with each hand; fields are unique within the object [»cbb_2000, OK]
Note: the name of an object is a dictionary entry, i.e., a field [»cbb_2000, OK]
Note: fields are the abstraction of self-awareness [»cbb_2000, OK]

Subtopic: data record as typed naming scope up

Quote: record data structure for Algol; each field has a name and a type; pioneered by Ross in AED-1 [»wirtN6_1966]
Quote: a record is a list of field declarations that define a name, a type, and a default value; either the type or default may be omitted [»cardL_1991]
Quote: Icon tables include type of elements and type of subscripts [»grisRE4_1979, OK]
Quote: a tuple value is an array of typed, attribute-value triples; its typed attributes is the heading; its length is the degree [»dateCJ_1998]
Note: a type is a record, including its field names [»cbb_1990, OK]
Note: type includes a list of fields, created by 'Field of Type'; compute offsets on load [»cbb_2000, OK]
Note: with multiple pointers per object, objects may have a type; i.e., bounded local names [»cbb_2000, OK]

Subtopic: data record as local naming scope up

Quote: a record in Pascal defines a local naming scope which is opened with the dot operator [»maclBJ_1987]
Quote: polymorphic records and variants allow functions that depend on field names alone; implicit typing [»wongL9_2000]
Quote: an n-component element is a set of attributes or properties defining a single unit of information; each component points to the specified property or element [»rossDT_1963]
Quote: uniform reference to n-component elements via component names, e.g., A(B(C(D)))) is component A of B of C of D [»rossDT_1963]
Quote: in SL5, identifiers are attributes of an environment; a record is an environment [»hansDR3_1978a]
Quote: in SL5, create a record by creating an environment and then resuming once to initialize itself; uses self() [»hansDR3_1978a]
Quote: data structures consist of templates of arbitrary elements (e.g., functions); implement with pointers [»hallJC5_1974, OK]
Quote: data structures by a set of ordered pairs: index/element [»hehnEC_1977]
Quote: arrays are homogeneous with dynamic selectors; records are heterogeneous with static selectors [»maclBJ_1987, OK]
Quote: in Merlin, records by a list of elements with specified indices; a sequence or array uses numbers for indices [»hehnEC7_1975, OK]
Quote: in a flag computer, a map is a structure whose elements are values; a map is itself a value [»hehnEC3_1978]
Quote: a record is a total function from an index range to values and a partial function from labels to indices [»remyD6_1992]

Subtopic: class type up

Quote: object-oriented abstraction as constructors of objects with fields as observations [»cookWR5_1990]
Quote: a record class is all records with the same field names and types; correspond to their natural classification; e.g., person or town [»wirtN6_1966]

Subtopic: data record as object up

Quote: a record represents a physical or conceptual object; a field and field name represents a property [»wirtN6_1966]
Quote: a data record is created dynamically and reclaimed through garbage collection [»wirtN6_1966]
Quote: use reference variables to refer to records and their fields; e.g., age(father(B)) is the age of B's father [»wirtN6_1966]
Quote: classes are a remodeling of records; hierarchical tree structure; members are objects; the prefix of a subclass is the higher level class [»dahlOJ_1967]

Subtopic: data record as storage up

Quote: storage semantics is more common than value or reference semantics; represent objects by containment or by references, whichever works better [»taivA4_1993]
Quote: CLR generics identify compatible parameterizations; i.e., reference types, struct types compatible if same layout re garbage collection; otherwise unshared code [»kennA6_2001]

Subtopic: fields same as locals up

Note: field definition should be the same as local definition; use tables for both? [»cbb_2000, OK]

Subtopic: linked data records up

Quote: use reference types to link records into structural networks of any desired complexity [»wirtN6_1966]
Quote: besides Ross's n-component elements, Sketchpad includes back-pointers stored in a ring; e.g., e.g., ring of line segments that terminate on a point [»suthIE5_1963]

Subtopic: extendible data record up

Quote: a Piccola form is an immutable, extensible record [»acheF9_2000]
Quote: an extended record type in Oberon adds fields to an existing type; retains compatibility with old types [»wirtN7_1988]
Quote: extended, Oberon objects are byte compatible with their base type; can be integrated into existing structures [»wirtN9_1989]
Quote: extensible records using a simple, perfect-hash coding; rapid access, efficient creation, one extra field [»remyD6_1992]
Quote: extensible records with create record, extend record, and access record [»remyD6_1992]
Quote: mod_p is a space-efficient, perfect hash for n up to 30; useful for extensible records with links to a type header [»remyD6_1992]

Subtopic: data record operations up

Quote: properties of records -- small number of labels, frequent creation and access, multiple records with the same domain, efficient use of space and time [»remyD6_1992]
Quote: a selector for the constructor, mktree, is a primitive datum or the empty structure [»leavBM9_1970]
Quote: records imply everything has only one type with a rigid structure [»kentW_1978]
Quote: need constructors and extractors for records; default values and tuple values [»gescCM6_1975, OK]
Quote: in L^6, data stored in fields of a block; a field is a bit substring; bugs point to a field [»knowK8_1966, OK]
QuoteRef: stanT_1967 ;;31 complex <- [realpt:real | imagmart:real]
Quote: a Linda tuple is a series of typed fields, e.g., strings and numbers [»carrN4_1989]

Subtopic: problems with records up

Quote: records are secure, efficient, and inflexible; variables and procedures are restricted to the declared record class [»dahlOJ_1967]
Quote: storage semantics in object-oriented languages leads to problems with copying, destruction, and comparison [»taivA4_1993]
Quote: Unix does not use the concept of a record; either as a fixed number of bytes and a count+bytes [»ritcDM7_1978b]
Quote: a file is a sequence of bytes; not a sequence of records

Related Topics up

Group: data type   (34 topics, 730 quotes)
Topic: access to components of a data object (4 items)
Topic: attribute-value pairs as information (57 items)
Topic: data alignment (2 items)
Topic: data as a named set of data objects (22 items)
Topic: data type as constructors, selectors, and predicates (20 items)
Topic: database record (22 items)
Topic: forms as a UserInterface (11 items)
Topic: fundamental concepts such as type, attributes, relationships are all the same (37 items)
Topic: index sequence for array access (16 items)
Topic: object-defined names (15 items)
Topic: object-oriented fields (28 items)
Topic: object-oriented objects (39 items)
Topic: objects as a set of attributes (39 items)
Topic: packed data (11 items)
Topic: property sheets for objects (29 items)
Topic: programming with forms (26 items)
Topic: semantic networks (42 items)
Topic: semi-structured text (17 items)
Topic: semistructured messages for automated processing (22 items)
Topic: tuples (17 items)
Topic: variable as reference to storage (12 items)
Topic: variant data types (7 items)
Topic: user-defined data type
(13 items)

Updated barberCB 2/06
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.