Gemini Community Support Site

This Gemini community support site can be used to find solutions to product issues. You can log in using Open Id, Google Profile and even Facebook. Feel free to ask a question or browse FAQs and documentation. Product tour videos are also available along with how-to videos demonstrating key Gemini capabilities.

Project Management Taxonomy & Localization

Tuesday, December 27, 2011, 1:24:39 PM

One of the key requirements of a flexible Issue Tracker is that of allowing users to customize terminology to match the organizations terminology.

Sure, Gemini uses commonly used, if not universally understood terms such a Project, Component, Version, etc..  But this is not always the way teams refer to such concepts. Maybe “Module” is what you mean by Component?  Or if you are running an Agile / SCRUM project, Version means Sprint or Product Backlog?

What happens if the Issue Tracker is being used in a IT Support / Call Centre scenario? Maybe “Business Unit” or “Product” are better labels for what we call Projects?

We built Gemini with  terminology customization in mind: give users the ability to customize any on-screen label to match their business terminology. This also meant that our underlying approach required no technical dependency, skills, or any other competency: users should be able to open up a file and just change what they need to change. But wait. What happens when we release a new version of Gemini and users had changed all on-screen labels before? Do they stand to lose all their amends? Not so, read on…

We use XML files to store all our taxonomy (a.k.a. terminology). These XML files are located within the Gemini Web Application and are organized by language code:

Language Folders

Each folder contains two files:

  • Resource.xml — holds all Gemini strings localized
  • Override.xml — contains strings changed by users

Our XML files are simple to understand and change:

Language File Contents

In essence, if users want to customize a string:

  • Copy the original string from the Resource.xml file and place it into the Override.xml file.
  • Change the string in Override.xml as per your requirements.

Language Override File
In the above example, the word “Delete” has been replaced with “Remove”.

Furthermore, Gemini Web Services can also retrieve the localized XML files thus allowing other applications to use the same taxonomy as used by Gemini. This is primary reason why we do not use the native .NET RESX format for localization: Gemini has to interop with with different technologies, platforms, and with quick amendments in mind.