In the Oracle Endeca Server data model, primary keys (also known as record specs) are used to uniquely identify records.
In addition, each record must have an assignment from exactly one primary key, so that the Oracle Endeca Server can uniquely identify it (in order to update it, for example).
Each set of records must have at least one primary key standard attribute, although this primary key attribute could be different for different sets of records. This allows the Oracle Endeca Server to handle different record types, each of which can have a meaningful identifying standard attribute. For example, a store that carries multiple types of items might identify book records by a BookID primary key attribute, and apparel records by an ApparelID attribute.