Maxwell (1981) outlined three separate domains for encoding music notation in a computer: .
This model was later extended by the Standard Music Description Language (SMDL), an encoding system that was expressed using the Standard General Markup Language (SGML) (SGML was a precursor to XML.) SMDL built upon the Maxwell’s model and extended it to define a representation model consisting of four domains for music notation representation: domain includes the musical content or structure including pitches, time values, articulations, dynamics, and all other elements—defined as the symbols that communicate the composer’s intentions.
Why are we still talking about the “descriptive/procedural” distinction? While these advantages are demonstrably real, nonetheless the evolution of XML technologies, especially in such applications of XML as XSLFO, SVG, SMIL, or even XSLT, shows that the opposite approach to designing a markup language also is playing an important role.
The conception continues to be a focus, because it continues to have explanatory power. Sometimes, it is clear, a procedural language is exactly what we want.
That is, are we talking about the proposed, implied or asserted semantics of an abstract model for a document type (classically, as formalized by a DTD); or are we making generalizations about the tags in use, that is the (implied or effective) semantics of element and attribute types as instantiated in documents?
It matters which one of these we are describing, not simply because they may be different (in the ideal case they should perhaps not be), but because the very fact that the two things (DTD and document) might possibly end up “meaning” something different in practice, raises questions about the relation between model and instance.
The addition of tags and attributes lends extra weight to the data payload, which can significantly affect the performance of applications in constrained environments like mobile and embedded systems.
API designers these days tend to land on one of two formats for exchanging data between their servers and client developers - XML or JSON.
Though a number of different formats for data have been designed and promoted over the years, XML's built in validation properties and JSON's agility have helped both formats emerge as leaders in the API space.
Yet at the same time, it proves to require quite a bit of refinement when we look at the incredibly broad spectrum of different markup languages, and markup language applications, that are now proliferating. At the Extreme 2000 conference on markup technologies here in Montreal, Allen Renear picked up the task of scrutinizing the opposition, proposing an alternative framework for which he introduced terms from linguistics and speech-act theory.
Apart from its format, to what do we refer to determine what “content” is; how do we specify it, and how do we go about designing tags for it? The traditional arguments around the “descriptive/procedural” distinction have detailed a number of advantages to descriptive markup languages (also loosely identified as “generic” languages) over their procedural cousins: scalability, reusability of data, and so forth.
In the real world (not to put too fine a point on it), sometimes users “mean” tags in ways not intended by designers, and this fact bears directly on the problem because it indicates how a model's “description” of a document type may not be exactly what a document's own tags “describe” (or may be purported to describe, depending on who you talk to).