Part of the Programming glossary:

In information technology, canonicalization (pronounced KA-nahn-nihk-uhl-ih-ZAY-shun and sometimes spelled canonicalisation) is the process of making something canonical -- that is, in conformance with some specification. To canonicalize (as well as the slightly less tortured variant canonify ) is to ensure that data conforms to canonical rules, and is in an approved format. Canonicalization may sometimes mean generating canonical data from noncanonical data.

Canonicalization is used for a variety of computer and Internet-related applications. In a sendmail context, canonification (or canonicalization) describes the process used to complete Mail-From addresses where necessary on incoming messages. When the canonify feature is turned on, a defined default domain name is added to the user name on an incoming message, so that username is translated to username@domain . Within the Extensible Markup Language ( XML ), canonicalization ensures that an XML document adheres to the specified format.

The term canonicalization may have been coined to avoid using the term for the process of making someone an official saint in the Roman Catholic Church -- canonization . It is also possible that the first coiner of the term hadn't heard of canon and canonize and created new terms out of the adjectival canonical , sometimes used in describing formal elements of a specification.

Because canonicalization is such a long word, and lacking any readily apparent abbreviation, it is sometimes expressed as C14N , in which 14 represents the number of letters between the C and the N .

This was last updated in September 2005
Contributor(s): Kamal Kapur, Simon Moy, Bradley Kodama and Brant Casey
Posted by: Margaret Rouse

Related Terms

Definitions

  • application program interface (API)

    - An application program interface (API) is code that allows two software programs to communicate with each other. Typically, APIs are released for third-party development as part of a software devel... (SearchExchange.com)

  • algorithm

    - An algorithm (pronounced AL-go-rith-um) is a procedure or formula for solving a problem. (WhatIs.com)

  • abstraction

    - Abstraction (from the Latin abs, meaning away from and trahere, meaning to draw) is the process of taking away or removing characteristics from something in order to reduce it to a set of essential... (WhatIs.com)

Glossaries

  • Programming

    - Terms related to software programming, including definitions about programming languages and words and phrases about software design, coding, testing and debugging.

  • Internet applications

    - This WhatIs.com glossary contains terms related to Internet applications, including definitions about Software as a Service (SaaS) delivery models and words and phrases about web sites, e-commerce ...

Ask a Question About canonicalizationPowered by ITKnowledgeExchange.com

Get answers from your peers on your most technical challenges

Tech TalkComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.