ADVERTISEMENT

The book of the genealogy

Published Dec 17, 2025 12:00 am  |  Updated Dec 16, 2025 05:21 pm
REFLECTIONS TODAY
A genealogy (Hebrew seper toledoth, “book of generation”) is a line of descent traced continuously from an ancestor. Biblical genealogies tell the story of God’s dealing with humanity and his restoring to human beings the rule, the rest, and relationship they had with him.
Within this arch of salvation are smaller genealogies or stories of important Old Testament figures like Abraham, Moses, and David. The most widely known and longest genealogy is probably of Jesus Christ. And rightly so.
Genealogies ground the biblical stories in real history, and Jesus is the culmination of salvation history, of God’s dealing with human beings, especially with the people of Israel. Indeed, our salvation is grounded in history.
Being the Messiah and Son of God, we expect a glorious lineage from Jesus. And yet, in the long list of his ancestry are both noble and ignoble, saints and sinners, outstanding and unknown. Even the “he-roes” had their darker side. And holy people were no “plaster saints”; they were truly of blood and fleshly desire, as human as we are.
Indeed, in choosing to become “flesh” to dwell among us, the Son of Man embraced humanity’s weakness and frailty. He himself is without sin, but knowing our weakness, he becomes a perfect me-diator to the Father, a Savior worthy of confidence because he is one like us.
First Reading • Gn 49:2, 8-10
Jacob called his sons and said to them: “Assemble and listen, sons of Jacob, listen to Israel, your father. “You, Judah, shall your brothers praise—your hand on the neck of your enemies; the sons of your fa-ther shall bow down to you.
Judah, like a lion’s whelp, you have grown up on prey, my son. He crouches like a lion recumbent, the king of beasts—who would dare rouse him? The scepter shall never depart from Judah, or the mace from between his legs, While tribute is brought to him, and he receives the people’s homage.”
RESPONSORIAL PSALM • Ps 72 “Justice shall flourish in his time, and fullness of peace for ever.”
GOSPEL • Matthew 1:1-17
The book of the genealogy of Jesus Christ, the son of David, the son of Abraham. Abraham became the father of Isaac, Isaac the father of Jacob, Jacob the father of Judah and his brothers. Judah became the father of Perez and Zerah, whose mother was Tamar… Boaz became the father of Obed, whose mother was Ruth. Obed became the father of Jesse, Jesse the father of David the king. David became the father of Solomon, whose mother had been the wife of Uriah. Solomon became the father of Re-hoboam, Rehoboam the father of Abijah, Abijah the father of Asaph…
Hezekiah became the father of Manasseh, Manasseh the father of Amos, Amos the father of Josiah. Josiah became the father of Jechoniah and his brothers at the time of the Babylonian exile. … Zadok became the father of Achim, Achim the father of Eliud, Eliud the father of Eleazar. Eleazar became the father of Matthan, Matthan the father of Jacob, Jacob the father of Joseph, the husband of Mary.
Of her was born Jesus who is called the Christ. Thus the total number of generations from Abraham to David is 14 generations; from David to the Babylonian exile, 14 generations; from the Babylonian exile to the Christ, fourteen generations.
Source: “365 Days with the Lord 2025,” St. Paul’s, 7708 St. Paul Rd., SAV, Makati City (Phils.); Tel.: 632-895-9701; E-mail: [email protected]; Website: http://www.stpauls.ph.
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.