[MEI-L] symbol/symbolDef
TW
zupftom at googlemail.com
Mon Mar 19 11:20:17 CET 2012
2012/3/18 Roland, Perry (pdr4h) <pdr4h at eservices.virginia.edu>:
> Hi, Thomas,
>
> The <symbolDef> element is intended to allow the inclusion of arbitrary symbols/signs. Using <symbolDef>, one can say how a symbol should be drawn in terms of its graphic components; that is, text, curves, and lines. After defining the symbol's coordinate space (using @ulx, @uly, @lrx, and @lry), the <anchoredText>, <curve>, and <line> elements (with appropriate x, y, x2, and y2 attributes) can be used to construct the symbol.
>
> The <symbol> element can then be used to make reference to this user-defined sign.
>
> For example, one could define a new sign within <scoreDef> --
>
> <scoreDef>
> <symbolTable>
> <symbolDef xml:id="mySign" ulx="0" uly="0" lrx="20" lry="20">
> <line x="10" y="0" x2="10" y2="10"/>
> <line x="10" y="10" x2="20" y2="10"/>
> <line x="20" y="10" x2="20" y2="20"/>
> </symbolDef>
> </symbolTable>
> </scoreDef>
>
> then later in the document data invoke this symbol --
>
> <measure>
> <staff n="1">
> <layer>
> <note xml:id="n1" .../>
> ...
> </layer>
> </staff>
> <symbol ref="mySign"/>
> </measure>
>
> <symbolDef> may contain references to other <symbol> elements. If a line of a certain length and style is a common component, it can be defined once and re-used.
>
> The symbol can be placed relative to elements in the notation (using some combination of ho, vo , and to attributes) --
>
> <symbol startid="n1" ho="5"/>
>
> (This example indicates the symbol is placed at the same vertical position as, but 5 half-step units above, n1.)
>
> <symbol> and <symbolDef> cannot be used to point to a feature in a facsimile image because they have no @facs attribute. This was done purposefully in order to encourage the use of elements of the notation; that is, <note>, <chord>, <staff>, etc., for this purpose.
>
> <annot> can be used to record commentary on symbols just as it can with other elements of notation. It's technically possible make a <symbolDef> element a target (using @plist), but I think <symbol> is the proper target. In other words, <symbol> is a generic placeholder for an "unknown" notational sign. <symbolDef> is "just" the instructions for drawing it.
>
I see, so the module is meant for rendering purposes only. Then
<symbol> inside <symbolDef> is intended for "composite" symbols,
right? <curve> and <line> elements would obviously describe the
strokes to create a symbol. I think I can make up some examples for
the guidelines. But for defining decent symbols, <curve> and <line>
seem pretty crude to me, especially because they can only describe
lines and not filled areas.
I'll think about this.
Thomas
More information about the mei-l
mailing list