Hi Ivan, On Mon, May 25, 2009 at 2:40 PM, Ivan Mikhailov <imikhai...@openlinksw.com> wrote: > Hello Aldo, > > "AS iri" clause is optional, but it's strongly advised to keep it > explicit and user-friendly, because sometimes the name of quad map > pattern is the only or the most important hint for debugging.
Roger that. Really good to know this! > > Having "stable" meaningful names one gets a warranty that he will get > readable "cannot overwrite" errors with accurate diagnostics right at > the time of CREATE statement. That's really useful, too. Yes, you're right about that. I haven't really managed a complex lifecycle so I'm clearly not seeing the complete picture yet. > > If "AS iri" is not specified, an "AS hashsum-of-everything-else" is > implied. It means that in case of internal error some old versions of > quad map pattern may stay alive in system graphs under names based on > old hashsums. It's not dangerous when only one storage is configured, > because automatic garbage collection and manual RDF_AUDIT_METADATA() are > our best friends. On a database with multiple storages, it might cause > subtle errors in case of misuse of RDF_BACKUP_METADATA / > RDF_RESTORE_METADATA administrative functions: some cached SQL queries > might stay not recompiled on change of RDF View. No errors of this sort > were seen in wild but if that will ever happen then the debugging might > be, well, "interesting". Yeah, I'm all in favor of leaving as little as possible to chance. Now, what about versioning the mappings ( on the graph level, for example )? This way you could select the "active version" thus providing a mechanism to effectively avoid accidental "stale" mappings. BTW- versioning is a recurrent topic here. We have our ontologies and scripts in subversion and we manually run load/execute them. We have been thinking of devising a tighter integration ( checking out to local FS or WebDAV integration or even some scripts ). Point is: Versioning IS necessary per se and I believe most people will find a way to implement it. Why not build it right in? ( I know, this is not a light issue. I am in enthropy mode today, sorry for that ;) ). Regards, A > > Best Regards, > > Ivan Mikhailov > OpenLink Software > http://virtuoso.openlinksw.com > > On Mon, 2009-05-25 at 06:15 -0400, Aldo Bucchi wrote: >> Hi, >> >> Another pseudo feature request in the name of manual coding. >> >> One of the thing that makes declaring mappings by hand a bit tedious >> is having to assign unique name to each, for example: >> >> subj ex:someProp table.prop as virtrdf:unique-mapping-name . >> >> It would be nice if one could leave the mapping name empty ( forget >> about the "as ..." part ) and have Virtuoso create one ( derived from >> table/col/prop names ). >> >> Regards, >> A >> > > > > -- Aldo Bucchi U N I V R Z Office: +56 2 795 4532 Mobile:+56 9 7623 8653 skype:aldo.bucchi http://www.univrz.com/ http://aldobucchi.com/ PRIVILEGED AND CONFIDENTIAL INFORMATION This message is only for the use of the individual or entity to which it is addressed and may contain information that is privileged and confidential. If you are not the intended recipient, please do not distribute or copy this communication, by e-mail or otherwise. Instead, please notify us immediately by return e-mail. INFORMACIÓN PRIVILEGIADA Y CONFIDENCIAL Este mensaje está destinado sólo a la persona u organización al cual está dirigido y podría contener información privilegiada y confidencial. Si usted no es el destinatario, por favor no distribuya ni copie esta comunicación, por email o por otra vía. Por el contrario, por favor notifíquenos inmediatamente vía e-mail.