100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Programming

REDEFINES and OCCURS Clauses

How the REDEFINES clause overlays alternate views of the same storage and the OCCURS clause builds arrays and tables in COBOL, including indexing and variable-length tables.

Data & VariablesIntermediate10 min readJul 10, 2026
Analogies

The REDEFINES Clause

The REDEFINES clause lets a second data item share the exact same storage bytes as a previously defined item at the same level, giving a program two different interpretations of one physical location in memory without allocating additional space. Written as 05 WS-DATE-NUMERIC REDEFINES WS-DATE-TEXT PIC 9(8), the redefining item must appear immediately after the item it redefines, at the same level number, and its total size in bytes normally should not exceed the original item's size, though COBOL permits it to be smaller. REDEFINES is fundamentally different from a group item's subordinate breakdown, since a redefined item does not add new bytes to the record; it is purely an alternate lens for viewing storage that already exists.

🏏

Cricket analogy: REDEFINES is like reading the exact same over of play from two different scorers' notation systems, one tallying balls faced and one tallying dot balls, both describing the identical physical over without adding a new over to the match.

Practical Uses of REDEFINES

One of the most common production uses of REDEFINES is splitting a single incoming field into differently typed views for validation or arithmetic, such as receiving an 8-character date as PIC X(8) from an external file, then REDEFINING it with a numeric picture broken into year, month, and day subfields so PROCEDURE DIVISION can validate that the month falls between 01 and 12 using numeric comparisons rather than string parsing. REDEFINES is also used to build tagged unions of record types in a single file, where an initial classification field determines which of several REDEFINED layouts applies to the rest of the record, letting one FD handle multiple record formats, for example a transaction file mixing PAYMENT and REFUND records that share a common header but differ in their trailing fields.

🏏

Cricket analogy: Splitting a date field with REDEFINES for validation is like a third umpire reviewing the same raw ball-tracking data through both a stump-cam angle and a Hawk-Eye trajectory view before ruling on an LBW.

The OCCURS Clause for Tables

The OCCURS clause turns a data item into an array, called a table in COBOL terminology, by repeating its definition a fixed number of times, as in 05 WS-MONTHLY-SALES OCCURS 12 TIMES PIC 9(7)V99, which creates twelve consecutive numeric fields accessed by subscript like WS-MONTHLY-SALES(3). OCCURS can also apply to a group item, in which case every subordinate field is likewise repeated for each occurrence, letting a single 01-level record represent, for example, a table of twenty employee sub-records each containing name, ID, and salary. For tables whose actual length varies at runtime, OCCURS DEPENDING ON ties the table's active size to a separate counter field, so OCCURS 1 TO 50 TIMES DEPENDING ON WS-ITEM-COUNT lets a program process anywhere from 1 to 50 real entries without wasting space or risking an out-of-bounds reference beyond the counted portion.

🏏

Cricket analogy: OCCURS 12 TIMES building a monthly-sales table is like a season's fixture list with a fixed twelve-match slot, each match accessed by its match number in the schedule.

cobol
       01  WS-INCOMING-DATE.
           05  WS-DATE-TEXT           PIC X(8).
       01  WS-DATE-NUMERIC REDEFINES WS-INCOMING-DATE.
           05  WS-DATE-YEAR            PIC 9(4).
           05  WS-DATE-MONTH           PIC 9(2).
           05  WS-DATE-DAY             PIC 9(2).

       01  WS-SALES-TABLE.
           05  WS-MONTHLY-SALES OCCURS 12 TIMES
                   INDEXED BY WS-MONTH-IDX
                   PIC 9(7)V99.

       01  WS-ITEM-COUNT               PIC 9(3) VALUE ZERO.
       01  WS-LINE-ITEMS.
           05  WS-LINE-ITEM OCCURS 1 TO 50 TIMES
                   DEPENDING ON WS-ITEM-COUNT
                   INDEXED BY WS-LINE-IDX.
               10  WS-ITEM-SKU         PIC X(10).
               10  WS-ITEM-QTY         PIC 9(3).

       PROCEDURE DIVISION.
           IF WS-DATE-MONTH < 1 OR WS-DATE-MONTH > 12
               DISPLAY 'INVALID MONTH IN DATE'
           END-IF
           PERFORM VARYING WS-MONTH-IDX FROM 1 BY 1
                   UNTIL WS-MONTH-IDX > 12
               ADD WS-MONTHLY-SALES(WS-MONTH-IDX) TO WS-TOTAL-SALES
           END-PERFORM.

Indexing and Subscripting

A table's entries can be accessed with either a numeric subscript, an ordinary WORKING-STORAGE field like WS-MONTH-IDX PIC 9(2), or with a proper COBOL index declared via INDEXED BY, which is a compiler-managed occurrence displacement rather than an ordinary integer, making index-based access noticeably faster than subscript-based access since the compiler avoids recomputing the byte offset from scratch on every reference. The SEARCH statement performs a linear scan of an indexed table looking for a matching WHEN condition, while SEARCH ALL performs a binary search but requires the table's contents to be sorted in ascending or descending order as declared with the ASCENDING KEY or DESCENDING KEY clause on the OCCURS entry, making SEARCH ALL dramatically faster for large tables at the cost of requiring pre-sorted data.

🏏

Cricket analogy: SEARCH ALL requiring a sorted table is like using a scorebook's alphabetical player index to jump straight to a name, which only works because the names were filed alphabetically in the first place, unlike flipping page by page through a match-by-match log.

PERFORM VARYING combined with a numeric subscript is the most common way to walk a table sequentially, while SEARCH and SEARCH ALL are built-in COBOL verbs specifically for locating a matching entry, and SEARCH ALL's binary search only produces correct results if the table was genuinely populated in the declared key order beforehand.

A REDEFINES item whose total size exceeds the original item it redefines can read or write past the intended storage boundary into whatever field follows in the record, silently corrupting adjacent data. Always verify byte sizes match, especially after any PICTURE clause is edited during maintenance.

  • REDEFINES lets a second data item share the exact same storage as a prior item at the same level, without allocating new bytes.
  • REDEFINES is commonly used to reinterpret an incoming field's type or to build tagged-union record layouts sharing a common header.
  • OCCURS repeats a data item or group item a fixed number of times to build a table, accessed by subscript or index.
  • OCCURS DEPENDING ON creates a variable-length table whose active size is tied to a separate counter field.
  • INDEXED BY declares a compiler-managed index that is faster than an ordinary numeric subscript for table access.
  • SEARCH performs a linear scan; SEARCH ALL performs a binary search but requires the table to be pre-sorted by its declared key.
  • A REDEFINES item larger than the original can silently corrupt adjacent storage; sizes must always be verified.

Practice what you learned

Was this page helpful?

Topics covered

#Programming#COBOLStudyNotes#REDEFINESAndOCCURSClauses#REDEFINES#OCCURS#Clauses#Clause#StudyNotes#SkillVeris#ExamPrep

Frequently Asked Questions

21 categories · pick one to explore

Where can I get free study notes for programming and tech subjects?
SkillVeris offers completely free study notes covering programming and tech subjects, with no signup fees or paywalls. The notes are structured by course and topic, written for quick understanding, and enriched with the Learn Through Hobbies analogy method, so you can revise concepts through cricket, music, gaming, cooking and more.
Are SkillVeris study notes good for exam revision?
Yes, the study notes are designed for efficient revision: each topic answers its heading immediately, keeps explanations concise, and links to related glossary terms and cheat sheets. Students preparing for university exams or certification tests use them as quick revision notes because they distil concepts without the padding of full textbooks.
What subjects do the free study notes cover?
The study notes span the platform's main domains, including AI and machine learning, Python and programming, web development, DevOps, cloud, security and databases. Coverage mirrors the 37 live courses, so notes exist for the topics you are actually studying, and new note sets are added as courses launch.
How are SkillVeris study notes different from regular textbooks?
The notes are answer-first, concise and free, whereas textbooks are long and often expensive. Each section explains one concept directly, then reinforces it through selectable hobby analogies like cricket or cooking. Notes also cross-link to the glossary, blog and cheat sheets, letting you jump to related material instantly instead of flipping pages.
Can I use the developer study material without creating an account?
The study notes are free to access, and SkillVeris does not charge anything for its developer study material at any point. Browsing notes is straightforward from the Study Notes section, and if you want progress tracking, certificates and AI Mentor conversations tied to your learning, a free account unlocks those extras.
Do the study notes explain concepts with analogies?
Yes, this is a signature SkillVeris feature. Study notes use the Learn Through Hobbies method, explaining technical concepts through analogies from twelve domains including cricket, music, gaming, photography, travel, movies, fitness, chess, cooking, finance, business and sports. You can switch the analogy domain instantly to whichever hobby makes the concept click.
Are the revision notes suitable for last-minute exam preparation?
Yes, revision notes on SkillVeris work well for last-minute preparation because every section states the answer in its first sentences, so skimming is genuinely effective. Pair them with the relevant cheat sheet for formulas and syntax, and use the glossary for any unfamiliar term you meet while cramming.
Is there free study material for AI and machine learning?
Yes, SkillVeris provides free study notes across its AI and ML catalogue, covering Python for AI, deep learning frameworks like PyTorch and TensorFlow, Hugging Face Transformers, Large Language Models, RAG, AI agents and MLOps. All of it is free, making it a strong resource for Indian students and global learners alike.
Can beginners understand the study notes, or are they for experts?
Beginners can absolutely use them. The notes are written in plain language, define terms as they appear, and lean on hobby analogies to make abstract ideas concrete. Difficulty scales with the underlying course level, so beginner-course notes stay gentle while advanced-course notes go deeper, and the glossary supports you throughout.
How do study notes connect with SkillVeris courses?
Study notes are organised by course and topic, so they map directly to the structured courses and their 24–40-lesson curriculum. Many learners study a lesson first, then use the matching notes for revision before module assessments and the final exam, where 80 percent is required to pass and earn the certificate.
Are there study notes for Python specifically?
Yes, Python is well covered through notes tied to the Python-focused courses, including Python for AI and ML. Topics span fundamentals through applied machine learning usage. You can reinforce the notes with Python practice in Code Lab, which runs code in your browser with no installation required.
Do the study notes include code examples?
Yes, study notes include code examples wherever a concept is best shown in code, alongside explanations, key points and analogies. Reading a snippet in the notes and then reproducing it yourself in Code Lab is an effective loop, since Code Lab lets you run code in the browser across six languages.
How often is new study material added to SkillVeris?
Study material grows alongside the course catalogue. Whenever new courses join the platform's 37 live courses, matching study notes, glossary entries and cheat sheets are added so the resources stay in sync. Existing notes are also refined over time, so it is worth revisiting topics you studied earlier.
Can I use SkillVeris notes to prepare for technical interviews?
Yes, the notes make excellent interview revision because they compress each concept into direct, answer-first explanations, which mirrors how you should answer interview questions. Combine them with the SkillVeris interview questions feature, which includes readiness scoring, to test whether your revision has actually made you interview-ready.
Are the study notes mobile-friendly for studying on the go?
Yes, the study notes are built to load fast and read comfortably on mobile devices, so you can revise during a commute or between classes. Sections are short and answer-first, which suits small screens, and analogy switching works on mobile too, letting you study anywhere without carrying books.
What is the difference between study notes and cheat sheets?
Study notes explain concepts in depth with context, examples and analogies, making them ideal for learning and revision. Cheat sheets are compact quick-reference summaries of syntax, commands and key facts, ideal once you already understand a topic. Most learners study the notes first, then keep the cheat sheet handy while coding.
Do study notes help if I am stuck on a course lesson?
Yes, reading the matching study notes often clarifies a lesson because the same concept is explained from a different angle, frequently with a different analogy. If you are still stuck, ask the AI Mentor, which answers 24/7 at Quick, Detailed or Deep-dive depth until the idea genuinely makes sense.
Is there free study material for DevOps and cloud topics?
Yes, SkillVeris carries free study notes for DevOps and cloud topics as part of its coverage across 37 live courses. The material suits learners following the DevOps Engineer or Cloud Engineer paths, and it links to related glossary terms and cheat sheets so you can revise the whole toolchain in one place.
Can school or college students in India use these notes for projects?
Yes, students across India and worldwide use SkillVeris notes for coursework, projects and exam preparation, and everything is free, which matters for student budgets. The notes explain concepts clearly enough to cite in project reports, and Code Lab lets you prototype the project code directly in your browser.
How should I combine study notes with other SkillVeris resources?
A proven loop: learn from a course lesson, revise with the matching study notes, look up unfamiliar terms in the glossary, keep the cheat sheet open while practising in Code Lab, and quiz yourself with interview questions. The AI Mentor fills any remaining gaps 24/7, at whatever depth you need.

What Learners Say

Real journeys from the SkillVeris community — swipe for more.

SkillVeris taught me Python through Cricket. Now I’m building real projects and feeling confident!
Arjun S. · B.Tech Student
The best platform for hobby-based learning. Concepts finally stick.
Priya R. · Data Analyst
I went from zero coding to a portfolio of projects — all by learning through my love for gaming. Landed my first internship!
Kabir M. · CS Undergraduate
Trending Topics50 popular tags — tap to explore
Trending CoursesAll 37 free courses — tap to browse