- From: Sebastian Samaruga <cognescent@gmail.com>
- Date: Sun, 25 Jan 2015 14:43:06 -0300
- To: Tim Berners-Lee <timbl@w3.org>
- Cc: Stéphane Campinas <stephane.campinas@deri.org>, SW-forum Web <semantic-web@w3.org>
- Message-ID: <CAFnmbpV=mPCTG+queoSu8OzAPOVg4N12yGh2TGhLa+Xm81QPNw@mail.gmail.com>
Why not just use PHP, JSP, Velocity or any other template engine for the Web? After all, RDF is just some kind of markup. It then could be processed by any kind of semantic tool and parameters to those scripts could be used as search arguments for some kind of database backend. I'm currently working in a (very immature) project which takes datasources (RDF, XML, JSON, CSV, relational databases, etc), tries to merge similar data from those different sources (in the same or different source formats), schema and vocabularies and exposes the results as RDF triples, OWL ontology and an OData (www.odata.org) endpoint. Any of those output mechanisms could use an XSL stylesheet to accomplish the template part of the question with the advantage of being able to populate the application with an upper-merge ontology in which different resource terms fall and share meaning. Which is also desired into the scope of the project application is being able to infer when some term in some vocabulary is the same term of another in other vocabulary. So, if I can infer that ${parameterName} is the same as "Abc Inc." it also will solve the template question. Work in progress: http://cognescent.googlecode.com Sebastian. On Sat, Jan 24, 2015 at 6:52 PM, Tim Berners-Lee <timbl@w3.org> wrote: > > On 2014-05 -10, at 13:54, Stéphane Campinas <stephane.campinas@deri.org> > wrote: > > Hi, > > Do you know of any tool that creates RDF statements based on some template > ? > > For example, let's imagine I have the following template: > > <http://acme.org/${id}> <http://acme.org/$%7Bid%7D> > <http://acme.org/predicate1> <http://acme.org/predicate1> "${something}" .. > <http://acme.org/${id}> <http://acme.org/$%7Bid%7D> > <http://acme.org/predicate2> <http://acme.org/predicate2> > <http://acme.org/${person}> <http://acme.org/$%7Bperson%7D> . > > > where *${...}* are variables. Then, by providing values for these > variables, the following statements would be created: > > ${id} = e1 ${something} = blabla ${person} = john > > <http://acme.org/e1> <http://acme.org/e1> <http://acme.org/predicate1> > <http://acme.org/predicate1> "blabla" . > <http://acme.org/e1> <http://acme.org/e1> <http://acme.org/predicate2> > <http://acme.org/predicate2> <http://acme.org/john> <http://acme.org/john> > . > > > You could use the cwm with n3 rules using log:uri to link between URI > string and the thing. > > > { [] :id ?id; :something ?s; :person ?person . > > ( "http://acme.org/ <http://acme.org/$%7Bid%7D>" ?id ) > string:concatenation [ is log:uri of ?e ]. > ( "http://acme.org/ <http://acme.org/$%7Bid%7D>" ?person ) > string:concatenation [ is log:uri of ?p] . > > > } => { > > ?e <http://acme.org/predicate1> <http://acme.org/predicate1> ?s . > ?e <http://acme.org/predicate2> <http://acme.org/predicate2> ?p . > > } > > timbl > > Have you seen any such tool ? > > Thanks > > -- > Stephane Campinas > > >
Received on Sunday, 25 January 2015 17:44:13 UTC