Markup UK 2021 Proceedings


Table of Contents

Encouraging Tag Set Branching without Creating a Briar Patch
Customizing Tag Sets
A Little History (over simplified)
Generic Markup
Bespoke Vocabularies
Public Vocabularies
Need for Customization Soon Obvious
Vocabularies Build In Customization Tools
Symposium on Markup Vocabulary Customization
Debates about Value of Customization
Customization Mechanisms Vary
Customizations
Experience with JATS Customizations
Many Customizations by Groups of Users
User Expectations for a Customization
User Experience
JATS Compatibility Model
JATS Compatibility Model in 2 Parts
Design Principles
Respect the Semantics
Prevent Semantic Mismatch
Linking Direction
Section Model
Common Section Models
Subsetting
JATS: Subsetting Always Allowed
Compatibility Properties in JATS Guidelines
Don’t Munge Elements and Attributes
Section-like
Tagset-Specific Constructs
Alternatives
Display Alternatives Example
Whitespace Handling in XML Documents
Maintain Whitespace Type of Source Vocabulary
ID IDREF
Property Catalog in JATS Guidelines
Properties not Relevant to Compatibility (as defined)
Social Behaviour
Metadata vs Data
Framework or superstructure
Recursion
These Guidelines are not Universal
JATS users can Ignore Guidelines
Other Groups
Ignore and Find Yourself in a Briar Patch
Note: the Briar Patch in the Talk Title
Questions? Comments? Suggestions?
What’s in a Schematron?
Introduction
A preliminary classification of Schematron concepts
Rule based validation
Summary
Shortcomings
Corrections
Schema composition
Summary
Shortcomings
Corrections
Reporting
Summary
Shortcomings
Proposed corrections
From ISO Schematron to Open Schematron?
Bibliography
XSLTForms for the ‘20s
XSLTForms since 2009
Browsers have evolved
HTML5 notation for XForms elements and CSS styling
XQuery/XPath parser in Javascript
XQueryX 3.1 to Javascript transpiler
XForms 2.0 support in XSLTForms
Bibliography
<transpile from="Java" to="C#" via="XML" with="XSLT"/>
Introduction
Preliminaries
Examples of Converted Code
Architecture of the Converter
Difficulties
Dependencies
Iterators and Iterables
Inner classes
Overriding, Covariance, Contravariance
Generics
Lambda Expressions and Delegates
Exceptions
XSLT Considerations
Conclusions
Comprehensible XML
Introduction
About the author
Why bother?
What can we do?
Convention yourself
The rhythm of the code
Names, names, names (and declarations)
Comments? What comments?
It’s the process…
Debunking some obstacles
Further reading?
How Much Tag Set Documentation is Needed?
Introduction
What is an XML Tag Set?
The Documentation Cliches
Planning Considerations for documenting tag sets
Scope of the documentation
Purpose
Management, Governance and Support
Audience
JATS Documentation
Why talk JATS documentation?
Diving into the JATS Documentation
Navigation
The NAVBAR
Opening and closing subsections on a page
Cross references
Top-level element in the Schema
Elements Pages
Usage/Remarks
Attributes on an element page
Models and Context
Tagged Samples
Other sections on the Element Pages
Attribute Pages
Finding Information Pages
Stupid navigation tricks
The rest of the Tag Library
Getting Started (for the casual user and newbies)
Introductions
Hierarchy Diagrams
For the Frequent user
Multiple labeled samples per element
Full article samples
Common Tagging Practice essays (almost tutorials)
Technical Details
Inconvenient truths and lessons learned
Aside: Rome was not built in a day
Discussion Topics
JATS-specific Questions
Questions about samples
General Documentation Questions
And in conclusion...
Other Resources to Support JATS Users
JATS-List and the Archives of JATS-List
JATS4R (JATS for Reuse)
JATS4R Recommendations
JATS4R Validation Tool
JATS-Con and the JATS-Con Proceedings
NISO site for comments/suggestions
Local Guidelines
References
2021 The Future of Distributed Markup Systems or ‘Help my package has become too large!’
Introduction
It all started with a declaration
The Building Blocks
Recap of the eArchiving Building Block
Standards, de facto standards, and specifications
The eArchiving specifications and its different faces
Defining a CITS with the help of experts
A database specification
Other “big” information types
How do we facilitate oversized information packages?
Where do I find my packages?
An improved diff3 format using XML: diff3x
Introduction and Background
Developing an XML syntax for diff3x
Showing Non-conflicting Changes
Showing linked changes to JSON Structure in diff3x
Representing JSON Separator Change in diff3x
Preserving well-formed tree structure in diff3x
Representing XML Element Tag Change in diff3x
Representing XML Attribute Change in diff3x
Nested Changes
Should an XML Payload be represented as XML or text?
Saving Selected Options
Comparing diff3 format with diff3x
Future work
Conclusions
References
On the Design of a Self-Referential Tutorial
Tutorials
XForms Tutorials
Content
Structure
Navigation
Chapters
Exercises
Server
Experience
Conclusion
Bibliography
“FYI we’re not looking to go to print”
Markup UK look-and-feel
Not going to print
Front matter
Papers
Accessibility
DocBook
Titles
Other customisations
Syntax highlighting
Authoring
Current status
Bibliography
CSS From XSLT
Introduction
Rules and Media
The CSS Output
The stream attribute
Phases of Operation
Phase One: De-cluttering the Output
Phase Two: Writing Out the CSS
Pure XSLT Implementation
Java Extension for Saxon
Discussion: Deployment
Limitations
Future Work
Availability
Conclusions

List of Figures

1. schema-a.sch
2. schema-b.sch
3. Multi-lingual schema suggested by Annex G of ISO/IEC 19757-3:2020
4. Multi-lingual schema, improved
1. The spectacular explosion of the Ariane 5 flight in 1996, caused by a software bug…
1. Archiving and Interchange (Green) Tag Library
2. Journal Publishing (Blue) Tag Library
3. Article Authoring (Pumpkin) Tag Library
4. JATS root element
5. STS has two possible root elements
6. Usage/Remarks for <abstract>
7. Usage Remarks for <year>
8. Usage Remarks for <article-id>
9. Attributes (and pseudo-attributes) for the <article> element
10. Attributes for the <supplementary-material> element
11. Where may <abstract> be used?
12. Content model of <answer-set>
13. Tagged samples for <article>
14. Tagged samples for <affiliation>
15. Attribute page for @object-id
16. Attribute values for @assigning-authority
17. @toggle is an attribute with some #FIXED values:
18. Other variations in attribute values (@rid)
19. Tagged sample for @journal-id
20. How do I tag the article author in JATS?
21. Why doesn‘t JATS have a quote element?
22. Context Table entry for <disp-quote>
23. Context Table entry for <boxed-text> and <break>
24. Element Page entry for <break>
25. Getting Started Section
26. Introduction to the Elements Pages
27. Finding the hierarchy diagrams
28. The hierarchy diagram for Article (<article>)
29. The hierarchy diagram for Back Matter (<back>)
30. The hierarchy diagram for Definition List (<def-list>)
31. Samples for <institution-id>
32. The Full Article Sample section
33. Document shown as PDF
34. Document shown as XML
35. Document shown as syntax-colored and indented XML
36. Subjects covered in Common Tagging Practice
37. Selections from Tagging Keywords essay
38. Essays included in Tagging References
39. Citing Data section overview
40. Content of the Technical Details Section
41. Portion of the Parameter Entity section
42. A Parameter Entity Page
43. Citing Data section overview
44. Subsections within Modifying This Tag Set
1. The building block layers.
2. The eArchiving building block and its services and specifications.
3. The visualization of the Metadata Universe by Jenn Riley. (The recommendation is to look on-line)
4. The eArchiving building block and the different specifications building up a Information Package (2021)
5. Marisa Merino Hernandes illustrated the eHealth1 specification in the following way.
1. A simplified partial dependency graph
1. Website 'look-and-feel' applied to proceedings
2. programlisting callouts use Markup UK red
3. List markers reflect the Markup UK logo
4. Original front-matter
5. Restyled front matter
6. Original paper
7. Restyled paper
8. Tweet about justified text
9. Edit in Oxygen and preview in AH Formatter GUI

List of Tables

1. Classification of Schematron concepts
2. Query language environment for XSLT (proposed additions marked with an asterisk)
1. Three identical files
2. Mismatched sequences
3. JSON structural change
4. JSON array value change
5. XML tag change
6. XML Attribute value change
7. XML nested data example
8. XML data example
9. diff3 and diff3x representations
10. Characteristics of diff3 and diff3x