secondary notation
   HOME

TheInfoList



OR:

Secondary notation is the set of
visual cues The visual system comprises the sensory organ (the eye) and parts of the central nervous system (the retina containing photoreceptor cells, the optic nerve, the optic tract and the visual cortex) which gives organisms the sense of sight (th ...
used to improve the readability of a formal notation. Examples of secondary notation include the
syntax highlighting Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms ...
of computer
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the wo ...
, sizes and
color code A color code is a system for displaying information by using different colors. The earliest examples of color codes in use are for long-distance communication by use of flags, as in semaphore communication. The United Kingdom adopted a color c ...
s for easy recognition of consumer symbols such as
bank note A banknote—also called a bill (North American English), paper money, or simply a note—is a type of negotiable promissory note, made by a bank or other licensed authority, payable to the bearer on demand. Banknotes were originally issued ...
s or
coin A coin is a small, flat (usually depending on the country or value), round piece of metal or plastic used primarily as a medium of exchange or legal tender. They are standardized in weight, and produced in large quantities at a mint in order t ...
s, or the regular typographic conventions often found in technical books to highlight sections with the same type of content. Secondary notation provides redundant (more than necessary) information; if the visual cues are the only way that some information is provided, such as in
traffic light Traffic lights, traffic signals, or stoplights – known also as robots in South Africa are signalling devices positioned at intersection (road), road intersections, pedestrian crossings, and other locations in order to control flows of traf ...
s, or a chart's key, it is not secondary. Secondary notation is often not a part of the formal notation itself. Rather, it is a method of organizing the formal notation to allow it to be more easily understood. Thus, secondary notation does not change the actual meaning of the formal notation, rather it allows for the meaning to be readily understood. In text such as
programming languages A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
, this can be done using cues such as
indentation __FORCETOC__ In the written form of many languages, an indentation or indent is an empty space at the beginning of a line to signal the start of a new paragraph. Many computer languages have adopted this technique to designate "paragraphs" or o ...
and coloring. In formal graphical notations, this can be done through the use of symmetry or proximity to indicate relatedness.


In different contexts

Secondary notation annotates formal notation in a number of contexts which can be broken down to two main domains: text and graphics.


Textual context

There are a number of common instances of secondary notation that are seen in text. Secondary notation is common in
typography Typography is the art and technique of arranging type to make written language legible, readable and appealing when displayed. The arrangement of type involves selecting typefaces, point sizes, line lengths, line-spacing ( leading), and ...
and in
code editor A source-code editor is a text editor program designed specifically for editing source code of computer programs. It may be a standalone application or it may be built into an integrated development environment (IDE) or web browser. Source-code ed ...
s appearing as boldness, italics, and spacing/indentation.


Textual secondary notation in computer source code

Secondary notation in the form of coloring and indentation is commonly implemented in
integrated development environment An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
s to make source code more readable and make the formal notation more understandable. The following C source code does not use secondary notation to ease the interpretation of the formal notation: int main() The following is the same code, but with indentation and syntax highlighting. As a result, the formal notation of C is easier to read: int main()


Textual secondary notation in typography

A number of examples of secondary notation that commonly appear in English writing include *
Boldness Boldness is the opposite of shyness. To be bold implies a willingness to get things done despite risks. Boldness may be a property that only certain individuals are able to display. For example, in the context of sociability, a bold person may ...
which is used to put emphasis on a certain area of text. * ''
Italics In typography, italic type is a cursive font based on a stylised form of calligraphic handwriting. Owing to the influence from calligraphy, italics normally slant slightly to the right. Italics are a way to emphasise key points in a printed tex ...
'' which is another method of applying emphasis on a certain area of text. * The following example effectively uses
indentation __FORCETOC__ In the written form of many languages, an indentation or indent is an empty space at the beginning of a line to signal the start of a new paragraph. Many computer languages have adopted this technique to designate "paragraphs" or o ...
to separate items on a shopping list that must be bought at different stores. Indented items all must be bought at the store within which the items are nested. 1. Allison's Frozen Foods - Frozen Tuna - Chicken patties - Fish sticks - 2lb of hamburgers 2. Sarah's Groceries - 3 boxes of cereal - 2 boxes of fruit juice - 2 dozen eggs 3. Jim's Formal Wear - 2 dress shirts - 1 orange tie


Graphical context

Secondary notation is commonly used in graphical contexts to better convey information beyond what the formal notation of the graphic makes explicit.


Flowcharts

A graphical representation that has been well studied and can be heavily impacted by secondary notation is a
flowchart A flowchart is a type of diagram that represents a workflow or process. A flowchart can also be defined as a diagrammatic representation of an algorithm, a step-by-step approach to solving a task. The flowchart shows the steps as boxes of va ...
and especially drakon-charts. Research has shown that there are a number of layout factors unincorporated into the formal notation that impact a flowchart's ease of understanding: # Minimize arc crossings: the number of times lines cross should be kept to a minimum to ease traceability. In drakon-charts all the arc (line) crossings are forbidden. # Minimize line bends: additional bends add to the visual complexity of the model. In drakon-charts all the line bends are minimized. # Leverage symmetry: position elements symmetrically when possible # Align labels horizontally: textual labels are easier to read when aligned horizontally # Use of locality: group related items together to be easily recognizable The examples on the right show how these techniques can drastically affect the ease of understanding when looking at a process model. The model depicts a simplified process for ordering products from a website. Both diagrams contain exactly the same blocks with the same interconnections. However, the one that uses better secondary notation can be readily understood whereas the other model requires careful analysis to understand its contents.


Misuse

While inadequate use of secondary notation can significantly increase the amount of effort necessary to understand a model, misuse of secondary notation can also be a detriment. Use of symmetry can make a graphic more visually appealing, but can also convey misconceptions if used incorrectly. For instance, placing unrelated items close together may cause a reader to perceive them as being related. Additionally, arbitrary use of coloring may distract a reader as they wonder about the meanings of the various colors.


Experts vs. novices

The ability of individuals to understand and use secondary notation has been shown to vary based on experience within the relevant field. Experts in a field are generally more able to utilize the clues provided by secondary notation. Specifically, while reading diagrams, experts have been shown to have more skill at reading the larger structure of the diagram and using it to guide their examination of the details provided by the formal notation. This compares to novices who often focus on the details of the formal notation, ignoring the hints provided by the secondary notation. There are also differences based on level of experience/expertise when creating documents that utilize secondary notation. Experts tend to be more consistent in their use of conventions while novices tend to vary between conventions, sometimes adhering on a surface level, but failing to convey the desired information. In the case of circuit diagrams, this is illustrated by common novice mistakes such as creating visual symmetry where there is no logical symmetry and frequent transitions between differing secondary notation conventions.


As part of formal notation

In some cases, secondary notation is part of the formal notation. Such formal notations attempt to improve readability by enforcing the presence of visual cues. The trade-off is that, what in many other cases is only secondary notation (like, for example, indentation in
free-form language In computer programming, a free-form language is a programming language in which the positioning of characters on the page in program text is insignificant. Program text does not need to be placed in specific columns as on old punched card syst ...
s), is now part of the formal notation, and thus is not optional. For example, the
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
programming language requires source code to follow strict indentation rules. This is intended to improve readability of the code, by ensuring that statements that are at the same level of nesting within a block are aligned to the same column. Other types of secondary notation, however, are not part of the formal notation. For example, when wrapping long lines, every line that is a continuation of a previous line can be indented arbitrarily. if x

1: print("x is 1") print("x is odd") print("This is always printed") # this is illegal print("Hello world") str = " ".join( "these words are indented", "for better readability")
Markdown Markdown is a lightweight markup language for creating formatted text using a plain-text editor. John Gruber and Aaron Swartz created Markdown in 2004 as a markup language that is appealing to human readers in its source code form. Markdown is ...
also uses indentation as part of the formal syntax of the language. Indentation is required in Markdown when creating certain source code representations of
block quotation A block quotation (also known as a long quotation or extract) is a quotation in a written document that is set off from the main text as a paragraph, or block of text, and typically distinguished visually using Indentation (typesetting), indenta ...
s as well as when creating sections of source code to be rendered as the code itself.
#Heading 1#

     #Indented Markdown source code that will be rendered as source code#  


See also

*
Cognitive dimensions Cognitive dimensions or cognitive dimensions of notations are design principles for notations, user interfaces and programming languages, described by researcher Thomas R.G. Green and further researched with Marian Petre. The dimensions can be u ...
*
Syntax highlighting Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms ...
*
Syntactic sugar In computer science, syntactic sugar is syntax within a programming language that is designed to make things easier to read or to express. It makes the language "sweeter" for human use: things can be expressed more clearly, more concisely, or in an ...


Notes


References

* . * Marian Petre
Why looking isn't always seeing: readership skills and graphical programming.
Commun. ACM, 38(6):33-44, 1995. * Marian Petre, M. Petre. Cognitive dimensions 'beyond the notation'. J. Vis. Lang. Comput., 17(4):292-301, 2006. * Rule, Revisiting Landin’S. Offside, and Michael D. Adams.
Principled Parsing for Indentation-Sensitive Languages
" (2013). * {{cite book , last1 = Schrepfer , first1 = Matthias , title = The Practice of Enterprise Modeling , last2 = Wolf , first2 = Johannes , last3 = Mendling , first3 = Jan , last4 = Reijers , first4 = Hajo A. , chapter = Part 5: The Impact of Secondary Notation on Process Model Understanding , volume = 39 , work = THE PRACTICE OF ENTERPRISE MODELING-Lecture Notes in Business Information Processing , publisher = SpringerLink , year = 2009 , pages = 161–175 , chapter-url = http://mendling.com/publications/PoEM-2009.pdf , accessdate = 2011-07-12 , doi = 10.1007/978-3-642-05352-8_13, series = Lecture Notes in Business Information Processing , isbn = 978-3-642-05351-1 Human–computer interaction Notation User interface techniques Text editor features