1 1/7/91 forum transaction specifiers
2
3 Transaction specifiers are used by the list, print, write, delete,
4 retrieve, reset, and reply requests to refer to transactions in a
5 meeting. They are composed of transaction numbers, keywords, the
6 arithmetic operators + and -, person_ids, control argument selections,
7 and qedx-type regular expressions. In addition, the keywords may be
8 used as requests and active requests to return transaction numbers.
9
10
11 Specifier Classes:
12 Transaction specifiers are divided up into four classes: transaction
13 numbers and keywords, regular expressions, person_ids, and date ranges.
14 In addition, there are control arguments which additionally restrict
15 which transactions are selected. If specifiers for more than one class
16 are present, a transaction must satisfy at least one specifier in each
17 class. For instance, the request line:
18
19 list 100:last -from Pattin -after 10/5/82 -subject /FOO/
20
21 will select all transactions numbered higher than 100 which were
22 entered by the participant Pattin after 10/5/82 which contain the
23 string "FOO" in the subject.
24
25
26 Transaction numbers and keywords:
27 Transaction numbers are integers asssigned by forum when it
28 enters a transaction into the proceedings. Transactions may be
29 linked together through the use of the 'reply' request and may
30 be addressed using this linking information. There are several
31 keywords which can be used to refer to transactions symbolically:
32
33
34 unprocessed, u
35 refers to the unprocessed transaction.
36 first, f
37 refers to the first transaction in the proceedings.
38 last, l
39 refers to the last transaction in the proceedings.
40 next, n
41 refers to the transaction immediately after the current
42 transaction.
43 previous, p
44 refers to the transaction immediately before the current
45 transaction.
46 current, c
47 refers to the transaction last listed, printed, written,
48 or reset to.
49
50
51 highest, last_seen
52 refers to the highest-numbered transaction printed or written.
53 all, a
54 refers to all transactions equivalent to first:last.
55 firstref, fref
56 refers to the first transaction in the current chain of
57 transactions.
58 lastref, lref
59 refers to the last transaction in the current chain of
60 transactions.
61 nextref, nref
62 refers to the next transaction in the current chain of
63 transactions.
64
65
66 previousref, pref
67 refers to the previous transaction in the current chain of
68 transactions.
69 beforeref, bref
70 refers to all previous transactions in the current transaction
71 chain.
72 restref, rref
73 refers to all remaining transactions in the current transaction
74 chain.
75 allref, aref
76 refers to all transactions in the current chain of transactions.
77
78
79 For the following group, 'seen' means that the transaction has been
80 printed, written, or explicitly marked as seen by the switch_on request.
81
82 seen
83 refers to all transactions marked as having been seen.
84 first_seen, fs
85 refers to the first transaction marked as having been seen.
86 last_seen
87 refers to the highest-numbered transaction marked as having
88 been seen.
89 next_seen, ns
90 refers to the next transaction after the current one which is
91 marked as seen.
92 previous_seen, ps
93 refers to the first transaction before the current one which is
94 marked as seen.
95
96
97 new
98 refers to transactions entered after your last_seen transaction
99 which were not entered by you.
100 unseen
101 refers to all transactions not marked as having been seen.
102 first_unseen, fu
103 refers to the first transaction not marked as having been seen.
104 last_unseen, lu
105 refers to the highest-numbered transaction not marked as having
106 been seen.
107 next_unseen, nu
108 refers to the next transaction after the current one which is
109 not marked as seen.
110 previous_unseen, pu
111 refers to the first transaction before the current one which is
112 not marked as seen.
113
114
115 There is also a special transaction specifier "chairman_message"
116 "cmsg" which may be used with the "print", "write", and "delete"
117 requests to denote the chairman's greeting message.
118
119 All keywords except for 'unproc', 'all', 'new', 'restref', 'allref',
120 'seen', and 'unseen' may be used in place of actual transaction
121 numbers, and may be combined with either of the simple operators '+' or
122 '-', as in 'l-4' 'nref+1' and so on. Leading '+' and '-' are used to
123 reference from the current transaction, '-4' is the same as
124 'current-4'. A range of transactions may be specified by two
125 transaction numbers or keywords separated by a colon :, as in
126 'first:last', 'c-3:nref' and so on.
127
128
129 Usage of keywords as requests:
130 All of the keywords except for 'unprocessed' and 'chairman_message' may
131 be used as requests and active requests. They return a list of the
132 transaction numbers that the keyword represents. All of the keywords
133 that use reference chains and the keywords 'next', 'previous',
134 'next_seen', 'previous_seen', 'next_unseen', and 'previous_unseen' may
135 be given an argument to use as the 'current' transaction. Thus, 'aref
136 4' would return a list of all transactions which reference transaction
137 4.
138
139
140 Regular expressions:
141 Simple regular expressions are character strings enclosed in slashes
142 /. The control arguments '-subject -sj' and '-text -tx' may be
143 given immediately before a regexp. They specify that matching is to be
144 done only against the subject or text respectively. By default,
145 matching is done against both the subject and the text. For example:
146
147 /FORTRAN/
148
149 specifies all transactions which contain the string 'FORTRAN'. The
150 null regexp "//" signifies that last regular expression used.
151
152 Because of the syntax of the request language, regular expressions
153 which contain special characters such as space, quote, and parentheses
154 must be quoted.
155
156
157 Person_ids:
158 The -from person_id -fm personid can be supplied in order to indicate
159 that only transactions authored by the person identified by the
160 person_id be selected. The selection:
161
162 -from York
163
164 selects all transactions entered by the participant York.
165
166
167 Date/Time Selection:
168 The following control arguments are available to select transactions
169 based on the date_time that the transaction was entered. The strings
170 DT, DT1, and DT2 are standard Multics date_time strings acceptable to
171 the convert_date_to_binary_ subroutine. Type ".. help
172 date_time_strings.gi" for information on date_time strings.
173
174 -after DT, -af DT
175 selects all transactions entered on or after the the date specified.
176 The time of day is ignored.
177 -after_time DT, -aft DT
178 selects all transactions entered after the date_time specified.
179
180
181 -before DT, -be DT
182 selects all transactions entered before the date specified. The time
183 of day is ignored.
184 -before_time DT, -bet DT
185 selects all transactions entered before the date_time specified.
186 -between DT1 DT2, -bt DT1 DT2
187 selects all transactions entered between the dates specified,
188 inclusive. The times of day are ignored.
189 -between_time DT1 DT2, -btt DT1 DT2
190 selects all transactions entered between the date_times specified,
191 inclusive.
192 -date DT, -dt DT
193 selects all transactions entered on the day specified.
194
195
196 Notes:
197 Several requests will operate on deleted transactions when the
198 -include_deleted or -only_deleted control arguments are used. Forum
199 considers only those transactions which the user can read, so for
200 participants other than the chairman, only deleted transactions entered
201 by that participant are considered.
202
203
204 Care must be exercised when using the -only_deleted control argument
205 in combination with specifier keywords. The keywords are evaluated
206 among the deleted transaction only, thus
207
208 last -only_deleted
209
210 selects the last deleted transaction that the user may read, but
211
212 last-30:last -only_deleted
213
214 selects all deleted transactions from 30 transactions before tha last
215 deleted transaction. It does not select all deleted transactions from
216 the last 30 transactions in the meeting.
217
218 Type 'help trans_specs_ex' for examples of transaction specifiers.