Re: [greenstone-users] Unsolved problem #2

From Michael Dewsnip
DateMon, 10 Jan 2005 12:21:15 +1300
Subject Re: [greenstone-users] Unsolved problem #2
In-Reply-To (f06200715be04851ff4d4-172-16-1-51)
Hi Rich,

If there are no commas in English Creator metadata, the code assumes
that it is a name formatted like "Michael Dewsnip", and will sort it on
the last token ("Dewsnip"). This is correct, for names of people. For
something like "London Society", the same code applies and I would
expect it to sort by "Society". This probably isn't what you want.

If all your people names have commas, you can easily turn off this "no
comma" case and leave things like "London Society" sorted as they
appear. Just edit and comment out the

if (!$comma_format) {

block of code in the format_string_name_english function.

All the best,


Rich Robinson wrote:

> Still would be grateful for help on this one -- my latest response is
> above John McPherson's earlier response.
>> What you wrote makes sense, but shouldn't items under "Creator"
>> without a comma be alphabetized properly as well? E.g. I have items
>> like "London Society" which seem just randomly placed - while
>> anything with Surname,Firstname is fine. Seems to me a single entity
>> would be alphabetized like a surname...but it's not.
>>> > Hi,
>>>> When I display my list of Authors A-Z, everything in the format "Last
>>>> Name, First Name" with a comma in the middle, are properly
>>>> alphabetized. Anything without the comma such as an organizational
>>>> name is out of sequence, almost randomly. At least that's the only
>>>> difference I am seeing between items that sort properly and those
>>>> that don't. Where should I look to correct this, would there be
>>>> something in the formatting statement for that particular vlist (I
>>>> think it's a vlist)?
>>> This is done at build time, by the classifiers in
>>> $gsdl/perllib/classify/.
>>> If the language of a document was set to English, and the metadata
>>> is one that is expected to contain names, such as "Creator" metadata,
>>> then it will assume that a comma implies 'Surname, Firstname'.
>>> Look in (format_metadata_for_sorting()) and
>>> perllib/
>>> (format_string_english() and format_string_name_english()).
>>> John McPherson
> _______________________________________________
> greenstone-users mailing list