Hi,

I have been trying working with Virtuoso server for a little while, really
like its powerful support to the Web of Linked Data (or the Semantic Web).
However, the documentation is not easy to follow sometimes.

Anyway, I am trying the deployment part of the Linked Data, and my URL
re-writing rule just refuses to work. I have been trying this for days,
don't understand what is wrong.

Here is my simple rule:

DB.DBA.VHOST_REMOVE(lpath=>'/oplweb');

DB.DBA.VHOST_DEFINE(lpath=>'/oplweb', ppath=>'/', vsp_user=>'dba',is_dav=>0,
opts=>vector('url_rewrite', 'product_rule_list') );

DB.DBA.URLREWRITE_CREATE_RULELIST('product_rule_list', 1,
vector('product_rule1'));

DB.DBA.URLREWRITE_CREATE_REGEX_RULE('product_rule1', 1, '(/[^#]*)', vector
('path'), 
0,'/sparql?query=define%20input%3Astorage%20%3Chttp%3A%2F%2Flocalhost%3A8890%2Frdfv_demo%2Fquad_storage%2Fdefault%3E%0D%0Aselect%20%2A%20%0D%0Afrom%20%3Chttp%3A%2F%2Flocalhost%3A8890%2Foplweb%2Fproduct%3E%0D%0Awhere%20%7B%3Chttp%3A%2F%2Flocalhost%3A8890
*$U1*%3E%20%3Fx%20%3Fy%20%7D&format=*$accept*',
vector('path','*accept*'),NULL, '(text/rdf.n3)|(application/rdf.xml)',
0,
NULL, NULL );



The long ugly part in the above rule represents this query:

define input:storage <http://localhost:8890/rdfv_demo/quad_storage/default>
select *
from <http://localhost:8890/oplweb/product>
where {<http://localhost:8890*$U1*> ?x ?y }

When my RDF view is generated, it has a graph name called <
http://localhost:8890/oplweb/product>, and the URI of one of the instances
is something like this:
http://localhost:8890/rdfv_demo/testdata/products/odbc-informix-ee.

When I try to de-reference this URL,

http://localhost:8890/rdfv_demo/testdata/products/odbc-informix-ee

It just does not work. Also, the following test fails as well:

curl -I -H "Accept: application/rdf+xml"
http://localhost:8890/rdfv_demo/testdata/products/odbc-informix-ee

Any help will be greatly appreciated!!

Thanks,
Yu

Reply via email to