You can subscribe to this list here.
| 2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2010 |
Jan
|
Feb
(11) |
Mar
(17) |
Apr
(12) |
May
(2) |
Jun
(20) |
Jul
(2) |
Aug
(2) |
Sep
(2) |
Oct
(2) |
Nov
|
Dec
(5) |
| 2011 |
Jan
(4) |
Feb
(1) |
Mar
(2) |
Apr
(2) |
May
(5) |
Jun
|
Jul
(12) |
Aug
(4) |
Sep
(5) |
Oct
(1) |
Nov
(38) |
Dec
(27) |
| 2012 |
Jan
(46) |
Feb
(182) |
Mar
(83) |
Apr
(22) |
May
(68) |
Jun
(47) |
Jul
(135) |
Aug
(84) |
Sep
(57) |
Oct
(45) |
Nov
(27) |
Dec
(61) |
| 2013 |
Jan
(59) |
Feb
(78) |
Mar
(66) |
Apr
(107) |
May
(27) |
Jun
(56) |
Jul
(53) |
Aug
(3) |
Sep
(19) |
Oct
(41) |
Nov
(44) |
Dec
(54) |
| 2014 |
Jan
(49) |
Feb
(72) |
Mar
(22) |
Apr
(41) |
May
(63) |
Jun
(27) |
Jul
(45) |
Aug
(12) |
Sep
(3) |
Oct
(8) |
Nov
(27) |
Dec
(16) |
| 2015 |
Jan
(3) |
Feb
(20) |
Mar
(6) |
Apr
(4) |
May
(15) |
Jun
(2) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
(16) |
May
(9) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Alexander S. <ale...@gm...> - 2010-04-15 18:47:27
|
Hi Rob, Thank you for clarifications. Could you provide an example of different values that can generate equivalent strings. I'm just curious :) Regards, Alexander |
|
From: Rob V. <rv...@do...> - 2010-04-15 10:17:58
|
Hi Alexander
If you use the single argument overload of CreateLiteralNode() it creates an
untyped literal whose value is the string provided regardless of the format
of that string. None of the CreateLiteralNode() overloads actually parse
the values given to them in any way.
What you want to do is use the two argument overload for creating typed
literals as follows:
graph.CreateLiteralNode(dateTimeOffset.ToString(XmlSpecsHelper.XmlSchemaData
TimeFormat), new Uri(XmlSpecsHelper.XmlSchemaDataTypeDateTime));
While you are correct in saying that your value does not differ from the
string generated by the DateTime.ToLiteral() call that method just
simplifies the above function call into an extension method. It is fully
possible for two literals whose actual internal values are different to
generate equivalent strings when displayed depending on the syntax/method
used to display the literal.
Thanks,
Rob
From: Alexander Sidorov [mailto:ale...@gm...]
Sent: 14 April 2010 21:55
To: dot...@li...
Subject: [dotNetRDF-develop] Typed Literals
Hi rob,
Thank you for the answer :)
dateTime.ToLiteral works for me. But according to my current API it would be
easier for me to just create LitralNode from string. So I tried something
like this:
string literal = String.Format("{0}^^{1}",
dateTimeOffset.ToString(XmlSpecsHelper.XmlSchemaDateTimeFormat),
XmlSpecsHelper.XmlSchemaDataTypeDateTime);
graph.createLiteralNode(literal);
But this code doesn't work. Here is a screenshot of entity properties'
values: http://img690.imageshack.us/img690/5617/beawaredatetimes.png.
CreationDateTime is created using dateTime.ToLiteral call and it's okay but
startDateTime (that is created using the code above) is not parsed correctly
and Virtuoso doesn't understand it is a dateTime value.
I look at dotNetRDF sources and do not understand in what way my literal
variable value differs from the string generated by dateTime.ToLiteral
method.
Regards,
Alexander
|
|
From: Alexander S. <ale...@gm...> - 2010-04-14 20:55:05
|
Hi rob,
Thank you for the answer :)
dateTime.ToLiteral works for me. But according to my current API it would be
easier for me to just create LitralNode from string. So I tried something
like this:
string literal = String.Format("{0}^^{1}",
dateTimeOffset.ToString(XmlSpecsHelper.XmlSchemaDateTimeFormat),
XmlSpecsHelper.XmlSchemaDataTypeDateTime);
graph.createLiteralNode(literal);
But this code doesn't work. Here is a screenshot of entity properties'
values: http://img690.imageshack.us/img690/5617/beawaredatetimes.png.
CreationDateTime is created using dateTime.ToLiteral call and it's okay but
startDateTime (that is created using the code above) is not parsed correctly
and Virtuoso doesn't understand it is a dateTime value.
I look at dotNetRDF sources and do not understand in what way my literal
variable value differs from the string generated by dateTime.ToLiteral
method.
Regards,
Alexander
|
|
From: Rob V. <rv...@do...> - 2010-04-08 11:04:23
|
Hi Alexander
First off neither of these things are bugs, you appear to be using the
CreateLiteralNode() method incorrectly and expecting the ToString() method
to work differently from how it is implemented.
1. ToString() is only intended to show a quick view of the value, it
does not output the value in an actual RDF syntax it just shows a raw view
of the value. ToString() does not add any quotes around values
2. new Uri("xsd:dateTime") does not actually do what you are expecting
it to do, xsd:dateTime as seen in much real world RDF is the QName for the
full URI http://www.w3.org/2001/XMLSchema#dateTime
Your issue is that xsd:dateTime is also a valid URI so when you do new
URI("xsd:dateTime") you get the URI "xsd:dateTime" rather than
"http://www.w3.org/2001/XMLSchema#dateTime" which is what you are intending.
If you have a variable of type DateTime you can actually use the ToLiteral()
extension method which turns a DateTime into a LiteralNode in the given
Graph like so:
DateTime temp = DateTime.Now;
Graph g = new Graph();
LiteralNode myDate = temp.ToLiteral(g);
There are ToLiteral() extension methods defined for a whole range of
primitive .Net types which map to XML Schema Datatypes which turn them into
typed LiteralNode's and automatically add the appropriate datatype URI. See
http://www.dotnetrdf.org/api/index.asp?topic=VDS.RDF.LiteralExtensions
Hope this helps
Rob
From: Alexander Sidorov [mailto:ale...@gm...]
Sent: 04 April 2010 18:21
To: dot...@li...
Subject: [dotNetRDF-develop] Graph.CreateLiteralNode bug
Hello!
I'm using Graph class CreateLiteralNode method overload that has datatype
parameter and I think there is a small bug. For example this call:
graph.CreateLiteralNode(creationDateTime, new Uri("xsd:dateTime")) will
return 2010-04-04T16:41:19+07:00^^xsd:dateTime but should return
"2010-04-04T16:41:19+07:00"^^xsd:dateTime. First, I workarounded it this
way: graph.CreateLiteralNode(String.Format("\"{0}\"", creationDateTime), new
Uri("xsd:dateTime")) but it doesn't work as LiteralNode's ToString method
puts the whole string inside one more pair of quotes.
Regards,
Alexander
|
|
From: Alexander S. <ale...@gm...> - 2010-04-08 04:37:45
|
Hi Rob, It is not usual for you to keep silence for so long :) Are there any problems with graph typed literal implementation? Can I help you? Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-04-04 17:20:46
|
Hello!
I'm using Graph class CreateLiteralNode method overload that has datatype
parameter and I think there is a small bug. For example this call:
graph.CreateLiteralNode(creationDateTime, new Uri("xsd:dateTime")) will
return 2010-04-04T16:41:19+07:00^^xsd:dateTime but should return
"2010-04-04T16:41:19+07:00"^^xsd:dateTime. First, I workarounded it this
way: graph.CreateLiteralNode(String.Format("\"{0}\"", creationDateTime), new
Uri("xsd:dateTime")) but it doesn't work as LiteralNode's ToString method
puts the whole string inside one more pair of quotes.
Regards,
Alexander
|
|
From: Rob V. <rv...@do...> - 2010-03-29 13:25:45
|
Hi Alexander
As of revision 687 this is now (hopefully) fixed, parameter names are
limited to those composed of alphanumeric characters and underscores,
attempting to use parameter names that don't conform to this results in a
FormatException when you try and set the value for the parameter.
Parameter replacement is now based on regular expression replacement similar
to your suggestion so in your example of having @graph, @graph1 and @graph2
if you've set @graph but not the others only @graph should now get replaced
when you call the ToString() method.
Hope this resolves the issue for you
Thanks,
Rob
From: Alexander Sidorov [mailto:ale...@gm...]
Sent: 27 March 2010 09:10
To: dot...@li...
Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 4, Issue 9
Hi Rob,
Sorry, I didn't notice it replaces parameters starting from the longest one.
But nevertheless there could be some conflicts. I think the best solution
would be to use regexp like this: String.Format(@"\s{0}\s", parameterName).
Regards,
Alexander
2010/3/25 <dot...@li...>
Send Dotnetrdf-develop mailing list submissions to
dot...@li...
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
or, via email, send a message with subject or body 'help' to
dot...@li...
You can reach the person managing the list at
dot...@li...
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Dotnetrdf-develop digest..."
Today's Topics:
1. Re: SparqlParameterizedString parameters bug (Rob Vesse)
----------------------------------------------------------------------
Message: 1
Date: Wed, 24 Mar 2010 13:58:49 -0700
From: "Rob Vesse" <rv...@do...>
Subject: Re: [dotNetRDF-develop] SparqlParameterizedString parameters
bug
To: "dotNetRDF Developer Discussion and Feature Request"
<dot...@li...>
Message-ID: <42331e35$36525672$43c91c49$@com>
Content-Type: text/plain; charset="us-ascii"
Hi Alexander
If you've set all the parameters then this shouldn't happen since it
replaces parameters starting from the longest parameter name BUT if @graph1
/ @graph2 haven't been set then they will be partially replaced since those
parameters will be inserted first.
Problem is that it's quite hard to determine what exactly is a parameter
since there's always the chance that you might have something like a email
address in the query or a language tag on a literal which could clash with
a parameter name
Not really sure what if anything can be done to address this, could do some
kind of regexp based replace and restrict parameter names to a specific set
of characters (alphanumerics, hyphens and underscores?) if you think that'd
be more useful?
Rob
----------------------------------------
From: "Alexander Sidorov" <ale...@gm...>
Sent: Tuesday, March 23, 2010 2:39 AM
To: dot...@li...
Subject: [dotNetRDF-develop] SparqlParameterizedString parameters bug
Hello!
Current parameter replacing by it's value implementation in
SparqlParamterizedString is a bit incorrect. The wrong thing is that it
doesn't check whether found parameter string is a whole parameter or a part
of another parameter. Example:
We have "@graph", "@graph1" and "@graph2" parameters. We set "@graph"
parameter value first - "@graph1" and "@graph2" will be partly replaced
too.
Regards,
Alexander
-------------- next part --------------
An HTML attachment was scrubbed...
------------------------------
----------------------------------------------------------------------------
--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
------------------------------
_______________________________________________
Dotnetrdf-develop mailing list
Dot...@li...
https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
End of Dotnetrdf-develop Digest, Vol 4, Issue 9
***********************************************
|
|
From: Alexander S. <ale...@gm...> - 2010-03-27 09:10:25
|
Hi Rob,
Sorry, I didn't notice it replaces parameters starting from the longest one.
But nevertheless there could be some conflicts. I think the best solution
would be to use regexp like this: String.Format(@"\s{0}\s", parameterName).
Regards,
Alexander
2010/3/25 <dot...@li...>
> Send Dotnetrdf-develop mailing list submissions to
> dot...@li...
>
> To subscribe or unsubscribe via the World Wide Web, visit
> https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
> or, via email, send a message with subject or body 'help' to
> dot...@li...
>
> You can reach the person managing the list at
> dot...@li...
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Dotnetrdf-develop digest..."
>
>
> Today's Topics:
>
> 1. Re: SparqlParameterizedString parameters bug (Rob Vesse)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 24 Mar 2010 13:58:49 -0700
> From: "Rob Vesse" <rv...@do...>
> Subject: Re: [dotNetRDF-develop] SparqlParameterizedString parameters
> bug
> To: "dotNetRDF Developer Discussion and Feature Request"
> <dot...@li...>
> Message-ID: <42331e35$36525672$43c91c49$@com>
> Content-Type: text/plain; charset="us-ascii"
>
> Hi Alexander
>
> If you've set all the parameters then this shouldn't happen since it
> replaces parameters starting from the longest parameter name BUT if @graph1
> / @graph2 haven't been set then they will be partially replaced since those
> parameters will be inserted first.
>
> Problem is that it's quite hard to determine what exactly is a parameter
> since there's always the chance that you might have something like a email
> address in the query or a language tag on a literal which could clash with
> a parameter name
>
> Not really sure what if anything can be done to address this, could do some
> kind of regexp based replace and restrict parameter names to a specific set
> of characters (alphanumerics, hyphens and underscores?) if you think that'd
> be more useful?
>
> Rob
>
> ----------------------------------------
> From: "Alexander Sidorov" <ale...@gm...>
> Sent: Tuesday, March 23, 2010 2:39 AM
> To: dot...@li...
> Subject: [dotNetRDF-develop] SparqlParameterizedString parameters bug
>
> Hello!
>
> Current parameter replacing by it's value implementation in
> SparqlParamterizedString is a bit incorrect. The wrong thing is that it
> doesn't check whether found parameter string is a whole parameter or a part
> of another parameter. Example:
>
>
> We have "@graph", "@graph1" and "@graph2" parameters. We set "@graph"
> parameter value first - "@graph1" and "@graph2" will be partly replaced
> too.
>
>
> Regards,
> Alexander
>
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
>
> ------------------------------
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
>
> ------------------------------
>
> _______________________________________________
> Dotnetrdf-develop mailing list
> Dot...@li...
> https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
>
>
> End of Dotnetrdf-develop Digest, Vol 4, Issue 9
> ***********************************************
>
|
|
From: Rob V. <rv...@do...> - 2010-03-24 20:59:37
|
Hi Alexander If you've set all the parameters then this shouldn't happen since it replaces parameters starting from the longest parameter name BUT if @graph1 / @graph2 haven't been set then they will be partially replaced since those parameters will be inserted first. Problem is that it's quite hard to determine what exactly is a parameter since there's always the chance that you might have something like a email address in the query or a language tag on a literal which could clash with a parameter name Not really sure what if anything can be done to address this, could do some kind of regexp based replace and restrict parameter names to a specific set of characters (alphanumerics, hyphens and underscores?) if you think that'd be more useful? Rob ---------------------------------------- From: "Alexander Sidorov" <ale...@gm...> Sent: Tuesday, March 23, 2010 2:39 AM To: dot...@li... Subject: [dotNetRDF-develop] SparqlParameterizedString parameters bug Hello! Current parameter replacing by it's value implementation in SparqlParamterizedString is a bit incorrect. The wrong thing is that it doesn't check whether found parameter string is a whole parameter or a part of another parameter. Example: We have "@graph", "@graph1" and "@graph2" parameters. We set "@graph" parameter value first - "@graph1" and "@graph2" will be partly replaced too. Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-03-23 02:39:06
|
Hello! Current parameter replacing by it's value implementation in SparqlParamterizedString is a bit incorrect. The wrong thing is that it doesn't check whether found parameter string is a whole parameter or a part of another parameter. Example: We have "@graph", "@graph1" and "@graph2" parameters. We set "@graph" parameter value first - "@graph1" and "@graph2" will be partly replaced too. Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-03-22 19:01:44
|
Hi Rob, I don't know RDFa enough for that. I have planned RDFa integration into my application in a week so I will return to you a bit later :) Regards, Alexander 2010/3/22 <dot...@li...> > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. RDFa support (Alexander Sidorov) > 2. Re: RDFa support (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Mon, 22 Mar 2010 00:54:06 +0600 > From: Alexander Sidorov <ale...@gm...> > Subject: [dotNetRDF-develop] RDFa support > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello! > > I have looked through HtmlWriter class and think it's too low level. Direct > work with context.HtmlWriter was seldom used at ASP.NET Web Forms and is > almost never used at ASP.NET MVC. I think RDFa support using html helper > methods (like ASP.NET MVC) would be much more useful. > > Regards, > Alexander > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Mon, 22 Mar 2010 11:20:31 -0000 > From: "Rob Vesse" <rv...@do...> > Subject: Re: [dotNetRDF-develop] RDFa support > To: "'dotNetRDF Developer Discussion and Feature Request'" > <dot...@li...> > Cc: ale...@gm... > Message-ID: <007a01cac9b1$b06f29b0$114d7d10$@org> > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > > > I agree that the existing writing support is somewhat low level and I had > planned to add some more utility/helper style stuff at some point but > haven't got around to it yet. > > > > Do you have some examples/ideas on the types of helper methods you'd like > available? > > > > Thanks, > > Rob > > > > From: Alexander Sidorov [mailto:ale...@gm...] > Sent: 21 March 2010 18:54 > To: dot...@li... > Subject: [dotNetRDF-develop] RDFa support > > > > Hello! > > I have looked through HtmlWriter class and think it's too low level. Direct > work with context.HtmlWriter was seldom used at ASP.NET Web Forms and is > almost never used at ASP.NET MVC. I think RDFa support using html helper > methods (like ASP.NET MVC) would be much more useful. > > Regards, > Alexander > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 4, Issue 7 > *********************************************** > |
|
From: Rob V. <rv...@do...> - 2010-03-22 11:21:46
|
Hi Alexander I agree that the existing writing support is somewhat low level and I had planned to add some more utility/helper style stuff at some point but haven't got around to it yet. Do you have some examples/ideas on the types of helper methods you'd like available? Thanks, Rob From: Alexander Sidorov [mailto:ale...@gm...] Sent: 21 March 2010 18:54 To: dot...@li... Subject: [dotNetRDF-develop] RDFa support Hello! I have looked through HtmlWriter class and think it's too low level. Direct work with context.HtmlWriter was seldom used at ASP.NET Web Forms and is almost never used at ASP.NET MVC. I think RDFa support using html helper methods (like ASP.NET MVC) would be much more useful. Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-03-21 18:54:13
|
Hello! I have looked through HtmlWriter class and think it's too low level. Direct work with context.HtmlWriter was seldom used at ASP.NET Web Forms and is almost never used at ASP.NET MVC. I think RDFa support using html helper methods (like ASP.NET MVC) would be much more useful. Regards, Alexander |
|
From: Rob V. <ra...@ec...> - 2010-03-12 13:28:12
|
Hi all If you haven't seen already I put out the latest release of dotNetRDF yesterday which is version 0.2.1 - you can download it from the website or from SourceForge New features include: . SPARQL 1.1 - Property Paths now parsed and simple paths can be executed . RDFS Reasoning - Better RDFS reasoning support, class & property hierarchy plus domain and range based inferencing now implemented . RDFa Support - Now includes an RDFa parser which can extract triples embedded as RDFa from HTML and XHTML documents, HTML writer now embeds the Triples it writes in human readable form in machine readable RDFa form in its output as well . Storage - Stability fixes for Virtuoso, 4store, Talis and Joseki I've just put together an Ideas page [1] on the website which contains a more detailed roadmap/brainstorm of some of the stuff I plan to add in the future. If anyone has any further suggestions, ideas or feedback on any of this please post to the developer discussion list dot...@li... Thanks to everyone who contributed bug reports and feature suggestions which have helped improve the library for this release! Rob Vesse dotNetRDF Lead Developer ================================================================ Developer Discussion & Feature Request - dot...@li... Bug Reports - dot...@li... User Help & Support - dot...@li... Website: http://www.dotnetrdf.org User Guide: http://www.dotnetrdf.org/content.asp?pageID=User%20Guide API: http://www.dotnetrdf.org/api/ [1] http://www.dotnetrdf.org/content.asp?pageID=Ideas |
|
From: Alexander S. <ale...@gm...> - 2010-03-11 09:55:22
|
Hi Rob, Thank you for the fix. And I have no any new bugs/ideas concerning dotnetrdf, sorry :) Regards, Alexander 2010/3/11 <dot...@li...> > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. Re: Dotnetrdf-develop Digest, Vol 4, Issue 3 (Alexander Sidorov) > 2. Re: SparqlConnector and bif:contains for Virtuoso (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Thu, 11 Mar 2010 01:55:43 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 4, > Issue 3 > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hi Rob, > > Thank you for the answer. I have chosen SparqlConnector but have problems > with queries that contain Virtuoso built-in functions (for example, > bif:contains): parser wants bif namespace to be set. Is there any > workaround? > > Regards, > Alexander > > 2010/3/10 <dot...@li...> > > > Send Dotnetrdf-develop mailing list submissions to > > dot...@li... > > > > To subscribe or unsubscribe via the World Wide Web, visit > > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > or, via email, send a message with subject or body 'help' to > > dot...@li... > > > > You can reach the person managing the list at > > dot...@li... > > > > When replying, please edit your Subject line so it is more specific > > than "Re: Contents of Dotnetrdf-develop digest..." > > > > > > Today's Topics: > > > > 1. Access general SPARQL-endpoint (Alexander Sidorov) > > 2. Re: Access general SPARQL-endpoint (Rob Vesse) > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Tue, 9 Mar 2010 19:52:56 +0100 > > From: Alexander Sidorov <ale...@gm...> > > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > > To: dot...@li... > > Message-ID: > > <828...@ma...> > > Content-Type: text/plain; charset="iso-8859-1" > > > > Hello! > > > > I need to access Virtuoso but not their ADO.NET provider (so > > VirtuosoManager > > doesn't work for me) but through SPARQL protocol ( > > lod.openlinksw.com/sparql). > > What classes should I use? > > > > Regards, > > Alexander > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > > > ------------------------------ > > > > Message: 2 > > Date: Wed, 10 Mar 2010 01:41:28 -0800 > > From: "Rob Vesse" <rv...@do...> > > Subject: Re: [dotNetRDF-develop] Access general SPARQL-endpoint > > To: "dotNetRDF Developer Discussion and Feature Request" > > <dot...@li...> > > Message-ID: <6399325e$1cddbcd$269c081b$@com> > > Content-Type: text/plain; charset="us-ascii" > > > > Hi Alexander > > > > You can either use the SparqlRemoteEndpoint > > (VDS.RDF.Query.SparqlRemoteEndpoint) class which provides specific > methods > > for making SELECT/ASK and CONSTRUCT/DESCRIBE queries and can connect to > any > > SPARQL endpoint with the ability to specify the default & named graph > URIs > > you want to use. > > > > Or you can use the SparqlConnector (VDS.RDF.Storage.SparqlConnector) > which > > has the same basic interface (IGenericIOManager) as the VirtuosoManager > and > > gives you read-only storage access to an endpoint. The disadvantage of > > this class is that it isn't as easy to specify default/named graph URIs > if > > you need to (the advantage being that it implements the IGenericIOManager > > interface) > > > > Take a look at > > http://dotnetrdf.org/content.asp?pageID=Querying%20with%20SPARQL for > > details on using the SparqlRemoteEndpoint class > > > > If you have any further questions let me know > > > > Rob Vesse > > > > ---------------------------------------- > > From: "Alexander Sidorov" <ale...@gm...> > > Sent: Tuesday, March 09, 2010 6:52 PM > > To: dot...@li... > > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > > > > Hello! > > > > I need to access Virtuoso but not their ADO.NET provider (so > > VirtuosoManager doesn't work for me) but through SPARQL protocol > > (lod.openlinksw.com/sparql). What classes should I use? > > > > Regards, > > Alexander > > > > > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > > > ------------------------------ > > > > > > > ------------------------------------------------------------------------------ > > Download Intel® Parallel Studio Eval > > Try the new software tools for yourself. Speed compiling, find bugs > > proactively, and fine-tune applications for parallel performance. > > See why Intel Parallel Studio got high marks during beta. > > http://p.sf.net/sfu/intel-sw-dev > > > > ------------------------------ > > > > _______________________________________________ > > Dotnetrdf-develop mailing list > > Dot...@li... > > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > > > > End of Dotnetrdf-develop Digest, Vol 4, Issue 3 > > *********************************************** > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Thu, 11 Mar 2010 09:50:01 -0000 > From: "Rob Vesse" <ra...@ec...> > Subject: Re: [dotNetRDF-develop] SparqlConnector and bif:contains for > Virtuoso > To: "'dotNetRDF Developer Discussion and Feature Request'" > <dot...@li...> > Message-ID: > <EMEW3|7f855532c7f51db3d37bed67f844a68dm2A9o206rav08r| > ecs.soton.ac.uk|00bd01cac100$380ae7c0$a820b740$@soton.ac.uk> > > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > > > There was not a work around for the SparqlConnector but I have added one > now > and it appears to work fine. As of revision 651 there is a > SkipLocalParsing > property that can be used to set that the SparqlConnector should not do any > local parsing of the query - this will allow you to send any query using > vendor specific extensions to an endpoint. > > > > If you use the SparqlRemoteEndpoint you don't have this problem as no local > parsing of the query is done > > > > Btw I should hopefully be making the next official release of the library > later today/tomorrow so if you have any last minute bugs/simple requests > now > would be the time to get them in > > > > Thanks again, > > Rob > > > > From: Alexander Sidorov [mailto:ale...@gm...] > Sent: 11 March 2010 00:56 > To: dot...@li... > Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 4, Issue 3 > > > > Hi Rob, > > Thank you for the answer. I have chosen SparqlConnector but have problems > with queries that contain Virtuoso built-in functions (for example, > bif:contains): parser wants bif namespace to be set. Is there any > workaround? > > Regards, > Alexander > > 2010/3/10 <dot...@li...> > > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. Access general SPARQL-endpoint (Alexander Sidorov) > 2. Re: Access general SPARQL-endpoint (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 9 Mar 2010 19:52:56 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello! > > I need to access Virtuoso but not their ADO.NET provider (so > VirtuosoManager > doesn't work for me) but through SPARQL protocol > (lod.openlinksw.com/sparql). > What classes should I use? > > Regards, > Alexander > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Wed, 10 Mar 2010 01:41:28 -0800 > From: "Rob Vesse" <rv...@do...> > Subject: Re: [dotNetRDF-develop] Access general SPARQL-endpoint > To: "dotNetRDF Developer Discussion and Feature Request" > <dot...@li...> > Message-ID: <6399325e$1cddbcd$269c081b$@com> > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > You can either use the SparqlRemoteEndpoint > (VDS.RDF.Query.SparqlRemoteEndpoint) class which provides specific methods > for making SELECT/ASK and CONSTRUCT/DESCRIBE queries and can connect to any > SPARQL endpoint with the ability to specify the default & named graph URIs > you want to use. > > Or you can use the SparqlConnector (VDS.RDF.Storage.SparqlConnector) which > has the same basic interface (IGenericIOManager) as the VirtuosoManager and > gives you read-only storage access to an endpoint. The disadvantage of > this class is that it isn't as easy to specify default/named graph URIs if > you need to (the advantage being that it implements the IGenericIOManager > interface) > > Take a look at > http://dotnetrdf.org/content.asp?pageID=Querying%20with%20SPARQL for > details on using the SparqlRemoteEndpoint class > > If you have any further questions let me know > > Rob Vesse > > ---------------------------------------- > From: "Alexander Sidorov" <ale...@gm...> > Sent: Tuesday, March 09, 2010 6:52 PM > To: dot...@li... > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > > Hello! > > I need to access Virtuoso but not their ADO.NET provider (so > VirtuosoManager doesn't work for me) but through SPARQL protocol > (lod.openlinksw.com/sparql). What classes should I use? > > Regards, > Alexander > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ---------------------------------------------------------------------------- > -- > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 4, Issue 3 > *********************************************** > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 4, Issue 4 > *********************************************** > |
|
From: Rob V. <ra...@ec...> - 2010-03-11 09:50:17
|
Hi Alexander
There was not a work around for the SparqlConnector but I have added one now
and it appears to work fine. As of revision 651 there is a SkipLocalParsing
property that can be used to set that the SparqlConnector should not do any
local parsing of the query - this will allow you to send any query using
vendor specific extensions to an endpoint.
If you use the SparqlRemoteEndpoint you don't have this problem as no local
parsing of the query is done
Btw I should hopefully be making the next official release of the library
later today/tomorrow so if you have any last minute bugs/simple requests now
would be the time to get them in
Thanks again,
Rob
From: Alexander Sidorov [mailto:ale...@gm...]
Sent: 11 March 2010 00:56
To: dot...@li...
Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 4, Issue 3
Hi Rob,
Thank you for the answer. I have chosen SparqlConnector but have problems
with queries that contain Virtuoso built-in functions (for example,
bif:contains): parser wants bif namespace to be set. Is there any
workaround?
Regards,
Alexander
2010/3/10 <dot...@li...>
Send Dotnetrdf-develop mailing list submissions to
dot...@li...
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
or, via email, send a message with subject or body 'help' to
dot...@li...
You can reach the person managing the list at
dot...@li...
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Dotnetrdf-develop digest..."
Today's Topics:
1. Access general SPARQL-endpoint (Alexander Sidorov)
2. Re: Access general SPARQL-endpoint (Rob Vesse)
----------------------------------------------------------------------
Message: 1
Date: Tue, 9 Mar 2010 19:52:56 +0100
From: Alexander Sidorov <ale...@gm...>
Subject: [dotNetRDF-develop] Access general SPARQL-endpoint
To: dot...@li...
Message-ID:
<828...@ma...>
Content-Type: text/plain; charset="iso-8859-1"
Hello!
I need to access Virtuoso but not their ADO.NET provider (so VirtuosoManager
doesn't work for me) but through SPARQL protocol
(lod.openlinksw.com/sparql).
What classes should I use?
Regards,
Alexander
-------------- next part --------------
An HTML attachment was scrubbed...
------------------------------
Message: 2
Date: Wed, 10 Mar 2010 01:41:28 -0800
From: "Rob Vesse" <rv...@do...>
Subject: Re: [dotNetRDF-develop] Access general SPARQL-endpoint
To: "dotNetRDF Developer Discussion and Feature Request"
<dot...@li...>
Message-ID: <6399325e$1cddbcd$269c081b$@com>
Content-Type: text/plain; charset="us-ascii"
Hi Alexander
You can either use the SparqlRemoteEndpoint
(VDS.RDF.Query.SparqlRemoteEndpoint) class which provides specific methods
for making SELECT/ASK and CONSTRUCT/DESCRIBE queries and can connect to any
SPARQL endpoint with the ability to specify the default & named graph URIs
you want to use.
Or you can use the SparqlConnector (VDS.RDF.Storage.SparqlConnector) which
has the same basic interface (IGenericIOManager) as the VirtuosoManager and
gives you read-only storage access to an endpoint. The disadvantage of
this class is that it isn't as easy to specify default/named graph URIs if
you need to (the advantage being that it implements the IGenericIOManager
interface)
Take a look at
http://dotnetrdf.org/content.asp?pageID=Querying%20with%20SPARQL for
details on using the SparqlRemoteEndpoint class
If you have any further questions let me know
Rob Vesse
----------------------------------------
From: "Alexander Sidorov" <ale...@gm...>
Sent: Tuesday, March 09, 2010 6:52 PM
To: dot...@li...
Subject: [dotNetRDF-develop] Access general SPARQL-endpoint
Hello!
I need to access Virtuoso but not their ADO.NET provider (so
VirtuosoManager doesn't work for me) but through SPARQL protocol
(lod.openlinksw.com/sparql). What classes should I use?
Regards,
Alexander
-------------- next part --------------
An HTML attachment was scrubbed...
------------------------------
----------------------------------------------------------------------------
--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
------------------------------
_______________________________________________
Dotnetrdf-develop mailing list
Dot...@li...
https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop
End of Dotnetrdf-develop Digest, Vol 4, Issue 3
***********************************************
|
|
From: Alexander S. <ale...@gm...> - 2010-03-11 00:55:51
|
Hi Rob, Thank you for the answer. I have chosen SparqlConnector but have problems with queries that contain Virtuoso built-in functions (for example, bif:contains): parser wants bif namespace to be set. Is there any workaround? Regards, Alexander 2010/3/10 <dot...@li...> > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. Access general SPARQL-endpoint (Alexander Sidorov) > 2. Re: Access general SPARQL-endpoint (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 9 Mar 2010 19:52:56 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello! > > I need to access Virtuoso but not their ADO.NET provider (so > VirtuosoManager > doesn't work for me) but through SPARQL protocol ( > lod.openlinksw.com/sparql). > What classes should I use? > > Regards, > Alexander > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Wed, 10 Mar 2010 01:41:28 -0800 > From: "Rob Vesse" <rv...@do...> > Subject: Re: [dotNetRDF-develop] Access general SPARQL-endpoint > To: "dotNetRDF Developer Discussion and Feature Request" > <dot...@li...> > Message-ID: <6399325e$1cddbcd$269c081b$@com> > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > You can either use the SparqlRemoteEndpoint > (VDS.RDF.Query.SparqlRemoteEndpoint) class which provides specific methods > for making SELECT/ASK and CONSTRUCT/DESCRIBE queries and can connect to any > SPARQL endpoint with the ability to specify the default & named graph URIs > you want to use. > > Or you can use the SparqlConnector (VDS.RDF.Storage.SparqlConnector) which > has the same basic interface (IGenericIOManager) as the VirtuosoManager and > gives you read-only storage access to an endpoint. The disadvantage of > this class is that it isn't as easy to specify default/named graph URIs if > you need to (the advantage being that it implements the IGenericIOManager > interface) > > Take a look at > http://dotnetrdf.org/content.asp?pageID=Querying%20with%20SPARQL for > details on using the SparqlRemoteEndpoint class > > If you have any further questions let me know > > Rob Vesse > > ---------------------------------------- > From: "Alexander Sidorov" <ale...@gm...> > Sent: Tuesday, March 09, 2010 6:52 PM > To: dot...@li... > Subject: [dotNetRDF-develop] Access general SPARQL-endpoint > > Hello! > > I need to access Virtuoso but not their ADO.NET provider (so > VirtuosoManager doesn't work for me) but through SPARQL protocol > (lod.openlinksw.com/sparql). What classes should I use? > > Regards, > Alexander > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 4, Issue 3 > *********************************************** > |
|
From: Rob V. <rv...@do...> - 2010-03-10 09:43:39
|
Hi Alexander You can either use the SparqlRemoteEndpoint (VDS.RDF.Query.SparqlRemoteEndpoint) class which provides specific methods for making SELECT/ASK and CONSTRUCT/DESCRIBE queries and can connect to any SPARQL endpoint with the ability to specify the default & named graph URIs you want to use. Or you can use the SparqlConnector (VDS.RDF.Storage.SparqlConnector) which has the same basic interface (IGenericIOManager) as the VirtuosoManager and gives you read-only storage access to an endpoint. The disadvantage of this class is that it isn't as easy to specify default/named graph URIs if you need to (the advantage being that it implements the IGenericIOManager interface) Take a look at http://dotnetrdf.org/content.asp?pageID=Querying%20with%20SPARQL for details on using the SparqlRemoteEndpoint class If you have any further questions let me know Rob Vesse ---------------------------------------- From: "Alexander Sidorov" <ale...@gm...> Sent: Tuesday, March 09, 2010 6:52 PM To: dot...@li... Subject: [dotNetRDF-develop] Access general SPARQL-endpoint Hello! I need to access Virtuoso but not their ADO.NET provider (so VirtuosoManager doesn't work for me) but through SPARQL protocol (lod.openlinksw.com/sparql). What classes should I use? Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-03-09 18:53:04
|
Hello! I need to access Virtuoso but not their ADO.NET provider (so VirtuosoManager doesn't work for me) but through SPARQL protocol (lod.openlinksw.com/sparql). What classes should I use? Regards, Alexander |
|
From: Rob V. <rv...@do...> - 2010-03-04 09:34:48
|
Hi Aleksandr
You can use the TriplePattern, GraphPattern etc classes to build queries in
theory but much of that part of the API has protected constructors and
methods to stop people building completely invalid queries. For dynamically
building SPARQL queries I've recently added a SparqlParameterizedString
class to the source in response to a suggestion from another user. This
allows you to build a SPARQL query from a base string in the style of ADO
e.g.
//Assumes you already have a VirtuosoManager in the variable manager
SparqlParameterizedString queryString = new SparqlParameterizedString();
queryString.QueryText = "SELECT * WHERE {?subj a @type ; @prop ?value .}";
queryString.SetUri("type", new Uri("http://example.org/myType"));
queryString.SetUri("prop", new Uri("http://example.org/myProperty"));
Object results = manager.ExecuteQuery(queryString.ToString());
The parameterized string allows you to insert values into a base query
string where the parameters are specified ADO.Net style as @param - there
are SetUri(), SetLiteral() and SetBlankNode() methods to insert values as
well as a SetParameter() method to insert an existing INode instance into
the query. When you call the ToString() method the values for the
parameters get inserted into the String with the proper formatting such that
the output is a valid SPARQL query string.
Would it be helpful to have the ability to insert an entire triple into the
string as this could be added if you needed it?
This code was added as of revision 635 and will be part of the next release
(0.2.1) which should hopefully be out in the next week or so.
Hope that helps,
Rob Vesse
From: Aleksandr A. Zaripov [mailto:za...@tp...]
Sent: 04 March 2010 03:46
To: dot...@li...
Subject: [dotNetRDF-develop] Building sparql query
hi
I'm searching for some way to build a sparql query from some objects and
execute it against Virtuoso. I found TriplePattern, GraphPattern, Filter,
Union etc. in Algebra namespace, but as I understand, there is no way to
convert them into query string?
С уважением, Зарипов Александр
za...@tp...
|
|
From: Aleksandr A. Z. <za...@tp...> - 2010-03-04 04:10:10
|
hi I'm searching for some way to build a sparql query from some objects and execute it against Virtuoso. I found TriplePattern, GraphPattern, Filter, Union etc. in Algebra namespace, but as I understand, there is no way to convert them into query string? С уважением, Зарипов Александр za...@tp... |
|
From: Rob V. <ra...@ec...> - 2010-03-02 09:38:04
|
Hi Alexander I have added this as requested as of revision 637 - default remains ReadCommitted Rob From: Alexander Sidorov [mailto:ale...@gm...] Sent: 01 March 2010 12:38 To: dot...@li... Subject: [dotNetRDF-develop] VirtuosoManager IsolationLevel Hello! I like how transactions are integrated into VirtuosoManager. But although current implementation suits for usual cases (as default IsolationLevel is ReadCommitted), I think it would be better to make one more Open method overload with IsolationLevel parameter. Regards, Alexander |
|
From: Alexander S. <ale...@gm...> - 2010-03-01 12:45:51
|
Hello! I like how transactions are integrated into VirtuosoManager. But although current implementation suits for usual cases (as default IsolationLevel is ReadCommitted), I think it would be better to make one more Open method overload with IsolationLevel parameter. Regards, Alexander |
|
From: Rob V. <ra...@ec...> - 2010-02-26 17:13:53
|
Hi Alexander There were lots of quotes in the example since it was a long literal, actually think in reality it would just escape the quote as a \" rather than generating a long literal. Have changed SparqlParameterizedString in revision 635 so it accepts parameter names with/without the @ at the start. Made the change in the SetParameter() function where I insert the values into the parameter dictionary instead of the ToString() method since I prefer to store the parameter names without the @ on the front since it's implicit in the fact that it's a parameter. Rob From: Alexander Sidorov [mailto:ale...@gm...] Sent: 26 February 2010 16:43 To: dot...@li... Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 3, Issue 4 Hi Rob, I like the idea of escaping encapsulation into TurtleWriterContext. I'll check it's escaping capabilities some time later. I didn't understand, why there are so many quotations in your example... SparqlParameterizedString doesn't work with parameters starting with @ (SparqlParameterizedString.ToString method calles replace without checking if parameter starts from @). People who worked with ADO.NET are used to setting full parameter name (@ symbol concatenated with parameter name). For example, SQL Server ADO.NET implementation supports both variations: you can add parameter to collection with or without starting @. I think it would be useful to implement similar behaviour. The shortest solution is the follosing: output = output.Replace(param.StartsWith("@")? "" : "@" + param, this._writerContext.FormatNode(this._parameters[param], Writing.NodeFormat.UncompressedTurtle)); But may be it would be better to look at ADO.NET implementation. Regards, Alexander 2010/2/26 <dot...@li...> Send Dotnetrdf-develop mailing list submissions to dot...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop or, via email, send a message with subject or body 'help' to dot...@li... You can reach the person managing the list at dot...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Dotnetrdf-develop digest..." Today's Topics: 1. Re: Dotnetrdf-develop Digest, Vol 3, Issue 3 (Alexander Sidorov) 2. Re: SPARQL Parameterized String (Rob Vesse) ---------------------------------------------------------------------- Message: 1 Date: Fri, 26 Feb 2010 14:21:01 +0100 From: Alexander Sidorov <ale...@gm...> Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 3, Issue 3 To: dot...@li... Message-ID: <828...@ma...> Content-Type: text/plain; charset="iso-8859-1" Hi Rob, In general I like the approach you have chosen. But I looked through the sources and haven't found any escaping. What if the literal from your example contains quotation? At the moment I can't tell what symbols exactly should be escaped... but you can look at SqlCommand sources. Also there is some information about it in the presentation (for example, slide 35). Regards, Alexander 2010/2/26 <dot...@li...> > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. SPARQL escaping helper class (Alexander Sidorov) > 2. Re: SPARQL escaping helper class (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Fri, 26 Feb 2010 10:00:11 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: [dotNetRDF-develop] SPARQL escaping helper class > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello! > > I think it would be useful to have a helper class for escaping SPARQL > queries (look this: > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > Regards, > Alexander > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Fri, 26 Feb 2010 12:00:42 -0000 > From: "Rob Vesse" <ra...@ec...> > Subject: Re: [dotNetRDF-develop] SPARQL escaping helper class > To: "'dotNetRDF Developer Discussion and Feature Request'" > <dot...@li...> > Cc: ale...@gm... > Message-ID: > <EMEW3|6a27e0494e3d986b456109309e7d7fffm1PC0p06rav08r| > ecs.soton.ac.uk|004a01cab6db$522b4160$f681c420$@soton.ac.uk> > > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > > > That is an excellent suggestion, I have added a SparqlParameterizedString > class as of revision 631. It takes a base query string with parameters in > the ADO.Net style like so: > > > > SparqlParameterizedString queryString = new > SparqlParameterizedString("SELECT * WHERE {?s a @type}"); > > > > Or you can initialise an empty string and then use the QueryText property > to > get/set/append to the raw query text > > Then there's a variety of methods for setting the parameters (SetLiteral, > SetUri and SetBlankNode) which insert values for the parameters e.g. > > > > queryString.SetUri("type", new Uri("http://example.org/myType")); > > > > The actual value of the query string is returned by the ToString() method, > so for the above example ToString() returns the following: > > > > SELECT * WHERE {?s a <http://example.org/myType>} > > > > If the user was to instead try to inject something by setting a string like > so this wouldn't work, they'd simply get back the entire thing enclosed in > the literal so they can't change the value of the original query. > > > > queryString.SetLiteral("type", "<http://example.org/myType> ; ?prop > ?value"); > > > > Results in: > > > > SELECT * WHERE {?s a "<http://example.org/myType> ; ?prop ?value"} > > > > Take a look and let me know what you think of it - does it do everything > you > need/want it to? > > > > The class is also reusable in that if you set a parameter that has already > been set it just changes the value for that parameter so that next time you > call ToString() you get the query with the new parameter values inserted > i.e. you don't have to instantiate a new instance of the class if you want > to make a query multiple times and substitute in different values each > time. > > > > Thanks, > > Rob > > > > From: Alexander Sidorov [mailto:ale...@gm...] > Sent: 26 February 2010 09:00 > To: dot...@li... > Subject: [dotNetRDF-develop] SPARQL escaping helper class > > > > Hello! > > I think it would be useful to have a helper class for escaping SPARQL > queries (look this: > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > Regards, > Alexander > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ---------------------------------------------------------------------------- -- > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 3, Issue 3 > *********************************************** > -------------- next part -------------- An HTML attachment was scrubbed... ------------------------------ Message: 2 Date: Fri, 26 Feb 2010 15:00:36 -0000 From: "Rob Vesse" <ra...@ec...> Subject: Re: [dotNetRDF-develop] SPARQL Parameterized String To: "'dotNetRDF Developer Discussion and Feature Request'" <dot...@li...> Message-ID: <EMEW3|3e15d6d36b0f21d15dcd204abbd6395em1PF0l06rav08r|ecs.soton.ac.uk|009601 cab6f4$741c2f00$5c548d00$@soton.ac.uk> Content-Type: text/plain; charset="us-ascii" Hi Alexander For the purposes of standardisation the escaping is handled by the fact that the TurtleWriterContext class already does all the escaping we need. If you look at the ToString() method you'll see if calls the FormatNode method of its local instance of this class which outputs the Node as an appropriate string with escapes as necessary. It is not necessary to be quite as paranoid as the slides suggest since as long as we format the value into valid Turtle syntax for the Node then it will be perfectly safe in a SPARQL query. For example if you were to use a literal with a quote it would insert it as a long literal in the SPARQL query e.g. SparqlParameterizedString queryString = new SparqlParameterizedString(); queryString.QueryText = @"PREFIX : <http://example.org/> SELECT * WHERE {?s :property @value}"; queryString.SetLiteral("value", "This string contains a \" quote character"); Results in the following SPARQL string when ToString() is called: PREFIX : <http://example.org> SELECT * WHERE {?s :property """This string contains a " quote character"""} Which is a valid long literal and doesn't allow stuff to be injected, even if Unicode (\u and \U) escapes are used like the slides discuss this doesn't matter since the value just remains encoded as part of the string and can't be used to break out of the quotes and inject stuff into the query. Rob From: Alexander Sidorov [mailto:ale...@gm...] Sent: 26 February 2010 13:21 To: dot...@li... Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 3, Issue 3 Hi Rob, In general I like the approach you have chosen. But I looked through the sources and haven't found any escaping. What if the literal from your example contains quotation? At the moment I can't tell what symbols exactly should be escaped... but you can look at SqlCommand sources. Also there is some information about it in the presentation (for example, slide 35). Regards, Alexander 2010/2/26 <dot...@li...> Send Dotnetrdf-develop mailing list submissions to dot...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop or, via email, send a message with subject or body 'help' to dot...@li... You can reach the person managing the list at dot...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Dotnetrdf-develop digest..." Today's Topics: 1. SPARQL escaping helper class (Alexander Sidorov) 2. Re: SPARQL escaping helper class (Rob Vesse) ---------------------------------------------------------------------- Message: 1 Date: Fri, 26 Feb 2010 10:00:11 +0100 From: Alexander Sidorov <ale...@gm...> Subject: [dotNetRDF-develop] SPARQL escaping helper class To: dot...@li... Message-ID: <828...@ma...> Content-Type: text/plain; charset="iso-8859-1" Hello! I think it would be useful to have a helper class for escaping SPARQL queries (look this: http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). Regards, Alexander -------------- next part -------------- An HTML attachment was scrubbed... ------------------------------ Message: 2 Date: Fri, 26 Feb 2010 12:00:42 -0000 From: "Rob Vesse" <ra...@ec...> Subject: Re: [dotNetRDF-develop] SPARQL escaping helper class To: "'dotNetRDF Developer Discussion and Feature Request'" <dot...@li...> Cc: ale...@gm... Message-ID: <EMEW3|6a27e0494e3d986b456109309e7d7fffm1PC0p06rav08r|ecs.soton.ac.uk|004a01 cab6db$522b4160$f681c420$@soton.ac.uk> Content-Type: text/plain; charset="us-ascii" Hi Alexander That is an excellent suggestion, I have added a SparqlParameterizedString class as of revision 631. It takes a base query string with parameters in the ADO.Net style like so: SparqlParameterizedString queryString = new SparqlParameterizedString("SELECT * WHERE {?s a @type}"); Or you can initialise an empty string and then use the QueryText property to get/set/append to the raw query text Then there's a variety of methods for setting the parameters (SetLiteral, SetUri and SetBlankNode) which insert values for the parameters e.g. queryString.SetUri("type", new Uri("http://example.org/myType")); The actual value of the query string is returned by the ToString() method, so for the above example ToString() returns the following: SELECT * WHERE {?s a <http://example.org/myType>} If the user was to instead try to inject something by setting a string like so this wouldn't work, they'd simply get back the entire thing enclosed in the literal so they can't change the value of the original query. queryString.SetLiteral("type", "<http://example.org/myType> ; ?prop ?value"); Results in: SELECT * WHERE {?s a "<http://example.org/myType> ; ?prop ?value"} Take a look and let me know what you think of it - does it do everything you need/want it to? The class is also reusable in that if you set a parameter that has already been set it just changes the value for that parameter so that next time you call ToString() you get the query with the new parameter values inserted i.e. you don't have to instantiate a new instance of the class if you want to make a query multiple times and substitute in different values each time. Thanks, Rob From: Alexander Sidorov [mailto:ale...@gm...] Sent: 26 February 2010 09:00 To: dot...@li... Subject: [dotNetRDF-develop] SPARQL escaping helper class Hello! I think it would be useful to have a helper class for escaping SPARQL queries (look this: http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). Regards, Alexander -------------- next part -------------- An HTML attachment was scrubbed... ------------------------------ ---------------------------------------------------------------------------- -- Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev ------------------------------ _______________________________________________ Dotnetrdf-develop mailing list Dot...@li... https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop End of Dotnetrdf-develop Digest, Vol 3, Issue 3 *********************************************** -------------- next part -------------- An HTML attachment was scrubbed... ------------------------------ ---------------------------------------------------------------------------- -- Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev ------------------------------ _______________________________________________ Dotnetrdf-develop mailing list Dot...@li... https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop End of Dotnetrdf-develop Digest, Vol 3, Issue 4 *********************************************** |
|
From: Alexander S. <ale...@gm...> - 2010-02-26 16:43:35
|
Hi Rob, I like the idea of escaping encapsulation into TurtleWriterContext. I'll check it's escaping capabilities some time later. I didn't understand, why there are so many quotations in your example... SparqlParameterizedString doesn't work with parameters starting with @ (SparqlParameterizedString.ToString method calles replace without checking if parameter starts from @). People who worked with ADO.NET are used to setting full parameter name (@ symbol concatenated with parameter name). For example, SQL Server ADO.NET implementation supports both variations: you can add parameter to collection with or without starting @. I think it would be useful to implement similar behaviour. The shortest solution is the follosing: output = output.Replace(param.StartsWith("@")? "" : "@" + param, this._writerContext.FormatNode(this._parameters[param], Writing.NodeFormat.UncompressedTurtle)); But may be it would be better to look at ADO.NET implementation. Regards, Alexander 2010/2/26 <dot...@li...> > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. Re: Dotnetrdf-develop Digest, Vol 3, Issue 3 (Alexander Sidorov) > 2. Re: SPARQL Parameterized String (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Fri, 26 Feb 2010 14:21:01 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 3, > Issue 3 > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hi Rob, > > In general I like the approach you have chosen. But I looked through the > sources and haven't found any escaping. What if the literal from your > example contains quotation? At the moment I can't tell what symbols exactly > should be escaped... but you can look at SqlCommand sources. Also there is > some information about it in the presentation (for example, slide 35). > > Regards, > Alexander > > 2010/2/26 <dot...@li...> > > > Send Dotnetrdf-develop mailing list submissions to > > dot...@li... > > > > To subscribe or unsubscribe via the World Wide Web, visit > > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > or, via email, send a message with subject or body 'help' to > > dot...@li... > > > > You can reach the person managing the list at > > dot...@li... > > > > When replying, please edit your Subject line so it is more specific > > than "Re: Contents of Dotnetrdf-develop digest..." > > > > > > Today's Topics: > > > > 1. SPARQL escaping helper class (Alexander Sidorov) > > 2. Re: SPARQL escaping helper class (Rob Vesse) > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Fri, 26 Feb 2010 10:00:11 +0100 > > From: Alexander Sidorov <ale...@gm...> > > Subject: [dotNetRDF-develop] SPARQL escaping helper class > > To: dot...@li... > > Message-ID: > > <828...@ma...> > > Content-Type: text/plain; charset="iso-8859-1" > > > > Hello! > > > > I think it would be useful to have a helper class for escaping SPARQL > > queries (look this: > > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > > > Regards, > > Alexander > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > > > ------------------------------ > > > > Message: 2 > > Date: Fri, 26 Feb 2010 12:00:42 -0000 > > From: "Rob Vesse" <ra...@ec...> > > Subject: Re: [dotNetRDF-develop] SPARQL escaping helper class > > To: "'dotNetRDF Developer Discussion and Feature Request'" > > <dot...@li...> > > Cc: ale...@gm... > > Message-ID: > > <EMEW3|6a27e0494e3d986b456109309e7d7fffm1PC0p06rav08r| > > ecs.soton.ac.uk|004a01cab6db$522b4160$f681c420$@soton.ac.uk> > > > > Content-Type: text/plain; charset="us-ascii" > > > > Hi Alexander > > > > > > > > That is an excellent suggestion, I have added a SparqlParameterizedString > > class as of revision 631. It takes a base query string with parameters > in > > the ADO.Net style like so: > > > > > > > > SparqlParameterizedString queryString = new > > SparqlParameterizedString("SELECT * WHERE {?s a @type}"); > > > > > > > > Or you can initialise an empty string and then use the QueryText property > > to > > get/set/append to the raw query text > > > > Then there's a variety of methods for setting the parameters (SetLiteral, > > SetUri and SetBlankNode) which insert values for the parameters e.g. > > > > > > > > queryString.SetUri("type", new Uri("http://example.org/myType")); > > > > > > > > The actual value of the query string is returned by the ToString() > method, > > so for the above example ToString() returns the following: > > > > > > > > SELECT * WHERE {?s a <http://example.org/myType>} > > > > > > > > If the user was to instead try to inject something by setting a string > like > > so this wouldn't work, they'd simply get back the entire thing enclosed > in > > the literal so they can't change the value of the original query. > > > > > > > > queryString.SetLiteral("type", "<http://example.org/myType> ; ?prop > > ?value"); > > > > > > > > Results in: > > > > > > > > SELECT * WHERE {?s a "<http://example.org/myType> ; ?prop ?value"} > > > > > > > > Take a look and let me know what you think of it - does it do everything > > you > > need/want it to? > > > > > > > > The class is also reusable in that if you set a parameter that has > already > > been set it just changes the value for that parameter so that next time > you > > call ToString() you get the query with the new parameter values inserted > > i.e. you don't have to instantiate a new instance of the class if you > want > > to make a query multiple times and substitute in different values each > > time. > > > > > > > > Thanks, > > > > Rob > > > > > > > > From: Alexander Sidorov [mailto:ale...@gm...] > > Sent: 26 February 2010 09:00 > > To: dot...@li... > > Subject: [dotNetRDF-develop] SPARQL escaping helper class > > > > > > > > Hello! > > > > I think it would be useful to have a helper class for escaping SPARQL > > queries (look this: > > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > > > Regards, > > Alexander > > > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > > > ------------------------------ > > > > > > > ------------------------------------------------------------------------------ > > Download Intel® Parallel Studio Eval > > Try the new software tools for yourself. Speed compiling, find bugs > > proactively, and fine-tune applications for parallel performance. > > See why Intel Parallel Studio got high marks during beta. > > http://p.sf.net/sfu/intel-sw-dev > > > > ------------------------------ > > > > _______________________________________________ > > Dotnetrdf-develop mailing list > > Dot...@li... > > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > > > > End of Dotnetrdf-develop Digest, Vol 3, Issue 3 > > *********************************************** > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Fri, 26 Feb 2010 15:00:36 -0000 > From: "Rob Vesse" <ra...@ec...> > Subject: Re: [dotNetRDF-develop] SPARQL Parameterized String > To: "'dotNetRDF Developer Discussion and Feature Request'" > <dot...@li...> > Message-ID: > <EMEW3|3e15d6d36b0f21d15dcd204abbd6395em1PF0l06rav08r| > ecs.soton.ac.uk|009601cab6f4$741c2f00$5c548d00$@soton.ac.uk> > > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > > > For the purposes of standardisation the escaping is handled by the fact > that > the TurtleWriterContext class already does all the escaping we need. If > you > look at the ToString() method you'll see if calls the FormatNode method of > its local instance of this class which outputs the Node as an appropriate > string with escapes as necessary. > > > > It is not necessary to be quite as paranoid as the slides suggest since as > long as we format the value into valid Turtle syntax for the Node then it > will be perfectly safe in a SPARQL query. For example if you were to use a > literal with a quote it would insert it as a long literal in the SPARQL > query e.g. > > > > SparqlParameterizedString queryString = new SparqlParameterizedString(); > > queryString.QueryText = @"PREFIX : <http://example.org/> > > SELECT * WHERE {?s :property @value}"; > > queryString.SetLiteral("value", "This string contains a \" quote > character"); > > > > Results in the following SPARQL string when ToString() is called: > > > > PREFIX : <http://example.org> > > SELECT * WHERE {?s :property """This string contains a " quote > character"""} > > > > Which is a valid long literal and doesn't allow stuff to be injected, even > if Unicode (\u and \U) escapes are used like the slides discuss this > doesn't > matter since the value just remains encoded as part of the string and can't > be used to break out of the quotes and inject stuff into the query. > > > > Rob > > > > From: Alexander Sidorov [mailto:ale...@gm...] > Sent: 26 February 2010 13:21 > To: dot...@li... > Subject: Re: [dotNetRDF-develop] Dotnetrdf-develop Digest, Vol 3, Issue 3 > > > > Hi Rob, > > In general I like the approach you have chosen. But I looked through the > sources and haven't found any escaping. What if the literal from your > example contains quotation? At the moment I can't tell what symbols exactly > should be escaped... but you can look at SqlCommand sources. Also there is > some information about it in the presentation (for example, slide 35). > > Regards, > Alexander > > 2010/2/26 <dot...@li...> > > Send Dotnetrdf-develop mailing list submissions to > dot...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > or, via email, send a message with subject or body 'help' to > dot...@li... > > You can reach the person managing the list at > dot...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Dotnetrdf-develop digest..." > > > Today's Topics: > > 1. SPARQL escaping helper class (Alexander Sidorov) > 2. Re: SPARQL escaping helper class (Rob Vesse) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Fri, 26 Feb 2010 10:00:11 +0100 > From: Alexander Sidorov <ale...@gm...> > Subject: [dotNetRDF-develop] SPARQL escaping helper class > To: dot...@li... > Message-ID: > <828...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > Hello! > > I think it would be useful to have a helper class for escaping SPARQL > queries (look this: > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > Regards, > Alexander > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > Message: 2 > Date: Fri, 26 Feb 2010 12:00:42 -0000 > From: "Rob Vesse" <ra...@ec...> > Subject: Re: [dotNetRDF-develop] SPARQL escaping helper class > To: "'dotNetRDF Developer Discussion and Feature Request'" > <dot...@li...> > Cc: ale...@gm... > Message-ID: > > <EMEW3|6a27e0494e3d986b456109309e7d7fffm1PC0p06rav08r|ecs.soton.ac.uk > |004a01 > cab6db$522b4160$f681c420$@soton.ac.uk> > > Content-Type: text/plain; charset="us-ascii" > > Hi Alexander > > > > That is an excellent suggestion, I have added a SparqlParameterizedString > class as of revision 631. It takes a base query string with parameters in > the ADO.Net style like so: > > > > SparqlParameterizedString queryString = new > SparqlParameterizedString("SELECT * WHERE {?s a @type}"); > > > > Or you can initialise an empty string and then use the QueryText property > to > get/set/append to the raw query text > > Then there's a variety of methods for setting the parameters (SetLiteral, > SetUri and SetBlankNode) which insert values for the parameters e.g. > > > > queryString.SetUri("type", new Uri("http://example.org/myType")); > > > > The actual value of the query string is returned by the ToString() method, > so for the above example ToString() returns the following: > > > > SELECT * WHERE {?s a <http://example.org/myType>} > > > > If the user was to instead try to inject something by setting a string like > so this wouldn't work, they'd simply get back the entire thing enclosed in > the literal so they can't change the value of the original query. > > > > queryString.SetLiteral("type", "<http://example.org/myType> ; ?prop > ?value"); > > > > Results in: > > > > SELECT * WHERE {?s a "<http://example.org/myType> ; ?prop ?value"} > > > > Take a look and let me know what you think of it - does it do everything > you > need/want it to? > > > > The class is also reusable in that if you set a parameter that has already > been set it just changes the value for that parameter so that next time you > call ToString() you get the query with the new parameter values inserted > i.e. you don't have to instantiate a new instance of the class if you want > to make a query multiple times and substitute in different values each > time. > > > > Thanks, > > Rob > > > > From: Alexander Sidorov [mailto:ale...@gm...] > Sent: 26 February 2010 09:00 > To: dot...@li... > Subject: [dotNetRDF-develop] SPARQL escaping helper class > > > > Hello! > > I think it would be useful to have a helper class for escaping SPARQL > queries (look this: > http://www.slideshare.net/Morelab/sparqlrdqlsparul-injection). > > Regards, > Alexander > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ---------------------------------------------------------------------------- > -- > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 3, Issue 3 > *********************************************** > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > > ------------------------------ > > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > > ------------------------------ > > _______________________________________________ > Dotnetrdf-develop mailing list > Dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > > End of Dotnetrdf-develop Digest, Vol 3, Issue 4 > *********************************************** > |