Hello all!

I've just added an add-on for Firefox which uses Sedna; I'm calling it 
"XDIB" or "XML Database In a Browser". See 
https://addons.mozilla.org/en-US/firefox/addon/199900/ .

Basically, this lets any web developer, who is given permission by the 
user, to add XML content to Sedna (databases stored in Firefox's Profile 
folder by default, so that the data will not be lost whenever the 
extension may get updated) and then query it, update it, etc..

Actually, we've basically wrapped every command there is in Sedna 
(though removing "Sedna" from the methods in case this could become 
abstracted--sorry, no XQJ at the moment), though I haven't really tested 
anything besides loading XML and doing XQueries against data in a 
collection.

At the moment, the databases are accessible to any site which requests 
permission, as I wanted this to be the default behavior, since I think 
it should be up to users how they want their data shared, and not have 
their own data be locked in by a particular site, even if that site 
originated the storage of the data. The access is granted depending on 
whether read permissions, insert permissions, etc., are desired, and I 
really need to add the ability to specify which database one has 
permission to access, since for now, it is any one! (though it does ask 
permission at least).

I also hope to make the API available as special protocol links, so a 
link could trigger the view of certain content, and if my other add-on, 
Open URIs (at https://addons.mozilla.org/en-US/firefox/addon/162154/ ) 
is used together with this, one could link to locally stored by default, 
but fallback to an online site in case the user is visiting the site 
without this add-on installed. I like the idea of bookmarks that work 
offline, and which could do fancy queries, and trigger a download of the 
data (and subsequent auto-updates) if the data had not yet been 
downloaded. But that's not implemented at the moment...

I paid a friend to implement the C++ code which as part of an XPCOM 
component for Mozilla's Cross-Platform Component Object Model, among 
other things, lets JavaScript communicate with C++ so that people like 
me who do not know C++ can still write Firefox extensions or the like 
which interact with cool tools or libraries like Sedna, so my apologies 
if anything has been lost in translation as far as how the API is to be 
used (though I know it is working for XQueries at least--though I do 
need help on figuring out how Sedna can support UTF-8 if it uses "const 
char" as I understand that to be ASCII only; the component may need to 
be updated to support multi-byte strings).

And since my friend is a Windows guy, we've only compiled so far in 
Windows, but since this is supposed to be cross-platform, hopefully we 
can get this working on other systems as well.

As I mention on the add-on site, the API is of course very much new (not 
to mention there may well be problems in our code), so while we are 
whole-heartedly encouraging experimentation, please do not use this for 
critical content, nor depend on the API remaining frozen.

I have the off-hope that we could get XML databases to be part of HTML5; 
e.g., see the debate at 
http://hacks.mozilla.org/2010/06/beyond-html5-database-apis-and-the-road-to-indexeddb/
 
or 
http://hacks.mozilla.org/2010/06/comparing-indexeddb-and-webdatabase/comment-page-1/#comment-95595
 
. My energy is fairly limited as far as what I can contribute, but I do 
hope to make piecemeal progress on this, and fully welcome anyone 
interested to offer their feedback, improvements, or whatever...  :) 
(I've cc'd myself if you wish to get in touch off-list to indicate you 
wish to be kept informed.)

best wishes,
Brett


------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Sedna-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sedna-discussion

Reply via email to