Man has always searched for meaning in life, and this curiosity carries over to the world of language and data as well. Data semantics is the study of the meaning and use of specific pieces of data in computer programming and other areas that employ data. When studying a language, semantics refers to what individual words mean and what they mean when put together to form phrases or sentences. In data semantics, the focus is on how a data object represents a concept or object in the real word.
Data semantics is highly subjective. If a person who has never worked with a computer database tries to pull information from it, the words and phrases used to access the database would make no sense. Semantic meaning occurs only when a group agrees on specific definitions for certain data types or words. For others to pick up on these semantic meanings, they cannot change. If the word "dog" referred to a furry, four-legged animal one day and a two-legged bird the next, it would lose its meaning and no one would know what another person meant when she said "dog."
The need for data semantics arose in the 1970s when the United States Air Force developed a program to help people communicate more clearly about current manufacturing techniques they were using. By doing this, they could improve manufacturing processes. The program, known as the Integrated Computer-Aided Manufacturing program (ICAM), employed methods known as the IDEF (integration definition) methods which produced various models of how the system should work.
One example of how data semantics helps relate pieces of code or data to the real world is a library card catalog. Originally, book records were stored in alphabetical order on slips of paper in a filing cabinet. To look up a book, a patron would flip through the cards until he found the book title he wanted. In a computer database, a space of memory for holding a book's title and information can be thought of as a virtual version of the original paper title card.
Though data semantics is highly abstract on many levels, it has a simple goal. It allows those working with data to come up with a clear, defined set of rules that everyone can understand and follow. The creation of data semantics is similar to mapping out grammar and style rules that determine how words are used together to convey a specific meaning.