public SparqlResult ExecuteQuery(SparqlQueryContext queryContext, IList<string> datasetGraphUris)
 {
     ISerializationFormat resultFormat;
     var resultStream = _client.ExecuteQuery(_storeName, queryContext.SparqlQuery, datasetGraphUris, null, queryContext.SparqlResultsFormat,
         queryContext.GraphResultsFormat, out resultFormat);
     return new SparqlResult(resultStream, resultFormat, queryContext);
 }
Ejemplo n.º 2
0
 public SparqlResult ExecuteQuery(SparqlQueryContext queryContext, IList<string> datasetGraphUris)
 {
     var parser = new SparqlQueryParser();
     var query = parser.ParseFromString(queryContext.SparqlQuery);
     var sparqlResults = _queryProcessor.ProcessQuery(query);
     return new SparqlResult(sparqlResults, queryContext);
 }
Ejemplo n.º 3
0
        internal SparqlResult(object resultObject, SparqlQueryContext sparqlQueryContext)
        {
            if (resultObject == null) throw new ArgumentNullException(nameof(resultObject));
            if (sparqlQueryContext == null) throw new ArgumentNullException(nameof(sparqlQueryContext));
            SourceSparqlQueryContext = sparqlQueryContext;

            ResultGraph = resultObject as IGraph;
            if (ResultGraph == null)
            {
                ResultSet = resultObject as SparqlResultSet;
                if (ResultSet == null)
                {
                    throw new ArgumentException(
                        $"Result object must be either a {typeof (IGraph).FullName} or a {typeof (SparqlResultSet).FullName} instance. Got a {resultObject.GetType().FullName}");
                }
                ResultFormat = sparqlQueryContext.SparqlResultsFormat ?? SparqlResultsFormat.Xml;
            }

            
            if (resultObject is IGraph)
            {
                ResultGraph = resultObject as IGraph;
                ResultFormat = sparqlQueryContext.GraphResultsFormat ?? RdfFormat.RdfXml;
            }
        }
Ejemplo n.º 4
0
 internal SparqlResult(TextReader streamReader, ISerializationFormat resultFormat,
     SparqlQueryContext sparqlQueryContext)
 {
     ResultFormat = resultFormat;
     ParseResult(streamReader);
     SourceSparqlQueryContext = sparqlQueryContext;
 }
 public override SparqlResult ExecuteSparql(SparqlQueryContext sparqlQueryContext)
 {
     var resultStream = new MemoryStream();
     _serverCore.Query(_storeName, sparqlQueryContext.SparqlQuery, DataSetGraphUris, null, SparqlResultsFormat.Xml,
                       RdfFormat.RdfXml, resultStream);
     resultStream.Seek(0, SeekOrigin.Begin);
     return new SparqlResult(resultStream, sparqlQueryContext);
 }
Ejemplo n.º 6
0
 internal SparqlResult(Stream resultStream, ISerializationFormat resultFormat, SparqlQueryContext sparqlQueryContext)
 {
     if (resultStream == null) throw new ArgumentNullException(nameof(resultStream));
     ResultFormat = resultFormat;
     SourceSparqlQueryContext = sparqlQueryContext;
     using (var reader = new StreamReader(resultStream))
     {
         ParseResult(reader);
     }
 }
Ejemplo n.º 7
0
 public abstract SparqlResult ExecuteSparql(SparqlQueryContext sparqlQueryContext);
Ejemplo n.º 8
0
 public override SparqlResult ExecuteSparql(SparqlQueryContext sparqlQueryContext)
 {
     return new SparqlResult(Client.ExecuteQuery(sparqlQueryContext.SparqlQuery, DataSetGraphUris), sparqlQueryContext);
 }
Ejemplo n.º 9
0
 public override SparqlResult ExecuteSparql(SparqlQueryContext sparqlQueryContext)
 {
     return Client.ExecuteQuery(sparqlQueryContext, DataSetGraphUris);
 }
Ejemplo n.º 10
0
        private IEnumerable<Triple> GetTriplesForDataObject(string identity)
        {
            var queryContext = new SparqlQueryContext(string.Format(QueryTemplate, identity));
            queryContext.SparqlResultsFormat = SparqlResultsFormat.Xml;
            queryContext.GraphResultsFormat = RdfFormat.NTriples;
            var results = Client.ExecuteQuery(queryContext, DataSetGraphUris);
            foreach(var row in results.ResultSet)
            {
                // create new triple
                var triple = new Triple
                {
                    Subject = identity,
                    Graph = row["g"].ToString(),
                    Predicate = row["p"].ToString()
                };

                var literal = row["o"] as ILiteralNode;
                if (literal != null)
                {
                    var dt = literal.DataType?.ToString();
                    triple.LangCode = literal.Language;
                    triple.DataType = dt ?? RdfDatatypes.String;
                    triple.Object = literal.Value;
                    triple.IsLiteral = true;
                }
                else
                {
                    triple.Object = row["o"].ToString().Trim();
                }
                yield return triple;
            }
        }
Ejemplo n.º 11
0
 internal SparqlResult(string xml, SparqlQueryContext sparqlQueryContext)
 {
     _resultString = xml;
     SourceSparqlQueryContext = sparqlQueryContext;
 }
Ejemplo n.º 12
0
 internal SparqlResult(Stream resultStream, SparqlQueryContext sparqlQueryContext)
 {
     _resultStream = resultStream;
     SourceSparqlQueryContext = sparqlQueryContext;
 }
Ejemplo n.º 13
0
 internal SparqlResult(string resultString, ISerializationFormat resultFormat, SparqlQueryContext sparqlQueryContext) :
     this(new StringReader(resultString), resultFormat, sparqlQueryContext )
 {
     
 }