It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: http://fplanque.net/Blog/xmlsrv/atom.php?blog=1

  1. <!DOCTYPE html>
  2. <html lang="en" dir="auto">
  3.  
  4. <head><meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  7. <meta name="robots" content="index, follow">
  8. <title>404 Page not found | fplanque.net [FR]</title>
  9. <meta name="keywords" content="">
  10. <meta name="description" content="François Planque&#39;s English Archive">
  11. <meta name="author" content="François Planque">
  12. <link rel="canonical" href="https://www.fplanque.net/404.html">
  13. <link crossorigin="anonymous" href="/assets/css/stylesheet.3d4ff0e1bafdf719c39d769832c5c97757e05e394dd7bffb42e08f163d46612e.css" integrity="sha256-PU/w4br99xnDnXaYMsXJd1fgXjlN17/7QuCPFj1GYS4=" rel="preload stylesheet" as="style">
  14. <link rel="icon" href="https://www.fplanque.net/favicon/fp.ico">
  15. <link rel="icon" type="image/png" sizes="16x16" href="https://www.fplanque.net/favicon/fp-16.png">
  16. <link rel="icon" type="image/png" sizes="32x32" href="https://www.fplanque.net/favicon/fp-32.png">
  17. <link rel="apple-touch-icon" href="https://www.fplanque.net/favicon/fp-64.png">
  18. <link rel="mask-icon" href="https://www.fplanque.net/favicon/fp-64.png">
  19. <meta name="theme-color" content="#2e2e33">
  20. <meta name="msapplication-TileColor" content="#2e2e33">
  21. <link rel="alternate" hreflang="en" href="https://www.fplanque.net/404.html">
  22. <noscript>
  23.    <style>
  24.        #theme-toggle,
  25.        .top-link {
  26.            display: none;
  27.        }
  28.  
  29.    </style>
  30.    <style>
  31.        @media (prefers-color-scheme: dark) {
  32.            :root {
  33.                --theme: rgb(29, 30, 32);
  34.                --entry: rgb(46, 46, 51);
  35.                --primary: rgb(218, 218, 219);
  36.                --secondary: rgb(155, 156, 157);
  37.                --tertiary: rgb(65, 66, 68);
  38.                --content: rgb(196, 196, 197);
  39.                --code-block-bg: rgb(46, 46, 51);
  40.                --code-bg: rgb(55, 56, 62);
  41.                --border: rgb(51, 51, 51);
  42.            }
  43.  
  44.            .list {
  45.                background: var(--theme);
  46.            }
  47.  
  48.            .list:not(.dark)::-webkit-scrollbar-track {
  49.                background: 0 0;
  50.            }
  51.  
  52.            .list:not(.dark)::-webkit-scrollbar-thumb {
  53.                border-color: var(--theme);
  54.            }
  55.        }
  56.  
  57.    </style>
  58. </noscript>
  59.  
  60.  <script async src="https://www.googletagmanager.com/gtag/js?id=G-TD8TDLBJBW"></script>
  61.  <script>
  62.    window.dataLayer = window.dataLayer || [];
  63.    function gtag(){dataLayer.push(arguments);}
  64.    gtag('js', new Date());
  65.  
  66.    gtag('config', 'G-TD8TDLBJBW');
  67.  </script><meta property="og:title" content="404 Page not found" />
  68. <meta property="og:description" content="François Planque&#39;s English Archive" />
  69. <meta property="og:type" content="website" />
  70. <meta property="og:url" content="https://www.fplanque.net/404.html" />
  71.  
  72. <meta name="twitter:card" content="summary"/>
  73. <meta name="twitter:title" content="404 Page not found"/>
  74. <meta name="twitter:description" content="François Planque&#39;s English Archive"/>
  75. <meta name="twitter:site" content="@fplanque"/>
  76.  
  77.  
  78. </head>
  79.  
  80. <body class="list" id="top">
  81. <script>
  82.    if (localStorage.getItem("pref-theme") === "dark") {
  83.        document.body.classList.add('dark');
  84.    } else if (localStorage.getItem("pref-theme") === "light") {
  85.        document.body.classList.remove('dark')
  86.    } else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
  87.        document.body.classList.add('dark');
  88.    }
  89.  
  90. </script>
  91.  
  92. <header class="header">
  93.    <nav class="nav">
  94.        <div class="logo">
  95.            <a href="https://www.fplanque.net/" accesskey="h" title="fplanque.net [FR] (Alt + H)">fplanque.net [FR]</a>
  96.            <div class="logo-switches">
  97.                <button id="theme-toggle" accesskey="t" title="(Alt + T)">
  98.                    <svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
  99.                        fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
  100.                        stroke-linejoin="round">
  101.                        <path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
  102.                    </svg>
  103.                    <svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
  104.                        fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
  105.                        stroke-linejoin="round">
  106.                        <circle cx="12" cy="12" r="5"></circle>
  107.                        <line x1="12" y1="1" x2="12" y2="3"></line>
  108.                        <line x1="12" y1="21" x2="12" y2="23"></line>
  109.                        <line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
  110.                        <line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
  111.                        <line x1="1" y1="12" x2="3" y2="12"></line>
  112.                        <line x1="21" y1="12" x2="23" y2="12"></line>
  113.                        <line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
  114.                        <line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
  115.                    </svg>
  116.                </button>
  117.            </div>
  118.        </div>
  119.        <ul id="menu">
  120.            <li>
  121.                <a href="https://www.fplanque.net/tech/" title="Tech">
  122.                    <span>Tech</span>
  123.                </a>
  124.            </li>
  125.            <li>
  126.                <a href="https://www.fplanque.net/open-source/" title="Open Source">
  127.                    <span>Open Source</span>
  128.                </a>
  129.            </li>
  130.            <li>
  131.                <a href="https://www.fplanque.net/work/" title="Pro">
  132.                    <span>Pro</span>
  133.                </a>
  134.            </li>
  135.            <li>
  136.                <a href="https://www.fplanque.net/softculture/" title="Divers">
  137.                    <span>Divers</span>
  138.                </a>
  139.            </li>
  140.            <li>
  141.                <a href="https://www.fplanque.net/credit-finance/" title="Capitalisme">
  142.                    <span>Capitalisme</span>
  143.                </a>
  144.            </li>
  145.            <li>
  146.                <a href="https://www.fplanque.net/about/" title="About">
  147.                    <span>About</span>
  148.                </a>
  149.            </li>
  150.            <li>
  151.                <a href="https://www.fplanque.net/tags/" title="Tags">
  152.                    <span>Tags</span>
  153.                </a>
  154.            </li>
  155.            <li>
  156.                <a href="https://www.fplanque.net/search/" title="Search (Alt &#43; /)" accesskey=/>
  157.                    <span>Search</span>
  158.                </a>
  159.            </li>
  160.        </ul>
  161.    </nav>
  162. </header>
  163. <main class="main">
  164. <div class="not-found">404</div>
  165.    </main>
  166.    
  167. <footer class="footer">
  168.        <span>&copy; 2024 <a href="https://www.fplanque.net/">fplanque.net [FR]</a></span>
  169.  
  170.  
  171.    -  <a href="/about/contact/">Contact</a>
  172.  
  173. </footer>
  174. <a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
  175.    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
  176.        <path d="M12 6H0l6-6z" />
  177.    </svg>
  178. </a>
  179.  
  180. <script>
  181.    let menu = document.getElementById('menu')
  182.    if (menu) {
  183.        menu.scrollLeft = localStorage.getItem("menu-scroll-position");
  184.        menu.onscroll = function () {
  185.            localStorage.setItem("menu-scroll-position", menu.scrollLeft);
  186.        }
  187.    }
  188.  
  189.    document.querySelectorAll('a[href^="#"]').forEach(anchor => {
  190.        anchor.addEventListener("click", function (e) {
  191.            e.preventDefault();
  192.            var id = this.getAttribute("href").substr(1);
  193.            if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
  194.                document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
  195.                    behavior: "smooth"
  196.                });
  197.            } else {
  198.                document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
  199.            }
  200.            if (id === "top") {
  201.                history.replaceState(null, null, " ");
  202.            } else {
  203.                history.pushState(null, null, `#${id}`);
  204.            }
  205.        });
  206.    });
  207.  
  208. </script>
  209. <script>
  210.    var mybutton = document.getElementById("top-link");
  211.    window.onscroll = function () {
  212.        if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
  213.            mybutton.style.visibility = "visible";
  214.            mybutton.style.opacity = "1";
  215.        } else {
  216.            mybutton.style.visibility = "hidden";
  217.            mybutton.style.opacity = "0";
  218.        }
  219.    };
  220.  
  221. </script>
  222. <script>
  223.    document.getElementById("theme-toggle").addEventListener("click", () => {
  224.        if (document.body.className.includes("dark")) {
  225.            document.body.classList.remove('dark');
  226.            localStorage.setItem("pref-theme", 'light');
  227.        } else {
  228.            document.body.classList.add('dark');
  229.            localStorage.setItem("pref-theme", 'dark');
  230.        }
  231.    })
  232.  
  233. </script>
  234. </body>
  235.  
  236. </html>
  237.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda