{"title":"Pulse, Parse, and Ponder: Using Invisible XML to Dissect a Scientific Domain Specific Language.","authors":"Joseph Michael Courtney, Michael Robert Gryk","doi":"10.4242/balisagevol29.courtney01","DOIUrl":"10.4242/balisagevol29.courtney01","url":null,"abstract":"<p><p>This paper explores the application of Invisible XML (iXML) to parse the Bruker Pulse Programming Language, a domain specific language for controlling Nuclear Magnetic Resonance (NMR) spectrometers. Making the specialized file formats and programming languages used in many scientific fields more accessible and interpretable could help to improve scientific reproducibility and utility. The development of a grammar for Bruker pulse code, simultaneously facilitates easier and more automated comparison and analysis of NMR experiments and serves as a test bed for the relatively young iXML approach to parsing. We discuss the challenges faced and solutions developed for applying iXML to this problem.</p>","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"29 ","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC12425133/pdf/","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"145066811","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"X(Q)uery and XSL(T) 4 Community Group (QT4 CG): Status Update","authors":"Christian Grün","doi":"10.4242/balisagevol28.grun01","DOIUrl":"https://doi.org/10.4242/balisagevol28.grun01","url":null,"abstract":"Balisage 2023 included a short-subject “Open Microphone” session, during which conference attendees were invited give 2-10 minute presentations on any topic relevant to the conference, including specification updates, new tool announcements, and demonstrations. Christian Grün provided an update on the W3C QT4 Community Group’s efforts, including draft 4.0 versions for XSLT, XPath, and XQuery extensions. The group’s goals include increased functionality as well as the addition of common vendor-specific extensions and popular features from other programming languages.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"135774738","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":"Human Readability of Data Files.","authors":"Michael Robert Gryk","doi":"10.4242/balisagevol27.gryk01","DOIUrl":"10.4242/balisagevol27.gryk01","url":null,"abstract":"<p><p>In this era of big data and FAIR data, data formats must be machine interpretable. XML, among other standards, satisfies this requirement. Yet many standardization initiatives cite human readability as a second, key property in data format development. Examples include the development of STAR in the field of structural biology, W3C PROV for provenance, and even the continuing development of XML. This begs the question(s), what is meant by human readability and can this property be measured for a given data format or compared between competing standards? The broad topic of readability is considered with attention to the various aspects of written text which either foster or counter readability. Drawing on efforts in the educational system, a metric is proposed for estimating the relative human readability of structured data within an archival file format. Comparison is made between the same data represented in various formats, including JSON and XML, to help judge whether these standards have accomplished their simultaneous goals of machine interpretability and human readability.</p>","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC11034916/pdf/","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70945849","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Deconstructing the STAR File Format.","authors":"Michael R Gryk","doi":"10.4242/balisagevol26.gryk01","DOIUrl":"https://doi.org/10.4242/balisagevol26.gryk01","url":null,"abstract":"<p><p>The STAR (Self-defining Text Archival and Retrieval) file format for electronic data transfer and archiving was introduced in 1991 (Hall, 1991). This format was designed to be extensible and flexible to handle all types of data in a machine independent manner. As a file format, STAR encompasses both a model (structure) for the information contained within the file as well as a syntax for defining the layout of the information within the file (serialization). This manuscript reports on an attempt to decompose the model from the layout and in doing so, both highlight differences between variants and versions of STAR as well as propose a simple alternate serialization of the STAR model in XML.</p>","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"26 ","pages":""},"PeriodicalIF":0.0,"publicationDate":"2021-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9610025/pdf/nihms-1780200.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"40655393","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Integrating Top-down and Bottom-up Cybersecurity Guidance using XML.","authors":"Joshua Lubell","doi":"10.4242/BalisageVol17.Lubell01","DOIUrl":"10.4242/BalisageVol17.Lubell01","url":null,"abstract":"<p><p>This paper describes a markup-based approach for synthesizing disparate information sources and discusses a software implementation of the approach. The implementation makes it easier for people to use two complementary, but differently structured, guidance specifications together: the (top-down) Cybersecurity Framework and the (bottom-up) National Institute of Standards and Technology Special Publication 800-53 security control catalog. An example scenario demonstrates how the software implementation can help a security professional select the appropriate safeguards for restricting unauthorized access to an Industrial Control System. The implementation and example show the benefits of this approach and suggest its potential application to disciplines other than cybersecurity.</p>","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"17 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2016-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5082750/pdf/","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70945632","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"MML: Multi Markup Language — When one markup language just isn’t enough","authors":"David A. Lee","doi":"10.4242/balisagevol15.lee01","DOIUrl":"https://doi.org/10.4242/balisagevol15.lee01","url":null,"abstract":"The fundamental arguments in the “XML” vs “JSON” “Debate/War” are irrelevant. True, XML can be extremely complicated and bloated for what should be a simple task. True, JSON lacks native support for mixed content, complex types, and is difficult to hand edit. In complex environments it is necessary to exploit the advantages of each format and to mitigate the weaknesses of each. Using as an example a multi-year ongoing project of authoring and managing the lifecycle of a particular document type, I will demonstrate how very minor differences in markup style, ironically differences intentional designed into JSON specifically as a counterpoint to XML “complexity” make a huge impact on the ability of software to assist in the editing process, and equally for humans to accurately author and modify even small documents. These little things — added together — make even “well formedness” validation impossible, useless, or worse — a valid document that is structurally different than what it appears. I propose to solve this problem with “MML”; a hybrid approach for multi markup documents. “MML” allows multiple “Native Markup” variants of the same document to co-exist. Simple transformations can produce variants of the document suitable for different tooling including JSON and XML formats, each of which is syntactically valid for the specific markup language. This is critical for early error detection and integration with existing tools.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"15 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2015-08-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"147879657","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":"JATSPack and JATSPAN, a packaging format and infrastructure for the NLM/NISO Journal Archiving Tag Suite (JATS).","authors":"Chris Maloney","doi":"10.4242/BalisageVol7.Maloney01","DOIUrl":"10.4242/BalisageVol7.Maloney01","url":null,"abstract":"<p><p>The NISO Journal Archiving Tag Suite (JATS, formerly known as 'the NLM DTD') is a common format used in publication of scientific literature. JATSPack, a proposal based on the new EXPath Packaging System, provides a way to package schema customizations and software libraries associated with any of the JATS schemas, thus making it easier for developers to distribute JATS-related resources and easier for users to acquire, install, and use them. JATSPAN (the JATSPack Archive Network) is a website allowing users to share and collaborate on JATSPacks. A client-side command line tool, jatspan, interacts with the site and eases the task of maintaining local repositories of JATSPacks.</p>","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"7 ","pages":""},"PeriodicalIF":0.0,"publicationDate":"2011-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3159421/pdf/nihms-311352.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"29954187","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Gunilla Finrow, Don Peting, Rob Harbour, Mark Preiss, Nancy Conard, Larry Kwarsick, Larry Cort, Mimi Sheridan, Rick Castellano, Peter Keyes
{"title":"Designing for change","authors":"Gunilla Finrow, Don Peting, Rob Harbour, Mark Preiss, Nancy Conard, Larry Kwarsick, Larry Cort, Mimi Sheridan, Rick Castellano, Peter Keyes","doi":"10.4242/balisagevol27.sperberg-mcqueen01","DOIUrl":"https://doi.org/10.4242/balisagevol27.sperberg-mcqueen01","url":null,"abstract":"Invisible XML (ixml) is a method for treating non-XML documents as if they were XML. The 1.0 specification for Invisible XML was announced in June of this year. No technology foresees all of its use cases, especially in 1.0. How can ixml allow experimentation, and channel experimentation in useful ways, to allow ideas to be expressed in ixml grammars that go beyond what is foreseen, without compromising interoperability or the value of strict conformance to the specification? Many programming languages (C, JavaScript, Pascal, XQuery, etc.) address this question with pragmas. A pragma is a semi-formal way to instruct a processor/compiler/interpreter how it should operate. Typical pragmas extend a specification but are not a part of it. We propose pragmas as an optional add-on to ixml to allow implementation of non-standardized functionality in a way that does not interfere with standard ixml processing. We describe our general framework for pragmas, some specific pragmas (to illustrate how pragmas can be used), and a few pragmatic implementations.","PeriodicalId":89326,"journal":{"name":"Balisage series on markup technologies","volume":"1 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2011-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"70946485","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":"JATS Superhighway","authors":"Jeffrey Beck","doi":"10.4242/balisagevol27.beck01","DOIUrl":"https://doi.org/10.4242/balisagevol27.beck01","url":null,"abstract":"Tag sets change over time. Tag set designers manage a complex system where everything is connected to everything else and new user requirements continue to surface. Tag set users manage complex systems to create, manage, and archive documents. Users strongly resist backward-incompatible change, so as JATS has grown we have made compromises in the design to meet new requirements while maintaining backward-compatability. We think it is time to consolidate redundant models, remove deprecated items, and generally reduce confusion. Can we guide users towards a new, backwards incompatible version in a way that they'll find palatable? We have a plan. We're going to extend the JATS 1.x schema so that it contains the new, 2.0 models in addition to the old models. Then we'll make an \"Onramp\" subset of 1.x that has the deprecated items removed. Documents valid against the onramp subset of 1.x will also be valid against 2.0.","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":"70945671","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":"On Translating the TEI","authors":"Hugh Cayless","doi":"10.4242/balisagevol27.cayless01","DOIUrl":"https://doi.org/10.4242/balisagevol27.cayless01","url":null,"abstract":"Few tagsets are more robustly committed to supporting international and multilingual texts than the TEI. It seems only fitting that the TEI Guidelines, the principal documentation of the TEI, written in the TEI, should be available in a wide variety of languages. Several attempts have been made, but the practical difficulties of keeping translations up-to-date has caused them to languish. In 2020, the TEI Consortium and Duke University received a grant to begin reviving the TEI’s internationalization project. We hope the addition of a browser-based GUI for translating the TEI Specification pages into target languages will help make this ambitious project a success.","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":"70945803","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}