Hello Rumi! All works fine now,
Looking at sys_rdf_schema helps a lot. SQL> select * from sys_rdf_schema; RS_NAME RS_URI RS_G VARCHAR NOT NULL VARCHAR NOT NULL VARCHAR _______________________________________________________________________________ http://www.univrz.com/dataspace http://www.univrz.com/dataspace/inf NULL http://www.univrz.com:80/dataspace http://www.univrz.com/dataspace/inf NULL virtrdf-label virtrdf-label NULL i experimented that DB.DBA.RDFS_RULE_SET makes a new definition, but the old one still there, so I used procedure rdfs_rule_set (in name varchar, in gn varchar, in remove int := 0) and it worked better for me. questions: 1) is there a way to tell ODS Framework to use another inference contexts? 2) if I change the [URIQA] DefaultHost on virtuoso.ini do I have to re-create the RDF views manually? if I have, is ODS Site Settings -> RDF Data Administration for that purpose ? Thank you!! Cristian 2009/2/10 Rumi Tsekova <rtsek...@openlinksw.com>: > Hi Cristian, > > Could you please check: > > 1. in virtuoso ini file what is the value of the URIQA - DefaultHost > * if the htttp is on port 80, then this port you must not use in the > default host, as cname in this case is without the port. > > 2. You can check what returns this: > > sparql select count(*) > from <http://cname/dataspace/inf> > where { ?x rdfs:subClassOf ?z } > > i..e is there something in the graph > > * if there is something: > > 1. execute this from ISQL: > DB.DBA.RDFS_RULE_SET ('http://cname/dataspace', > http://cname/dataspace/inf'); > > 2. try from ISQL this: > sparql define input:inference <http://cname/dataspace> > select count(*) > from <http://cname/dataspace> > where { ?s ?p ?o }; > > Every step will show what is in the db and what not. > > Hope this to help. > > Best Regards, > Rumi > > > >> Hello Rumi, >> >> I uninstalled and installed ODS, but the problem persists. >> >> curl -i "http://www.univrz.com/ods/api/user.search?pattern=dba" throws >> the same error. (-500), i made some experiments (in other instances) >> trying to force the inference context, but it didn't work either... >> >> Best regards, >> >> Cristian >> >> 2009/2/9 Rumi Tsekova <rtsek...@openlinksw.com>: >>> >>> Cristian, >>> >>> Here are the results of my tests against your machine: >>> >>> >>> $ curl -i "http://www.univrz.com/ods/api/user.search?pattern=dba" >>> HTTP/1.1 200 OK >>> Server: Virtuoso/05.09.3037 (Linux) i686-pc-linux-gnu VDB >>> Connection: Keep-Alive >>> Date: Mon, 09 Feb 2009 16:44:00 GMT >>> Accept-Ranges: bytes >>> Content-Type: text/xml; charset="UTF-8" >>> Content-Length: 127 >>> >>> <failed><code>-500</code><message>RDF..: Inference context >>> http://www.univrz.com:80/dataspace does not exist</message></failed> >>> >>> >>> I would say you to install ods package again. >>> >>> >>> $ curl -i >>> "http://www.univrz.com/ods/api/univrz.test.customquery?pattern=test" >>> HTTP/1.1 200 OK >>> Server: Virtuoso/05.09.3037 (Linux) i686-pc-linux-gnu VDB >>> Connection: Keep-Alive >>> Date: Mon, 09 Feb 2009 16:46:52 GMT >>> Accept-Ranges: bytes >>> Content-Type: text/xml; charset="UTF-8" >>> Content-Length: 87 >>> >>> <failed><code>37000</code><message>SOH03: There is no such >>> procedure</message></failed> >>> >>> As this is the same as user.search (only query different), you should >>> execute grant on it in order we to locate the problem. >>> >>> Best Regards, >>> Rumi >>> >>> >>> >>> >>> >>> >>>> Hello rumi, >>>> >>>> thank you for your response, i tried some things but I still have the >>>> inference context problem :( >>>> >>>> I started again, using a new instance of virtuoso from scratch|. I >>>> installed ODS and tested some of the methods on the ODS REST >>>> Interface, specially the ones that make use of sparql, I was happy >>>> because they worked. >>>> >>>> Then I started to add some custom methods, one of them used >>>> exec_sparql(), is the following one: >>>> >>>> create procedure ODS.ODS_API."univrz.test.customquery" (in pattern >>>> varchar) __soap_http 'text/xml' >>>> { >>>> declare q varchar; >>>> declare exit handler for sqlstate '*' { >>>> rollback work; >>>> return ods_serialize_sql_error (__SQL_STATE, __SQL_MESSAGE); >>>> }; >>>> q := sprintf ( >>>> 'prefix foaf: <http://xmlns.com/foaf/0.1/> '|| >>>> 'select distinct ?a ?c where {?a foaf:depiction ?c} limit 50 ', >>>> sioc..get_graph(), pattern); >>>> exec_sparql (q); >>>> return ''; >>>> } >>>> ; >>>> grant execute on ODS.ODS_API."univrz.test.customquery" to ODS_API; >>>> >>>> (it doesnt use pattern yet). >>>> >>>> and then when I try to execute it, (univrz.test.customquery) I get the >>>> following error: >>>> <failed> >>>> <code>-500</code> >>>> <message>RDF..: Inference context http://www.univrz.com:80/dataspace >>>> does not exist</message> >>>> </failed> >>>> >>>> >>>> Its the same error with my other instance, my surprise began when I >>>> looked back at the Interface methods present in >>>> the ODS REST API, and they stopped working. (e.g.: >>>> ODS.ODS_API."user.search"), they throw now the same -500 error as my >>>> method. >>>> >>>> >>>> my sys_rdf_schema shows the following: >>>> >>>> RS_NAME RS_URI RS_G >>>> VARCHAR NOT NULL VARCHAR NOT NULL VARCHAR >>>> >>>> >>>> _______________________________________________________________________________ >>>> >>>> http://www.univrz.com:80/dataspace >>>> http://www.univrz.com:80/dataspace/inf >>>> NULL >>>> virtrdf-label virtrdf-label NULL >>>> >>>> Today, I dont know what's happening, >>>> >>>> Thank you in advance, >>>> >>>> Cristian >>>> >>>> >>>> 2009/2/9 Rumi Tsekova <rtsek...@openlinksw.com>: >>>>> >>>>> Hi Cristian, >>>>> >>>>>> Hello! >>>>>> >>>>>> I'm developing some extensions to the ODS REST API, and i get an >>>>>> error when i make use of the "exec_sparql (q);" procedure, present on >>>>>> the ODS controllers. When i try to invoke it, i get the following >>>>>> error: >>>>>> >>>>>> <failed> >>>>>> <code>-500</code> >>>>>> <message>RDF..: Inference context http://www.univrz.com:80/dataspace >>>>>> does not exist</message> >>>>>> </failed> >>>>> >>>>> Could you please check in the sys_rdf_schema if there is record for the >>>>> inference in question? >>>>> >>>>> i.e. : select * from sys_rdf_schema; >>>>> >>>>> If there is no, then you should >>>>> >>>>> - install ods >>>>> - execute: >>>>> >>>>> use sioc; >>>>> DB.DBA.TTLP (sioct_n3 (), '', get_graph() || '/inf'); >>>>> DB.DBA.RDFS_RULE_SET (get_graph (), get_graph() || '/inf'); >>>>> >>>>> >>>>> Best Regards, >>>>> Rumi >>>>> >>>>>> >>>>>> My inference context is http://www.univrz.com/dataspace (i think - i'm >>>>>> just starting to explore this world), when i make use of the other >>>>>> methods, like DB.DBA.SPARQL_EVAL_TO_ARRAY i can see the results, but >>>>>> i'm interested in using the ODS api (like the exec_sparql(q) >>>>>> procedure) to keep consistency. >>>>>> >>>>>> Some methods from the published Rest Interface, like >>>>>> ODS.ODS_API."instance.get.id"or ODS.ODS_API."user.get" show the same >>>>>> problem. Maybe is a configuration issue, but i dont know yet. >>>>>> >>>>>> Regards, >>>>>> >>>>>> Cristian >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> Create and Deploy Rich Internet Apps outside the browser with >>>>>> Adobe(R)AIR(TM) >>>>>> software. With Adobe AIR, Ajax developers can use existing skills and >>>>>> code >>>>>> to >>>>>> build responsive, highly engaging applications that combine the power >>>>>> of >>>>>> local >>>>>> resources and data with the reach of the web. Download the Adobe AIR >>>>>> SDK >>>>>> and >>>>>> Ajax docs to start building applications >>>>>> today-http://p.sf.net/sfu/adobe-com >>>>>> _______________________________________________ >>>>>> Virtuoso-users mailing list >>>>>> Virtuoso-users@lists.sourceforge.net >>>>>> https://lists.sourceforge.net/lists/listinfo/virtuoso-users >>>>> >>>>> >>> >>> > >