Re: Enterprise level RDF Scripting ( was: [foaf-protocols] foaf classes for primary Topic )
On 1 Feb 2010, at 15:08, Aldo Bucchi wrote: > Hi, > > On Mon, Feb 1, 2010 at 9:11 AM, Story Henry wrote: >> >> On 31 Jan 2010, at 17:25, Peter Williams wrote: >> >>> Let's build that linq2rdfa driver! It’s the killer app for the semweb, in >>> Microsoft land. > > Cool! > This topic is coming up again ;) > >> >> I agreee. From the Java perspective this is very much what I found too. >> >> When I first learned RDF I was really intrigued about how it related to >> Object Oriented Programming, which I was familiar with. So I tried to write >> a mapper for it to Java, which to my astonishment was really a lot easier >> than I thought. This really helped me understand how OO programming and the >> semantic web mesh together. Having these tools for run of the mill >> programmers is really important as Peter points out to get them to overcome >> the fear of the new: by bringing the semweb back to something they know. >> This thought is what led me to develop the Sommer library: >> >> https://sommer.dev.java.net/sommer/index.html >> >> Doin this made it clear that really the major difference is that we name >> things and fields with URIs. >> >> The next difference is that of Graphs, which is a little more difficult to >> merge correctly into OO languages (or for that matter most traditional >> programming languages). >> >> Still before tools such as Hibernate and such for Java came out, people >> worked with SQL directly. So people went on a long time with this pain >> point... To start off we need really good examples of the usage of RDF. And >> I think foaf+ssl is that key driver, because it has the ability to give >> people access to things they would not otherwise have had access to: eg: >> going to a party. > > Henry: > Here's an idea. Instead of trying to bake this cake by ourselves, can > you tap into Martin Odersky's team and propose some use cases? I could > help with that if you get his attention. > He's the guy behind Scala and they are on a rampage these days. Yes, I have played a little with Scala. It should be easy to fit in. I think some initial work may even have been done by the Elmo folks. http://openrdf.org/ . > > Now. Even w/o tweaking the compiler or the grammar to support URIs, > the DSL capabilities of Scala make it possible to do beautiful things: > http://code.google.com/p/scardf/ yes, that is interesting... Thanks for the pointer. > > That project is a good start but there are still some issues to address. > > I have my own experimental framework but, just as you describe, N1 > issue is native type integration and we should explore this at a lower > level. If we could just get native URIs / XSD datatypes things would > be awesome. yes, and one should not get stuck with xsd data types. I think in fact that is a problem with many frameworks is that they are stuck into not allowing datatpes as subjects for example. "123"^^xsd:int . is very similar to [ xsd:int "123" ]. which in N3 can be written. "123"^xsd:int . > > Then, Number 2 is graph traversal which can be solved by having some > sort of path language baked in, ( which is compiled to a single query > underneath instead of being evaluated step by step via API, which is > the case in scardf ) . sounds interesting. > > Number 3 is datasource management. Tying up a datasource as an > implicit value or bound to a thread. Nothing new under the Sun here ( > pun intended ) ;) > This is where things get interesting as the datasource could actually > be a full blown Linked Data client such as Virtuoso with Spongers > turned on. you mean something like tying to a graph or a virtual graph? > > Finally. My initial look at the Scala grammar suggests that we should > be able to fit in URIs. There is support for XML literals and URIs are > easily recognizable as they have a strict syntax. Qnames could also > happen. Language support would be great. I want to use Scala more myself. Though I have been in the last year moving towards email as my every day tool. Need to get back to programming a little bit... I'd be happy to support an effort such as this. I'll see how much time I have though... It depends how much time I end up spending programming again. Henry > > Regards, > A > >> >>Henry >> > > -- > Aldo Bucchi > skype:aldo.bucchi > http://www.univrz.com/ > http://aldobucchi.com/
Re: Fresnel: State of the Art?
Probably you'd find interesting these two approaches based on mix SPARQL with XML technologies: Waseem Akhtar, Jacek Kopecky, Thomas Krennwallner and Axel Polleres. XSPARQL: Traveling between the XML and RDF worlds – and avoiding the XSLT pilgrimage. In Proceedings of the 5th European Semantic Web Conference (ESWC2008), Tenerife. Spain, 2008. http://data.semanticweb.org/conference/eswc/2008/paper/119 Diego Berrueta, Jose Emilio Labra and Ivan Herman. XSLT+SPARQL: Scripting the Semantic Web with SPARQL embedded into XSLT stylesheets. In Proceedings of the 4th Workshop on Scripting for the Semantic Web (SFSW2008), co-located with ESWC2008, Tenerife, Spain, 2008. http://data.semanticweb.org/workshop/scripting/2008/paper/1 Cheers, On Mon, 2010-02-01 at 10:44 -0300, Aldo Bucchi wrote: > Hi, > > I was looking at the current JFresnel codebase and the project seems > to have little movement. I was wondering if this is the state of the > art regarding "Declarative Presentation Knowledge for RDF" or have > efforts moved elsewhere and I have missed it? > > Thanks! > A > -- Sergio Fernández
Re: Fresnel: State of the Art?
Hi Aldo, I made an small state of the art about this topic. Have a look at this http://ceur-ws.org/Vol-449/ShortPaper4.pdf Best regards, -Mariano Senior Researcher Escuela Politécnica Superior Universidad Autónoma de Madrid Spain
Re: [fresnel] Fresnel: State of the Art?
I think, it would make sense at some point in time to work on "Fresnel 2". My experiences (while implementing editing extensions for Fresnel for Hyena [1]) were as follows: - Fresnel works great for editing, with a few extensions. I've found some things to be too complicated (mainly formats and the rules for applying them) for my taste, so I would simplify those for Fresnel 2. - For HTML *display*, I now prefer templating (with ideas similar to JSP). It gives you more control and is conceptually very simple. RDF templating would benefit from standardizing, too; I've just recently seen a paper somewhere that describes (yet another...) RDF templating mechanism. - Fresnel is still useful for editing and for targetting multiple display architectures (e.g. HTML and PDF, e.g. via iText). It is perfect when a form is all you need. [1] http://hypergraphs.de/hyena/ Does this make sense? Does anyone (dis)agree (possibly vehemently ;-) ? Axel On Feb 1, 2010, at 14:44 , Aldo Bucchi wrote: > Hi, > > I was looking at the current JFresnel codebase and the project seems > to have little movement. I was wondering if this is the state of the > art regarding "Declarative Presentation Knowledge for RDF" or have > efforts moved elsewhere and I have missed it? > > Thanks! > A > > -- > Aldo Bucchi > skype:aldo.bucchi > http://www.univrz.com/ > http://aldobucchi.com/ > > PRIVILEGED AND CONFIDENTIAL INFORMATION > This message is only for the use of the individual or entity to which it is > addressed and may contain information that is privileged and confidential. If > you are not the intended recipient, please do not distribute or copy this > communication, by e-mail or otherwise. Instead, please notify us immediately > by > return e-mail. > -- axel.rauschma...@ifi.lmu.de http://www.pst.ifi.lmu.de/~rauschma/
Enterprise level RDF Scripting ( was: [foaf-protocols] foaf classes for primary Topic )
Hi, On Mon, Feb 1, 2010 at 9:11 AM, Story Henry wrote: > > On 31 Jan 2010, at 17:25, Peter Williams wrote: > >> Let's build that linq2rdfa driver! It’s the killer app for the semweb, in >> Microsoft land. Cool! This topic is coming up again ;) > > I agreee. From the Java perspective this is very much what I found too. > > When I first learned RDF I was really intrigued about how it related to > Object Oriented Programming, which I was familiar with. So I tried to write a > mapper for it to Java, which to my astonishment was really a lot easier than > I thought. This really helped me understand how OO programming and the > semantic web mesh together. Having these tools for run of the mill > programmers is really important as Peter points out to get them to overcome > the fear of the new: by bringing the semweb back to something they know. This > thought is what led me to develop the Sommer library: > > https://sommer.dev.java.net/sommer/index.html > > Doin this made it clear that really the major difference is that we name > things and fields with URIs. > > The next difference is that of Graphs, which is a little more difficult to > merge correctly into OO languages (or for that matter most traditional > programming languages). > > Still before tools such as Hibernate and such for Java came out, people > worked with SQL directly. So people went on a long time with this pain > point... To start off we need really good examples of the usage of RDF. And I > think foaf+ssl is that key driver, because it has the ability to give people > access to things they would not otherwise have had access to: eg: going to a > party. Henry: Here's an idea. Instead of trying to bake this cake by ourselves, can you tap into Martin Odersky's team and propose some use cases? I could help with that if you get his attention. He's the guy behind Scala and they are on a rampage these days. Now. Even w/o tweaking the compiler or the grammar to support URIs, the DSL capabilities of Scala make it possible to do beautiful things: http://code.google.com/p/scardf/ That project is a good start but there are still some issues to address. I have my own experimental framework but, just as you describe, N1 issue is native type integration and we should explore this at a lower level. If we could just get native URIs / XSD datatypes things would be awesome. Then, Number 2 is graph traversal which can be solved by having some sort of path language baked in, ( which is compiled to a single query underneath instead of being evaluated step by step via API, which is the case in scardf ) . Number 3 is datasource management. Tying up a datasource as an implicit value or bound to a thread. Nothing new under the Sun here ( pun intended ) ;) This is where things get interesting as the datasource could actually be a full blown Linked Data client such as Virtuoso with Spongers turned on. Finally. My initial look at the Scala grammar suggests that we should be able to fit in URIs. There is support for XML literals and URIs are easily recognizable as they have a strict syntax. Qnames could also happen. Regards, A > > Henry > > > > > > > -- Aldo Bucchi skype:aldo.bucchi http://www.univrz.com/ http://aldobucchi.com/ PRIVILEGED AND CONFIDENTIAL INFORMATION This message is only for the use of the individual or entity to which it is addressed and may contain information that is privileged and confidential. If you are not the intended recipient, please do not distribute or copy this communication, by e-mail or otherwise. Instead, please notify us immediately by return e-mail.
Fresnel: State of the Art?
Hi, I was looking at the current JFresnel codebase and the project seems to have little movement. I was wondering if this is the state of the art regarding "Declarative Presentation Knowledge for RDF" or have efforts moved elsewhere and I have missed it? Thanks! A -- Aldo Bucchi skype:aldo.bucchi http://www.univrz.com/ http://aldobucchi.com/ PRIVILEGED AND CONFIDENTIAL INFORMATION This message is only for the use of the individual or entity to which it is addressed and may contain information that is privileged and confidential. If you are not the intended recipient, please do not distribute or copy this communication, by e-mail or otherwise. Instead, please notify us immediately by return e-mail.
Re: [foaf-protocols] foaf classes for primary Topic
On 31 Jan 2010, at 17:25, Peter Williams wrote: > Let's build that linq2rdfa driver! It’s the killer app for the semweb, in > Microsoft land. I agreee. From the Java perspective this is very much what I found too. When I first learned RDF I was really intrigued about how it related to Object Oriented Programming, which I was familiar with. So I tried to write a mapper for it to Java, which to my astonishment was really a lot easier than I thought. This really helped me understand how OO programming and the semantic web mesh together. Having these tools for run of the mill programmers is really important as Peter points out to get them to overcome the fear of the new: by bringing the semweb back to something they know. This thought is what led me to develop the Sommer library: https://sommer.dev.java.net/sommer/index.html Doin this made it clear that really the major difference is that we name things and fields with URIs. The next difference is that of Graphs, which is a little more difficult to merge correctly into OO languages (or for that matter most traditional programming languages). Still before tools such as Hibernate and such for Java came out, people worked with SQL directly. So people went on a long time with this pain point... To start off we need really good examples of the usage of RDF. And I think foaf+ssl is that key driver, because it has the ability to give people access to things they would not otherwise have had access to: eg: going to a party. Henry
Re: [foaf-protocols] foaf classes for primary Topic
Peter Williams wrote: A good primer on Linq is here http://msdn.microsoft.com/en-us/magazine/cc337893.aspx. For me, a 30 year programmer, that the data queries are integrated into a mainstream language (C) is what counts. Its strongly typed (which matters to me, a confessed security engineer trained to reason with type systems transformations when engineering higher assurnace). Peter, Copied in the LOD mailing list as I think your comments should also be digested by this community. In RDF terms, linq (in C#) gets me to 80% of the RDF revolution with no effort whatsoever - having left behind rectangular sql tables and the limits of its referential integrity relations. I cannot WAIT for the linq2rdfa driver to appear. It's going to be a killer app. Just imagine a million vb programmers doing SPARQL ASK and CONSTRUCTSs - and they don’t even know (or care) that they are doing it! Whereas folks here would speak of data engineering issues in often philosophical or abstract terms (the religion of REST, in general), in linq the issues were presented to this reader in VERY concrete terms. Process a graph: means walk a object tree in memory built dynamically from the relations of the ER model. Early load a collection property means the outer collection would store references to complex "object" properties, not their values (until needed). If the references are not pointers but a restful url ref (URIs), then fine. Who cares. A pointer is a pointer. A capability is a capability. A key is a key. Certain primitives are necessary; and we cannot argue for ever about every monad. The clock is ticking on the semweb. So, so far, linq has been my bridge to PRACTICISING RDF (and thus foaf docs) - beyond issuing a sparql query based on substituting some parameter into a stored string that canned up all my design logic (when searching out the foaf+ssl pubkeys per webid). Yes, linq has limited supported for relation types (more or less classical, reversible 1:n relations). But, C# comes with a type extension capability. Even in the .NET semweb toolkit, _runtime_ type extensions add to the query operator set classical functional programming operators, such as Map. The obviously math-centric programmer uses it extensively, when processing the RDF ontology metadata into .Net metadata. This all taught me to think mathematically (again), and be bold: define languages to express your designs peter, don’t simply use languages to implement. Restructure data, Peter, for the kind of processing you need to do. Unlike XLST and reading RDF ontologies, none of this linq stuff is presented in an "esoteric" manner. Folks from the bottom half of the class (i.e. me) can get it. The top half are busy defining their own advanced Map operators...of course. Great! I'm eager use them. Now, as you noted, Kingsley already adopted that tool chain. And, Ill guess he dominates it (unlike me). That was a few years ago, and Im eager to hear what he thinks of it ... now. Side note: Ive only used the "rdfmetal" code generator command line tool, from the linq2rdf source. I have not used the graphical designer tool that code generates, as that would me too tightly bound to micosoft's tool chain. Ive learned to avoid that elixir (since Microsoft's tools group rewrites its design tooling every 3 years, turning elixir into poison). Since the implementation of the semweb toolkit makes extensive use of .NET generics and functional extensions - producing a semweb library not dissimilar in scope to Jena - so far it has provided an excellent teaching of linq. It hasn’t advanced my RDF knowhow much, though! Im still stuck in library science land when working with RDF natively (and I never studied library science, only computer science). At the same time, I recognize that sparql queries (and protocol) are doing fine for me. (They are a better version of what we use extensively in the backrooms of the realty business - a 10 year old http-based querying protocol called RETS, a query language called DMQL, all of which has an object-centric data model with metadata). To promote Semweb "native" (and FOAF in particular), we just need to design and promote a library of ADVANCED sparql queries that SHOWCASE the ”more interesting" foaf relations. Going BEYOND selecting, just as discussed here in the ASK and CONSTRUCT cases used in authorization processing, we need to be teaching the bottom half of the class the GRAPH aspects of RDF and SPARQL. If I measure myself (which is good for 51% of people), its poorly understood/leveraged (folks are stopping learning having learned to binding values to variables, via select, like your do in your predicate calculus 101 course, in a first year university engineering course). Studying and promoting the Authorization logic (which leverages ASK, etc ) may be EXACTLY the thing to do. Through application, we all get to study the finer features of RDF and SPARQL, through a problem lots of folks intuitively understand