<p>Your question involves quantification, and is one example of things that cannot be expressed as one query in regular SPARQL 1.0. (It may be expressed in SPARQL 1.1 as shown in Jeen Broekstra's answer, or as an OWL class.)</p>

<p>Many SPARQL 1.0 implementations, though, have developped extensions to handle quantification. A commercial example is <a href="http://www.intellidimension.com/developers/library/sparql-extensions.aspx#quantification" rel="nofollow">Intellidimension Semantics Platform,</a> which would give you something like:</p>

<pre><code>SELECT ?parent
WHERE { ?child :hasParent ?parent FORALL(?child){ ?child :hasSchool "MIT" } }
</code></pre>

<p>An academic example is <a href="http://www.cs.ox.ac.uk/publications/publication3409-abstract.html" rel="nofollow">SPARQLog</a> from Oxford University Computing Lab. I am not aware that this system is available as an easy download, but the paper is freely available and provides insight into the difficulties of implementing quantification for SPARQL.</p>

<p>As for your question about the limits of SPARQL, it is too general to answer in a few words, but here is a link to a relevant paper, again as far as SPARQL 1.0 is concerned: <a href="http://arxiv.org/abs/cs/0605124" rel="nofollow"><em>Semantics and Complexity of SPARQL</em></a></p>
The limit of Sparql
<p>I would like to know how to express the following question in sparql:</p>

<p>"Give me the parents whose every child goes to MIT" </p>

<p>More generally, I would like to know what are the limits of query sparql please? What kinds of questions with answers in database <strong>cannot</strong> be formulated as sparql, please?</p>

<p>Thank you for your help </p>