Effective Internet Search: Template Concept
The fact that the
book is organized based on a
multi-level generic template
to discuss the topic in a way that
is independent of any one search tool or engine.
Before proceeding further, you should note that:
- In our view, distinguishing style from
structure is in the eye of the beholder. In
"reality," both style and structure both
actually occupy space, and are therefore both
- By "placeholders" here, we include not only
variables, but also constants. In other words, a
placeholder is similar to the idea of an
"object" in object-oriented programming or
software design, being anything that occupies
space (as opposed to time, for example).
- In mathematics, logic, physics, and certain
other disciplines, the term "placeholder" is
used in a more restrictive sense, as being the
same as the idea of a variable or a dimension.
So, our usage here is broader, and perhaps more
in line with thinking philosophically.
- Although most of the below examples of
objects or systems are in the area of software
or informational objects, any type of physical
object might also be used to exemplify the
- A system is interacting set of objects that
form a whole. In our view, seeing some
phenomenon as an object or system is in the eye
of the beholder, i.e., based on mental templates
we project onto phenomena. In other words, you
might see the same phenomena in different ways.
In fact, object and system are only two of
several ways of viewing phenomena.
What is a template?
Why reinvent the wheel when you want to design or create a new
object or system? Instead, why not use a template? A template
is a starting point for both the structural constant
or variable placeholders, and basic stylistic characteristics of an
object or system you want to design
and then usually create. It may also include tools specialized for
working with that template, such as wizards or special toolbars and
menus for using software templates.
Templates may be very generic and high-level, such as ones that
include only stylistic (rather than structural) characteristics
(e.g., colors, fonts, margins for documents to be designed). Or, they may be specialized
in various degrees, in which case placeholders/structural
characteristics (e.g., field labels and slots for entering variable
data into those fields on a form) are included.
More generic templates may be used as starting points for
designing more specialized ones, usually by making the variables of
the more generic template into constants and then adding more
structural constant or variable placeholders.
Let us give some
examples. Imagine you are applying for a job, and you have to fill
out an application form. The structural characteristics of that form,
such as field labels and places for filling out data,
provide a specialized template to guide you. All you have to do is fill in the variable
placeholder values. This may involve replacing certain default (assumed) values for particular
boxes or fields on the form, and following suggestions or mandatory
constraints as to what you
might put in as values for the variable placeholders.
If you have applied for many jobs in your life, you will soon
come to realize that all job application forms tend to have the same
set of fields or boxes. That's because they all
derive from a common, higher-level template. That template will be
more generic, and will likely use more abstract terminology
and more variable placeholders (as opposed to constant ones),
since it has to apply across a variety of industries, firms, and
cultural groups. For example, the generic template might ask for
"previous organization name," instead of "previous
since not all previous employers are necessarily private companies
(e.g., some may be public sector organizations).
Many templates come with narrative explanations or suggestions of what you
should fill in for given placeholders. In our job
application example, you might have accompanying explanations of
what is meant for "previous company name," and how that should be
written into the area for that item. In fact, explanations can
become quite lengthy. Some of you may, for instance, have had the
experience of using the AutoContent Wizard when producing PowerPoint
slides. In that case, an entire set of slides may be given for a
given purpose, such as a sales presentation, and standard slides are
provided in a particular slide sequence along with suggestions as to what you might want to put for
particular placeholders on particular slides.
Another example of a template, from word processing, is a generic
business letter, with fields, perhaps with derivation formulas
behind them, for such things as date, company name and address,
addressee designation (e.g., "Dear Sir"), final salutation (e.g.,
"Yours truly"), and company logo. The date could, for example, be
derived by a formula from the computer operating system date.
Templates also provide basic stylistic characteristics for the
object under design. For example, in word processing, associated with each template is usually some
set of pre-defined styles with which you can tag individual
components of your document, following which those components will
immediately change appearance to conform to your choices. For
instance, if you produce a business letter from template using a
word processor (such as Microsoft Word), the template provides
styles for document characteristics such as page margins, page
headers and footers, background colors and themes, paragraph attributes
(typefaces/fonts, spacing, breaks, etc.), tables, and even individual
By changing the style definition, you can automatically change
all the components of your document having that style automatically,
without having to make the changes to each component to which the
style is applied. This saves time and ensures that the change is
applied consistently everywhere. You can still override the style
for parts of the component. For instance, if your level 2 document
header style does not italicize the text, and you want to italicize
a single word in one instance of a level 2 header paragraph in a
document based on your selected template, you can still make that
single word italicized.
Templates versus prototypes
Prototypes are actual, working examples of something you might
want to follow. For instance, if you need to produce a letter to
someone and happen to have one on hand that is close to your needs, you might want to start from
the existing letter. Using that as a base, you can then make the necessary additions,
subtractions, or modifications to suit your needs, thereby creating
the new letter you need.
If we had using the prototyping method, we would have taken a
single search engine as an example, and then described other search
engines in terms of how they differ from that search engine.
Note: The idea of "conceptual prototypes," a term
developed by Ed Baylin in one of his
previous books, is similar to that of a generic template.
However, this refers to a slightly different kind of generic
one in which specialization in particular directions has occurred,
while still keeping the lower level templates at purely abstract levels.