]> matita.cs.unibo.it Git - helm.git/blob - helm/mathql/homepage/features.html
ba266b5e8f382b70b37ab345cd71f9b07ceb115b
[helm.git] / helm / mathql / homepage / features.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4   <title>MathQL</title>
5                                          
6   <meta http-equiv="content-type"
7  content="text/html; charset=ISO-8859-1">
8                        
9   <meta name="author" content="Ferruccio Guidi">
10                        
11   <meta name="description" content="MathQL Home Page">
12 </head>
13   <body>
14           
15 <h1 align="center">MathQL-1</h1>
16        
17 <h2 align="center">A query language for RDF metadata</h2>
18            
19 <table cellpadding="10" cellspacing="2" border="0" width="95%"
20  bgcolor="#ffffff">
21         <tbody>
22           <tr>
23             <td valign="top" align="left">                              
24            
25       <ul>
26               <li><a href="index.html">Forward</a><br>
27            </li>
28                                                
29       </ul>
30                                
31       <ul>
32             <li>Features</li>
33                                
34       </ul>
35                                
36       <ul>
37             <li><a href="documentation.html">Documentation</a></li>
38                                                
39       </ul>
40                        
41       <ul>
42            <li><a href="implementation.html">Implementation</a><br>
43            </li>
44                        
45       </ul>
46                        
47       <ul>
48            <li><a href="authors.html">The authors</a><br>
49            </li>
50                                                
51       </ul>
52                        
53       <ul>
54            <li><a href="links.html">Links</a><br>
55            </li>
56                        
57       </ul>
58          <br>
59             </td>
60             <td valign="top">                     
61       <div align="right"><b>Goals &nbsp;and features</b><br>
62          </div>
63          <br>
64    MathQL-1 is designed to achieve the following goals:<br>
65       <ol>
66         <li>Exploitation of <a href="http://www.w3.org/RDF/">RDF</a> technology
67 to manage metadata and <b>compliance with the main requirements</b> for an
68 RDF query language. In particular:</li>
69       </ol>
70       <blockquote>
71         <ul>
72           <li>MathQL-1 provides facilities for hierarchical constraints based
73 on <a href="http://www.w3.org/TR/rdf-schema/">RDF Schema</a> and for traversal
74 of compound values of properties.</li>
75         </ul>
76         <ul>
77           <li>MathQL-1 provides a full set of Boolean operators to compose
78 the query constraints and facilities for selecting URI's or literals by means
79 of regular expressions.</li>
80         </ul>
81         <ul>
82           <li>MathQL-1 allows to customize the query results specifying what
83 part of a solution should be preserved or discarded.</li>
84         </ul>
85         <ul>
86           <li>MathQL-1 has a well-conceived semantics defined in term of
87 an abstract metadata model, imposes that queries return exhaustive solutions
88 and includes a "select-from-where"-like construction.</li>
89         </ul>
90         <ul>
91           <li>MathQL-1 supports a machine-processable <a
92  href="http://www.w3.org/XML/">XML</a> syntax as well as a human-readable
93 textual syntax to achieve the best usability.<br>
94           </li>
95         </ul>
96       </blockquote>
97       <ol start="2">
98         <li>Careful <b>treatment of query results</b> that are as important
99 as the queries themselves. In particular:<br>
100         </li>
101       </ol>
102       <blockquote>
103         <ul>
104           <li>MathQL-1 query results have a 4-dimensional geometry whereas
105 other languages assume that query results are returned in 1-dimensional structures
106 (ie lists of resources) or 2-dimensional structures (ie relational database
107 tables). This allows to get better outcomes from queries returning structured
108 results.<br>
109           </li>
110         </ul>
111         <ul>
112           <li>Besides the syntax for queries, MathQL-1 provides a syntax
113 for query results with its own rigorously defined semantics.<br>
114           </li>
115         </ul>
116       </blockquote>
117       <ol start="3">
118         <li>Exploitation of <b>constructions borrowed from programming languages</b>
119 to allow sophisticated queries that need computation over the queried data.
120 In particular:<br>
121         </li>
122       </ol>
123       <blockquote>
124         <ul>
125           <li>MathQL-1 supports variables for storing intermediate query
126 results, provides iterators over these results, has a conditional operator
127 and includes logging facilities for debugging purposes.</li>
128         </ul>
129       </blockquote>
130       </td>
131     </tr>
132   </tbody>
133 </table>
134 <br>
135 </body>
136 </html>