From: Miloš C. <cha...@ho...> - 2014-04-20 18:42:23
|
Hi Tomasz and Rob, After some time I am writing again. I had done some development and the first version of library core is nearly to be finished - it will support only a small subset of features (for master thesis I want effectively query the queries containing only triples, but as effectively as possible). I have signed for PhD study, and there I will continue in the work. You can see the current version on https://bitbucket.org/slupka/dotnetr2rmlstore . (The code is not yet documented, because there i salso some refactor needed, but in a month, it will change). And I want to ask you, Tomasz, whether you could check a bug https://bitbucket.org/r2rml4net/core/issue/17/joinconditions-returning-all-join . I am using the last unstable version from nuget (the stable version has not a proper reference to the dotNetRDF library, so it cannot be rewritten in .config file to a newer version). It seems to me, that I won't need any change in the dotNetRDF library, only minor things in R2R2ML library. And maybe in the future we can discuss an optimization, because now I need some code to duplicate and slightly modify (because it is not public or does not have an usable interface for me). It will need much more optimization, but I think that it will be usable in future (especially for presenting data already stored in RDBMS). Best Regards, Miloš -----Original Message----- From: plo...@gm... [mailto:plo...@gm...] On Behalf Of Tomasz Pluskiewicz Sent: Thursday, February 13, 2014 2:34 PM To: dotNetRDF Developer Discussion and Feature Request Cc: Miloš Chaloupka Subject: Re: [dotNetRDF-Develop] DotNetRDF Hi Miloš, Yes I did get your email! Thank you and sorry for late reply. I have been thinking long ago about using the R2RML mapping to translate SPARQL into SQL. Unfortunately there is always little time and more pressing issues and eventually I haven't even finished R2RML.net in 100%. However I will be happy to help with your project shall you desire to use the R2RML.net mapping as input and dotNetRDF as the query processor. As Rob said in his response, you could implement the existing interfaces to read through an input SQL query and transform it to SPARQL. There you will need the mappings. Most difficult is probably the actual algorithm for converting one query into another. Other than that of course you will need a way to process the SPARQL query. dotNetRDF parses it into a nice abstract model so you should be fine. Lastly you will eventually need a way to produce SQL queries for different DBMS flavours. On the mapping side you would have to make sure that R2RML.net exposes all the required mapping data. If you need any changes I encourage you to fork my repository and we'll try to adjust it to your needs. Regards, Tom PS There's also a blog posts which briefly discusses a way to do what you try to achive: http://antoniogarrote.wordpress.com/2011/01/10/translating-sparql-queries-into-sql-using-r2rml/ On Thu, Feb 13, 2014 at 12:09 PM, Rob Vesse <rv...@do...> wrote: > Hi Milos > > To be honest we've moved away from SQL backed storage because in the > past it hasn't proven that performant. However providing a R2RML > adaptor layer does make a lot more sense and provides a better > solution than what we've tried in the past (which was based on storing triples natively in a SQL database). > > I would suggest looking at implementing a IStorageProvider which also > implements IQueryableStorage if you are intending to support SPARQL. > Since this likely involves some sort of dependency upon Tom's existing > R2RML library then this would be best implemented as a separate > library in a similar way to the existing Data.Virtuoso library because > we want to mimize dependencies in the core library. I'd suggest > reading up on the Storage API > (https://bitbucket.org/dotnetrdf/dotnetrdf/wiki/UserGuide/Storage%20AP > I) if you haven't already and taking a look at the implementations of > existing IStorageProviders. > > Contribution wise I would suggest you create your own fork, work in > there and then submit pull request(s) as and when you have something > you thing is sufficiently stable for inclusion in the main project. > Please take a look at our Code Style guidelines > (https://bitbucket.org/dotnetrdf/dotnetrdf/wiki/DeveloperGuide/Code%20 > Style) > and Test Environment > (https://bitbucket.org/dotnetrdf/dotnetrdf/wiki/DeveloperGuide/Test%20 > Environment) documentation. Any substantial feature contribution like > this will need to be accompanied by appropriate tests which I > appreciate can be tricky for testing that requires on external > resources I.e. SQL servers but you can use the approach we use for > existing storage to provide developer configurable settings for test > setup and skip tests where the test system is unavailable. > > And of course if you have questions about anything then please ask on > the developer list which I've CC'd on this response, this is a > subscription based list which you will need to subscribe to via > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > > Best Regards, > > Rob Vesse > > From: Miloš Chaloupka <cha...@ho...> > Date: Monday, 10 February 2014 09:18 > To: Rob Vesse <rv...@do...> > Subject: DotNetRDF > > Hi Rob, > > > > I have found you as an author of DotNetRDF so I hope I am contacting > the right person. I have already written to Tomasz Pluskiewicz, but > got no response yet, so I am not really sure, whether he even got the message. > > > > I am currently writing my master thesis "Querying RDF graphs stored in > a relational database using SPARQL and R2RML" and I am choosing how I > will write the implementation. I don't want to write a solution that > will end as an academic work with no chance of real use so I think, > that it would be nice to make it as a "part" of dotNetRDF. I want to > implement it as a store, that will be queryable using SPARQL according > to R2RML mapping. I can see that you have already listed several > libraries and that is in fact the only thing I want. Maybe you want to > ask why I am asking before I am starting the implementation, it is > because my supervisor wants to make the implementation as a part of > something bigger so I want to know whether it is possible. Are you > interested in such storage implementation? And if so, do you have any demands? > > > > Thank you for your reply, > > best regards, > > Miloš Chaloupka > > > ---------------------------------------------------------------------- > -------- > Android apps run on BlackBerry 10 > Introducing the new BlackBerry 10.2.1 Runtime for Android apps. > Now with support for Jelly Bean, Bluetooth, Mapview and more. > Get your Android app in front of a whole new audience. Start now. > http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg. > clktrk _______________________________________________ > dotNetRDF-develop mailing list > dot...@li... > https://lists.sourceforge.net/lists/listinfo/dotnetrdf-develop > |