Hello Ruben, There are two methods.
Method 1. The procedure is named WS.WS."/!sparql/" and its source text resides in libsrc/Wi/sparql_io.sql . You can cut & paste it to a separate sql file, edit and load as any other SQL file (say, via ISQL client). Important side note: It would be really bad idea to reload whole sparql_io.sql , for two reasons. First of all, is that sparql_io.sql contains directives for AWK script that translates the SQL into C source, these directives sets permissions (like --!AWK PUBLIC for commonly available procedures), ISQL knows nothing about them so only DBA account will work properly after such a reloading. Other reason is subtle. When a new version of server is used with a database made by old version, procedures created by user (hence, stored in DB.DBA.SYS_PROCEDURES) take priority over procedures in server executable. So if you load whole sparql_io.sql then its content is out of sync with the rest of server internals after next version update. If you load only WS.WS."/!sparql/" from your file then only this single procedure remains "old". This procedure is not called by other routines so it's relatively safe. If for some reason you decide to cancel the change in that procedure, drop it and restart the server. Method 2. You don't have to overwrite anything at all. Create a patched version of the procedure, name it differently and edit virtual host definition by VHOST_REMOVE and then VHOST_DEFINE. After VHOST_REMOVE you will need four things: 1. The procedure itself :) 2. DB.DBA.VHOST_DEFINE (lpath=>'/sparql/' ... ) as it is in libsrc/Wi/sparql_io.sql but with your function name as ppath ("physical path") named argument of the procedure; 3. grant execute on WS.WS."your-function" to "SPARQL"; note double quotes around name of "SPARQL" user and the upper case; otherwise it will be confused with keyword SPARQL; 4. registry_set ('your-function-name', 'no_vsp_recompile'); otherwise HTTP server will try to find the physical path in DAV storage or a filesystem, to read and compile the content as a procedure. Second method is probably better. In addition it will let you create different variants of page for different IRIs. Best Regards, Ivan Mikhailov OpenLink Software http://virtuoso.openlinksw.com P.S. Rumi, I don't know whether it's interesting enough to add to the doc or wiki, but... On Thu, 2009-09-17 at 13:06 +0200, Ruben Martin wrote: > Hi again, > > We want to change some text in the sparql endpoint page. For example > the text explaining how to grant SPARQL_SPONGE privileges. It seems > this page is embeded in some binary file. Is there some "easyer" way > to edit that page? Or we need to change the source code (maybe > 'appsrc/ODS-Framework/oauth/sparql.vsp') and remake the server? > > Best regards > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ Virtuoso-users mailing list > Virtuoso-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/virtuoso-users