Krinkle wrote: > Before I respond to the recent new ideas, concepts and suggestions. > I'd like to > explain a few things about the backend (atleast the way it's currently > planned to be) > > The mw_authors table contains unique authors by either a name or a > userid. > And optionally a custom attribution can be given (fallback to > authorname, user real_name or user_name) > Also optionally a url can be given (fallback to nothing or userpage). > > The mw_license table contains the different licenses a wiki allows to > be used. > Their canonical name (eg. "GFDL", "CC-BY-SA-3.0" etc.), url to legal > code and usage count[1]. > > mw_file_props is a table that keeps previous versions of file_props as > well. And is linked to > mw_revision by fp_id in rev_fileprops_id (like mw_text is linked in > rev_text_id). > > Both authors and licenses are uniquely identified by their id. This > makes it easy to change stuff later on > in an AuthorManager (eg. different url, username change etc.). The > texts and complete titles of the > licenses are stored in interface messages (for internationalization). > MediaWiki:License-<uniq>-text could > for example contain {{Cc-by-sa-3.0|attribution=$2}} on Wikimedia > Commons. > > - > > If we store the links in the wikitext (like {{#fileauthor:}} and > {{#filelicense:}}, the advantages are basically > two things: > 1) It has all features of editing and revisioning (better history, > edit conflict, diff view, etc.) > 2) No need for a revisionized mw_file_props, we can store the current > values in mw_page_props > > Possible down side is that a diff like > - {{#fileauthor:2}} {{filelicense:12}} > + {{#fileauthor:10}} {{#fileauthor:12}} {{#filelicense: > doesn't mean very much. I.m.h.o The solution is not to store the > actual names in wikitext so that > the diffs are better, but to either not store it in wikitext at all, > or customize the behaviour everywhere:
Why? Storing the property "filelicense: GPL" directly in wikitext is not bad. It's also a relief when we want to delete licenses later. Same with Author. Take that as a key into a NS_AUTHOR namespace. Going to Special:LicenseManager/5 in order to change GPL license data is just added complexity over using the short name "GPL". _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l