Attribute–value system

An attribute–value system is a basic knowledge representation framework comprising a table with columns designating "attributes" (also known as "properties", "predicates", "features", "dimensions", "characteristics", "fields", "headers" or "independent variables" depending on the context) and "rows" designating "objects" (also known as "entities", "instances", "exemplars", "elements", "records" or "dependent variables"). Each table cell therefore designates the value (also known as "state") of a particular attribute of a particular object.

Example of attribute–value system
Below is a sample attribute–value system. It represents 10 objects (rows) and five features (columns). In this example, the table contains only integer values. In general, an attribute–value system may contain any kind of data, numeric or otherwise. An attribute–value system is distinguished from a simple "feature list" representation in that each feature in an attribute–value system may possess a range of values (e.g., feature $P1$ below, which has domain of {0,1,2}), rather than simply being present or absent.


 * {| class="wikitable" style="text-align:center; width:30%" border="1"

! Object !! $P1$ !! $P2$ !! $P3$ !! $P4$ !! $P5$ ! $O1$ ! $O2$ ! $O3$ ! $O4$ ! $O5$ ! $O6$ ! $O7$ ! $O8$ ! $O9$ ! $O10$
 * + Sample attribute–value system
 * 1 || 2 || 0 || 1 || 1
 * 1 || 2 || 0 || 1 || 1
 * 2 || 0 || 0 || 1 || 0
 * 0 || 0 || 1 || 2 || 1
 * 2 || 1 || 0 || 2 || 1
 * 0 || 0 || 1 || 2 || 2
 * 2 || 0 || 0 || 1 || 0
 * 0 || 1 || 2 || 2 || 1
 * 2 || 1 || 0 || 2 || 2
 * 2 || 0 || 0 || 1 || 0
 * }

Other terms used for "attribute–value system"
Attribute–value systems are pervasive throughout many different literatures, and have been discussed under many different names:
 * Flat data
 * Spreadsheet
 * Attribute–value system (Ziarko & Shan 1996)
 * Information system (Pawlak 1981)
 * Classification system (Ziarko 1998)
 * Knowledge representation system (Wong & Ziarko 1986)
 * Information table (Yao & Yao 2002)