public List<Results> evalSparqlQuery(string url, string query, bool infer, List<NameValuePairs> contexts, List<NameValuePairs> namedContexts, List<NameValuePairs> bindings, string AdditonalPrefixes)
{
query = System.Web.HttpUtility.UrlEncode(@"PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> PREFIX wikipedia:<http://wikipedia.org/> PREFIX foaf:<http://xmlns.com/foaf/0.1/> PREFIX xsd:<http://www.w3.org/2001/XMLSchema#> PREFIX fn:<http://www.w3.org/2005/xpath-functions#> PREFIX dc:<http://purl.org/dc/elements/1.1/> PREFIX bio:<http://purl.org/vocab/bio/0.1/> ")+ System.Web.HttpUtility.UrlEncode(AdditonalPrefixes) + System.Web.HttpUtility.UrlEncode(query);
List<Results> results = new List<Results>();
List<NameValuePairs> options = new List<NameValuePairs>();
try
{
options.Add(new NameValuePairs("query",query));
if (this._environment != null)
{
options.Add(new NameValuePairs("enviornment", this._environment));
}
if (namedContexts != null)
{
options.Add(new NameValuePairs("namedContext", namedContexts[0].Value));
}
if (bindings != null)
{
options.Add(new NameValuePairs("bind", bindings));
}
if (infer)
{
options.Add(new NameValuePairs("infer",infer));
}
if (contexts != null)
{
foreach (NameValuePairs np in contexts)
{
options.Add(np);
}
}
if (url == string.Empty)
{
return StandardRequest("GET", this._url, options, null);
}
else
{
return StandardRequest("GET", url, options, null);
}
}
catch (Exception ex)
{
System.Diagnostics.Trace.WriteLine("Error in evalSparqlQuery " + ex.Message);
}
return results;
}