Definition Lists

Learn how to create semantic term and definition pairs for glossaries and documentation


Definition Lists

Definition lists provide a semantic way to display term and definition pairs, perfect for glossaries, documentation, and educational content.

Basic Syntax

Define a term followed by its definition using a colon and indentation:

HTML
HyperText Markup Language, the standard language for creating web pages.
CSS
Cascading Style Sheets, used for describing the presentation of HTML documents.
JavaScript
A programming language that enables interactive web pages.

Multiple Definitions

A single term can have multiple definitions:

Open Source
Software with source code that anyone can inspect, modify, and enhance.
A collaborative development methodology that promotes transparency and community participation.

Multiple Terms

Multiple terms can share the same definition:

Frontend
Client-side
The part of a web application that users interact with directly in their browser.
Backend
Server-side
The part of a web application that runs on the server and handles data processing.

Programming Concepts

Data Structures

Array
An ordered collection of elements stored at contiguous memory locations.
Linked List
A linear data structure where elements are stored in nodes, with each node pointing to the next.
Stack
A Last-In-First-Out (LIFO) data structure where elements are added and removed from the same end.
Queue
A First-In-First-Out (FIFO) data structure where elements are added at one end and removed from the other.
Hash Table
A data structure that maps keys to values using a hash function for efficient lookup.

Design Patterns

Singleton
A design pattern that ensures a class has only one instance and provides global access to it.
Observer
A behavioral pattern where an object maintains a list of dependents and notifies them of state changes.
Factory
A creational pattern that provides an interface for creating objects without specifying exact classes.

Web Development Terms

HTTP Methods

GET
Retrieves data from a server. Should not modify server state.
POST
Submits data to create a new resource on the server.
PUT
Updates an existing resource or creates it if it doesn't exist.
DELETE
Removes a specified resource from the server.
PATCH
Partially updates an existing resource.

Status Codes

200 OK
The request succeeded and the server returned the requested data.
404 Not Found
The server cannot find the requested resource.
500 Internal Server Error
The server encountered an unexpected condition that prevented it from fulfilling the request.

Complex Definitions with Formatting

You can include rich content in definitions:

React
A JavaScript library for building user interfaces. Key Features:
  • Component-based architecture
  • Virtual DOM for performance
  • Declarative syntax
  • Unidirectional data flow
Example:
function Welcome({ name }) {
  return <h1>Hello, {name}!</h1>;
}
JSX
Node.js
A JavaScript runtime built on Chrome's V8 engine. Allows JavaScript to run on the server side, enabling full-stack JavaScript development. Common Uses:
  • Web servers and APIs
  • Real-time applications
  • Command-line tools
  • Build tools and task runners

Database Terminology

SQL
Structured Query Language - a domain-specific language for managing relational databases.
NoSQL
A class of database management systems that don't use traditional relational models. Types:
  • Document stores (MongoDB, CouchDB)
  • Key-value stores (Redis, DynamoDB)
  • Column-family stores (Cassandra, HBase)
  • Graph databases (Neo4j, ArangoDB)
ACID
A set of properties guaranteeing reliable database transactions:
  • Atomicity - All or nothing execution
  • Consistency - Valid state transitions
  • Isolation - Concurrent execution appears sequential
  • Durability - Committed changes persist

Git Terminology

Repository
A storage location for a software project, including all files and revision history.
Commit
A snapshot of changes in the repository at a specific point in time.
Branch
A parallel version of the repository that diverges from the main working project.
Merge
The process of integrating changes from one branch into another.
Pull Request
A request to merge changes from one branch into another, typically used for code review.

API Concepts

REST
Representational State Transfer - an architectural style for distributed systems. Principles:
  • Stateless communication
  • Client-server architecture
  • Cacheable responses
  • Uniform interface
GraphQL
A query language for APIs that allows clients to request exactly the data they need. Advantages:
  • No over-fetching or under-fetching
  • Strongly typed schema
  • Single endpoint
  • Real-time updates with subscriptions
Endpoint
A specific URL where an API can be accessed to perform operations.

Security Terms

Authentication
The process of verifying the identity of a user or system.
Authorization
The process of determining what actions an authenticated user is allowed to perform.
Encryption
The process of encoding information so only authorized parties can access it. Types:
  • Symmetric encryption (AES)
  • Asymmetric encryption (RSA)
  • Hashing (SHA-256, bcrypt)
HTTPS
HTTP Secure - HTTP protocol with encryption using TLS/SSL for secure communication.

Algorithm Complexity

Big O Notation
A mathematical notation describing the limiting behavior of an algorithm's time or space requirements.
O(1)
Constant time - execution time doesn't change with input size. Example: Array access by index
O(n)
Linear time - execution time grows linearly with input size. Example: Linear search through an array
O(n²)
Quadratic time - execution time grows quadratically with input size. Example: Nested loops, bubble sort
O(log n)
Logarithmic time - execution time grows logarithmically with input size. Example: Binary search on sorted array

Building a Glossary

Programming Paradigms

Imperative Programming
A programming paradigm where the programmer instructs the machine how to change its state.
Declarative Programming
A programming paradigm that expresses the logic of computation without describing its control flow.
Object-Oriented Programming (OOP)
A paradigm based on the concept of objects containing data and code. Core Principles:
  1. Encapsulation
  2. Inheritance
  3. Polymorphism
  4. Abstraction
Functional Programming
A paradigm that treats computation as the evaluation of mathematical functions and avoids changing state. Key Concepts:
  • Pure functions
  • Immutability
  • First-class functions
  • Higher-order functions

Use Cases

Definition lists are ideal for:

  • Glossaries - Technical term definitions
  • Documentation - API parameters and return values
  • Tutorials - Explaining concepts step by step
  • Reference Guides - Command options and flags
  • FAQs - Question and answer pairs

Best Practices

Keep Definitions Concise

Good:

Variable
A named storage location in memory that holds a value.

Too Verbose:

Variable
In computer programming, a variable is essentially a symbolic name associated with a memory location that contains some known or unknown quantity of information referred to as a value, and the variable name is typically used to reference the stored value.

Use Consistent Formatting

When listing multiple related terms, maintain consistent definition structure:

map()
Transforms each element of an array using a callback function.
filter()
Creates a new array with elements that pass a test function.
reduce()
Reduces an array to a single value by applying a function.

Combine with Other Features

Definition lists work well with other markdown features:

API
Application Programming Interface

Syntax Reference

Term
:   Definition

Multiple Terms
Another Term
:   Shared definition

Single Term
:   First definition
:   Second definition
Markdown

Key Points:

  • Term appears on its own line
  • Definition starts with : followed by three spaces (or a tab)
  • Multiple definitions for one term: use multiple : lines
  • Multiple terms for one definition: list terms on consecutive lines

Accessibility

Definition lists use semantic HTML (<dl>, <dt>, <dd> elements):

  • Screen readers announce them as definition lists
  • Proper structure for assistive technologies
  • Semantic meaning improves SEO
  • Task Lists - For checklists and todo items
  • Tables - For structured data comparisons
  • Asides - For highlighting important definitions

Back to Markdown Features