+ <groups> := <group> [ ";" <group> ]*<br>
+ <group> := <attribute> [ "," <attribute> ]*<br>
+ <attribute> := <value> "as" <path><br>
+ <br>
+ Examples:<br>
+ the query <b>add "1" as "a", "2" as "b" in subj "A"</b> gives the result
+ <b>"A" attr {"a"="1"; "b"="2"}</b> while<br>
+ the query <b>add "1" as "a"; "2" as "b" in subj "A"</b> gives the result
+ <b>"A" attr {"a"="1"}, {"b"="2"}</b>.<br>
+ </blockquote>
+
+ <ul>
+ <li>The new <b>align</b> operator takes an integer <i>i</i> (represented
+ as a string), a multiple string value <i>v</i> and returns the same <i>v</i>
+ where each string with length <i>n < i</i> is prefixed with <i>i - n</i>
+ spaces. The syntax of the add operator is:</li>
+
+ </ul>
+
+ <blockquote><value> := "align" <string> "in" <value><br>
+ <br>
+ This operators aligns strings containing numbers so that their alphabetic
+ order agrees with their numeric order.<br>
+ </blockquote>
+
+ <ul>
+ <li>The <b>intersect</b> operator now intersects the attribute
+groups of the matching subject strings set-theoretically rather than making
+their "Cartesian product". This semantics reduces the computational costs
+and makes intersection the dual of union.</li>
+
+ </ul>
+
+ <ul>
+ <li>The <b>property</b> operator now accepts more than one <b>isfalse</b>
+ clause to increase the complexity of the constraint condition used to filter
+ the raw query results. This feature is exploited in the queries produced
+by the <a href="implementation.html">HELM query generator</a>.</li>
+
+ </ul>
+ <br>
+ <hr width="100%" size="2">
+ <div align="center">
+ <h3>The PostgreSQL database map:</h3>
+ </div>
+The <b>PostgreSQL database map</b> is a file describing how the MathQL-1
+interpreter must interact with the underlying PostgreSQL database, when it
+is run in Postgres mode. Currently this file contains the following information:<br>
+ <ul>
+ <li>the <i>database connection string</i> to be used when the interpreter
+opens a connection with the database;</li>
+ </ul>
+ <ul>
+ <li>the <i>map</i> describing the correspondence between the metadata
+access paths used by the <i>property</i> operator and the fields of the database
+tables.</li>
+ </ul>
+The format of the file is textual and line oriented, but a corresponding
+XML syntax will be provided soon.<br>
+The first line must contain the database connection string and the subsequent
+lines contain the map with the following syntax:<br>
+ <ul>
+ <li>blank lines: ignored (used for separation);</li>
+ </ul>
+ <ul>
+ <li>lines starting with a # followed by a space: ignored (used for
+comments);<br>
+ </li>
+ </ul>
+ <ul>
+ <li><table_name> <field_name> "<-"
+[ <path_component> ]*<br>
+ </li>
+ </ul>
+ <blockquote>the information about the metadata denoted by the given
+path is found in the given field of the given table in the database. For
+example the line:<br>
+ <br>
+refobj h_occurrence <- refObj h:occurrence<br>