Overlapping Markup

(en.wikipedia.org)

32 points | by ripe 9 hours ago

3 comments

  • tannhaeuser 8 hours ago
    FIY the Wikipedia article rightfully says SGML CONCUR usage is uncommon, but compared to the stated alternatives for overlapping markup, it's basically the only one that is tolerable to use as actual markup language for use with a text editor. This is what it looks like:

        <!doctype d -- element decls for a, b ... -->
        <!doctype e -- element decls for a, x ... -->
        <(d|e)a>
          <(d)b>bla bla <(e)x>bla </(d)b> bla</(e)x>
        </(d|e)a>
    
    where the third "bla" span is marked up with overlap.

    Basically, in case you've ever wondered, SGML CONCUR is the only reason that the element name in end-element tags needs to be specified. In strictly nested markup (XML) it always must refer to the most recently opened start-element tag hence it's redundant. SGML actually has "</>" but it didn't make it into XML.

  • jancsika 1 hour ago
    Music has a lot of these. A fugue subject may traverse the boundaries between two metric groupings, and between two clear sections of the form.

    There are also non-contiguous examples. Smack in the middle of Wagner's Tristan und Isolde you hear the final theme that signals they are about to win the main boss battle. Then one of the NPCs screams right before the final chord. The audience instead hears the danger signal and realizes it was a fake boss and there's another two hours of game play. Only when Isolde beats the final boss at the end do we get the final chord.

    • ramblurr 26 minutes ago
      It also affects the digital markup of music. Music can't be expressed with a tree structure as there is lots of overlap.

      A simple example is a slur. It crosses bar lines. <bar1> ... <slur> ... </bar1> ... </slur> <bar2> uhoh!

      In fact there are many mutually incompatible hierarchies in music engraving.

      It's funny though MusicXML is a popular interchange format, but internally looks nothing like what one would naively expect.

      • afandian 21 minutes ago
        Ditto control flow. It’s tempting to think of repeat bars, DC al fines, codas etc hierarchical structures when in fact they are imperative GOTOs and always have been.
  • bfgeek 30 minutes ago
    HTML parsing supports some of this, e.g:

      text <b>bold <i>bold-italic</b> italic</i>
    • dorianmariecom 9 minutes ago
      that becomes:

          text <b>bold <i>bold-italic</i></b><i> italic</i>