Technically speaking, WordPress uses MySQL databases, which means the programmer can communicate with mysql via MySQL Improved Extensions for PHP. With this classes, you can create schemas, tables and rows within selected table(s) for a valid mysql connection. That way, you create/fill tables.
Netblog collects data, e.g. when you enter somethings or whatever, and inserts them into its previously created database tables, e.g. for bibliographic references or for external links. Netblog as a plugin consists of several classes and algorithms to work with, collect and optionally save these data (thats why we normally use databases, to securely and to fast store and read data).
Shortcodes in WordPress are quite similar to HTML tags in that WordPress “parses” each post before it gets transmitted to your public visitor (request) for a very certain syntax, i.e.
[shortcodetag key1=”value1″ key2=”value2″]innertag[/shortcodetag]
Just Google for more information on WordPress Shortcodes.
Netblog uses the tag “nbcite”, which has been previously registered as a valid shortcode tag name (with callback functions along with it). Registered callback functions work with keys, values and innertag (provided as method parameter). The rest is up to the specific plugin. In case of Netblog and bibliographic references, each reference, its final output, its local id for a given post id are temporary saved within variables (RAM). As soon as this callback method “sees” that the key “print” has been defined, it assumes that you want to print out all previously in memory saved (for each request only) references and performs the next tasks to do so. After server request has been done in PHP, all previously stored temporary variables are being deleted from server ram. In case you want to store something permanently, you have to save it on hard disk (maybe with databases and sql query commands).
In v2.06, all algorithms for bibliographic references are stored in these classes: nbcite, nbcstyle, nbcs and nbcs_*
Note that this organization will change over time (rather soon maybe), but since Netblog is freeware and opensource, I don’t have to do this right now.