Irene,
yes to a certain extent that would work, assuming that the SM scripts
asserts the new triples into the current model (using
sml:PerformUpdate with INSERT INTO http://tb-session). This would
then add exactly that person to the graph, and also notify the client
about the new triples, i.e. the new Person would show up on the
screen. However, this is not really a true RDF back-end and many other
queries (e.g. using the class tree or search form) don't work because
they have no real RDF data to query.
Holger
On Mar 19, 2009, at 10:34 AM, Irene Polikoff wrote:
Hi Tim,
I think that while you can not do exactly as described, you can do
something very similar:
1. User starts TB/Ensemble and opens the Person ontology.
2. User selects Person class in a Tree component
3. User presses on the SPARQLMotion button and selects Find
employee' (or whatever you call it) in the list of available actions,
4. A popup opens up prompting to type a surname. User types
the name and presses OK.
You would need to create the appropriate SM script. For details on
how to do this, take a look at the Developing applications with TBE
guide that is accesible through TBC help by going to TopBraid
Composer TopBraid Live Integration (ME) Overview of TopBraid
Live Integration.
Since you have already written a SM script that can submit a request
to the webservice and process the resulting XML into instances in
your Person ontology, this should be an easy conversion. Holger, am
I missing something?
We are planning to SPARQLMotion enable all the other components as
well.
Irene Polikoff
From: topbraid-composer-users@googlegroups.com
[mailto:topbraid-composer-users@googlegroups.com
] On Behalf Of Holger Knublauch
Sent: Thursday, March 19, 2009 11:05 AM
To: topbraid-composer-users@googlegroups.com
Subject: [tbc-users] Re: Creating a SPARQL Endpoint for a Webservice
Hi Tim,
it sounds like you are asking for something similar to D2RQ but for
an XML web service. D2RQ represents a virtual RDF graph that is
populated at query time. What you would need is a virtual RDF graph
that reacts on incoming SPO queries by issuing web service calls.
Out of the box I don't see how our current platform supports such
scenarios. There are, as you have figured out, SPARQLMotion
mechanisms to call web services and convert their result into RDF,
but these are just individual calls and what's missing is some way
of triggering such scripts for all 8 combinations of SPO arguments.
I need to think more about how this could work - definitely an
interesting topic!
1. User starts TB/Ensemble and opens the Person ontology.
2. User selects Person class
3. User types a name into the Surname property in the search
box and presses Search.
This would require a virtual RDF graph (or SPARQL end point) as
described above. There is no way to trigger a specific SM script in
response to a search and we have no plan to support that.
A second scenario is:
1. User enters a name as a parameter to the SM script which
then returns the matching people as RDF.
2. User drags an instance of Person onto the query builder
(FYI… dragging as described does not work in 3.0 Beta)
Yes, drag and drop is currently being worked on.
I have put a feature request for such SM scripts to our bug tracker.
The only work-around right now is to create a static copy of your
web service data (as a batch operation) and then to run your queries
against that local copy. I am not sure whether this is feasible for
you, and how frequently you would need to update that copy.
Holger
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
TopBraid Composer Users group.
To post to this group, send email to topbraid-composer-users@googlegroups.com
To unsubscribe from this group, send email to
topbraid-composer-users+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/topbraid-composer-users?hl=en
-~--~~~~--~~--~--~---