PageSourceSearch

https://modern-json-schema.com/archive

html modern-json-schema.com collected 2026-10-03 22:22:05 UTC 62,710 bytes, 16 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png"/><link rel="stylesheet" href="/_next/static/css/0d16c72050851854.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/7ffcc02a3c67389b.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/c20e76e7d11dec32.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/59fefb2212bd5b60.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-55b36f0cd6c208fe.js"/>
1<script src="/_next/static/chunks/4bd1b696-100b9d70ed4e49c1.js" async=""></script>
1<script src="/_next/static/chunks/9da6db1e-8a4e8c23641c31bf.js" async=""></script>
1<script src="/_next/static/chunks/1255-a242e0ce0372fddf.js" async=""></script>
1<script src="/_next/static/chunks/main-app-bda8a52fe841b3aa.js" async=""></script>
1<script src="/_next/static/chunks/4554-984b480a9db5f3fe.js" async=""></script>
1<script src="/_next/static/chunks/7563-4dfa0994a9b0e37c.js" async=""></script>
1<script src="/_next/static/chunks/9216-9272709ba40c1cfd.js" async=""></script>
1<script src="/_next/static/chunks/2810-6b74d77b4b0dc790.js" async=""></script>
1<script src="/_next/static/chunks/3091-bf1537ff6571a1bd.js" async=""></script>
1<script src="/_next/static/chunks/app/layout-6ae7b4b583d4bba3.js" async=""></script>
1<script src="/_next/static/chunks/app/not-found-b861935655c5698b.js" async=""></script>
1<script src="/_next/static/chunks/5001-fae0bebdd93f95e3.js" async=""></script>
1<script src="/_next/static/chunks/2423-c8b1388240338d7d.js" async=""></script>
1<script src="/_next/static/chunks/652-f40dcb480b4e356f.js" async=""></script>
1<script src="/_next/static/chunks/app/archive/page-cf30053c25d6ee7f.js" async=""></script>
1<meta name="next-size-adjust" content=""/><title>Archive - Modern JSON Schema and APIs</title><meta name="description" content="Archive of all posts at Modern JSON Schema and APIs"/><link rel="canonical" href="https://modern-json-schema.com/archive"/><meta property="og:title" content="Archive - Modern JSON Schema and APIs"/><meta property="og:description" content="Archive of all posts at Modern JSON Schema and APIs"/><meta property="og:url" content="https://modern-json-schema.com/archive"/><meta property="og:site_name" content="Modern JSON Schema and APIs"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:creator" content="https://twitter.com/ixat_totep"/><meta name="twitter:title" content="Archive - Modern JSON Schema and APIs"/><meta name="twitter:description" content="Archive of all posts at Modern JSON Schema and APIs"/><link rel="icon" href="https://cdn.hashnode.com/res/hashnode/image/upload/v1667687394243/Ri01bRDSW.png"/>
1<script type="text/javascript">window.addEventListener('message',function(e){var d=e.data;if(!d||d.__hnWidget!==1||typeof d.h!=='number'||d.h<=0)return;var f=document.querySelectorAll('.hn-widget-frame');for(var i=0;i<f.length;i++){if(f[i].contentWindow===e.source){f[i].style.height=d.h+'px';break;}}});</script>
1<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script>
1</head><body class="__variable_c2612a __variable_246ccd __variable_3069d5 bg-background dark:bg-background"><div hidden=""><!--$--><!--/$--></div>
1<script>((a2, b2, c4, d3, e2, f2, g4, h3) => {
2          let i3 = document.documentElement, j2 = ["light", "dark"];
3          function k2(b3) {
4            var c5;
5            (Array.isArray(a2) ? a2 : [a2]).forEach((a3) => {
6              let c6 = a3 === "class", d4 = c6 && f2 ? e2.map((a4) => f2[a4] || a4) : e2;
7              c6 ? (i3.classList.remove(...d4), i3.classList.add(f2 && f2[b3] ? f2[b3] : b3)) : i3.setAttribute(a3, b3);
8            }), c5 = b3, h3 && j2.includes(c5) && (i3.style.colorScheme = c5);
9          }
10          if (d3) k2(d3);
11          else try {
12            let a3 = localStorage.getItem(b2) || c4, d4 = g4 && a3 === "system" ? window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" : a3;
13            k2(d4);
14          } catch {
15          }
16        })("class","theme","system",null,["light","dark"],null,true,true)</script>
16<main id="main-content" class="min-h-screen bg-background dark:bg-background"><header class="sticky top-0 z-50 w-full py-4 bg-background backdrop-blur-sm transition-transform duration-300 translate-y-0"><a href="#main-content" class="sr-only focus:not-sr-only focus:absolute focus:left-4 focus:top-4 focus:z-50 focus:rounded-md focus:bg-background focus:px-4 focus:py-2 focus:text-sm focus:shadow">Skip to main content</a><div class="relative w-full mx-auto xl:max-w-[80rem] 2xl:max-w-[90rem] px-4 sm:px-12 md:px-18 lg:px-16 xl:px-10"><div class="flex items-center justify-between gap-3 xl:hidden"><div class="flex items-center gap-3 min-w-0 flex-1"><a href="https://hashnode.com/?utm_source=https%3A%2F%2Fmodern-json-schema.com&amp;utm_medium=referral&amp;utm_campaign=blog_header_logo&amp;utm_content=logo" class="inline-flex items-center justify-center text-lg text-muted-foreground hover:text-foreground transition border rounded-md h-9 w-9 shrink-0 border-border hover:bg-muted"><i class="text-xl fa-brands fa-hashnode" aria-hidden="true"></i><span class="sr-only">Hashnode</span></a><a class="flex items-center" href="/"><img alt="Modern JSON Schema and APIs" width="500" height="125" decoding="async" data-nimg="1" class="w-auto h-auto max-w-40 sm:max-w-48 max-h-10 sm:max-h-12 object-contain" style="color:transparent" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png"/><span class="sr-only">Modern JSON Schema and APIs</span></a></div><div class="flex items-center gap-2 shrink-0"><button class="gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent py-2 h-9 w-9 px-0 flex items-center justify-center text-muted-foreground hover:text-foreground bg-transparent border-border shadow-none" aria-label="Open search (press Control or Command and K)"><i class="fa-jelly fa-search text-sm" aria-hidden="true"></i><span class="sr-only">Open search (press Control or Command and K)</span></button><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent w-9 px-3 h-9 text-muted-foreground hover:text-foreground shadow-none" type="button" id="radix-_R_19ianpfalb_" aria-haspopup="menu" aria-expanded="false" data-state="closed" data-slot="dropdown-menu-trigger"><i class="fa-jelly fa-sun text-sm scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90" aria-hidden="true"></i><i class="fa-jelly fa-moon absolute text-sm scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0" aria-hidden="true"></i><span class="sr-only">Toggle theme</span></button><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 border border-input bg-background hover:bg-accent hover:text-accent-foreground py-2 h-9 w-10 px-0 shadow-none" type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-_R_1pianpfalb_" data-state="closed" data-slot="sheet-trigger"><i class="fa-jelly fa-bars" aria-hidden="true"></i><span class="sr-only">Open menu</span></button></div></div><div class="hidden xl:grid gap-4 items-center xl:grid-cols-[1fr_auto_1fr] xl:gap-6 max-w-full xl:mx-auto xl:max-w-[80rem] 2xl:max-w-[90rem]"><div class="flex items-center w-full gap-3 min-w-0"><a href="https://hashnode.com/?utm_source=https%3A%2F%2Fmodern-json-schema.com&amp;utm_medium=referral&amp;utm_campaign=blog_header_logo&amp;utm_content=logo" class="inline-flex items-center justify-center text-lg text-muted-foreground hover:text-foreground transition border rounded-md h-9 w-9 border-border hover:bg-muted"><i class="text-xl fa-brands fa-hashnode" aria-hidden="true"></i><span class="sr-only">Hashnode</span></a><span class="h-6 border-l border-border"></span><a class="flex items-center" href="/"><img alt="Modern JSON Schema and APIs" width="500" height="125" decoding="async" data-nimg="1" class="w-auto h-auto max-w-40 sm:max-w-48 max-h-10 sm:max-h-12 object-contain" style="color:transparent" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png"/><span class="sr-only">Modern JSON Schema and APIs</span></a></div><nav aria-label="Main navigation" class="flex justify-center w-full"><nav aria-label="Main" data-orientation="horizontal" dir="ltr" data-slot="navigation-menu" data-viewport="false" class="group/navigation-menu relative flex flex-1 items-center max-w-max justify-center"><div style="position:relative"><ul data-orientation="horizontal" data-slot="navigation-menu-list" class="group flex flex-1 list-none items-center flex-nowrap justify-center gap-1 text-muted-foreground text-base" dir="ltr"><li data-slot="navigation-menu-item" class="relative"><a data-slot="navigation-menu-link" class="data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground focus:bg-accent focus:text-accent-foreground [&amp;_svg:not([class*=&#x27;text-&#x27;])]:text-muted-foreground flex-col p-2 outline-none focus-visible:outline-1 [&amp;_svg:not([class*=&#x27;
16size-&#x27;])]:size-4 inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent hover:text-accent-foreground h-9 px-4 py-2" data-radix-collection-item="" href="https://modern-json-schema.com/sponsor">Sponsor</a></li></ul></div></nav></nav><div class="flex items-center justify-end gap-3 text-muted-foreground"><button class="gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent py-2 h-9 w-9 px-0 flex items-center justify-center text-muted-foreground hover:text-foreground bg-transparent border-border shadow-none" aria-label="Open search (press Control or Command and K)"><i class="fa-jelly fa-search text-sm" aria-hidden="true"></i><span class="sr-only">Open search (press Control or Command and K)</span></button><div class="flex items-center gap-3"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent w-9 px-3 h-9 text-muted-foreground hover:text-foreground shadow-none" type="button" id="radix-_R_3eianpfalb_" aria-haspopup="menu" aria-expanded="false" data-state="closed" data-slot="dropdown-menu-trigger"><i class="fa-jelly fa-sun text-sm scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90" aria-hidden="true"></i><i class="fa-jelly fa-moon absolute text-sm scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0" aria-hidden="true"></i><span class="sr-only">Toggle theme</span></button><a target="_blank" rel="noopener" class="inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 border border-input bg-background hover:bg-accent hover:text-accent-foreground py-2 gap-2 px-3 h-9 shadow-none" href="https://hashnode.com"><i class="text-sm fa-jelly fa-pencil" aria-hidden="true"></i>Write</a></div></div></div></div></header><div data-slot="dialog-header" class="flex flex-col gap-2 text-center sm:text-left sr-only"><h2 id="radix-_R_4anpfalbH1_" data-slot="dialog-title" class="text-lg leading-none font-semibold">Command Palette</h2><p id="radix-_R_4anpfalbH2_" data-slot="dialog-description" class="text-muted-foreground text-sm">Search for a command to run...</p></div><div class="px-4 sm:px-8"><div class="w-full xl:mx-auto xl:max-w-[80rem] 2xl:max-w-[90rem]"><div class="space-y-8 max-w-4xl w-full mx-auto pt-2 sm:pt-10 pb-16"><header class="space-y-3 text-center"><h1 id="archive-heading" class="text-3xl sm:text-4xl font-bold tracking-tight text-balance text-foreground">Archive</h1><p class="text-sm text-muted-foreground">5<!-- --> <!-- -->posts<!-- --> published so far</p></header><section aria-labelledby="archive-heading"><ol class="space-y-0 list-none p-0 border border-border rounded-lg overflow-hidden"><li class="list-none"><article aria-labelledby="archive-post-66ef1915f88b2c6da9f9ed3c" class="border-b border-border"><a class="flex items-center gap-4 p-4 hover:bg-muted transition-colors group" href="/analyzing-the-openapi-tooling-ecosystem"><time dateTime="2024-09-21T19:05:57.349Z" class="text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20">Sep 21, 2024</time><div class="flex-1 min-w-0"><h2 id="archive-post-66ef1915f88b2c6da9f9ed3c" class="text-base font-medium text-foreground group-hover:text-primary transition-colors break-words">Analyzing the OpenAPI Tooling Ecosystem</h2><p class="text-sm text-muted-foreground mt-1">Henry Andrews</p></div></a></article></li><li class="list-none"><article aria-labelledby="archive-post-65d4f2d63fc881b9f7409557" class="border-b border-border"><a class="flex items-center gap-4 p-4 hover:bg-muted transition-colors group" href="/your-path-from-openapi-30-to-31-and-beyond"><time dateTime="2024-02-20T18:43:34.142Z" class="text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20">Feb 20, 2024</time><div class="flex-1 min-w-0"><h2 id="archive-post-65d4f2d63fc881b9f7409557" class="text-base font-medium text-foreground group-hover:text-primary transition-colors break-words">Future-proofing your path from OpenAPI 3.0 to 3.1 and beyond!</h2><p class="text-sm text-muted-foreground mt-1">Henry Andrews</p></div></a></article></li><li class="list-none"><article aria-labelledby="archive-post-65bfd7d017b7eb1642d8c3e4" class="border-b border-border"><a class="flex items-center gap-4 p-4 hover:bg-muted transition-colors group" href="/coming-out-of-hibernation"><time dateTime="2024-02-04T18:30:40.167Z" class="text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20">Feb 4, 2024</time><div class="flex-1 min-w-0"><h2 id="archive-post-65bfd7d017b7eb1642d8c3e4" class="text-base font-medium text-foreground group-hover:text-primary transition-colors break-words">Coming out of hibernation...</h2><p class="text-sm text-muted-foreground mt-1">Henry Andrews</p></div></a></article></li><li class="list-none"><article aria-labelledby="archive-post-636ec3c29fcbe783317b2b8d" class="border-b border-border"><a class="flex items-center gap-4 p-4 hover:bg-muted transition-colors group" href="/json-schema-is-a-constraint-system"><time dateTime="2022-11-11T21:50:57.997Z" class="text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20">Nov 11, 2022</time><div class="flex-1 min-w-0"><h2 id="archive-post-636ec3c29fcbe783317b2b8d" class="text-base font-medium text-foreground group-hover:text-primary transition-colors break-words">JSON Schema is a constraint system</h2><p class="text-sm text-muted-foreground mt-1">Henry Andrews</p></div></a></article></li><li class="list-none"><article aria-labelledby="archive-post-636c43c03de309d1606aa33b" class=""><a class="flex items-center gap-4 p-4 hover:bg-muted transition-colors group" href="/what-is-modern-json-schema"><time dateTime="2022-11-10T00:20:16.960Z" class="text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20">Nov 10, 2022</time><div class="flex-1 min-w-0"><h2 id="archive-post-636c43c03de309d1606aa33b" class="text-base font-medium text-foreground group-hover:text-primary transition-colors break-words">What is &quot;Modern&quot; JSON Schema?</h2><p class="text-sm text-muted-foreground mt-1">Henry Andrews</p></div></a></article></li></ol></section></div></div></div>
16<script type="application/ld+json">{"@context":"https://schema.org","@type":"CollectionPage","name":"Archive - Modern JSON Schema and APIs","url":"https://modern-json-schema.com/archive","mainEntityOfPage":"https://modern-json-schema.com/archive","description":"Archive of all posts published on Modern JSON Schema and APIs","publisher":{"@type":"Organization","name":"Modern JSON Schema and APIs","url":"https://modern-json-schema.com","logo":"https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png"},"hasPart":[{"@type":"Article","headline":"Analyzing the OpenAPI Tooling Ecosystem","url":"https://modern-json-schema.com/analyzing-the-openapi-tooling-ecosystem"},{"@type":"Article","headline":"Future-proofing your path from OpenAPI 3.0 to 3.1 and beyond!","url":"https://modern-json-schema.com/your-path-from-openapi-30-to-31-and-beyond"},{"@type":"Article","headline":"Coming out of hibernation...","url":"https://modern-json-schema.com/coming-out-of-hibernation"},{"@type":"Article","headline":"JSON Schema is a constraint system","url":"https://modern-json-schema.com/json-schema-is-a-constraint-system"},{"@type":"Article","headline":"What is \"Modern\" JSON Schema?","url":"https://modern-json-schema.com/what-is-modern-json-schema"}]}</script>
16<footer class="px-4 pt-8 pb-20 sm:px-8 text-muted-foreground" aria-label="Footer"><div class="w-full max-w-4xl mx-auto"><div class="flex flex-col items-center gap-4 text-center text-sm"><p class="font-medium"><time dateTime="2026"><span class="font-sans">©</span> <!-- -->2026</time> <!-- -->Modern JSON Schema and APIs</p><nav aria-label="Footer navigation"><ul class="flex flex-wrap justify-center gap-4 text-sm tracking-wide"><li><a class="transition hover:text-foreground" href="/members">Members</a></li><li><a class="transition hover:text-foreground" href="/archive">Archive</a></li><li><a class="transition hover:text-foreground" target="_blank" rel="noopener" href="https://hashnode.com/privacy-policy">Privacy</a></li><li><a class="transition hover:text-foreground" target="_blank" rel="noopener" href="https://hashnode.com/terms">Terms</a></li></ul></nav><div class="pt-8 flex justify-center gap-6"><a target="_blank" rel="noopener" class="flex items-center gap-2 text-sm transition hover:text-foreground" title="Sitemap" href="/sitemap.xml"><i class="fa-regular fa-sitemap"></i><span>Sitemap</span></a><a target="_blank" rel="noopener" class="flex items-center gap-2 text-sm transition hover:text-foreground" title="RSS Feed" href="/rss.xml"><i class="fa-regular fa-rss"></i><span>RSS</span></a></div><div class="pt-10 text-center"><a target="_blank" rel="noopener" aria-label="Visit Hashnode (opens in a new tab)" class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent hover:text-accent-foreground h-10 rounded-md text-xl px-5 py-4" href="https://hashnode.com/?utm_source=https%3A%2F%2Fmodern-json-schema.com&amp;utm_medium=referral&amp;utm_campaign=blog_footer_logo&amp;utm_content=logo"><svg fill="none" viewBox="0 0 282 39" aria-hidden="true" class="h-6 w-auto min-w-[9.5rem] text-muted-foreground transition hover:text-foreground"><path fill="currentColor" d="M2.68 13.032c-3.573 3.505-3.573 9.363 0 12.936L13.032 36.32c3.505 3.573 9.363 3.573 12.936 0L36.32 25.968c3.573-3.573 3.573-9.431 0-12.936L25.968 2.68c-3.573-3.573-9.431-3.573-12.936 0zm12.211 1.935c2.507-2.521 6.582-2.544 9.104-.038s2.544 6.582.038 9.104-6.582 2.544-9.104.038-2.544-6.582-.038-9.104"></path><path fill="currentColor" d="M268.379 39q-6.322 0-10.35-4.108-4.002-4.134-4.002-10.483 0-6.296 4.002-10.43 4-4.135 10.163-4.135 6.028 0 9.817 3.734 3.814 3.735 3.814 9.497v2.8h-24.248v-4.054h17.633q-.187-2.747-2.054-4.508-1.868-1.76-4.962-1.76-3.28-.001-5.388 2.374-2.108 2.373-2.108 6.375 0 4.188 2.348 6.695 2.347 2.481 5.895 2.481 1.68 0 2.934-.453a8.5 8.5 0 0 0 2.321-1.307q1.041-.854 2.268-2.614l4.694 2.96q-1.707 2.748-3.494 4.135a12.7 12.7 0 0 1-3.975 2.081q-2.187.72-5.308.72m-33.496 0q-5.575 0-9.283-4.028-3.681-4.029-3.681-10.484 0-6.43 3.761-10.51 3.76-4.108 9.47-4.108 2.8 0 5.175 1.2 2.4 1.174 3.628 3.148l.026-.08V0h7.016v38.2h-6.722v-4.722l.64.8-.694.133q-1.28 2.108-3.788 3.361Q237.924 39 234.883 39m1.627-6.002q3.308 0 5.495-2.428t2.188-6.135q0-3.762-2.214-6.109-2.214-2.374-5.469-2.374-3.28 0-5.522 2.347-2.214 2.348-2.214 6.163 0 3.76 2.214 6.162 2.214 2.374 5.522 2.374M205.811 39q-6.376 0-10.537-4.161-4.161-4.188-4.161-10.404 0-6.321 4.161-10.456 4.188-4.135 10.537-4.135 6.348 0 10.537 4.161 4.188 4.161 4.188 10.43 0 6.216-4.188 10.404Q212.186 39 205.811 39m0-6.162q3.307 0 5.575-2.374 2.267-2.374 2.267-6.055 0-3.707-2.294-6.056-2.267-2.347-5.548-2.347-3.308 0-5.575 2.374-2.268 2.348-2.268 6.029t2.241 6.055q2.268 2.374 5.602 2.374M162.586 38.2V10.644h6.802v5.015l-.8-.987h.906q1.308-2.187 3.762-3.494 2.48-1.335 5.228-1.334 4.615 0 7.256 2.8 2.667 2.776 2.667 7.603V38.2h-7.069V21.794q0-2.854-1.387-4.401t-4.134-1.547q-2.614 0-4.402 1.974-1.76 1.974-1.76 4.881V38.2zm-30.181 0V0h6.962v14.698h.134q1.2-2.187 3.574-3.521 2.375-1.335 5.229-1.334 4.615 0 7.255 2.828 2.668 2.801 2.668 7.522V38.2h-7.069V21.794q0-2.827-1.387-4.402-1.387-1.573-4.055-1.573-2.587 0-4.428 2.027-1.814 2.027-1.814 4.962v15.391zm-14.416.8q-2.882 0-5.015-.64-2.108-.614-3.761-1.84-1.654-1.228-2.668-2.695l-.987-1.467 4.695-3.174.773 1.067a9.1 9.1 0 0 0 1.788 1.814 8.2 8.2 0 0 0 2.32 1.2q1.308.4 3.068.4 2.161 0 3.441-.8 1.308-.8 1.307-2.294 0-1.36-1.147-2.108-1.12-.747-5.068-1.654-5.335-1.253-7.656-3.334-2.32-2.107-2.321-5.362 0-3.76 3.148-6.002 3.148-2.267 7.923-2.267 2.454 0 4.348.507t3.388 1.493q1.493.988 2.454 2.188l.987 1.2-4.482 3.255-.667-.774a7.4 7.4 0 0 0-1.627-1.387 6.4 6.4 0 0 0-2.054-.88 9.5 9.5 0 0 0-2.401-.294q-1.974 0-3.201.8-1.2.774-1.2 1.921 0 1.254 1.12 2.027 1.147.748 5.229 1.681 5.334 1.227 7.629 3.308 2.294 2.055 2.294 5.308 0 4.029-3.228 6.43Q123.217 39 117.989 39M87.61 39q-4.508 0-7.335-2.454-2.828-2.481-2.828-6.482 0-4.188 3.254-6.669t8.483-2.48q2.082 0 4.028.426 1.974.427 3.361 1.12v-1.6q0-2.588-1.813-4.082-1.788-1.493-4.615-1.493-1.628 0-2.801.373a8.7 8.7 0 0 0-2.188.987q-.987.614-1.84 1.414l-.854.8-4.081-3.788 1.307-1.173a18.7 18.7 0 0 1 2.934-2.108q1.601-.933 3.601-1.44t4.589-.507q5.868 0 9.229 2.88 3.361 2.882 3.361 8.084V38.2h-6.749v-5.922l1.654 2.187h-1.76q-1.308 2.055-3.655 3.308Q90.545 39 87.611 39m1.814-4.988q3.148 0 5.149-2.187 2-2.215 2-5.309v-.08q-1.12-.693-2.72-1.094a13 13 0 0 0-3.388-.426q-2.828 0-4.562 1.2-1.734 1.173-1.734 3.521 0 2.028 1.468 3.201t3.787 1.174M49 38.2V0h6.962v14.698h.134q1.2-2.187 3.574-3.521 2.375-1.335 5.229-1.334 4.615 0 7.255 2.828 2.668 2.801 2.668 7.522V38.2h-
167.07V21.794q0-2.827-1.386-4.402-1.387-1.573-4.055-1.573-2.587 0-4.428 2.027-1.815 2.027-1.814 4.962v15.391z"></path></svg></a></div></div></div></footer></main><!--$--><!--/$-->
16<script src="/_next/static/chunks/webpack-55b36f0cd6c208fe.js" id="_R_" async=""></script>
16<script>(self.__next_f=self.__next_f||[]).push([0])</script>
16<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[16174,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"ThemeProvider\"]\n3:I[82180,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"TooltipProvider\"]\n4:I[63851,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"UrqlProvider\"]\n5:I[82714,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"ConsentManager\"]\n6:I[9766,[],\"\"]\n7:I[98924,[],\"\"]\n8:I[33293,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"4345\",\"static/chunks/app/not-found-b861935655c5698b.js\"],\"default\"]\n9:I[21447,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"Integrations\"]\na:I[35514,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"9216\",\"static/chunks/9216-9272709ba40c1cfd.js\",\"2810\",\"static/chunks/2810-6b74d77b4b0dc790.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"7177\",\"static/chunks/app/layout-6ae7b4b583d4bba3.js\"],\"Analytics\"]\nc:I[24431,[],\"OutletBoundary\"]\ne:I[15278,[],\"AsyncMetadataOutlet\"]\n10:I[24431,[],\"ViewportBoundary\"]\n12:I[24431,[],\"MetadataBoundary\"]\n13:\"$Sreact.suspense\"\n15:I[57150,[],\"\"]\n:HL[\"/_next/static/media/22a5144ee8d83bca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/72a2a501b11d0ccb.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/8934b430a4adeb19-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/8e9860b6e62d6359-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c4b700dcb2187787-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/0d16c72050851854.css\",\"style\"]\n:HL[\"/_next/static/css/7ffcc02a3c67389b.css\",\"style\"]\n:HL[\"/_next/static/css/c20e76e7d11dec32.css\",\"style\"]\n:HL[\"/_next/static/css/59fefb2212bd5b60.css\",\"style\"]\n0:{\"P\":null,\"b\":\"RrCGzNVHUG674hJ_sjvms\",\"p\":\"\",\"c\":[\"\",\"archive?x-host=modern-json-schema.com\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"archive\",{\"children\":[\"__PAGE__?{\\\"x-host\\\":\\\"modern-json-schema.com\\\"}\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/0d16c72050851854.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/7ffcc02a3c67389b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/c20e76e7d11dec32.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/59fefb2212bd5b60.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"childr"])</script>
16<script>self.__next_f.push([1,"en\":[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"window.addEventListener('message',function(e){var d=e.data;if(!d||d.__hnWidget!==1||typeof d.h!=='number'||d.h\u003c=0)return;var f=document.querySelectorAll('.hn-widget-frame');for(var i=0;i\u003cf.length;i++){if(f[i].contentWindow===e.source){f[i].style.height=d.h+'px';break;}}});\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_c2612a __variable_246ccd __variable_3069d5 bg-background dark:bg-background\",\"children\":[\"$\",\"$L2\",null,{\"attribute\":\"class\",\"defaultTheme\":\"system\",\"enableSystem\":true,\"disableTransitionOnChange\":true,\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"children\":[[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"$L8\",null,{}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L9\",null,{}],[\"$\",\"$La\",null,{}]]}]}]}]}]}]]}]]}],{\"children\":[\"archive\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[\"$Lb\",null,[\"$\",\"$Lc\",null,{\"children\":[\"$Ld\",[\"$\",\"$Le\",null,{\"promise\":\"$@f\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$L10\",null,{\"children\":\"$L11\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$L12\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$13\",null,{\"fallback\":null,\"children\":\"$L14\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$15\",[]],\"s\":false,\"S\":false}\n11:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nd:null\n16:I[80622,[],\"IconMark\"]\nf:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Archive - Modern JSON Schema and APIs\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Archive of all posts at Modern JSON Schema and APIs\"}],[\"$\",\"link\",\"2\",{\"rel\":\"canonical\",\"href\":\"https://modern-json-schema.com/archive\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:title\",\"content\":\"Archive - Modern JSON Schema and APIs\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:description\",\"content\":\"Archive of all posts at Modern JSON Schema and APIs\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:url\",\"content\":\"https://modern-json-schema.com/archive\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:site_name\",\"content\":\"Modern JSON Schema and APIs\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"8\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"9\",{\"name\":\"twitter:creator\",\"content\":\"https://twitter.com/ixat_totep\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:title\",\"content\":\"Archive - Modern JSON Schema and APIs\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:description\",\"content\":\"Archive of all posts at Modern JSON Schema and APIs\"}],[\"$\",\"link\",\"12\",{\"rel\":\"icon\",\"href\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1667687394243/Ri01bRDSW.png\"}],[\"$\",\"$L16\",\"13\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n14:\"$f:metadata\"\n17:I[652,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"5001\",\"static/chunks/5001-fae0bebdd93f95e3.js\",\"2423\",\"static/chunks/2423-c8b1388240338d7d.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"652\",\"static/chunks/652-f40dcb480b4e356f.js\",\"5635\",\"static/chunks/app/archive/page-cf30053c25d6ee7f.js\"],\"BlogHeader\"]\nb:[\"$\",\"main\",null,{\"id\":\"main-content\",\"className\":\"min-h-screen bg-background dark:bg-background\",\"children\":[[\"$\",\"$L17\",null,{\"publication\":{\"__typename\":\"Publication\",\"id\":\"63473e26bf920c2f56061a81\",\"url\":\"https://modern-json-schema.com\",\"canonicalURL\":\"https://modern-json-schema.com\",\"urlPattern\":\"simple\",\"title\":\"Modern JSON Schema and APIs\",\"displayTitle\""])</script>
16<script>self.__next_f.push([1,":null,\"hasBadges\":true,\"descriptionSEO\":\"Explorations and explanations of OpenAPI and JSON Schema from a co-author of the specifications.\",\"seo\":{\"title\":null,\"description\":null,\"__typename\":\"SEO\"},\"publicMembers\":{\"totalDocuments\":1,\"__typename\":\"PublicMembers\"},\"about\":{\"html\":\"\u003cp\u003eExplorations and explanations of OpenAPI and JSON Schema from a co-author of the specifications.\u003c/p\u003e\\n\",\"text\":\"Explorations and explanations of OpenAPI and JSON Schema from a co-author of the specifications.\\n\",\"__typename\":\"Content\"},\"features\":{\"proTeam\":{\"isEnabled\":false,\"__typename\":\"ProTeamFeature\"},\"newsletter\":{\"isEnabled\":true,\"__typename\":\"NewsletterFeature\"},\"viewCount\":{\"isEnabled\":false,\"__typename\":\"ViewCountFeature\"},\"readTime\":{\"isEnabled\":true,\"__typename\":\"ReadTimeFeature\"},\"textSelectionSharer\":{\"isEnabled\":true,\"__typename\":\"TextSelectionSharerFeature\"},\"gptBotCrawling\":{\"__typename\":\"GPTBotCrawlingFeature\",\"isEnabled\":true},\"headlessCMS\":{\"isEnabled\":false,\"__typename\":\"HeadlessCMSFeature\"},\"__typename\":\"PublicationFeatures\"},\"aeoSettings\":{\"isEnabled\":false,\"llmsTxtEnabled\":true,\"crawlers\":{\"gptBot\":true,\"claudeBot\":true,\"perplexityBot\":true,\"googleExtended\":true,\"ccBot\":true,\"__typename\":\"AeoCrawlerSettings\"},\"__typename\":\"PublicationAeoSettings\"},\"metaTags\":null,\"ogMetaData\":{\"image\":null,\"__typename\":\"OpenGraphMetaData\"},\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"name\":\"Henry Andrews\",\"username\":\"handrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\"},\"preferences\":{\"__typename\":\"PublicationPreferences\",\"logo\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png\",\"darkMode\":{\"__typename\":\"DarkModePreferences\",\"logo\":null,\"enabled\":true},\"navbarItems\":[{\"__typename\":\"PublicationNavbarItem\",\"id\":\"6351a3e87aeee8b5d07822be\",\"label\":\"Sponsor\",\"url\":\"https://modern-json-schema.com/sponsor\",\"type\":\"link\",\"series\":null,\"page\":null}],\"enabledPages\":{\"__typename\":\"EnabledPages\",\"badges\":true,\"newsletter\":true,\"members\":true},\"layout\":\"grid\",\"disableFooterBranding\":false,\"isSubscriptionModalDisabled\":false},\"favicon\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1667687394243/Ri01bRDSW.png\",\"headerColor\":\"#000000\",\"integrations\":{\"fbPixelID\":null,\"fathomSiteID\":null,\"fathomCustomDomainEnabled\":false,\"fathomCustomDomain\":null,\"hotjarSiteID\":null,\"matomoSiteID\":null,\"matomoURL\":null,\"gaTrackingID\":null,\"gTagManagerID\":null,\"plausibleAnalyticsEnabled\":false,\"wmPaymentPointer\":null,\"koalaPublicKey\":null,\"msClarityID\":null,\"openPanelClientId\":null,\"consentManagement\":{\"enabled\":false,\"version\":1,\"privacyPolicyURL\":null,\"__typename\":\"ConsentManagement\"},\"__typename\":\"PublicationIntegrations\"},\"imprintV2\":null,\"postsCount\":{\"totalDocuments\":5,\"__typename\":\"PostConnection\"},\"isTeam\":true,\"links\":{\"twitter\":\"https://twitter.com/ixat_totep\",\"instagram\":\"\",\"github\":\"https://github.com/handrews\",\"website\":\"https://modern-json-schema.com\",\"hashnode\":\"https://hashnode.com/@handrews\",\"youtube\":\"\",\"dailydev\":\"\",\"linkedin\":\"https://www.linkedin.com/in/handrews\",\"mastodon\":\"\",\"facebook\":null,\"bluesky\":null,\"__typename\":\"PublicationLinks\"},\"domainInfo\":{\"__typename\":\"DomainInfo\",\"hashnodeSubdomain\":\"handrews\",\"domain\":{\"__typename\":\"Domain\",\"host\":\"modern-json-schema.com\",\"ready\":true},\"wwwPrefixedDomain\":{\"__typename\":\"Domain\",\"host\":\"www.modern-json-schema.com\",\"ready\":true}},\"redirectionRules\":[{\"source\":\"/future-proofing-your-path-from-openapi-30-to-31-and-beyond\",\"destination\":\"/your-path-from-openapi-30-to-31-and-beyond\",\"type\":301,\"__typename\":\"RedirectionRule\"}],\"customRules\":[],\"totalRecommendedPublications\":0,\"allowContributorEdits\":false,\"posts\":{\"edges\":[{\"no
16de\":{\"__typename\":\"Post\",\"id\":\"66ef1915f88b2c6da9f9ed3c\",\"title\":\"Analyzing the OpenAPI Tooling Ecosystem\",\"slug\":\"analyzing-the-openapi-tooling-ecosystem\",\"publishedAt\":\"2024-09-21T19:05:57.349Z\",\"cuid\":\"cm1ciso6d002w0al703rl8vh4\",\"url\":\"https://modern-json-schema.com/analyzing-the-openapi-tooling-ecosystem\",\"subtitle\":\"OpenAPI Deep Dive Diagrams, Part 1: Looking at tasks "])</script>
16<script>self.__next_f.push([1,"rather than tools\",\"brief\":\"Welcome to a new series of posts that will take you on a visual journey through the OpenAPI Specification (OAS) and its tooling ecosystem!\\nWhy diagram the OAS ecosystem?\\nAs part of the efforts to design OAS 3.2 and 4.0 “Moonwalk”, I wanted to figure ...\",\"readTimeInMinutes\":12,\"views\":19487,\"tags\":[{\"id\":\"5a299daec01bfa27750ca52d\",\"slug\":\"openapi\",\"name\":\"OpenApi\",\"__typename\":\"Tag\"},{\"id\":\"56b1208d04f0061506b360ff\",\"slug\":\"rest-api\",\"name\":\"REST API\",\"__typename\":\"Tag\"},{\"id\":\"56744721958ef13879b94c04\",\"slug\":\"http\",\"name\":\"http\",\"__typename\":\"Tag\"},{\"id\":\"56744723958ef13879b95245\",\"slug\":\"apis\",\"name\":\"APIs\",\"__typename\":\"Tag\"},{\"id\":\"5da831fc1ac16b87526c09b3\",\"slug\":\"json-schema\",\"name\":\"json-schema\",\"__typename\":\"Tag\"},{\"id\":\"62cd095b0ba13ab923f69e29\",\"slug\":\"api-development\",\"name\":\"API development \",\"__typename\":\"Tag\"},{\"id\":\"59c30e281e1436d03ceb40c1\",\"slug\":\"api-design\",\"name\":\"API Design\",\"__typename\":\"Tag\"},{\"id\":\"56744723958ef13879b9549b\",\"slug\":\"testing\",\"name\":\"Testing\",\"__typename\":\"Tag\"},{\"id\":\"56744721958ef13879b94e0c\",\"slug\":\"tools\",\"name\":\"tools\",\"__typename\":\"Tag\"},{\"id\":\"668554b8b76416e24220bbb2\",\"slug\":\"api-tools\",\"name\":\"api tools\",\"__typename\":\"Tag\"}],\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"username\":\"handrews\",\"name\":\"Henry Andrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\",\"followersCount\":51},\"coverImage\":{\"__typename\":\"CoverImage\",\"url\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1726875084520/c8730c2a-f4aa-47df-9dad-ae5b8c9b7013.webp\",\"isPortrait\":false,\"isAttributionHidden\":false}},\"cursor\":\"1\",\"__typename\":\"PostEdge\"},{\"node\":{\"__typename\":\"Post\",\"id\":\"65d4f2d63fc881b9f7409557\",\"title\":\"Future-proofing your path from OpenAPI 3.0 to 3.1 and beyond!\",\"slug\":\"your-path-from-openapi-30-to-31-and-beyond\",\"publishedAt\":\"2024-02-20T18:43:34.142Z\",\"cuid\":\"clsuprl31000309jmet0ydufp\",\"url\":\"https://modern-json-schema.com/your-path-from-openapi-30-to-31-and-beyond\",\"subtitle\":\"Part 1: Component re-use and the OpenAPI road map\",\"brief\":\"The most popular version of the OpenAPI Specification (OAS) as of early 2024 is OAS 3.0. While adoption of OAS 3.1 is gaining steam, users whose needs are met by 3.0 or who want to wait for 3.1 support to mature are in no hurry to update. But softwar...\",\"readTimeInMinutes\":7,\"views\":1796,\"tags\":[{\"id\":\"5a299daec01bfa27750ca52d\",\"slug\":\"openapi\",\"name\":\"OpenApi\",\"__typename\":\"Tag\"},{\"id\":\"5da831fc1ac16b87526c09b3\",\"slug\":\"json-schema\",\"name\":\"json-schema\",\"__typename\":\"Tag\"},{\"id\":\"56b1208d04f0061506b360ff\",\"slug\":\"rest-api\",\"name\":\"REST API\",\"__typename\":\"Tag\"},{\"id\":\"56744723958ef13879b95245\",\"slug\":\"apis\",\"name\":\"APIs\",\"__typename\":\"Tag\"},{\"id\":\"56a8f2e0994a57a899c27b9b\",\"slug\":\"swagger\",\"name\":\"swagger\",\"__typename\":\"Tag\"},{\"id\":\"6434e107ff570168ab3627e1\",\"slug\":\"api-first\",\"name\":\"API-First\",\"__typename\":\"Tag\"}],\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"username\":\"handrews\",\"name\":\"Henry Andrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\",\"followersCount\":51},\"coverImage\":{\"__typename\":\"CoverImage\",\"url\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1709757079739/3ec384bd-b779-4f41-923e-ce1e5fc1b41e.png\",\"isPortrait\":false,\"isAttributionHidden\":false}},\"cursor\":\"2\",\"__typename\":\"PostEdge\"},{\"node\":{\"__typename\":\"Post\",\"id\":\"65bfd7d017b7eb1642d8c3e4\",\"title\":\"Coming out of hibernation...\",\"slug\":\"coming-out-of-hibernation\",\"publishedAt\":\"2024-02-04T18:30:40.167Z\",\"cuid\":\"cls7u9d7r000308jv8cp2003r\",\"url\":\"https://modern-json-schema.com/coming-out-of-hibernation\",\"subtitle\":\"New OpenAPI and JSON Schema work for 2024!\",\"brief\":\"Sometimes you start a blog and right as you're getting going, life gets complicated. 2023 involved a lot of changes for me, including a shift in focus from the JSON Schema specification to the OpenAPI Initiative (not to be confused with OpenAI!). It'...\",\"readTimeInMinutes\":3,\"views\":301,\"tags\":[{\"id\":\"65bfd7d0531feeef17a88a49\",\"slug\":\"http-api"])</script>
16<script>self.__next_f.push([1,"\",\"name\":\"http api\",\"__typename\":\"Tag\"},{\"id\":\"5a299daec01bfa27750ca52d\",\"slug\":\"openapi\",\"name\":\"OpenApi\",\"__typename\":\"Tag\"},{\"id\":\"5da831fc1ac16b87526c09b3\",\"slug\":\"json-schema\",\"name\":\"json-schema\",\"__typename\":\"Tag\"},{\"id\":\"56b1208d04f0061506b360ff\",\"slug\":\"rest-api\",\"name\":\"REST API\",\"__typename\":\"Tag\"}],\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"username\":\"handrews\",\"name\":\"Henry Andrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\",\"followersCount\":51},\"coverImage\":{\"__typename\":\"CoverImage\",\"url\":\"https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/_i8yKQx4bDA/upload/4c621cda89955e867c127e81487482d5.jpeg\",\"isPortrait\":false,\"isAttributionHidden\":false}},\"cursor\":\"3\",\"__typename\":\"PostEdge\"},{\"node\":{\"__typename\":\"Post\",\"id\":\"636ec3c29fcbe783317b2b8d\",\"title\":\"JSON Schema is a constraint system\",\"slug\":\"json-schema-is-a-constraint-system\",\"publishedAt\":\"2022-11-11T21:50:57.997Z\",\"cuid\":\"clad19m8d000d08le3oqi6jz3\",\"url\":\"https://modern-json-schema.com/json-schema-is-a-constraint-system\",\"subtitle\":\"Or: Why object-oriented programming is a mis-matched mental model for JSON Schema\",\"brief\":\"Did you come to JSON Schema with an object-oriented programming (OOP) background? Do think of writing a schema as analogous to writing a class? These expectations are both common and understandable, but incorrect.\\nIn this article, you'll learn:\\n\\nWhat...\",\"readTimeInMinutes\":6,\"views\":4196,\"tags\":[{\"id\":\"5da831fc1ac16b87526c09b3\",\"slug\":\"json-schema\",\"name\":\"json-schema\",\"__typename\":\"Tag\"},{\"id\":\"56744721958ef13879b94dec\",\"slug\":\"json\",\"name\":\"json\",\"__typename\":\"Tag\"},{\"id\":\"56744721958ef13879b94c9f\",\"slug\":\"java\",\"name\":\"Java\",\"__typename\":\"Tag\"},{\"id\":\"591e9732ab184fdc3bcd9185\",\"slug\":\"object-oriented-programming\",\"name\":\"Object Oriented Programming\",\"__typename\":\"Tag\"},{\"id\":\"56744722958ef13879b94f1b\",\"slug\":\"web-development\",\"name\":\"Web Development\",\"__typename\":\"Tag\"}],\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"username\":\"handrews\",\"name\":\"Henry Andrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\",\"followersCount\":51},\"coverImage\":{\"__typename\":\"CoverImage\",\"url\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1668195403111/YboqdcprM.png\",\"isPortrait\":false,\"isAttributionHidden\":false}},\"cursor\":\"4\",\"__typename\":\"PostEdge\"},{\"node\":{\"__typename\":\"Post\",\"id\":\"636c43c03de309d1606aa33b\",\"title\":\"What is \\\"Modern\\\" JSON Schema?\",\"slug\":\"what-is-modern-json-schema\",\"publishedAt\":\"2022-11-10T00:20:16.960Z\",\"cuid\":\"claabpxog000208mn5167cl28\",\"url\":\"https://modern-json-schema.com/what-is-modern-json-schema\",\"subtitle\":\"\",\"brief\":\"Welcome to the Modern JSON Schema (\u0026 APIs) blog!  My name is Henry, and I'm the H. Andrews who co-authored all drafts of JSON Schema from 2017 to the present.  With this blog, I want to help you use JSON Schema to the full extent of its capabilities!...\",\"readTimeInMinutes\":7,\"views\":3416,\"tags\":[{\"id\":\"56744721958ef13879b94dec\",\"slug\":\"json\",\"name\":\"json\",\"__typename\":\"Tag\"},{\"id\":\"5da831fc1ac16b87526c09b3\",\"slug\":\"json-schema\",\"name\":\"json-schema\",\"__typename\":\"Tag\"},{\"id\":\"5a299daec01bfa27750ca52d\",\"slug\":\"openapi\",\"name\":\"OpenApi\",\"__typename\":\"Tag\"},{\"id\":\"56744723958ef13879b95245\",\"slug\":\"apis\",\"name\":\"APIs\",\"__typename\":\"Tag\"},{\"id\":\"56744722958ef13879b94f1b\",\"slug\":\"web-development\",\"name\":\"Web Development\",\"__typename\":\"Tag\"}],\"author\":{\"__typename\":\"User\",\"id\":\"63473df3bf920c2f56061a76\",\"username\":\"handrews\",\"name\":\"Henry Andrews\",\"profilePicture\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1665613300213/KhvEqMecz.png\",\"followersCount\":51},\"coverImage\":{\"__typename\":\"CoverImage\",\"url\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1668039859082/HpRFnohhN.png\",\"isPortrait\":false,\"isAttributionHidden\":false}},\"cursor\":\"5\",\"__typename\":\"PostEdge\"}],\"pageInfo\":{\"hasNextPage\":false,\"endCursor\":\"25\",\"totalDocuments\":5,\"__typename\":\"PageInfo\"},\"totalDocuments\":5,\"__typename\":\"PostConnection\"}},\"posts\":[\"$b:props:children:0:prop"])</script>
16<script>self.__next_f.push([1,"s:publication:posts:edges:0:node\",\"$b:props:children:0:props:publication:posts:edges:1:node\",\"$b:props:children:0:props:publication:posts:edges:2:node\",\"$b:props:children:0:props:publication:posts:edges:3:node\",\"$b:props:children:0:props:publication:posts:edges:4:node\"],\"host\":\"modern-json-schema.com\"}],\"$L18\",\"$L19\",\"$L1a\"]}]\n1b:I[52619,[\"4554\",\"static/chunks/4554-984b480a9db5f3fe.js\",\"7563\",\"static/chunks/7563-4dfa0994a9b0e37c.js\",\"5001\",\"static/chunks/5001-fae0bebdd93f95e3.js\",\"2423\",\"static/chunks/2423-c8b1388240338d7d.js\",\"3091\",\"static/chunks/3091-bf1537ff6571a1bd.js\",\"652\",\"static/chunks/652-f40dcb480b4e356f.js\",\"5635\",\"static/chunks/app/archive/page-cf30053c25d6ee7f.js\"],\"\"]\n18:[\"$\",\"div\",null,{\"className\":\"px-4 sm:px-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"w-full xl:mx-auto xl:max-w-[80rem] 2xl:max-w-[90rem]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"space-y-8 max-w-4xl w-full mx-auto pt-2 sm:pt-10 pb-16\",\"children\":[[\"$\",\"header\",null,{\"className\":\"space-y-3 text-center\",\"children\":[[\"$\",\"h1\",null,{\"id\":\"archive-heading\",\"className\":\"text-3xl sm:text-4xl font-bold tracking-tight text-balance text-foreground\",\"children\":\"Archive\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground\",\"children\":[5,\" \",\"posts\",\" published so far\"]}]]}],[\"$\",\"section\",null,{\"aria-labelledby\":\"archive-heading\",\"children\":[\"$\",\"ol\",null,{\"className\":\"space-y-0 list-none p-0 border border-border rounded-lg overflow-hidden\",\"children\":[[\"$\",\"li\",\"66ef1915f88b2c6da9f9ed3c\",{\"className\":\"list-none\",\"children\":[\"$\",\"article\",null,{\"aria-labelledby\":\"archive-post-66ef1915f88b2c6da9f9ed3c\",\"className\":\"border-b border-border\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/analyzing-the-openapi-tooling-ecosystem\",\"className\":\"flex items-center gap-4 p-4 hover:bg-muted transition-colors group\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2024-09-21T19:05:57.349Z\",\"className\":\"text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20\",\"children\":\"Sep 21, 2024\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 min-w-0\",\"children\":[[\"$\",\"h2\",null,{\"id\":\"archive-post-66ef1915f88b2c6da9f9ed3c\",\"className\":\"text-base font-medium text-foreground group-hover:text-primary transition-colors break-words\",\"children\":\"Analyzing the OpenAPI Tooling Ecosystem\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground mt-1\",\"children\":\"Henry Andrews\"}]]}]]}]}]}],[\"$\",\"li\",\"65d4f2d63fc881b9f7409557\",{\"className\":\"list-none\",\"children\":[\"$\",\"article\",null,{\"aria-labelledby\":\"archive-post-65d4f2d63fc881b9f7409557\",\"className\":\"border-b border-border\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/your-path-from-openapi-30-to-31-and-beyond\",\"className\":\"flex items-center gap-4 p-4 hover:bg-muted transition-colors group\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2024-02-20T18:43:34.142Z\",\"className\":\"text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20\",\"children\":\"Feb 20, 2024\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 min-w-0\",\"children\":[[\"$\",\"h2\",null,{\"id\":\"archive-post-65d4f2d63fc881b9f7409557\",\"className\":\"text-base font-medium text-foreground group-hover:text-primary transition-colors break-words\",\"children\":\"Future-proofing your path from OpenAPI 3.0 to 3.1 and beyond!\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground mt-1\",\"children\":\"Henry Andrews\"}]]}]]}]}]}],[\"$\",\"li\",\"65bfd7d017b7eb1642d8c3e4\",{\"className\":\"list-none\",\"children\":[\"$\",\"article\",null,{\"aria-labelledby\":\"archive-post-65bfd7d017b7eb1642d8c3e4\",\"className\":\"border-b border-border\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/coming-out-of-hibernation\",\"className\":\"flex items-center gap-4 p-4 hover:bg-muted transition-colors group\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2024-02-04T18:30:40.167Z\",\"className\":\"text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20\",\"children\":\"Feb 4, 2024\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 min-w-0\",\"children\":[[\"$\",\"h2\",null,{\"id\":\"archive-post-65bfd7d017b7eb1642d8c3e4\",\"className\":\"text-base font-medium text-foreground group-hover:text-primary transition-colors break-words\",\"children\":\"Coming out of hibernation...\"}],[\"$\",\"p\",null,"])</script>
16<script>self.__next_f.push([1,"{\"className\":\"text-sm text-muted-foreground mt-1\",\"children\":\"Henry Andrews\"}]]}]]}]}]}],[\"$\",\"li\",\"636ec3c29fcbe783317b2b8d\",{\"className\":\"list-none\",\"children\":[\"$\",\"article\",null,{\"aria-labelledby\":\"archive-post-636ec3c29fcbe783317b2b8d\",\"className\":\"border-b border-border\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/json-schema-is-a-constraint-system\",\"className\":\"flex items-center gap-4 p-4 hover:bg-muted transition-colors group\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2022-11-11T21:50:57.997Z\",\"className\":\"text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20\",\"children\":\"Nov 11, 2022\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 min-w-0\",\"children\":[\"$L1c\",\"$L1d\"]}]]}]}]}],\"$L1e\"]}]}]]}],false]}]}]\n1f:T4d1,{\"@context\":\"https://schema.org\",\"@type\":\"CollectionPage\",\"name\":\"Archive - Modern JSON Schema and APIs\",\"url\":\"https://modern-json-schema.com/archive\",\"mainEntityOfPage\":\"https://modern-json-schema.com/archive\",\"description\":\"Archive of all posts published on Modern JSON Schema and APIs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Modern JSON Schema and APIs\",\"url\":\"https://modern-json-schema.com\",\"logo\":\"https://cdn.hashnode.com/res/hashnode/image/upload/v1667676345585/C8hQ3_utQ.png\"},\"hasPart\":[{\"@type\":\"Article\",\"headline\":\"Analyzing the OpenAPI Tooling Ecosystem\",\"url\":\"https://modern-json-schema.com/analyzing-the-openapi-tooling-ecosystem\"},{\"@type\":\"Article\",\"headline\":\"Future-proofing your path from OpenAPI 3.0 to 3.1 and beyond!\",\"url\":\"https://modern-json-schema.com/your-path-from-openapi-30-to-31-and-beyond\"},{\"@type\":\"Article\",\"headline\":\"Coming out of hibernation...\",\"url\":\"https://modern-json-schema.com/coming-out-of-hibernation\"},{\"@type\":\"Article\",\"headline\":\"JSON Schema is a constraint system\",\"url\":\"https://modern-json-schema.com/json-schema-is-a-constraint-system\"},{\"@type\":\"Article\",\"headline\":\"What is \\\"Modern\\\" JSON Schema?\",\"url\":\"https://modern-json-schema.com/what-is-modern-json-schema\"}]}19:[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$1f\"}}]\n1c:[\"$\",\"h2\",null,{\"id\":\"archive-post-636ec3c29fcbe783317b2b8d\",\"className\":\"text-base font-medium text-foreground group-hover:text-primary transition-colors break-words\",\"children\":\"JSON Schema is a constraint system\"}]\n1d:[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground mt-1\",\"children\":\"Henry Andrews\"}]\n1e:[\"$\",\"li\",\"636c43c03de309d1606aa33b\",{\"className\":\"list-none\",\"children\":[\"$\",\"article\",null,{\"aria-labelledby\":\"archive-post-636c43c03de309d1606aa33b\",\"className\":\"\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/what-is-modern-json-schema\",\"className\":\"flex items-center gap-4 p-4 hover:bg-muted transition-colors group\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2022-11-10T00:20:16.960Z\",\"className\":\"text-sm text-muted-foreground whitespace-nowrap flex-shrink-0 w-20\",\"children\":\"Nov 10, 2022\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 min-w-0\",\"children\":[[\"$\",\"h2\",null,{\"id\":\"archive-post-636c43c03de309d1606aa33b\",\"className\":\"text-base font-medium text-foreground group-hover:text-primary transition-colors break-words\",\"children\":\"What is \\\"Modern\\\" JSON Schema?\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground mt-1\",\"children\":\"Henry Andrews\"}]]}]]}]}]}]\n20:Tc98,M268.379 39q-6.322 0-10.35-4.108-4.002-4.134-4.002-10.483 0-6.296 4.002-10.43 4-4.135 10.163-4.135 6.028 0 9.817 3.734 3.814 3.735 3.814 9.497v2.8h-24.248v-4.054h17.633q-.187-2.747-2.054-4.508-1.868-1.76-4.962-1.76-3.28-.001-5.388 2.374-2.108 2.373-2.108 6.375 0 4.188 2.348 6.695 2.347 2.481 5.895 2.481 1.68 0 2.934-.453a8.5 8.5 0 0 0 2.321-1.307q1.041-.854 2.268-2.614l4.694 2.96q-1.707 2.748-3.494 4.135a12.7 12.7 0 0 1-3.975 2.081q-2.187.72-5.308.72m-33.496 0q-5.575 0-9.283-4.028-3.681-4.029-3.681-10.484 0-6.43 3.761-10.51 3.76-4.108 9.47-4.108 2.8 0 5.175 1.2 2.4 1.174 3.628 3.148l.026-.08V0h7.016v38.2h-6.722v-4.722l.64.8-.694.133q-1.28 2.108-3.788 3.361Q237.924 39 234.883 39m1.627-6.002q3.308 0 5.495-2.428t2.188-6.135q0-3.762-2.214-6.109-2.214-2.374-5.469-2.374-3.28 0-5.522 2.347-2.214 2.348-2.214 6.163 0 3.76 2.214 6.162 2.214 2."])</script>
16<script>self.__next_f.push([1,"374 5.522 2.374M205.811 39q-6.376 0-10.537-4.161-4.161-4.188-4.161-10.404 0-6.321 4.161-10.456 4.188-4.135 10.537-4.135 6.348 0 10.537 4.161 4.188 4.161 4.188 10.43 0 6.216-4.188 10.404Q212.186 39 205.811 39m0-6.162q3.307 0 5.575-2.374 2.267-2.374 2.267-6.055 0-3.707-2.294-6.056-2.267-2.347-5.548-2.347-3.308 0-5.575 2.374-2.268 2.348-2.268 6.029t2.241 6.055q2.268 2.374 5.602 2.374M162.586 38.2V10.644h6.802v5.015l-.8-.987h.906q1.308-2.187 3.762-3.494 2.48-1.335 5.228-1.334 4.615 0 7.256 2.8 2.667 2.776 2.667 7.603V38.2h-7.069V21.794q0-2.854-1.387-4.401t-4.134-1.547q-2.614 0-4.402 1.974-1.76 1.974-1.76 4.881V38.2zm-30.181 0V0h6.962v14.698h.134q1.2-2.187 3.574-3.521 2.375-1.335 5.229-1.334 4.615 0 7.255 2.828 2.668 2.801 2.668 7.522V38.2h-7.069V21.794q0-2.827-1.387-4.402-1.387-1.573-4.055-1.573-2.587 0-4.428 2.027-1.814 2.027-1.814 4.962v15.391zm-14.416.8q-2.882 0-5.015-.64-2.108-.614-3.761-1.84-1.654-1.228-2.668-2.695l-.987-1.467 4.695-3.174.773 1.067a9.1 9.1 0 0 0 1.788 1.814 8.2 8.2 0 0 0 2.32 1.2q1.308.4 3.068.4 2.161 0 3.441-.8 1.308-.8 1.307-2.294 0-1.36-1.147-2.108-1.12-.747-5.068-1.654-5.335-1.253-7.656-3.334-2.32-2.107-2.321-5.362 0-3.76 3.148-6.002 3.148-2.267 7.923-2.267 2.454 0 4.348.507t3.388 1.493q1.493.988 2.454 2.188l.987 1.2-4.482 3.255-.667-.774a7.4 7.4 0 0 0-1.627-1.387 6.4 6.4 0 0 0-2.054-.88 9.5 9.5 0 0 0-2.401-.294q-1.974 0-3.201.8-1.2.774-1.2 1.921 0 1.254 1.12 2.027 1.147.748 5.229 1.681 5.334 1.227 7.629 3.308 2.294 2.055 2.294 5.308 0 4.029-3.228 6.43Q123.217 39 117.989 39M87.61 39q-4.508 0-7.335-2.454-2.828-2.481-2.828-6.482 0-4.188 3.254-6.669t8.483-2.48q2.082 0 4.028.426 1.974.427 3.361 1.12v-1.6q0-2.588-1.813-4.082-1.788-1.493-4.615-1.493-1.628 0-2.801.373a8.7 8.7 0 0 0-2.188.987q-.987.614-1.84 1.414l-.854.8-4.081-3.788 1.307-1.173a18.7 18.7 0 0 1 2.934-2.108q1.601-.933 3.601-1.44t4.589-.507q5.868 0 9.229 2.88 3.361 2.882 3.361 8.084V38.2h-6.749v-5.922l1.654 2.187h-1.76q-1.308 2.055-3.655 3.308Q90.545 39 87.611 39m1.814-4.988q3.148 0 5.149-2.187 2-2.215 2-5.309v-.08q-1.12-.693-2.72-1.094a13 13 0 0 0-3.388-.426q-2.828 0-4.562 1.2-1.734 1.173-1.734 3.521 0 2.028 1.468 3.201t3.787 1.174M49 38.2V0h6.962v14.698h.134q1.2-2.187 3.574-3.521 2.375-1.335 5.229-1.334 4.615 0 7.255 2.828 2.668 2.801 2.668 7.522V38.2h-7.07V21.794q0-2.827-1.386-4.402-1.387-1.573-4.055-1.573-2.587 0-4.428 2.027-1.815 2.027-1.814 4.962v15.391z1a:[\"$\",\"footer\",null,{\"className\":\"px-4 pt-8 pb-20 sm:px-8 text-muted-foreground\",\"aria-label\":\"Footer\",\"children\":[\"$\",\"div\",null,{\"className\":\"w-full max-w-4xl mx-auto\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-col items-center gap-4 text-center text-sm\",\"children\":[false,[\"$\",\"p\",null,{\"className\":\"font-medium\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026\",\"children\":[[\"$\",\"span\",null,{\"className\":\"font-sans\",\"children\":\"©\"}],\" \",2026]}],\" \",\"Modern JSON Schema and APIs\"]}],[\"$\",\"nav\",null,{\"aria-label\":\"Footer navigation\",\"children\":[\"$\",\"ul\",null,{\"className\":\"flex flex-wrap justify-center gap-4 text-sm tracking-wide\",\"children\":[[\"$\",\"li\",\"/members\",{\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/members\",\"className\":\"transition hover:text-foreground\",\"target\":\"$undefined\",\"rel\":\"$undefined\",\"children\":\"Members\"}]}],[\"$\",\"li\",\"/archive\",{\"children\":[\"$\",\"$L1b\",null,{\"href\":\"/archive\",\"className\":\"transition hover:text-foreground\",\"target\":\"$undefined\",\"rel\":\"$undefined\",\"children\":\"Archive\"}]}],[\"$\",\"li\",\"https://hashnode.com/privacy-policy\",{\"children\":[\"$\",\"$L1b\",null,{\"href\":\"https://hashnode.com/privacy-policy\",\"className\":\"transition hover:text-foreground\",\"target\":\"_blank\",\"rel\":\"noopener\",\"children\":\"Privacy\"}]}],[\"$\",\"li\",\"https://hashnode.com/terms\",{\"children\":[\"$\",\"$L1b\",null,{\"href\":\"https://hashnode.com/terms\",\"className\":\"transition hover:text-foreground\",\"target\":\"_blank\",\"rel\":\"noopener\",\"children\":\"Terms\"}]}]]}]}],[\"$\",\"div\",null,{\"className\":\"pt-8 flex justify-center gap-6\",\"children\":[[\"$\",\"$L1b\",null,{\"href\":\"/sitemap.xml\",\"target\":\"_blank\",\"rel\":\"noopener\",\"className\":\"flex items-center gap-2 text-sm transition hover:text-foreground\",\"title\":\"Sitemap\",\"child"])</script>
16<script>self.__next_f.push([1,"ren\":[[\"$\",\"i\",null,{\"className\":\"fa-regular fa-sitemap\"}],[\"$\",\"span\",null,{\"children\":\"Sitemap\"}]]}],[\"$\",\"$L1b\",null,{\"href\":\"/rss.xml\",\"target\":\"_blank\",\"rel\":\"noopener\",\"className\":\"flex items-center gap-2 text-sm transition hover:text-foreground\",\"title\":\"RSS Feed\",\"children\":[[\"$\",\"i\",null,{\"className\":\"fa-regular fa-rss\"}],[\"$\",\"span\",null,{\"children\":\"RSS\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"pt-10 text-center\",\"children\":[\"$\",\"$L1b\",null,{\"href\":\"https://hashnode.com/?utm_source=https%3A%2F%2Fmodern-json-schema.com\u0026utm_medium=referral\u0026utm_campaign=blog_footer_logo\u0026utm_content=logo\",\"target\":\"_blank\",\"rel\":\"noopener\",\"aria-label\":\"Visit Hashnode (opens in a new tab)\",\"children\":[\"$\",\"svg\",null,{\"fill\":\"none\",\"viewBox\":\"0 0 282 39\",\"aria-hidden\":\"true\",\"className\":\"h-6 w-auto min-w-[9.5rem] text-muted-foreground transition hover:text-foreground\",\"children\":[[\"$\",\"path\",null,{\"fill\":\"currentColor\",\"d\":\"M2.68 13.032c-3.573 3.505-3.573 9.363 0 12.936L13.032 36.32c3.505 3.573 9.363 3.573 12.936 0L36.32 25.968c3.573-3.573 3.573-9.431 0-12.936L25.968 2.68c-3.573-3.573-9.431-3.573-12.936 0zm12.211 1.935c2.507-2.521 6.582-2.544 9.104-.038s2.544 6.582.038 9.104-6.582 2.544-9.104.038-2.544-6.582-.038-9.104\"}],[\"$\",\"path\",null,{\"fill\":\"currentColor\",\"d\":\"$20\"}]]}],\"className\":\"inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [\u0026_svg]:pointer-events-none [\u0026_svg]:size-4 [\u0026_svg]:shrink-0 hover:bg-accent hover:text-accent-foreground h-10 rounded-md text-xl px-5 py-4\",\"ref\":null}]}]]}]}]}]\n"])</script>
16</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.