Scripto is an open-source tool developed by Center for History & New Media that allows collaborative transcription of digital files. Built on MediaWiki, Scripto is intended to be used as an extension of a content management system. Scripto is currently available as a plugin for Omeka, Wordpress, and Drupal.
DIYHistory|transcribe uses Scripto with Omeka. Visit DIYhistory|code for an overview of the technology stack and implementation information.
Features of the Scripto plugin for Omeka can be found at Github|Scripto. The UI Libraries fork of plugin-Scripto adds the following features:
- Track completion status of document pages (i.e., ‘Not Started’, ‘Needs Review’, ‘Completed’).
- Track completion progress of documents based on page statuses.
- Sort documents within their collection by most completed, floating least completed to the top.
- Initialize document page text entry box with pre-existing text, if available (helpful if using Scripto to correct OCR for typescript pages).
- Fill document pages with a pre-existing text, if available in a field element of each file, via a button in the admin item pages (helpful to re-initialize a list of document pages at any time).
- The source element used to initialize or to reinitialize a document page can be chosen (helpful to keep track of original source). Scripto:Transcription is used by default. It should be a file level element.
- On every page action, automatically import transcriptions from MediaWiki as file metadata.
- Possibility to define items that should not be transcribed via the admin page items/show.
- Choice of the order of the pages inside a document by predefined order, original filename or file id.
- Choice of the derivative image to display (default is the original one, but fullsize or any other derivative can be used).
The UI Libraries has also created an Omeka theme, Scribe, to make use of these new features.
To accommodate these features, UI Libraries has added four elements to the Scripto metadata element set: “Status”, “Percent Needs Review”, “Percent Completed” and “Weight”. These values are calculated and updated with every “Save”, “Approve”, or “Unapprove” action made on a document page.
“Status” stores the completion status of a document page (i.e., “Not Started”, “Needs Review”, “Completed”) in the page-level metadata. Scribe displays this value on each page thumbnail in the items/show page.
In the document (item) level metadata, “Status” stores the status of a document. Currently, this is used only for the status “Not to transcribe”. Values for “Percent Needs Review” and “Percent Completed” represent the percentage of pages within the document carrying the “Needs Review” and “Completed” statuses, respectively. These percentages are used by Scribe to display the stacked progress bars for each item in the collections/show page. The 6-digit sorting number stored in “Weight” is used by Scribe to sort items on collections/show page by completion progress, sinking the most completed items to the bottom and floating the least completed to the top.
NLW added the ability to create mediawiki account through Scripto API. Code heavily borrowed from Joris Lambrechts particularly commit5.
Install MediaWiki.
Uncompress files and rename plugin folder "Scripto".
Then install it like any other Omeka plugin and follow the config instructions.
The new fields for the Scripto element set will automatically be installed with a fresh install of the UI Libraries fork of plugin-Scripto or with an upgrade of the upstream version.
Metadata and content files are uploaded to Omeka using the fork of the plugin CsvImport. CSV Import is an Omeka plugin for batch uploading metadata and content file to Omeka. The UI Libraries fork of this plugin allows for the batch uploading of page-level (file) descriptive metadata. To upload using the UI Libraries’ version, first upload the csv file of items as instructed in the CsvImport documentation (choosing ‘Record Type: Item’ in the Csv Import interface). After uploading and creating the items, upload the csv file of page-level metadata (choosing ‘Record Type: File’ in the CsvImport interface). Map the Original filename to ‘Filename?’ in Step 2 of the CSV Import interface. See _sample-data Item.csv and _sample-data File.csv for an example. If you are pulling content from your version 6 CONTENTdm installation, you may find this sample gist helpful in generating csv upload files.
Document-level (item) metadata
Element | Omeka element | Comments |
Title | dc:Title | The title of the document |
Source URL | dc:Source | (optional) The URL for the original location or master record for the document (If you are replicating the document from another digital environment). |
Source identifier | dc:Identifier | (optional) An identifier for the document that ties it to the original location or master record (If you are replicating the document from another digital environment). Note that Omeka will generate a system identifier for each document (item). |
Digital collection URL | dc:Is Part Of | (optional) The URL for the digital collection that the document belongs to in its original digital environment (If you are replicating the document from another digital environment). |
Finding aid URL | dc:Relation | (optional) The URL for the finding aid of the document’s source collection. |
Sorting number | Scripto:Weight | 6-digit number for sorting the item within its collection in the collections/show display. Set to ‘000000’ as default. This will get updated every time a document page from the document is saved, approved, or unapproved. |
Percent needs review | Scripto:Percent Needs Review | Percentage of pages with status ‘Needs Review’. No default needed. This will get updated every time a document page from the document is saved, approved, or unapproved. |
Percent completed | Scripto:Percent Completed | Percentage of pages with status ‘Completed’. This will get updated every time a document page from the document is saved, approved, or unapproved. |
Page-level (file) metadata
Element | Omeka element | Comments |
Original filename | The file location specified in the csv item upload file. The UI Libraries fork of plugin-CsvImport uses this filename to find the Omeka file record for applying the page-level metadata. | |
Page label | dc:Title | The label for the page |
Page-level source URL | dc:Source | (optional) The URL for the original location or master record for the document page (If you are replicating the document from another digital environment). |
Source identifier | dc:identifier | (optional) An identifier for the document page that ties it to the original location or master record (If you are replicating the document from another digital environment). Note that Omeka will generate a system identifier for each document page (file). |
Transcription | Scripto:Transcription | The transcription for the document page. This will get updated every time a document page is saved or approved. You may pre-populate this field on ingest to Omeka with OCR or existing transcription, if desired. |
Status | Scripto:Status | Completion status of the document page (‘Not Started’, ‘Needs Review’, ‘Completed’). Set to ‘Not Started’ as default. This will get updated every time a document page is saved, approved, or unapproved. |
Omeka file order | no map | The order of the page within the document. When used with the ui-libraries/plugin-Csv-Import fork, this value will assure files are in the correct sequence. |
Use it at your own risk.
It's always recommended to backup your files and database so you can roll back if needed.
See online issues on the Scripto issues page on GitHub.
This plugin is published under GNU/GPL.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Current maintainers:
First version of this plugin has been built by Center for History & New Media. Next, UI libraries has forked it in order to add some features. This fork has been merged into the main version for Omeka 2 for École des Mines ParisTech and completed.
- Copyright Center for History and New Media, 2008-2016
- Copyright Shawn Averkamp, 2012-2013
- Copyright National Library of Wales 2015
- Copyright JorisLambrechts
- Copyright Daniel Berthereau, 2013-2016