| § Overview | |
| § Compatibility with SGML and XML | |
| § Assertion of semantic equivalence across notational families | |
| § Motivation for a Context-Free Grammar | |
| § The Proposed CFG |
|
§ Overview Principle #3: Eliminate context-dependency as much as practically feasible. |
||
|
|
§ Compatibility with SGML and XML
For example, a data stream might read as follows: <?xml encoding='UTF-16/Private/Neume/1.0'> <MS Source="Oxford::Bodleian::Seldon Supra 27"> . . . followed by a neumed data stream . . . </MS>
Table 1. The semantics of Certainty Factors. If an inference program produces numerical CFs of finer granularity than I have provided for, then the final values must be rounded off before being written. My experience with CF-enabled reasoning programs is that some post-computational rounding of CFs normally does little damage to the meaning of the results. Also, if a particular inference program uses a different scale of values for its CFs (such as 0 to 1,000), the CFs can be re-scaled as needed. The need to reason under uncertainty is the motivation for my including in the data representation a battery of three-valued inference operators (a few of which are original to me). There is a tacit, fourth truth value in this data representation, namely that no CF was specified. Perhaps elsewhere I can treat the entailments of uncertain data for automated reasoning. |
||||||||||||||||||||
|
|
§ Assertion of semantic equivalence across notational families.
Figure 1. Projection of notational families on semantic code space. |
|
|
![]() An equivalence relation equating neume symbols across notational families, except for empty elements; based on 'reasonable' semantic synonymy. |
|
§ Motivation for a Context Free Grammar |
||
|
|
§ The Proposed CFG
|
<chant> :: <tokenone or more>
<token> :: <syllable> <neume stringopt>
<syllable> :: <non-vowel*opt> <vowel> <non-vowelopt; one or more>
<non-vowel> :: {}
<vowel> :: {'a', e', 'i', 'o', 'u', 'y', 'æ', ''}
upper-case(<vowel>)
accented(<vowel>)
<neume string> :: <neume specifier>
<neume specifier> <neume string>
<neume specifier> :: <neume form> <certainty factoropt> <coloropt> <height specifieropt>
<neume form> :: {U+E000, ..., U+F8FF}
<certainty factor> :: {CF} <numeric>
<numeric> :: {NUM} <number> {NULL} {NULL}
<color> :: {BLACK, BROWN, RED, ORANGE, YELLOW, GREEN, BLUE, PURPLE, WHITE, NOCOLORnon-printing}
<height specifier> :: <relative heightopt> <absolute heightopt>
<relative height> :: <baseline> <delta> <certainty factoropt>
<baseline> <staff line> <certainty factoropt>
<baseline> :: {BOTbaseline of text, LSLlowest staff line, PREprevious neume, OUTinserted out-of-line, UNKunknown}
<delta> :: {DYPup a lot, DYUup a little, DYZno change, DYDdown a little, DYNdown a lot}
<staff line> :: {1st line, 1st space, 2nd line, 2nd space, ... 6th line, below staff, above staff}
<absolute height> :: <baseline> <top of neume> <bottom of neumeopt>
<top of neume> :: {TONtop of neume} <numeric> <certainty factor>
<bottom of neume> :: {BONbottom of neume} <numeric> <certainty factor>
|
|
|
| End Notes: | |||
| [1] | Steve Burbeck, "Applications Programming in Smalltalk-80(): How to use Model-View-Controller (MVC)," at http://st-www.cs.uiuc.edu/users/smarch/st-docs/mvc.html, (1992). | ||
| [2] | Trygve Reenskaug, Working with Objects, (Greenwich, CT: Manning, 1996). | ||
| [3] | Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Design Patterns; Elements of Reusable Object-Oriented Software, (Reading, MA: Addison-Wesley, 1995). | ||
|
|