comparison annotate.xml @ 63:9cf99d513197

intro complete
author Henry S. Thompson <ht@markup.co.uk>
date Mon, 12 Jun 2017 13:40:56 +0200
parents e46b3efbe845
children 823ac978f4ab
comparison
equal deleted inserted replaced
62:e46b3efbe845 63:9cf99d513197
15 right-button menu for selected regions, which will pop up region-appropriate 15 right-button menu for selected regions, which will pop up region-appropriate
16 menus.</p> 16 menus.</p>
17 </div> 17 </div>
18 <div> 18 <div>
19 <title>Top-level menus</title> 19 <title>Top-level menus</title>
20 <note>If the selection is a single cell I guess we try popping up a selection type menu,
21 with choices 'Row', 'Column', 'Matrix' and 'None' (the latter resulting in <code>_Nnnn</code>).</note>
20 <p>Right-clicking 'Annotate' when over a selected range will create a new 22 <p>Right-clicking 'Annotate' when over a selected range will create a new
21 defined name of the form <code>_Xnnn</code>, where <code>X</code> is one of <code>R</code>, 23 defined name of the form <code>_Xnnn</code>, where <code>X</code> is one of <code>R</code>,
22 <code>C</code> or <code>M</code> for <name>r</name>ows (horizontal range 24 <code>C</code> or <code>M</code> for <name>r</name>ows (horizontal range
23 selection), <name>c</name>olumns (vertical range selection) or 25 selection), <name>c</name>olumns (vertical range selection) or
24 <name>m</name>atrix (for two-dimensional range selection) respectively, and 26 <name>m</name>atrix (for two-dimensional range selection) respectively, and
25 <code>nnn</code> is a serial number for the relevant selection type.</p> 27 <code>nnn</code> is a serial number for the relevant selection type.</p>
26 <note>If the selection is a single cell I guess we try popping up a selection type menu, 28 <p>The comment field (attribute in the XML) of the defined name should contain a
27 with choices 'Row', 'Column', 'Matrix' and 'None' (the latter resulting in <code>_Nnnn</code>).</note> 29 feature-value dictionary, represented in JSON/Python style, that is, using the
30 following BNF</p>:
31 <display><code>fvd := '{' ( fvp ( ',' fvp )* )? '}'
32 fvp := key ':' value
33 key := string
34 value := string | number | fvp | array
35 string := '"' char* '"'
36 array := '[' ( value ( ',' value )* )? ']'</code></display>
37 <p>with whitespace ignored, 'number' being the usual integer or decimal
38 representation and 'char' being ASCII-only (?).</p>
39 <p>If possible, the selected range should appear as the value of the new
40 name <emph>without</emph> single-quotes.</p>
41 <p>Some top-level features should be computed, others require annotator
42 decision. Some features are unique to a particular selection type, others are
43 shared across all or some types.</p>
44 <p>Accordingly, in order for the annotator to supply the required
45 information, a form should pop up with all the features appropriate to the
46 selection type. Literal or array-valued form fields will just require a value
47 menu (allowing multiple selection in the array-valued case), but features with
48 dictionary values will require cascading sub-forms.</p>
49 <p>The sections below tabulate the annotator-supplied features and their
50 possible values.</p>
28 </div> 51 </div>
29 </body> 52 </body>
30 </doc> 53 </doc>