<html>
<head>
<title>MathQL</title>
-
+
<meta http-equiv="content-type"
content="text/html; charset=ISO-8859-1">
-
+
<meta name="author" content="Ferruccio Guidi">
-
+
<meta name="description" content="MathQL Home Page">
</head>
<body>
-
+
<h1 align="center">MathQL-1</h1>
-
+
<h2 align="center">A query language for RDF metadata</h2>
-
+
<table cellpadding="10" cellspacing="2" border="0" width="95%"
bgcolor="#ffffff">
- <tbody>
- <tr>
- <td valign="top" align="left">
-
+ <tbody>
+ <tr>
+ <td valign="top" align="left">
+
<ul>
- <li><a href="index.html">Forward</a><br>
- </li>
-
+ <li><a href="index.html">Forward</a><br>
+ </li>
+
</ul>
-
+
<ul>
- <li>Features</li>
-
+ <li>Features</li>
+
</ul>
-
+
+ <ul>
+ <li><a href="whatsnew.html">What's new</a></li>
+
+ </ul>
+
+ <ul>
+ <li><a href="documentation.html">Documentation</a></li>
+
+ </ul>
+
<ul>
- <li><a href="documentation.html">Documentation</a></li>
+ <li><a href="implementation.html">Implementation</a><br>
+ </li>
</ul>
-
+
<ul>
- <li><a href="implementation.html">Implementation</a><br>
- </li>
-
+ <li><a href="authors.html">The authors</a><br>
+ </li>
+
</ul>
-
+
<ul>
- <li><a href="authors.html">The authors</a><br>
- </li>
+ <li><a href="links.html">Links</a><br>
+ </li>
</ul>
+ <br>
+ </td>
+ <td valign="top">
+ <div align="right"><b>Goals and features</b><br>
+ </div>
+ <br>
+ MathQL-1 is designed to achieve the following goals:<br>
- <ul>
- <li><a href="links.html">Links</a><br>
+ <ol>
+ <li>Exploitation of <a href="http://www.w3.org/RDF/">RDF</a> technology
+ to manage metadata and <b>compliance with the main requirements</b> for
+an RDF query language. In particular:</li>
+
+ </ol>
+
+ <blockquote>
+ <ul>
+ <li>MathQL-1 provides facilities for hierarchical constraints
+based on <a href="http://www.w3.org/TR/rdf-schema/">RDF Schema</a> and for
+traversal of compound values of properties.</li>
+
+ </ul>
+
+ <ul>
+ <li>MathQL-1 provides a full set of Boolean operators to compose
+ the query constraints and facilities for selecting URI's or literals by
+means of regular expressions.</li>
+
+ </ul>
+
+ <ul>
+ <li>MathQL-1 allows to customize the query results specifying
+what part of a solution should be preserved or discarded.</li>
+
+ </ul>
+
+ <ul>
+ <li>MathQL-1 has a well-conceived semantics defined in term of
+ an abstract metadata model, imposes that queries return exhaustive solutions
+ and includes a "select-from-where"-like construction.</li>
+
+ </ul>
+
+ <ul>
+ <li>MathQL-1 supports a machine-processable <a
+ href="http://www.w3.org/XML/">XML</a> syntax as well as a human-readable
+ textual syntax to achieve the best usability.<br>
+ </li>
+
+ </ul>
+ </blockquote>
+
+ <ol start="2">
+ <li>Careful <b>treatment of query results</b> that are as important
+ as the queries themselves. In particular:<br>
</li>
- </ul>
- <br>
- </td>
- <td valign="top">
- <div align="right"><b>Features</b><br>
- </div>
- <br>
- <br>
- </td>
- </tr>
+ </ol>
+
+ <blockquote>
+ <ul>
+ <li>MathQL-1 query results have a 4-dimensional geometry whereas
+ other languages assume that query results are returned in 1-dimensional
+structures (i.e. lists of resources) or 2-dimensional structures (i.e. relational
+database tables). This allows to get better outcomes from queries returning
+structured results.<br>
+ </li>
+
+ </ul>
+
+ <ul>
+ <li>Besides the syntax for queries, MathQL-1 provides a syntax
+ for query results with its own rigorously defined semantics.<br>
+ </li>
+
+ </ul>
+ </blockquote>
+
+ <ol start="3">
+ <li>Exploitation of <b>constructions borrowed from programming
+languages</b> to allow sophisticated queries that need computation over
+the queried data. In particular:<br>
+ </li>
+
+ </ol>
+
+ <blockquote>
+ <ul>
+ <li>MathQL-1 supports variables for storing intermediate query
+ results, provides iterators over these results, has a conditional operator
+ and includes logging facilities for debugging purposes.</li>
- </tbody>
+ </ul>
+ </blockquote>
+ </td>
+ </tr>
+
+ </tbody>
</table>
- <small></small> <br>
- <br>
- <br>
+ <br>
<br>
<br>
</body>