Archive for the ‘Other News’ Category

Update for week ended 31 July 2020

ak19. Friday, July 31st, 2020.

Hi again GS blog readers,

This week has been eventful but only involved a little work on general Greenstone code.  That was mainly in the form of a fix to allow the recently-introduced “Export/Convert (GLI) metadata to CSV” GLI feature to work on Java 6 and 7 too, and not just Java 8. This was a necessary change, as our nightly builds are on systems where Java 6 and 7 are installed. Thanks to Kathy’s keen eye which caught the cause of nightly linux GS3 binaries not going through, this was solvable and solved.

There’s a new bug that I discovered this week when working with someone who uses client-GLI to connect to their remote server. Unfortunately, this is a dreaded encoding bug and may take some time to resolve (or, if I’m really lucky, will be easy and quick to solve!) I will be looking at it as soon as this blog post is done.

During the past few months and ongoing, I’ve been assigned to help an institution who hired the university’s CS department to set up their own Digital Library. So I’ve been learning hands-on what it is like to use Greenstone with real-world purpose, rather than just using Greenstone when testing it for a release or investigating it for bugs discovered by mailing list users, or just using the basic collection design. It’s been quite full on work, but it simultaneously benefits the larger Greenstone community: all bugs discovered so far have been fixed for everyone and are made available in the nightly releases. Most of the bugs discovered had to do with client-GLI and its interaction with the remote Greenstone 3 server. As a result of this process, client-GLI has become far more robust to use.

A consequence of working with our colleagues at that institution to set up a GS3 DL for them is that I had to understand format statements and collection design, so I could pass my understanding on to them. While most of our remote conferencing sessions mixed both general needs and needs specific to the institution, I’d created 2 general pre-recorded tutorials covering all those major topics, which I believe could be of use to all persons learning to become Greenstone librarians. The topics covered are collection design from scratch, ranging from configuring browsing classifiers and search indexes, and configuring the UnknownPlugin for MP4s and associating files/equivalent documents, to understanding and working with format statements, including creating basic reusable templates in the global format statement. The second video covers using MetadataCSVPlugin with document metadata in the form of a CSV spreadsheet and ends by going over how to add collection/document level security (pasword protection).

The first video is 3.5 hours long and has some sensitive content visible at present in the form of passwords and private server connection details that would first need editing out before being made public. The second video clocks in at 1 hour and is more or less ready for viewing, except both suffer from my embarrassing grating voice and from format statements being very slow to edit back then, plus I’m not comfortable that there’s a brief shot of my head in the first video. After editing the unwanted segments out of the first video, a task which I have no experience in yet, I’d ideally like to subtitle the videos and then strip out the audio altogether, which would also allow the subs to be translatable, assuming the videos are found useful. I don’t know when I’ll have the time for this, but I’ll do my best to work.

That about covers what I wanted to blog on this week. Until next time!

Improvements to remote GS3 and client-GLI

ak19. Friday, July 24th, 2020.

In the past several weeks, using client-GLI running against a remote Greenstone 3 in a real-world setting allowed many bugs to be found and fixed and some hopefully-useful new features to be added to (client-)GLI.

No official release of GS3 containing these features and bugfixes is available yet, but those described below are/will be available in the nightly GS3 binaries at  http://www.greenstone.org/caveat-emptor/ from today onward. The linux nightly binaries are temporarily down and we’ll try to get them back up.

Among the work done:

(1)  Better remote GS3/client-GLI support for different sites and servlet names.

Once you’ve adjusted GS3/web/WEB-INF/servlets.xml as in the GS3 customisation tutorials and set the default servlet in GS3/build.properties, in client-GLI, go to File > Preferences > Connection and choose the Site then Servlet name. Click Apply and OK. Now once you go to File > Open collection, you will see all the collections available in this site and previewing will use the correct servlet.

Rebuilding will activate the collection on the selected servlet so that previewing will now at last work for non-default site and servlet.

Fixed a bug swapping between different remote GS3 sites that client-GLI can connect to: in the past, client-GLI would get stuck trying to load in the previous’ session’s site and servlet, even if it doesn’t exist in the remote GS3 that client-GLI is currently attempting to connect to. Now it will resort to the default site and servlet if the stored one is not present in the remote GS3 server the client is connecting to.

(2) Improvements to working with collectionConfig.xml through (client-)GLI:

– client-GLI (and GLI) now  properly saves edits made to the collectionConfig.xml file through Edit > Edit collectionConfig.xml menu

and furthermore, these changes are immediately reflected in the (client-)GLI interface, instead of GLI reloading the collection as before (which used to take especially long in client-GLI)

– proper support for HTML formatted text in the “about” page description for a collection: Format > General > Format Description field

Now, when you edit the collectionConfig.xml file through the Edit > Edit collectionConfig.xml menu, any HTML in your collection description is still preserved as before. And when you preview, the GS3 reader interface also preserves it as you intended.

(3) Can successfully create new and edit existing Metadata Sets through client-GLI now.

In the past it would let you create a metadata set but then there were issues when you tried to edit an existing one. Also in the past, creating a new metadata set would cause subtle issues that you’d only actually notice if you tried to visit File> Preferences > Connection tab afterward (when client-GLI would freeze).

(4) Completer and improved support for Metadata spreadsheet CSV files:

– MetadataCSVPlugin was extended to allow multi-valued metadata fields by Dr Bainbridge and his improvements to the plugin have now been incorporated into the current Greenstone. The MetadataCSVPlugin included in GS3 allows multi-valued metadata fields as follows: configure the plugin now with the new “metadata_value_separator” field set to “\|”. Then in your CSV metadata spreadsheet cells, use the vertical bar (“|”) to separate multiple metadata values for a particular column denoting a metadata field.

– Fixed bugs related to (client-)GLI rightclick  > Replace feature on a document that occurred when you attempted to replace an existing file with another file of the same name. Although this fixes the feature in general, it is also useful for when you want to update your metadata CSV spreadsheet.

Update from a week later: When you’re using Replace to replace a file with an updated identically named one, GLI always popped up a message allowing you to cancel. However, in the past, even if you cancelled, client-GLI would continue to upload the replacement file to the GS3 server where the replacement would be performed. The remote GS3 files and local files on the client machine would then get out of sync. But with this bug fixed, if you now cancel the Replace operation on replacing a file with an identically named one, client-GLI will no longer send the replacement file to the remote server.

(5) New (client-)GLI features:

a. Metadata to CSV options:

– File > Export to metadata CSV: for a collection you have open, this option creates a metadata.csv file in a location of your choosing containing all the metadata you can see in GLI, including inherited metadata. If the metadata.csv file you selected already exists, then the metadata you see in GLI is amalgamated with the selected CSV file. This option allows you to backup your collection’s metadata to a spreadsheet file. There is NO RECONVERT feature, to convert back to metadata.xml files from metadata csv format. But you can build your collection with metadata from the CSV spreadsheet. See the following option below which explains how to redo your collection to work with metadata from a spreadsheet instead of using metadata in GLI/metadata.xml files.

File > Convert to metadata CSV: for the collection you have open, this option creates a metadata.csv file in your collection’s “import” folder by default (which is the best location), by destructively removing all the metadata from the collection’s metadata.xml files (in other words, by removing the metadata you see in GLI) and shifting them out into the selected metadata.csv file. If you selected an existing metadata.csv file, then any metadata you currently see in GLI is amalgamated with the selected CSV file, before it gets removed from GLI/the metadata.xml files. Selecting this option prepares your collection so that you can switch over to using a MetadataCSVPlugin, configured with metadata_value_separator field set to “\|”, to then rebuild your collection producing the same results as before.

b. Collection security skeleton elements, as discussed at http://wiki.greenstone.org/doku.php?id=en:user_advanced:security, can now be added through (client-)GLI’s Edit > Edit collectionConfig.xml menu option. At the bottom of the Config File Editor dialog that appears, you will find a small toolbar that allows you to choose which (skeleton) XML <security> element to add:

– to hide the current collection,

– to add the appropriate <security> element to make the entire collection private except for one or more groups you specify,

– to add the appropriate <security> element to make all the docs in the collection private except for the groups you specify (adds a <security> element),

– to add the appropriate <security> element to make select docs in the collection private except for the groups you specify (where you can then specify which docs as explained on the wiki link already provided),

– to add a further <documentSet> element to the existing <security> element

– to  add a further <documentSet> element into the existing <security> element

One issue with this remains: if you want to undo the addition of a security element, you have to press the Undo button twice at present. I haven’t yet figured out why this is. (If you press Undo once, the entire XML content of your collectionConfig.xml becomes empty, so you’ll naturally press Undo again in alarm and then it will look right again.)

 (6) Possibly one of the best client-GLI improvements of all: Editing format statements in client-GLI is no longer excruciatingly slow

In the past you had to wait several seconds for every character you entered, so that back then it was better to edit your format statements outside client-GLI and paste them back in. With the bugfix now in place, you can now finally easily edit format statements directly in client-GLI.

Other: 

* incorporated perl 5.30 support needed for Ubuntu 20.04 LTS

* bundling CGI.pm perl module now, so hopefully no more “ERROR: Can’t locate CGI.pm in @INC (you may need to install the CGI module)” messages

* I believe I’ve now also fixed a bug that caused deadlocks in client-GLI which could occur with some popups when some remote Greenstone3 action goes wrong

* better error display when something on remote GS3 goes wrong: instead of a giant window to contain a giant error message, and which can potentially exceed your own screensize, you get a decent sized dialog with scrollable pane

* bugfix to “replace  srcdoc with html” feature available on rightclicking a doc in GLI so that it now works again in (client-)GLI.

* TextPlugin will now properly preserve manually formatted text went it embeds text content in <pre> tags. Starting whitespace even in pre tags used to get clobbered before so that it used to lose tabspaces.

GTI has moved

kjdon. Thursday, July 7th, 2016.

The GTI (Greenstone Translator Interface) is a Greenstone installation providing a web-based facility to translate the various Greenstone interfaces and websites, including the Greenstone2 and Greenstone3 runtime web interfaces, GLI’s interface, the installer interface, and the greenstone.org website. This facility has been moved to a faster and more reliable server. You can access the new interface at http://gti.greenstone.org. The status page showing the translation status of each module, for each language, is now available at http://gti.greenstone.org/etc/status.html.

TWSO library moved

kjdon. Thursday, July 7th, 2016.

The TWSO library is a collection of concert programmes from the Trust Waikato Symphony Orchestra. This has been moved to a new server, so update your bookmarks if you use this collection. It is now available at http://community.nzdl.org/greenstone3/twso/collection/twso/page/about. Note, the http://nzdl.org/twso shortcut now points to the new site. The new server is much faster and more reliable than the previous one.

Sam’s Greenstone Blog 11/4/2011

admin. Monday, April 11th, 2011.

Hi all, welcome to another Greenstone development blog entry. Last week we finished up our work helping the FLAX team create a binary installer for FLAX that would work for any version of the Mac operating system. We also mapped out what needed to be done before we can release Greenstone 3.05 and we have started working on that. So far we’ve made decent progress and things are looking good for a release in the near future.

One of the big things that I am working on at the moment is adding extra features to the “oran” skin, which is likely to become the new default skin for Greenstone 3. In particular I have been working on various features that are present in Greenstone 2 but not available in this development skin yet, such as search term highlighting and search term frequency.

So that is what we will be continuing to work on this week.

Share your documents in Facebook or Twitter

Diego Spano. Thursday, April 7th, 2011.

Greenstone has a new macro that lets you share documents in social networks or email systems, using Addtoany tool . The new macro is called _shareme_  that belongs to package Global in document.dm. The macro accepts two parameters: _1_ is the title of the link, and _2_ is the link to share. For _2_, the [srclink] is the default option, but any other metadata can be used too. The only requirement is that the value of that metadata must contain a well-formed URL that begins with “http://”.

If _2_ is left blank, then the link will point to the Greenstone version of the document.

You have to edit your format statement and add something like this:_shareme_([dc.Title],[srclink])

and then you will see “Share+, Facebook, Twitter, Mail , LinkedIn” icons.

_Share_ Icons

There is also a brief version called _sharemesmall_ that requires the same parameters and only shows Share+ icon.

_Sharemesmall_ Icons

The macro code is available with version 2.84. If you are using v.2.83 or earlier you have to edit document.dm file and add the following block:

**** Macro code – Begin ****

package Global

# Social network support
# Defined here in document, as the most likely place this will be used in
# within a document view, however its package is 'Global' because you
# might equally want this in a search or browse list

# _1_ = e.g. title
# _2_ = [srclink] or left empty.  If left empty, then it will share the internal GS document

_sharemescript_ {

<script type="text/javascript">
function fullDomainURL(localURL)
\{
return window.location.protocol+'//'+window.location.host+localURL;
\}
</script>

<script type="text/javascript">
var a2a_config = a2a_config || \{ \};
a2a_config.linkname = "_1_";

_If_(_2_,
var srclink = \'_2_\';

//If metadata value is a valid URL that starts with xxx://
// (e.g. any protocol\, http, https\, ftp ...) then that will be the link to share
if (srclink.match(/^[^:]+:\\\/\\\//i)) \{
a2a_config.linkurl = srclink;
\}
else \{
//if metadata value is [srclink] then we have to cut off the 'href' tag label
var href = srclink.match(/href=\"([^\"]*)\"/);
a2a_config.linkurl = fullDomainURL(href[1]);
\}
,
//if no metadata was passed as link\, then the GS version of the document will be used.
a2a_config.linkurl = fullDomainURL("_gwcgi_")+ "?c=_cgiargc_&a=d&d=_cgiargd_";
)
</script>
}

_shareme_ {

<div style=\'padding-left:50px;\' class=\'a2a_kit a2a_default_style\'>
_sharemescript_(_1_,_2_)
<center>
<a class=\'a2a_dd\' href=\'http://www.addtoany.com/share_save\'>Share</a>
<span class=\"a2a_divider\"></span>
<a class=\'a2a_button_facebook\'></a>
<a class=\'a2a_button_twitter\'></a>
<a class=\'a2a_button_email\'></a>
<a class=\'a2a_button_linkedin\'></a>
</center>
<script type=\"text/javascript\" src=\"http://static.addtoany.com/menu/page.js\"></script>
</div>
}

_sharemesmall_ {

<span style=\'padding-left:8px;\' class=\'a2a_kit a2a_default_style\'>
_sharemescript_(_1_,_2_)
<a class=\'a2a_dd\' href=\'http://www.addtoany.com/share_save\'>Share</a>
<script type=\"text/javascript\" src=\"http://static.addtoany.com/menu/page.js\"></script>
</span>
}

**** Macro code – End ****

Greenstone-Koha Integrated LIVE CD v0.6

admin. Wednesday, November 3rd, 2010.

HealthNet Nepal in Kathmandu has released a pilot version of the Greenstone-Koha Integrated LIVE CD on 15th October, 2010, in the framework of the Digital Library Network South Asia (DLNET-SA). The LIVE CD enables anyone with a PC to test and learn about Greenstone, the Koha integrated library system package and the application integrating these packages. Thanks are due to DLConsulting for their help in developing in the integration application and to Dr. ARD Prasad at DRTC in Bangalore for assistance in developing the LIVE CD. DLNET-SA hopes that this effort can go further and get better and better.

In this LIVE CD, there is Ubuntu with minimal a GNOME Desktop pre-configured with:

1. Greenstone Digital Library Software

2. Koha Integrated Library System

3. GSDL – Koha Integration

4. Sample Integration data

The CD Image (ISO) can be downloaded freely from Sourceforge at http://sourceforge.net/projects/gsdlkohalive/. For detailed information about the features and facts you can visit http://gsdlkohalive.sourceforge.net/.

We are constantly trying to improve this CD and come up with latest version in the upcoming releases. The current version is called v0.6 is based on Ubuntu 10.4 (32 bits) and has the following versions of applications:

1. GSDL v2.83

2. KOHA v3.2.0

Announcement released on behalf of Dr. Mohan Raj Pradhan, General Secretary, DLNET-SA

Results from the Greenstone User and Developer Survey

admin. Tuesday, June 22nd, 2010.

We are pleased to announce that an overview of results from the 2009 Greenstone User and Developer survey is available online at: http://greenstonesurvey.wordpress.com/greenstone-user-and-developer-survey-results/.

Through the survey, we were able to gather information from a geographically dispersed group of organizations and individuals who use Greenstone Digital Library Software. A primary component of the survey focused on how support resources are used and how current resources meet user needs.

The overview includes results from all major sections of the survey, which were the following:

  • Background information (modes of use and basic use demographics);
  • User Satisfaction;
  • Support Mechanisms and Resources;
  • Organizational Contexts;
  • Technical Environments (Version Use and OS);
  • Collections and Audiences; and
  • Developers.

We’d like to thank respondents for participating in the survey and sharing information about their Greenstone experience!

First operational Greenstone OAI-PMH collections

admin. Thursday, December 24th, 2009.

The first two Greenstone collections to publicly implement OAI-PMH (Open Archives Initiative – Protocol for Metadata Handling) are now fully operational for data harvesting.

They are:

* Biblioteca Digital Científica de les Illes Balears in Spain – the OAI base url is http://ibdigital.uib.es/greenstone/cgi-bin/oaiserver.cgi;
* Memoria Acad̩mica of the Faculty of Humanities and Educational Sciences, National University of La Plata in Argentina Рthe OAI base url is http://www.memoria.fahce.unlp.edu.ar/oaiserver.cgi.

Both of these collections are registered in ROAR, OpenDoar and the Open Archives list of Data Providers.

By activating the integrated OAI-PMH Greenstone server, a Greenstone collection can participate in the worldwide open access network by which bibliographic data is made freely available by more than a thousand OAI-PMH data providers (often called open access repositories or institutional archives).

Several other Greenstone collections are referenced the above registries (7 in ROAR, 19 in OpenDoar which does not require OAI-PMH access for listing) but these collections have either not implemented OAI-PMH, or not correctly parameterised their server, or not correctly registered their service.

Interested users may consult the OAI support page on the Greenstone wiki.

In addition to providing an OAI-PMH server, Greenstone has integrated OAI-PMH harvester (in the Download tab in GLI) which permits the acquisition of data from OAI-PMH servers to enrich Greenstone collections; in addition to the access to bibliographic data as defined in the OAI-PMH protocol, this harvesting facility also enables downloading of the associated documents if they are referenced in the OAI-PMH records.

Users’ comments are invited on OAI in Greenstone, e.g. on technical issues or facility of use, on other existing operational collections unknown to us, or on plans for new OAI-PMH Greenstone services.

How to Build a Digital Library, Second Edition

Dave Nichols. Thursday, December 17th, 2009.

We are pleased to announce the publication of the Second Edition of How to Build a Digital Library.

The Second Edition is a major rewrite, including new material on multimedia, metadata, internationalisation and the roles that people take in digital libraries. The book is divided into two sections: Part I on Principles and Practices and Part II on the Greenstone Digital Library Software. This division allows the book to be used for general digital library courses (using any software) and frees Part II to provide the most detailed description available of the Greenstone software suite.

The book website has lots of supporting material including: samples of the Preface and Chapter 1, an online Appendix on markup and XML, and all of the Figures and Tables.

Witten, I.H., Bainbridge, D. & Nichols, D.M. (2010) How to Build a Digital Library, Second Edition. Burlington, MA: Morgan Kaufmann.

Front cover of How to Build a Digital Library, Second Edition

More details at Amazon.com and WorldCat.