{"title":"XSLT Extensions for JSON Processing","authors":"M. Kay","doi":"10.4242/balisagevol27.kay01","DOIUrl":"https://doi.org/10.4242/balisagevol27.kay01","url":null,"abstract":"XSLT 3.0 contains basic facilities for transforming JSON as well as XML. But looking at actual use cases, it’s clear that some things are a lot harder than they need to be. How could we extend XSLT to make JSON transformations as easy as XML transformations, using the same rule-based tree-walking paradigm? Some of these extensions are already implemented in current Saxon releases, so we are starting to get user feedback.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70945942","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"XML in an AsciiDoc World: SaxonJS to the Rescue","authors":"E. Lenz","doi":"10.4242/balisagevol27.lenz01","DOIUrl":"https://doi.org/10.4242/balisagevol27.lenz01","url":null,"abstract":"Static website generation has long been an effective use case for XML and XSLT. Today, static site generators remain popular, but they rarely use XML. Antora is a static site generator for software documentation. It runs on Node.js and uses AsciiDoc for its source content. It has desirable features including git integration, site versioning, and pluggable modern UI bundles. However, Antora doesn't natively handle complex content generation needs. Now, thanks to SaxonJS and Antora's new extension mechanism, we can weave in the power of XML and XSLT. The docca project generates reference documentation for Boost C++ libraries via an Antora extension that invokes SaxonJS, seamlessly integrating auto-generated and manually-authored content into the result. This presentation introduces key project components (Doxygen, Antora, AsciiDoc, and SaxonJS running on Node.js) and includes sample code, a demo, and a brief discussion of other ways XML and SaxonJS might complement AsciiDoc and Antora.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946143","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Artificial Intelligence with XForms","authors":"J. Chelsom","doi":"10.4242/balisagevol28.chelsom01","DOIUrl":"https://doi.org/10.4242/balisagevol28.chelsom01","url":null,"abstract":"Classical AI techniques: Bayesian networks, fuzzy logic, forward and backward chaining inference rules, etc. have proved useful in providing clinical decision support. The Artificial Intelligence (AI) Workbench investigates how these might be used in an XRX (XForms, REST, XQuery) application with a view towards adding them to the cityEHR Electronic Health Records system.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"170 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946823","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The Future Begins Tomorrow: Succession Planning for XML Infrastructure Resources","authors":"Jeffrey Beck","doi":"10.4242/balisagevol28.beck01","DOIUrl":"https://doi.org/10.4242/balisagevol28.beck01","url":null,"abstract":"Much of the world’s scholarship, including most of the world’s scientific, technical, engineering, and medical discoveries, are published in journal articles. Journal publishing has changed rapidly and dramatically in the last 25 years. Current journal article publishing (both print and online), archiving, and interchange is done in XML using JATS (the Journal Article Tag Suite). JATS is supported and maintained by a NISO Standing Committee and a group of (aging) volunteers. How long can this work be supported by volunteers on standards committees? New technologies may transform journal modeling and related tasks but will not replace the work of skilled practitioners. I see document modeling work becoming a function of libraries. Libraries should support shared standards and document models, including training, tool creation, and documentation. Just as libraries store and preserve physical journals published when scholarship was ink on paper, their cultural heritage preservation role must expand to support the creation and preservation of XML journal articles.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70947035","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Adventures in Single-Sourcing XQuery and XSLT","authors":"M. Holstege","doi":"10.4242/balisagevol28.holstege01","DOIUrl":"https://doi.org/10.4242/balisagevol28.holstege01","url":null,"abstract":"This is a case study of a project to make a fairly substantial collection of XQuery function libraries available in XSLT. Various approaches with different capabilities are taken: Generating a stub stylesheet with a simple import of the XQuery module. Generating a more elaborate stylesheet with bindings for the functions and variables. Semi-automatically converting XQuery to XSLT using string manipulations. Semi-automatically converting XQuery to XSLT using the XQDoc XML as an intermediate format. There is consideration of the various sticking points and tradeoffs with these approaches.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70947343","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Knock Down This Wall","authors":"C. M. Sperberg-McQueen","doi":"10.4242/balisagevol28.sperberg-mcqueen02","DOIUrl":"https://doi.org/10.4242/balisagevol28.sperberg-mcqueen02","url":null,"abstract":"Life can be comfortable inside a walled garden. But if we wish to engage with the world, we need to knock down those walls.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70947730","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Destructive Consistency","authors":"B. T. Usdin","doi":"10.4242/balisagevol27.usdin01","DOIUrl":"https://doi.org/10.4242/balisagevol27.usdin01","url":null,"abstract":"It seems to be in the nature of people drawn to discussions of markup, that is, people likely to be at Balisage, that we value consistency. We want both our physical and virtual worlds to make sense and we expect consistency. We chafe when forced to drive on the “wrong” side of the road. We want the names used in our markup vocabularies to be formed in consistent ways—either use CamelCase or don’t, for example. We want things that are parallel to be handled in parallel ways. This feels comfortable to us, and we think we are doing good by pushing the world toward our comfort zone. This, it seems to me, is one of the reasons that explicit markup has not taken the world by storm. We are not meeting people where they are; we are trying to change where they are. Worse, we are (deliberately? frequently?) blind to their styles and desires. This just plain doesn’t work! Our obsession with consistency is destructive.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946435","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Excel to Excel using XML, really?","authors":"G. Bormans","doi":"10.4242/balisagevol27.bormans02","DOIUrl":"https://doi.org/10.4242/balisagevol27.bormans02","url":null,"abstract":"Merging several Excel documents, from different sources with different forms, into a single XML document that has to satisfy externally specified reporting requirements is a somewhat daunting prospect. You might imagine that a tool like Python (and Pandas) would be the appropriate place to start. But we were able to develop a solution using the XML stack in less time than was forecast for the Python-based solution. We use a single XProc 3.0 pipeline to merge the Excel files and produce both the required XML format and Excel files for internal use. We believe our success depended largely on the fact that the project design enabled precise, filtered, early feedback which reduced the number of iterations required to create the critical deliverable. In addition to ingesting and providing final data in the user’s preferred format (Excel) we were able to provide intermediate files, change tracking, and process documents in Excel.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70945799","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Metadata for Creators","authors":"M. Holstege","doi":"10.4242/balisagevol27.holstege01","DOIUrl":"https://doi.org/10.4242/balisagevol27.holstege01","url":null,"abstract":"Metadata is generally viewed from a third-party perspective, standing aside from both the creator and the audience of a work. This paper looks at the problem from the creator's standpoint: metadata that is deeply intertwined with the process of creation. Two important classes of metadata stand out: signature metadata, which is for the creator of a work to claim authorship and communicate with their audience, and process metadata, which is to help the creator recover key details of the creation process for themselves to drive further creation. Some key techniques for capturing and embedding signature and process metadata are detailed for a particular use case are described, along with some lessons learned.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946004","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Wondrous Historie of Intertextual Networks: Or, How Not to Index Your Data","authors":"Ashley M. Clark","doi":"10.4242/balisagevol28.clark01","DOIUrl":"https://doi.org/10.4242/balisagevol28.clark01","url":null,"abstract":"In 2022, the Women Writers Project (WWP) published Women Writers: Intertextual Networks (WWIN), an EXPath web application served out of eXist-db. However, the site was quickly plagued with connection issues: a page might take a long time to load, or the connection would drop, or the site might be entirely inaccessible. In this paper, the author will describe the WWIN’s initial development, analyzing the design decisions and pitfalls. Finally, e will describe the process of making the application much more stable and efficient.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946923","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}