Functions On Symbols

Data integration is a complex problem with many facets. From a semiotic point of view, quite a lot of human cognitive and communicative processing capabilities is involved in the resolution. This post is entering the discussion at a point where a number of necessary terms and concepts have not yet been described on this site. Stay tuned, as I will begin to flesh out these related ideas.

You may also find one of my permanent pages on functions to be helpful.

A Symbol Is Constructed

Recall that we are building tautologies showing equivalence of symbols. Recall that symbols are made up of both signs and concepts.

If we consider a symbol as an OBJECT, we can diagram it using a Unified Modeling Language (UML) notation. Here is a UML Class diagram of the “Symbol” class.

UML Diagram of the "Symbol" Object

UML Diagram of the "Symbol" Object

The figure above depicts how a symbol is constructed from both a set of “signs” and a set of “concepts“. The sign is the arrangement of physical properties and/or objects following an “encoding paradigm” defined by the members of a context. The “concept” is really the meaning which that same set of people (context) has projected onto the symbol. When meaning is projected onto a physical sign, then a symbol is constructed.

Functions Impact Both Structure and Meaning

Symbols within running software are constructed from physical arrangements of electronic components and the electrical and magnetic (and optical) properties of physical matter at various locations (this will be explained in more depth later). The particular arrangement and convention of construction of the sign portion of the symbol defines the syntactic media of the symbol.

Within a context, especially within the software used by that context, the same concept may be projected onto many different symbols of different physical media. To understand what happens, let’s follow an example. Let’s begin with a computer user who wants to create a symbol within a particular piece of software.

Using a mechanical device, the human user selects a button representing the desired symbol and presses it. This event is recognized by the device which generates the new instance of the symbol using its own syntactic medium, which is the pulse of current on a closed electrical circuit on a particular wire. When the symbol is placed in long term storage, it may appear as a particular arrangement of microscopic magnetic fields of various polarities in a particular location on a semi-metalic substrate. When the symbol is in the computer’s memory, it may appear as a set of voltages on various microscopic wires. Finally, when the symbol is projected onto the computer monitor for human presentation, it forms a pattern of phosphoresence against a contrasting background allowing the user to perceive it visually.

Note through all of the last paragraph, I did not mention anything about what the symbol means! The question arises, in this sequence of events, how does the meaning of the symbol get carried from the human, through all of the various physical representations within the computer, and then back out to the human again?

First of all, let’s be clear, that at any particular moment, the symbol that the human user wanted to create through his actions actually becomes several symbols – one symbol for each different syntactic representation (syntactic media) required for it to exist in each of the environments described. Some of these symbols have very short lives, while others have longer lives.

So the meaning projected onto the computer’s keyboard by the human:

  • becomes a symbol in the keyboard,
  • is then transformed into a different symbol in the running hardware and operating system,
  • is transformed into a symbol for storage on the computer’s hard drive, and
  • is also transformed into an image which the human perceives as the shape of the symbol he selected on the keyboard.

But the symbol is not actually “transforming” in the computer, at least in the conventional notion of a thing changing morphology. Instead, the primary operation of the computer is to create a series of new symbols in each of the required syntactic media described, and to discard each of the old symbols in turn.

It does this trick by applying various “functions” to the symbols. These functions may affect both the structure (syntactic media) of the symbol, but possibly also the meaning itself. Most of the time, as the symbol is copied and transferred from one form to another, the meaning does not change. Most of the functions built into the hardware making up the “human-computer interface” (HCI) are “identity” functions, transferring the originally projected concept from one syntactic media form to another. If this were not so, if the symbol printed on the key I press is not the symbol I see on the screen after the computer has “transformed” it from keyboard to wire to hard drive to wire to monitor screen, then I would expect that the computer was broken or faulty, and I would cease to use it.

Sometimes, it is necessary/desirable that the computer apply a function (or a set of functions called a “derivation“) which actually alters the meaning of one symbol (concept), creating a new symbol with a different meaning (and possibly a different structure, too).

Context As Observer

Consider a context as a reflection of one point of view. As a frame or lense through which the external environment is observed. The “things” that “matter” to the context are the events or features which are both:

  • VISIBLE – or otherwise perceptible, and
  • NAMEABLE – or describable/categorizable

If something is imperceptible, then obviously there will be nothing to notice – no “referent”. In this case, imagined perceptions will be included as “perceptible”. If the thing which could be perceived is not nameable or otherwise describable within the context, then the context hasn’t noticed it and it does not exist.

That is to say, that a reality exists independent of any particular context, but in terms of the point of view of the context, that which the context has no expression for lies outside of the context. If context is the perceiver, then the indescribable reality outside of the context may as well not exist, for all the benefit the context gains from it.

Every context that exists is limited to the perception of  only a subset of reality. Is there a limit to the perception of reality if we take into account the sum total of all contexts in existence today, and all those which existed in the past? Yes, else one would expect that invention and discovery would cease.

Context is a feature of communication. It is not reality, which is the referent of the communication.

An example comes to mind from the physical world. One context may be the one in which the speed of a particle is important. Another context may be the one in which the position of the particle in space and time is important. Then there’s the context of Quantum Mechanics which is the one which first recognized that there were two other contexts (although it did not call them this) and that one interferes with the other. In QM, due to the known limitations of the physical world and our ability to perceive it at a particular level, these two contexts can never observe the same exact phenomenon. An observer in one context that observes one aspect of the particle necessarily changes the condition of the particle so that the other condition is no longer perceptible.

This seems really trivial, until we broaden the idea out to more complex contexts. The world is an analog, continuous place. Even the most complex context however can only perceive and name certain aspects, and is unaware of or finds inexpressible other aspects.

This is the place where poets and artists find creative expression and energy, between the lines of the necessarily constrained contexts of their own ability to communicate.

Out of the whole continuity of experience and phenomena which is the world about us, we are selective about the things we notice and think and speak about. Why one observation is made instead of another is based wholly on the things we find “remarkable”.

We remark on the things that are remarkable to us. By this I mean, the things we wish to convey or communicate are the things we find words to express. This “finding of words” includes inventing words and turns of phrase. After all, we each bring to the human table a uniqueness of vision commensurate to our talents, proclivities and experience.

Those to whom we successfully impart our observations, thru the act of their understanding the message, enter into the context of discourse of those observations. Once in that context, they may corroborate or elaborate on my original observations, broadening and enriching the context. Over time our collective observations become codified and regular, our terminology more richly evocative and concise, such that we may begin to speak in a shorthand.

Where a paragraph once was needed, now a sentence – where once a sentence now a single term…

As we start recognizing more and more examples of a phenomena, we invent a sublanguage which, when used within the context (and with the proper participants – see definition of context – i.e., with other people who share this context) is perfectly understandable.

An extreme example of differences in contexts would be the contrast of elementary school arithmetics versus obscure branches of mathematics research. The concepts which matter in the one are inconceivable in the other, the notation and terminology of the one are indecipherable in the other.

Consider the origin and usage of the term “ponzi scheme”. The original of the type was perpetrated by a man named “Ponzi”. Anyone who has operated a similar scheme since can now be referred to using the name of one notorious example. In recent years, the largest ponzi scheme ever perpetrated was the brainchild of Bernie Madoff. Time will tell if future outrageously immense ponzi schemes will be given a new moniker.

We might ask: “In what sense do we say that a “context” is an “observer”? There are a few ways we can use this analogy. First, a context is the product of communication among indidivual humans. It is the participation in the communication, in sending and receiving message, that creates the scope of the communication. What is communicated is the shared observations of the participant community.

Context Is:

Communication == Community == Communication

Information transfer among a group of individuals who share a common interest.

The language used is necessarily constrained, at first informally but later perhaps more rigidly as communication becomes more focused. Difficult observations require lots of talk. Once the idea has been grasped, however, less and less is needed to evoke the memory of the original idea, until a single term from the original description can be used as a stand-in.

It is not the abstract notion of a context that actually does the observing. Rather it is the community members themselves, the humans, who do the observing. The subject of communication is necessarily the things of interest to the community. But an individual who observes something is not necessarily participating in the context. Only the observations that are shared and received are part of the context.

A second sense in which the context can be described as the observer at an abstract level. While the context is formed from the collective interests and communication of the group of humans, eventually, the context becomes prescriptive. The extent and content of the shared sublanguage then defines the type and content of the observations that can be made by the members of the context. An observation that falls outside of the context’s prescriptive rules for content and structure is likely not to be understood (received). If it is not received, it may as well not have happened, hence such messages fall out of context.  The more constrained and formalized the context, the more explicit and succinct the observations that can be carried by that context, but also the fewer the variety of observations.

Successful study of the constraints and observations within a context occurs in much of the “social sciences”. Much can be deduced about what is important within a community by analysing the rules and limits of the communication that community’s context permits. In particular, a sense of the portion of existence important to the context can be deduced from the study of the observations communicated within that context.

Tension and Intention: Shifting Meaning in Software

If a software system is designed for one particular purpose, the data structures will have one set of intended meanings. These will be the meanings which the software developers anticipated would be needed by the user community for which the software was built. This set of intended meanings and the structure and supported relationships make up the “domain” of the software application.

When the software is actually put to use, the user community may actually redefine the meaning of certain parts of the syntactic media defined by the developers. This often happens at the edges of a system, where there may exist sets of symbols whose content are not critical to the operating logic of the application, but which are of the right syntactic media to support the new meaning. The meaning that the user community projects onto the software’s syntactic media forms the context within which the application is used. (See “Packaged Apps Built in Domains But Used in Contexts“)

Software typically has two equally important components. One is the capture, storage, retreival and presentation of symbols meaningful to a human community. The second is a set of symbol transformation processes (i.e., programming logic) which are built in to systematically change both the structure and possibly the meaning of one set of symbols into another set of symbols.

For a simplistic example, perhaps the software reads a symbol representing a letter of the alphabet and it transforms it into an integer using some regular logic (as opposed to picking something at random). This sort of transformation occurs a lot in encryption applications, and is a kind of transformation which preserves the meaning of the original symbol although changing completely its sign (syntactic medium).

When we push data (symbols) from a different source or context into the software application, especially data defined in a context entirely removed from that in which the software was defined and currently used, there are a number of possible ways to interpret what has happened to the original meaning of the symbols in the application.

What are some of the ways of re-interpretation?

  1. The meaning of the original context has expanded to a new, broader, possibly more abstract level, encompassing the meanings of both the original and the new contexts.
  2. Possibly, the mere fact that the original data and the new data have been able to be mixed into the same syntactic media may indicate that the data from the two contexts are actually the same. How might you tell?
  3. Might it also imply that the syntactic medium is more broadly useful, or that the transformation logic are somewhat generically applicable (and hence more semantically benign)?
  4. Are the data from the two contexts cohabitating the same space easily? Are they therefore examples of special cases of a larger, or broader symbollic phenomenon, or merely a happy coincidence made possibe by loose or incomplete software development practices?
  5. How do the combined populations of data symbols fare as maintenance of the software for one of the contexts using it is applied? Does the other context’s data begin to be corrupted? Or is it easy to make software changes to the shared structures? Do changes in the logic and structure supporting one context force additional changes to be made to disambiguate the symbols from the other context?

These questions come to mind (or should) whenever a community starts thinking about using existing applications in new contexts.

A Concept is Born: Sense Memory and Name Creation

June 24, 1988

Experience is characterized by memory of sensual information in all its detail. Analysis of this data can be retroactively applied. I can remember that:

“Yes, the sky was grey and windy just prior to the tree falling behind me.”

and therefore come to understand a set of events later, in some other context. Using this sensual memory aids abstraction and analysis because it acts as the raw material out of which abstractions can be built. Thus it is possible at a later date to reflect on past events and discover related occurences where before there was unorganized memory.

Learning of patterns is continuous:

“What was that?”

This question initially gets very simplistic answers when asked by toddlers and children. It takes nearly 20 years for humans to talk about philosophy in a formal way. But as slight variations to the simple occurences of events are experienced, the agent (learner) begins to organize subclasses of the same general event, especially if the social world provides him a useful distinction to use to characterize the subclass. In doing so, the subclass name becomes a synonym for the general idea.

Creative research by the agent (learner) is characterized by the creation of new distinguishing marks and the choosing of a class name for those marks. Communication with others regarding the subclass then becomes a matter of describing those marks, providing the short hand name, and obtaining agreement from the others that both the marks and the name are apropos.

And thus a concept is born…

Bridge Contexts: Meaning in the Edgeless Boundary

Previously, I’ve written about the idea of the “edgeless boundary” between semiospheres for someone with knowledge of more than one context. This boundary is “edgeless” because to the person perceiving it, there is little or no obvious boundary.

In software systems, especially in situations where different software applications are in use, the boundary between them, by contrast, can be quite stark and apparent. I’ll describe the reasons for this in other postings at a later time. The nutshell explanation is that each software system must be constrained to a well-defined subset of concepts in order to operate consistently. The subset of reality about which a particular application system can capture data (symbols) is limited by design to those regularly observable conditions and events that are of importance to the performance of some business function.

Often (in an ideal scenario), an organization will select only one application to support one set of business functions at a time. A portfolio of applications will thus be constructed through the acquisition/development of different applications for different sets of business functions. As mentioned elsewhere on this site, sometimes an organization will have acquired more than one application of a particular type (see ERP page). 

In any case, information contained in one application oftentimes needs to be replicated into another application within the organization.  When this happens, regardless of the method by which the information is moved from one application to another, a special kind of context must be created/defined in order for the information to flow. This context is called a “bridging context” or simply a “bridge context”.

As described previously, an application system represents a mechanized perception of reality. If we anthropomorphize the application, briefly, we might say that the application forms a semiosphere consisting of the meaning projected onto its syntactic media by the human developers and its current user community, forming symbols (data) which carry the specifically intended meaning of the context.

Two applications, therefore, would present two different semiospheres. The communication of information from one semiosphere to the other occurs when the symbols of one application are deconstructed and transformed into the symbols of the other application, with or without commensurate changes in meaning. This transformation may be effected by human intervention (as through, for example, the interpretation of outputs from one system and the re-coding/data entry into the other), or by automated transformation processes of any type (i.e., other software).

“Meaning” in a Bridging Context

Bridging Contexts have unique features among the genus of contexts overall. They exist primarily to facilitate the movement of information from one context to another. The meaning contained within any Bridging Context is limited to that of the information passing across the bridge. Some of the concepts and facts of the original contexts will be interpretable (and hence will have meaning) within the bridging context only if they are used or transformed during this flow.  Additional information may exist within the bridge context, but will generally be limited to information required to perform or manage the process of transformation.

Hence, I would consider that the knowledge held or communicated by an individual (or system) operating within a bridging context which is otherwise unrelated to either of the original contexts, or of the process of transference, would existing outside of the bridging context, possibly in a third context. As described previously, the individual may or may not perceive the separation of knowledge in this manner.

Special symbols called “travellers” may flow through untouched by transformation and unrecognized within the bridging context. These symbols represent information important in the origin context which may be returned unmodified to the origin context by additional processes. During the course of their trip across the bridging context(s) and through the target contexttravellers typically will have no interpretation, and will simply be passed along in an unmodified syntactic form until returned to their origin, where they can then be interpreted again. By this definition, a traveller is a symbol that flows across a bridge context but which only has meaning in the originating context.

Given a path P from context A to context B, the subset of concepts of A that are required to fulfill the information flow over path P are meaningful within the bridging context surrounding P. Likewise, the subset of concepts of B which are evoked or generated by the information flowing through path P, is also part of the content of the bridge context.  Finally, the path P may generate or use information in the course of events which are neither part of context A nor B. This information is also contained within the bridge context.

Bridge contexts may contain more than one path, and paths may transfer meaning in any direction between the bridged contexts. For that matter, it is possible that any particular bridging context may connect more than two other contexts (for example, when an automated system called an “Operational Data Store” is constructed, or a messaging interface such as those underlying Service Oriented Architecture (SOA) components are built).

An application system itself can represent a special case of a bridging context. An application system marries the context defined by the data modeller to the context defined by the user interface designer. This is almost a trivial distinction, as the two are generally so closely linked that their divergence should not be considered a sign of separate contexts. In this usage, an application user interface can be thought of as existing in the end user’s context, and the application itself acts to bridge that end user context to the context defining the database.