<?xml version="1.0" encoding="utf-8"?><article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0-subset Balisage-1.5" xml:id="who-knows">
  <title>XML as a Technological Pinnacle</title>
  <info>
    <confgroup>
      <conftitle>Balisage: The Markup Conference 2026</conftitle>
      <confdates>August 3-7, 2026</confdates>
   </confgroup>
    <abstract>
      <para>Technologists and futurists often mythologize a constantly developing <quote>tech</quote> that always gets better, solving ever more problems at lower cost.  The reality is much bumpier than that, as technologists solve immediate problems, and creative sharing, recombination, and reuse create technological pinnacles that last through the ages.  Apart from a few recent claims about LLMs, none of those tools solves all the problems, but they can maintain a solid user base for decades, perhaps centuries, to come.  XML solved a core set of problems so well that it remains effectively unbeatable in its large core territory, the flexible markup space.</para>
    </abstract>
    <author>
      <personname>
        <firstname>Simon</firstname>
        <surname>St.Laurent</surname>
      </personname>
      <personblurb>
        <para>A troublemaker, Simon St.Laurent has been working with XML since the early drafts of the specification.  His first book on XML, <citation>XML: A Primer</citation>, went through three editions, each time teaching a new group of developers a variety of bad ideas.  The example using XML to manage lighting supposedly inspired several protocols for excessively complicated control systems.  His book <citation>Cookies</citation> may be partially responsible for the erosion of privacy.  His other books have done less damage because they haven't sold as well.  However, he fears that <citation>Introducing Erlang</citation> and <citation>Introducing Elixir</citation> may prove to be contributing factors in the development of Skynet, while <citation>Programming Crystal</citation> covers a language obsessed with strong typing.</para>
        <para>His more positive contributions include a never-completed book on hand tool woodworking, various writings on Quakerism, and two delightful children.  He obsesses about hospitality and craft, leading to binges of repentance for past (and current) work.  He still tries to work in what remains of commercial publishing.</para>
      </personblurb>
      <affiliation>
        <jobtitle>Author</jobtitle>
        <orgname>Independent - simonstl.com</orgname>
      </affiliation>
      <email>simonstl@simonstl.com</email>
    </author>
<legalnotice><para>© 2026 Simon St.Laurent</para></legalnotice>
    <keywordset role="author">
      <keyword>Markup</keyword>
      <keyword>GML</keyword>
      <keyword>SGML</keyword>
      <keyword>XML</keyword>
      <keyword>HTML</keyword>
      <keyword>JSON</keyword>
      <keyword>YAML</keyword>
      <keyword>Regular Expressions</keyword>
      <keyword>Python</keyword>
    </keywordset>
  </info>
<section>
    <title>Introduction</title>

<para>As XML approaches 30 [<xref linkend="XML1996"/>], and its parent technology approaches 60 [<xref linkend="SGMLroots"/>], the peaks and valleys of its existence keep getting clearer.  XML soared to great heights in its first few years, dipped during the dot-com bust, climbed again for a burst of AJAX and REST API use, and then faded again after JSON took much of its audience.  Like many mountains, though, technological pinnacles leave behind powerful remains that keep marking the landscape long after they stopped being the biggest thing around.</para> 
</section>

<section>
    <title>What is a pinnacle?</title>

<para>A pinnacle is generally a more exciting word for a peak, often reflecting slightly more extreme circumstances.  In architecture, for example, roofs can have peaks, but pinnacles are usually towers extending above the roof.  Pinnacles are often, though not always, seen as less secure places to be than peaks. Pinnacles are often admired, seen as the culmination or greatest expression of something  [<xref linkend="pinnacle"/>].  Annual Pinnacle Awards, for example, are meant to <quote>honor companies, products, and individuals that have demonstrated exceptional innovation, creativity, and impact in their fields</quote> [<xref linkend="pinnacleAward"/>]. As the annual nature of that award suggests, a technology pinnacle is often a temporary state.</para>

</section>

<section>
    <title>On the peaks</title>

<para>Unlike many technologies, XML had two huge moments. The first peak was early, when XML was going to transform the Web, ecommerce, and everything [<xref linkend="xml2nd"/>]. The second peak arrived when XML thrived on REST APIs and its association with Ajax [<xref linkend="Ajax"/>], before JSON took its data serialization crown away.  Google Books' Ngram Viewer [<xref linkend="Ngram-XML"/>] provides a rough presentation of this pattern, shown in <xref linkend="xml-ngram"/>, though two caveats are important.  First, book publication often adds a year or two year delay.  Second, the Ngram viewer is reporting the frequency of occurence of <quote>XML</quote> in books.  If a book simply mentions <quote>Asynchronous JavaScript and XML</quote> to expand Ajax, or includes code using XMLHTTPRequest with any kind of payload, that will set off the counter.  The hits in the first peak are likely more solid.</para>

  <figure xml:id="xml-ngram">
    <title>Ngram for XML, 1995-2022</title>
    <mediaobject>
      <imageobject>
        <imagedata format="png" fileref="../../../vol31/graphics/StLaurent01/StLaurent01-001.png" width="50%"/>
      </imageobject>
    </mediaobject>
    <caption>
      <para>Google Books shows two peaks for the use of <quote>XML</quote>, in 2002 and 2008, followed by a long slow fade.</para>
    </caption>
  </figure>

<para>While Ngrams are fairly blunt instruments, two additional searches can clarify what was happening in each peak. Both have many fewer appearances than XML, but they do show intersecting trends. XSLT, shown in <xref linkend="xslt-ngram"/>, was strongly associated with the first story, and Ajax, in <xref linkend="ajax-ngram"/>, with the second.</para>

  <figure xml:id="xslt-ngram">
    <title>Ngram for XSLT, 1995-2022</title>
    <mediaobject>
      <imageobject>
        <imagedata format="png" fileref="../../../vol31/graphics/StLaurent01/StLaurent01-002.png" width="50%"/>
      </imageobject>
    </mediaobject>
    <caption>
      <para>Google Books shows one peak for the use of <quote>XSLT</quote>, in 2002, followed by a bumpy fade.</para>
    </caption>
  </figure>

  <figure xml:id="ajax-ngram">
    <title>Ngram for Ajax, 1995-2022</title>
    <mediaobject>
      <imageobject>
        <imagedata format="png" fileref="../../../vol31/graphics/StLaurent01/StLaurent01-003.png" width="50%"/>
      </imageobject>
    </mediaobject>
    <caption>
      <para>Google Books shows a double peak for the use of <quote>Ajax</quote>, across 2007-11, really only dropping in 2016.</para>
    </caption>
  </figure>

<para>All of these technologies are still in use, of course, but all of them have descended from their peaks.</para>

</section>

<section>
    <title>Pinnacles after the peak</title>
<para>Pinnacle technologies have a habit of lasting much longer than anyone expects, often even much longer than anyone especially wants.  (COBOL is a legendary case, while Java is a more ordinary complaint.) Even in software, where the costs of change seem like they should be much smaller, technologies that had a good run can linger apparently forever.  Data has even lower transition costs because of ubiquitous transformation tools, but people and companies hold on to their technologies as long as there remains enough community to support them.</para>

<para>One classic way that old pinnacles stay relevant is by staying close to related technologies.  The Java Virtual Machine (JVM), for example, is used for languages far beyond the original language. Kotlin, Scala, Groovy, and Clojure are all built around the JVM, and dozens of other languages have implementations that use it [<xref linkend="Urma"/>].</para>

<para>XML does not have this kind of a posse.  In fact, the early design decision that XML documents must be well-formed makes it difficult to reuse XML tools on SGML, HTML, or a variety of other formats.  However, a different approach, through techniques like Invisible XML [<xref linkend="invisibleXML"/>], makes it possible to bring XML tooling and transformations to other formats. XML itself remains largely unbeaten in applications that need the flexibility it provides, especially for custom structures and mixed content. </para>

<para>Just as regular expressions have remained themselves through decades of use in multiple environments, so XML will likely hold on.  Regular expression tooling has drilled deeper into programming languages than XML parsers and other tools, so hasn't had to deal with as much turmoil [<xref linkend="unmaintained"/>].  XML's early efforts to join the world of the Web browser got XSLT 1.0 into the browser, but even that is fading now [<xref linkend="XSLTremoval"/>]. XML 1.0 itself seems safe there for now, too tightly bound into APIs and other processing, its notable naming of XMLHTTPRequest [<xref linkend="XMLHttpRequest"/>] still respected as legacy.</para>

<para>So which will it be?  Will XML end up an isolated monolith like COBOL, requiring dedicated support while managers plot its long-term removal, or will it remain so integral to so many technologies that it lasts like the JVM?</para>

</section>




  <bibliography>
    <title>Bibliography</title>

<bibliomixed xml:id="unmaintained" xreflabel="Posch 2025">Posch, Maya. <quote>Libxml2 Narrowly Avoids Becoming Unmaintained</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://hackaday.com/2025/12/23/libxml2-narrowly-avoids-becoming-unmaintained/</link></bibliomixed>

<bibliomixed xml:id="XMLHttpRequest" xreflabel="XMLHttpRequest">Mozilla Developer Network. <quote>XMLHttpRequest</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest</link></bibliomixed>

<bibliomixed xml:id="XSLTremoval" xreflabel="Freed 2025">Freed, Mason, and Röttsches, Dominik. <quote>Removing XSLT for a more secure browser</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://developer.chrome.com/docs/web-platform/deprecating-xslt</link></bibliomixed>


<bibliomixed xml:id="invisibleXML" xreflabel="Invisible XML">Pemberton, Steven. <quote>Invisible XML Specification: Community Group Editorial Draft</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://invisiblexml.org/current/</link></bibliomixed>

<bibliomixed xml:id="Urma" xreflabel="Urma 2014">Urma, Raoul-Gabriel.  <quote>Alternative Languages for the JVM</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.oracle.com/technical-resources/articles/java/architect-languages.html</link></bibliomixed>

<bibliomixed xml:id="birth" xreflabel="Bosak 2003">Bosak, Jon. <quote>The Birth of XML</quote>. <emphasis role="ital">Sun Developer Network</emphasis>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://web.archive.org/web/20120804024400/http://java.sun.com/xml/birth_of_xml.html</link></bibliomixed>

<bibliomixed xml:id="Ngram-XML" xreflabel="Ngram-XML">Google Books Ngram Viewer. <quote>XML: 1995-2022</quote> (July 2024 dataset). <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://books.google.com/ngrams/graph?content=xml&amp;year_start=1995&amp;year_end=2022&amp;corpus=en&amp;smoothing=0&amp;case_insensitive=false</link></bibliomixed>

<bibliomixed xml:id="XML1996" xreflabel="XML 1996">Bray, Tim, and Sperberg-McQueen, Michael. <quote>Extensible Markup Language (XML): W3C Working Draft 14-Nov-96</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/TR/WD-xml-961114</link></bibliomixed>


<bibliomixed xml:id="XHTML11" xreflabel="XHTML 1.1">Altheim, Murray, and McCarron, Shane. <quote>XHTML 1.1 - Module Based XML</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/TR/2001/REC-xhtml11-20010531/</link></bibliomixed>


<bibliomixed xml:id="Weaving" xreflabel="Berners-Lee 1999">Berners-Lee, Tim. <emphasis role="ital">Weaving the Web: The Original Design and Ultimate Destiny of the WORLD WIDE WEB by Its Inventor</emphasis>. New York: Harper San Francisco, 1999.</bibliomixed>

<bibliomixed xml:id="xml2nd" xreflabel="Bosak and Bray 1999">Bosak, Jon, and Bray, Tim. <quote>XML and the Second-Generation Web</quote>. <emphasis role="ital">Scientific American</emphasis>, May 1999. Pages 89-93.</bibliomixed>

<bibliomixed xml:id="annotatedXML" xreflabel="XML 1.0">Bray, Tim, Paoli, Jean, and Sperberg-McQueen, Michael. <quote>Extensible Markup Language (XML) 1.0: W3C Recommendation, 10-February-1998</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.xml.com/axml/</link></bibliomixed>


<bibliomixed xml:id="Evolution" xreflabel="Connolly 1997">Connolly, Dan, et al. <quote>The Evolution of Web Documents: The Ascent of XML</quote>, in <emphasis role="ital">XML: Principles, Tools, and Techniques</emphasis>. Sebastopol, CA: O'Reilly Media, 1997. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://www.xml.com/pub/a/w3j/s3.connolly.html</link></bibliomixed>

<bibliomixed xml:id="JSON" xreflabel="JSON">Crockford, Douglas. <quote>Introducing JSON</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://www.json.org/</link></bibliomixed>

<bibliomixed xml:id="YAMLemerges" xreflabel="No Tags">Dodds, Leigh. <quote>Doing It Simpler</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.xml.com/pub/a/2001/08/01/simpler.html</link></bibliomixed>

<bibliomixed xml:id="XMLbye" xreflabel="DuVander 2012">DuVander, Adam. <quote>Leading APIs Say 'Bye XML' in New Versions</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://web.archive.org/web/20150104191603/https://www.programmableweb.com/news/leading-apis-say-bye-xml-new-versions/2012/12/17</link></bibliomixed>

<bibliomixed xml:id="billion" xreflabel="Ensign1997">Ensign, Chet. <emphasis role="ital">SGML: The Billion-Dollar Secret</emphasis>. Boston: Pearson, 1997.</bibliomixed>

<bibliomixed xml:id="manifesto" xreflabel="Manifesto 2013"><emphasis role="ital">Extensible Web Manifesto</emphasis>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://extensiblewebmanifesto.org/</link></bibliomixed>

<bibliomixed xml:id="Ajax" xreflabel="Garrett 2005">Garrett, Jesse James. <quote>Ajax: A New Approach to Web Applications</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://web.archive.org/web/20150910072359/http://adaptivepath.org/ideas/ajax-new-approach-web-applications/</link>.</bibliomixed>

<bibliomixed xml:id="SGMLhand" xreflabel="Goldfarb 1990">Goldfarb, Charles. <emphasis role="ital">The SGML Handbook</emphasis>. Oxford: Oxford University Press, 1990.</bibliomixed>

<bibliomixed xml:id="SGMLroots" xreflabel="Goldfarb 1996">Goldfarb, Charles. <quote>The Roots of SGML -- A Personal Recollection</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://web.archive.org/web/20121220071917/http://www.sgmlsource.com/history/roots.htm</link></bibliomixed>

<bibliomixed xml:id="Graham" xreflabel="Graham 1995">Graham, Ian S. <emphasis role="ital">The HTML Sourcebook</emphasis>. New York: John Wiley &amp; Sons, 1995.</bibliomixed>

<bibliomixed xml:id="WaSP" xreflabel="WASP 2013"><quote>History of the Web Standards Project</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.webstandards.org/about/history/index.html</link></bibliomixed>

<bibliomixed xml:id="historyWeb" xreflabel="Hopgood 2001">Hopgood, Bob. <quote>History of the Web</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/2012/08/history-of-the-web/origins.htm</link></bibliomixed>

<bibliomixed xml:id="XSLTclosed" xreflabel="Jia 2018">Jia, Xueyuan. <quote>XSLT and XML Query Working Groups now closed</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://lists.w3.org/Archives/Public/public-xsl-wg/2018Oct/0000.html</link></bibliomixed>

<bibliomixed xml:id="fatFree" xreflabel="JSON Alternative"><quote>JSON: The Fat-Free Alternative to XML</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://www.json.org/xml.html</link></bibliomixed>

<bibliomixed xml:id="Katz" xreflabel="Katz 2013">Katz, Yehuda.  <quote>Extend the Web Forward</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://yehudakatz.com/2013/05/21/extend-the-web-forward/</link></bibliomixed>

<bibliomixed xml:id="LaQuey" xreflabel="La Quey 1999">La Quey, Robert E. <quote>SML: Simplifying XML</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.xml.com/pub/a/1999/11/sml/</link></bibliomixed>

<bibliomixed xml:id="Marcotte" xreflabel="Marcotte 2008">Marcotte, Ethan. <quote>Where Our Standards Went Wrong</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://alistapart.com/article/whereourstandardswentwrong/</link></bibliomixed>


<bibliomixed xml:id="pinnacle" xreflabel="Pinnacle Definition"><quote>Pinnacle</quote>, Merriam-Webster.com Dictionary. Merriam-Webster, <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.merriam-webster.com/dictionary/pinnacle</link>. Accessed 12 Jul. 2026.</bibliomixed> 

<bibliomixed xml:id="pinnacleAward" xreflabel="Pinnacle Awards"><quote>Pinnacle Awards: About Us</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.pinnacle-award.com/about-us</link>. Accessed 12 Jul. 2026.</bibliomixed> 


<bibliomixed xml:id="almanac" xreflabel="Meiert 2020">Meiert, Jens Oliver, Rosu, Catalin, and Devlin, Ian. <quote>Markup</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://almanac.httparchive.org/en/2020/markup</link></bibliomixed>

<bibliomixed xml:id="nextDecade" xreflabel="Miłowski 2009">Miłowski, R. Alexander. <quote>XML in the Browser: the Next Decade</quote>. Presented at Balisage: The Markup Conference 2009, Montréal, Canada, August 11 - 14, 2009. In <emphasis role="ital">Proceedings of Balisage: The Markup Conference 2009</emphasis>. Balisage Series on Markup Technologies, vol. 3 (2009). doi:<biblioid class="doi">10.4242/BalisageVol3.Milowski01</biblioid> </bibliomixed>

<bibliomixed xml:id="casual" xreflabel="Patterson 2013">Patterson, Matt. <quote>Where did all the markup kids go? Open-source, markup, and the casual developer</quote>. Presented at Balisage: The Markup Conference 2013, Montréal, Canada, August 6 - 9, 2013. In <emphasis role="ital">Proceedings of Balisage: The Markup Conference 2013</emphasis>. Balisage Series on Markup Technologies, vol. 10 (2013). doi:<biblioid class="doi">10.4242/BalisageVol10.Patterson01</biblioid> (Open source shrinkage)</bibliomixed>

<bibliomixed xml:id="SMLrevenge" xreflabel="St. Laurent 2007">St. Laurent, Simon. <quote>JSON on the Web, or: The Revenge of SML</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.xml.com/pub/a/2006/07/05/json-on-the-web-or-the-revenge-of-sml.html</link></bibliomixed>

<bibliomixed xml:id="awkward" xreflabel="St.Laurent 2021">St.Laurent, Simon. <quote>Semantics and the Web: An Awkward History</quote>. Presented at Balisage: The Markup Conference 2021, Washington, DC, August 2 - 6, 2021. In <emphasis role="ital">Proceedings of Balisage: The Markup Conference 2021</emphasis>. Balisage Series on Markup Technologies, vol. 26 (2021). doi:<biblioid class="doi">10.4242/BalisageVol26.StLaurent01</biblioid></bibliomixed>

<bibliomixed xml:id="markingDown" xreflabel="Walsh 2016">Walsh, Norman. <quote>Marking up and marking down</quote>. Presented at Balisage: The Markup Conference 2016, Washington, DC, August 2 - 5, 2016. In <emphasis role="ital">Proceedings of Balisage: The Markup Conference 2016</emphasis>. Balisage Series on Markup Technologies, vol. 17 (2016). doi:<biblioid class="doi">10.4242/BalisageVol17.Walsh01</biblioid> </bibliomixed>

<bibliomixed xml:id="HTML5parser" xreflabel="WHATWG parsing">WHATWG. <quote>Parsing HTML Documents</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://html.spec.whatwg.org/multipage/parsing.html</link></bibliomixed>

<bibliomixed xml:id="Namespaces" xreflabel="Namespaces ">World Wide Web Consortium. <quote>Namespaces in XML 1.0 (Third Edition)</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/TR/xml-names/</link></bibliomixed>

<bibliomixed xml:id="XMLschemaRec" xreflabel="W3C 2001">World Wide Web Consortium. <quote>World Wide Web Consortium Issues XML Schema as a W3C Recommendation</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://www.w3.org/2001/05/xml-schema-pressrelease.html.en</link></bibliomixed>

<bibliomixed xml:id="XHTML10" xreflabel="XHTML 1.0">World Wide Web Consortium. <quote>XHTML 1.0: The Extensible HyperText Markup Language (Second Edition)</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/TR/xhtml1/</link></bibliomixed>

<bibliomixed xml:id="XHTML20" xreflabel="XHTML 2.0">World Wide Web Consortium. <quote>XHTML 2.0</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/TR/xhtml2/</link></bibliomixed>

<bibliomixed xml:id="XHTML2wg" xreflabel="XHTML 2.0 WG">World Wide Web Consortium. <quote>XHTML2 Working Group Home Page</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/MarkUp/</link></bibliomixed>

<bibliomixed xml:id="XMLWG" xreflabel="W3C 2016">World Wide Web Consortium. <quote>XML Core Working Group Public Page</quote>.  <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">https://www.w3.org/XML/Core/</link>.</bibliomixed>

<bibliomixed xml:id="YAML" xreflabel="YAML"><quote>YAML: YAML Ain't Markup Language</quote>. <link xlink:type="simple" xlink:show="new" xlink:actuate="onRequest">http://www.yaml.org/</link></bibliomixed>

  </bibliography>
</article>