This repository is for the crowdsourced maintenance of machine-readable metadata for The MagPi magazine, published by Raspberry Pi Ltd. The metadata in this repository is published under the same license as the magazine itself, the Creative Commons Attribution-NonCommercial- ShareAlike 3.0 (CC BY-NC-SA 3.0).
Any source code in this metadata repository is licensed according to the GNU Affero General Public License (AGPL) v3.
This is a community driven project and not otherwise affliated with Raspberry Pi Ltd or The MagPi. Actual back issues of the magazine itself can be found or ordered at https://magpi.raspberrypi.com/
Git does not support locking so create an empty file in the CSV directory and add it to the repository to reserve it for work. Then commit the changes once it has been edited. The naming convention for the metadata files is "articles.nnn.csv" where nnn is the issue number.
Make a read-only clone with Git:
Use UTF-8 "CSV" with tabs between columns, one record per line. The working format can be anything, such as OpenDocument Format, but the result must be exported as tab-delimited "CSV".
The metadata is collected one number / issue per file, so a separate file is needed for each published magazine.
The columns are:
Month and year of publication can be looked up from the number.
The metadata is gathered as tab-delimited text files above for import into an SQLite3 database table for searching via programs. That table is for the article-specific metadata, another table is edited manually to track the year and month for each issue. A third table would be needed for eventual fulltext searching. For now there is one table to track year and month and another for the article-specific metadata.
create table if not exists dates ( number int, month int, year int );
create table if not exists metadata ( number int, page int, section text, title text, standfirst text, maker text, author text );
create unique index issue on dates(number); create index number on metadata(number);
There is a script n the ./bin directory for bulk loading of the metadata. However, the gist is:
.mode csv .separator "\t" .import article.numbers.csv dates; .import articles.???.csv metadata;
The PDF index on the left often misses articles. It is essential to scroll through each page to ensure that nothing is missed.