XML 2040

Markup UK London

June 7-9, 2019

Jirka Kosek

red bus json

XML had 21st birthday

  • adult technology

  • make sure that XML will be still around to face middle-age crisis

XML strengths

  • excels in document and publishing scenarios

  • mature ecosystem

    • validation: Schematron, RELAX NG, W3C XML Schema 1.1

    • transformation: XSLT 3.0

    • storage/querying: NXML DB, XQuery 3.0

    • editing: plenty of visual editors

XML failures

  • has been used as a hammer for solving tasks that could be better handled with different tools

  • many XML formats/applications were over-engineered and too complex

    • Web Services, Office Open XML, …​

  • XML is out of fashion

Next 21 years

  • ecosystem maintenance

  • education

  • absorbing and supporting new technologies

  • community

Maintaining ecosystem

  • ecosystem = standards and tools

Standards

  • for now almost no new standards are being developed

  • W3C closed all XML related working groups

  • ISO/IEC is maintaining Schematron and few vocabularies (OOXML, ODF) but activity is low

  • OASIS is maintaining few vocabularies (e.g. DocBook, DITA, UBL)

Do we need SDO?

  • not necessarily

  • technical infrastructure provided by services like GitHub/GitLab is sufficient when combined with mailing list, IRC, …​

  • teleconferences can be now done for free

  • F2F meetings are still important and can be collocated with XML conferences

  • best practices should be kept

    • freely available specifications

    • at least two interoperable implementations

    • support I18N, A11Y

    • IPR?

XML Prague meetings

  • 55 days in 12 years

    • 2019: XProc 2 days

    • 2018: XProc 2 days

    • 2017: XProc 2 days + XSLT 3 days

    • 2016: XProc 1 day + XSLT 3 days

    • 2015: joint XSLT/XQuery 3 days + XSLT 2 days

    • 2014: XSLT 4 days + joint XSLT/XQuery 3 days

    • 2013: XQuery 2 days + XSLT 5 days

    • 2012: XSLT 5 days

    • 2011: XSLT 5 days

    • 2010: XSLT 5 days

    • 2009: SC34 5 days

    • 2008: XSLT 3 days

bribed by tshirt

XML 2020 × XML 2000

XML 2000XML 2020

XSLT 1.0

XSLT 3.0

XPath 1.0

XPath 3.1

DTD & XSD 1.0

XSD 1.1 & RELAX NG

Schematron + XPath 1.0

Schematron + XSLT 2.0

DOM

XOM, JDOM, XDocument

XML stored as CLOB + hammer

Native XML DB + XQuery, XMLType in SQL

Ant, make, sh

XProc 3.0

Tools

  • open-source vs commercial

  • long term maintenance of OSS is difficult

    • many current XML components and tools are 20 years old

    • many tools are not making progress because original authors lost interest in XML

    • volunteer approach can work on smaller projects that need low-volume maintenance

    • anything bigger needs some sort of funding

Education

  • make sure that developers know what XML is and how to process it

  • XML is not always the best solution but should be used when it is best solution

Are developers stupid or unaware?

Apple News Example
{
  ...
  "components": [
        {
            "role": "title",
            "text": "Article title"
        },
        {
            "role": "body",
            "text": "First paragraph."
        },
        {
            "role": "body",
            "text": "Second paragraph."
        }
    ],
   ...
}

XML is out of fashion

  • books

    • many XML books has been published in 2000s

    • no book covering XSLT 3.0

    • only one book about XQuery 3.0

  • universities

    • XML is not mandatory subject in many computer science and software engineering curriculums

  • on-line courses

Action plan

  • show others how XML can help them (where appropriate)

  • integrate XML with a new technologies

  • push for XML 2020

  • long term maintenance of key assets

Community

  • there is very nice community of people around XML

  • regular meetings are important

    • sharing new ideas, learning from others

    • Balisage, Markup UK, XML Prague, ?

  • we shouldn’t be tribe living on isolated island

  • each individual should suggest using XML if he/she sees that wrong technology is used

    • friendly advice and working example work best

  • report bugs in XML tools, improve documentation, …​

Submit, Submit, Submit!

  • without presentations there will be no conferences

  • without meeting together community will deteriorate

Integrate with a reality around us

  • HTML5 is the most used publication format and should be first class citizen

    • HTML5 input should be an alternative for XML in the whole ecosystem

    • same HTML5 parsing algorithm as in browsers should be used

    • it should work by default without need for extensions

      • fn:parse-html() in XPath instead of saxon:parse-html()

      • loadHTML() or parseHTML() in all XML APIs

      • HTML should be allowed as a primary source for all tools (XSLT, validation, …​)

  • integrate JSON as seamlessly as possible

    • XPath 3.1/XSLT 3.0 support JSON processing

    • XProc 3.0 is on the way

  • accept JavaScript

    • currently it is the most widespread langauge

    • yet XML support in JavaScript is poor

Push for XML 2020

  • it is pretty easy to use the latest tools on your own projects

  • enterprise systems tend to be very conservative

    • ask you supplier to provide XSLT 2.0/XSLT 3.0 support

    • relying on XML 2000 tools is one of things that added to a bad XML reputation

Way to XML 2040

  • currently we are fine

  • but in 10, 15, 20 years?

    • maintenance of web sites where standards are hosted

    • hosting for community projects like EXSLT, EXPath

    • maintenance of key software components (security fixes, support for new versions of OS, JDK, …​)

  • XML Foundation

    • non-profit organization might be needed in future

    • organization that outlives individual involvement and interest in XML

    • pay for domains and hosting

    • funding maintenance of key software components

See you at XML Prague

  • February 13–15, 2020

  • CFP and registration will be opened during September