History: Collaborative_Multilingual_Terminology
Preview of version: 245
- «
- »
When completed, this profile will allow a group of users to collaborate on creating a multilingual glossary of terms for a site. This kind of glossary is invaluable to help with the translation of content, and ensure consistent use of terms and their equivalents.
The profile will essentially emulate the HTAGlossary site:
However, as of 2009-06-01, it is not ready for prime time yet.
This is where we include some wiki pages
collaborative_terminology_platform_include_module
To test this, you may need a series of test users from different groups. You can batch upload them by uploading a .csv file with this content:
login,password,email,groups
isregistered,1234,blah@yahoo.com,'Registered'
iseditor,1234,blob@yahoo.com,'Editors'
Below is a list of todos, sorted by priority
In an email from Alain Désilets (2009-09-09 at 8:25), Marc Laporte reported that a user only got English as the choice of languages to search for in the Terminology module, eventhough he had specified French as one of his languages.
Need to investigate that.
As of 2009-09-09, Alain could not reproduce it.
The profile provides a number of demo entries (ex: moteur wiki, wiki engine), to help users get started.
Right now, those entries look funny. Many only contain the name of the term, which means that when they are displayed, you see the term in the title and in the first line of the content.
It would be better if each entry was a complete entry, and followed the templates which are also included in the profile.
Say there is a page "Translation Memory", but I don't know. I create a French entry "Mémoire de traduction". I then translate it and specify "Translation Memory" as the name of the equivalent.
In that case, the system will tell me that "Translation Memory" already exists, and ask me to go back.
It would be MUCH better if the system offered me right there to link "Translation Memory" to "MÉmoire de traduction".
Note: This would be useful not only for terminology, but also for general translation features.
Right now, if you type a term in the search field and there is an exact match, the system displays a list of hits with just that one term in it. It would be better if in such cases, it took you directly to the term. Avoids having to do an extra click everytime.
Hum... on the other hand, if you enter a word like wiki, because you are looking for terms that contain that word, and if there is a term "wiki", then you will never get to find other terms that contain that word.
Hum... need to think about this some more.
In TERMIUM and GDT, the way they deal with that is that they take you directly to the term if it exists, but in the left side, they display similar terms.
Maybe each page should have a list of "similar" pages, i.e. pages whose names are superstrings of the page you are looking at.
Translators will use the forum mostly to post questions like this:
"How do you say "Machine Translation" in French?
Whenever I do this, I tend to just type that as the title of the post, and leave the body of the message blank. But then the system tells me that the body of the message should not be empty. But the error message is so small that I don't notice it, and I assume that my message got posted (because the system shows me the message I just wrote).
The system really should accept posts with empty body. This should be the default behaviour in my opinion, but maybe it should be overrideable in the options panels.
If the site supports 12 languages but I told it that I only speak 2, then when I click on the Translate button, the system should only give me the choice between those 2 languages. Not all 12 of them.
Simplest way to do this is to use the proposal plugin: http://doc.tikiwiki.org/tiki-index.php?page=PluginProposal.
For example, if you want to specify a list of possible alternatives for a term, "wiki engine", you could write:
((wiki engine)): {proposal()}{PROPOSAL} (alias(wiki system)): {PROPOSAL(){PROPOSAL} (alias(wiki backend)): {PROPOSAL()}{PROPOSAL}
Then each equivalent is displayed with a voting plugin next to it.
Problem with that is that the vote plugin takes WAY too much realestate! Maybe we could have an argument to the PROPOSAL plugin which would tell it to only display a summary of the votes, without details of who voted for what. There could be a link allowing people to see more details.
For example, the above could be redndered more or less as follows
wiki engine accept(0), undecided(0), reject(0) (details) etc...
By clicking on accept, undecided, or reject, you would vote in favour of that. If you click on details, you get the current display whith who voted for what.
-
The profile will essentially emulate the HTAGlossary site:
However, as of 2009-06-01, it is not ready for prime time yet.
Table of contents
- Features & settings
- Modules and Objects
- Wiki pages included with this profile
- Permissions
- Testing tricks
- Todos
- Priority 1
- Priority 2
- When translating to an existing page name, system should offer you to link the two of them
- If exact term is found, go directly to it
- Forum postings should allow empty text
- Figure out how to use categories for domain classification
- Figure out the right level of tracking
- Tracking a page should also track its translations
- Priority 3
- When translating, only list languages that I speak
- Automatically select language of equivalent when possible
- Allow people to vote on the best equivalent
- Terminology module should validate that Terminology PROFILE has been applied
- Automatic translation of labels when creating an equivalent
- Alias search should respect language
- Priority 4
- Related wishes
- Alias
Features & settings
YAML
Copy to clipboard
instructions: Get Started with Multilingual Terminology preferences: # The whole thing is based on the wiki feature feature_wiki : y # # Pages for a term must be available in multiple languages # feature_multilingual : y feature_translation: y # So you can see a term and its translation on same page feature_multilingual_one_page: y # So users can specify the languages that they # speak change_language: y # # Enable templates, so we can provide user with # templates for terminology entries # feature_wiki_templates: y # # User preferences needed so users can specify # the languages they are interested in. # feature_userPreferences: y feature_mytiki: y # # Page title is the term, so it should be displayed # feature_page_title : y # # When we try to access a page which has been aliased to # two different pages, we want the system to ask us # which of the aliased pages to go to. This is what # feature_likePages is for. # feature_likePages: y # # So site can send out email messages to users? # feature_messages: y # # Allow users to undo changes history # feature_wiki_undo: y # # Categories can be used to specify domains for terms. # # As of 2009-06-10, Category Objects lists all the # pages that are tagged with a category. This is WAY too # long, and takes too much screen real-estate. Need to # change code to make list of pages optional # # Could also use categorypath, but it is only displayed for # the first language at the top, and we need it displayed # for all languages. # feature_categoryobjects: y feature_categories: y categoryobjects: y categorypath: n # # Not sure what this is.... # wiki_edit_plugin: y # # Comments can take too much real-estate. Translators # mostly want to see the term in source language, and # its equivalent in target language, and they need # to visually parse the screen efficiently # So make comments invisible unless the user # clicks on it. # feature_wiki_comments: y wiki_comments_displayed_default: n # # Do we really need freetags? # feature_freetags: y # # Need to be able to search for a term # Maybe we don't need this since we have a custom # terminology search module # feature_search: y # Enable user watches feature_user_watches: y feature_print_indexed: y feature_mytiki: y # # Support voting on equivalents for a term # AD: Not sure which of those features are actually needed. # Still experimenting with different voting mechanisms # feature feature_polls: y feature_wiki_ratings: y wikiplugin_proposal: y # # Need a forum for asking terminology questions # feature_forums: y # # Hum... shouldn't we validate users? # validateUsers: n allowRegister: y validateRegistration: y auth_ldap_adminuser: y auth_ldap_adminpass: y # # Set home page to the terminology help page. # wikiHomePage: Get Started with Multilingual Terminology
Modules and Objects
YAML
Copy to clipboard
objects: # # Note: terminology module may only be available in trunk # version, not 3.0. # # # Anonymous users can search for terms, but they won't be # allowed to modify them. # - type: module ref: module_terminology data: name: terminology position: right groups: [ Anonymous ] order: 10 - type: module data: name: last_modif_pages position: right order: 1 groups: [ Editors, Registered, Admins ] - type: module ref: module_since_last_visit_new data: name: since_last_visit_new position: right groups: [ Registered ] order: 30 - type: module ref: module_switch_lang data: name: module_switch_lang position: right groups: [ Registered, Anonymous ] order: 25 - type: forum ref: term_fr_en_questions data: name: Fr <-> En questions description: For En, Fr question / Pour des questions entre le français et l'anglais attachments: everyone enable: [ topic_smiley ] list: [ topic_reads ] - type: forum ref: term_es_en_questions data: name: Es <-> En questions description: For En, Fr question / Para preguntas entre Es y En attachments: everyone enable: [ topic_smiley ] list: [ topic_reads ]
Wiki pages included with this profile
This is where we include some wiki pages
Id | Page | Last modification | Categories |
---|---|---|---|
278 | collaborative_terminology_platform_blog |
Thu 08 of Mar, 2012 03:16 GMT-0000
|
Documentation |
279 | collaborative_terminology_platform_bl... |
Thu 08 of Mar, 2012 03:17 GMT-0000
|
Documentation |
244 | collaborative_terminology_platform_fi... |
Thu 08 of Mar, 2012 03:29 GMT-0000
|
Documentation |
286 |
collaborative_terminology_platform_in...
Admin page for Terminology features
|
Thu 08 of Mar, 2012 03:30 GMT-0000
|
Documentation |
367 |
collaborative_terminology_platform_in...
French User guide for Collaborative Multilingual Terminology module
|
Thu 08 of Mar, 2012 03:33 GMT-0000
|
Wiki pages included by profiles |
277 | collaborative_terminology_platform_in... |
Thu 08 of Mar, 2012 03:33 GMT-0000
|
Wiki pages included by profiles |
396 |
collaborative_terminology_platform_in...
Template for German terms
|
Sat 17 of Mar, 2012 02:29 GMT-0000
|
Documentation |
305 |
collaborative_terminology_platform_in...
Template for new English terminology entries
|
Sat 17 of Mar, 2012 02:29 GMT-0000
|
Documentation |
375 | collaborative_terminology_platform_in... |
Sat 17 of Mar, 2012 02:30 GMT-0000
|
Documentation |
309 |
collaborative_terminology_platform_in...
Modèle pour entrées en français
|
Mon 15 of Oct, 2012 01:57 GMT-0000
|
Documentation |
242 |
collaborative_terminology_platform_in...
Help page for the profile.
|
Sun 18 of Mar, 2012 20:42 GMT-0000
|
Wiki pages included by profiles |
288 |
collaborative_terminology_platform_mo...
Sample terminology entry in French
|
Mon 28 of Jul, 2014 16:10 GMT-0000
|
Wiki pages included by profiles |
374 |
collaborative_terminology_platform_Mo...
Just a sample spanish term
|
Sun 18 of Mar, 2012 20:40 GMT-0000
|
Documentation |
243 | collaborative_terminology_platform_rs... |
Thu 08 of Mar, 2012 03:15 GMT-0000
|
Documentation |
281 |
collaborative_terminology_platform_ta...
Taggage
|
Sun 18 of Mar, 2012 20:44 GMT-0000
|
Wiki pages included by profiles |
280 |
collaborative_terminology_platform_ta...
Tagging
|
Sun 18 of Mar, 2012 20:45 GMT-0000
|
Wiki pages included by profiles |
287 |
collaborative_terminology_platform_wi...
Just a sample term.
|
Sun 18 of Mar, 2012 20:45 GMT-0000
|
Wiki pages included by profiles |
collaborative_terminology_platform_include_module
YAML
Copy to clipboard
objects: - type: wiki_page ref: collaborative_terminology_platform_include_get_started_with_multilingual_terminology data: name: Get Started with Multilingual Terminology lang: en content: wikicontent:collaborative_terminology_platform_include_Get_Started_with_Multilingual_Terminology_include - type: wiki_page ref: collaborative_terminology_platform_include_admin_page data: name: Collaborative Terminology admin page lang: en content: wikicontent:collaborative_terminology_platform_include_admin_page - type: wiki_page ref: collaborative_terminology_platform_include_register_and_set_your_languages data: name: Register and Set your Languages lang: en content: wikicontent:collaborative_terminology_platform_include_register_and_set_your_languages - type: template ref: Term_Template_en data: name: Term Template-en content: wikicontent:collaborative_terminology_platform_include_Term_Template_en sections: [ wiki ] - type: template ref: Term_Template_fr data: name: Term Template-fr content: wikicontent:collaborative_terminology_platform_include_Term_Template_fr sections: [ wiki ] - type: wiki_page ref: collaborative_terminology_platform_wiki_engine data: name: Wiki engine lang: en content:wikicontent:collaborative_terminology_platform_wiki_engine translations: [ $collaborative_terminology_platform_moteur_wiki] - type: wiki_page ref: collaborative_terminology_platform_moteur_wiki data: name: Moteur wiki lang: fr content:wikicontent:collaborative_terminology_platform_moteur_wiki - type: wiki_page ref: collaborative_terminology_platform_tagging data: name: tagging lang: en content:wikicontent:collaborative_terminology_platform_tagging translations: [ $collaborative_terminology_platform_taggage] - type: wiki_page ref: collaborative_terminology_platform_taggage data: name: taggage lang: fr content:wikicontent:collaborative_terminology_platform_taggage - type: category ref: cateory_term data: name: term description: Base category used for all terms
Permissions
YAML
Copy to clipboard
objects: - ref: Multilingual_Permissions permissions: Anonymous: allow: -view -comment -wiki_view_comments # # Anons can view history, but not roll back changes. # -wiki_view_history -post_comments -search -search_categorized -view_categories -forum_read Registered: description: Will be ignored because group is already created allow: -view_categories Editors: description: Can edit & delete all content allow: -edit -rename -admin_categories -rollback -forum_vote -forum_post -forum_post_topic -forum_edit_own_posts -forums_report -forum_attach -forum_autoapp Admins: description: Have all rights allow: [ admin ]
Testing tricks
To test this, you may need a series of test users from different groups. You can batch upload them by uploading a .csv file with this content:
login,password,email,groups
isregistered,1234,blah@yahoo.com,'Registered'
iseditor,1234,blob@yahoo.com,'Editors'
Todos
Below is a list of todos, sorted by priority
Priority 1
BUG: Terminology module does not offer possibility to search in French
In an email from Alain Désilets (2009-09-09 at 8:25), Marc Laporte reported that a user only got English as the choice of languages to search for in the Terminology module, eventhough he had specified French as one of his languages.
Need to investigate that.
As of 2009-09-09, Alain could not reproduce it.
Demo terminology entries should be more realistic
The profile provides a number of demo entries (ex: moteur wiki, wiki engine), to help users get started.
Right now, those entries look funny. Many only contain the name of the term, which means that when they are displayed, you see the term in the title and in the first line of the content.
It would be better if each entry was a complete entry, and followed the templates which are also included in the profile.
Profile should set up a discussion forum
- Mostly done.
- All that's left to do is to make is so that anons see a link to the forums on the left hand side. Right now, they have perms to view forum posts, but they have to know the url of the forum. For some reason, the menu that shows Forums > List Forums (on the left) does not appear for anons.
Testing
- Test profile with non-admin users. Make sure that:
- Can view entries
- Can edit entries
- Can view history
- Can revert change
- Can track pages
- Can post comment
- Can assign categories
- Anything else?
Extensive help pages
- Help pages should cover all the common tasks.
- In particualr, it should provide instructions about how to deal with the situation where a same word can refer to different things. For example, Tag can refer to metadata, to a markup element, or to a dog tag. The solution is to create pages with slightly different names, for example "tag - metadata", "tag - markup", "tag - identity plaque".
- Refactor the instructions pages into one long page called "Guide to collaborative multilingual terminology creation". The guide will have a section for Admins, and a section for Editors.
- Section for editors comes first.
- Section for editors talks about:
- Searching for a term
- Creating a new term
- Creating an equivalent for a term
- What to do if a same word can mean different things (create different pages which are more explicit, ex: tag — dog plaque, vs tag — metadata).
- Tracking certain pages or the whole site
- Using categories for domain classification
- Section for admins talks about:
- Finalizing the installation
- Keeping abreast of new users
- Approving new users
- Tracking the whole site
- The guide should provide instructions about using categories to assign domains. The admin section should suggest that the admin seed the category tree.
- Guide should provide instructions about how to manage users.
- Ask for email notification of new users.
- Move new users from Registered to Editors soon after registering.
- What are the different groups and their permissions.
- Guide should bring users attention to the Last changes module as a way to keep track of what others do. Also, explain the page tracking feature.
- How do I set up the glossary profile and make it multilingual?
- How do I create a glossary entry in say, French?
- Given an entry in say, French, how do I create the corresponding entry in say, English?
- How do I avoid reinventing the wheel? For example, say I create a French entry for word X, and then want to create the corresponding entry Y in English, but someone already created Y, how do I find out about it and tie the two together. In particular, what happens if the existing Y is a very slight variation on the Y that I am currently trying to create (eg: I am creating the verb form, whereas the existing Y used the noun form)?
- I don't want to change an entry... just comment on it.
- How can I respond to someone else's comment?
- Can I create an entry in French that has more than one English equivalent?
- How do I create a domain hierarchy?
- Admin: What is the current permissions scheme, and how do I customize it for my needs?
- How do I specify my source and target language?
- How do I enable a new language?
- HOw to enable that language in the prefs panel
- Create a new template for an entry in that language
- Admin: How do I monitor spam, etc...
- Admin: What to do when a new user registers?
- User: how do I ask a terminology queston
- Create a terminology entry for it, and put a comment asking for its translation.
- Or, post the question on appropriate discussion forum. Once you have decided which is best, please create a bilingual terminology entry so people will find it more easily later.
Translate guide to French
- Make it so that the guide is available in French and English.
Priority 2
When translating to an existing page name, system should offer you to link the two of them
Say there is a page "Translation Memory", but I don't know. I create a French entry "Mémoire de traduction". I then translate it and specify "Translation Memory" as the name of the equivalent.
In that case, the system will tell me that "Translation Memory" already exists, and ask me to go back.
It would be MUCH better if the system offered me right there to link "Translation Memory" to "MÉmoire de traduction".
Note: This would be useful not only for terminology, but also for general translation features.
If exact term is found, go directly to it
Right now, if you type a term in the search field and there is an exact match, the system displays a list of hits with just that one term in it. It would be better if in such cases, it took you directly to the term. Avoids having to do an extra click everytime.
Hum... on the other hand, if you enter a word like wiki, because you are looking for terms that contain that word, and if there is a term "wiki", then you will never get to find other terms that contain that word.
Hum... need to think about this some more.
In TERMIUM and GDT, the way they deal with that is that they take you directly to the term if it exists, but in the left side, they display similar terms.
Maybe each page should have a list of "similar" pages, i.e. pages whose names are superstrings of the page you are looking at.
Forum postings should allow empty text
Translators will use the forum mostly to post questions like this:
"How do you say "Machine Translation" in French?
Whenever I do this, I tend to just type that as the title of the post, and leave the body of the message blank. But then the system tells me that the body of the message should not be empty. But the error message is so small that I don't notice it, and I assume that my message got posted (because the system shows me the message I just wrote).
The system really should accept posts with empty body. This should be the default behaviour in my opinion, but maybe it should be overrideable in the options panels.
Figure out how to use categories for domain classification
- Enable it.
- Should editors be allowed to create/modify/delete categories, or should it just be admins?
- May need to change code a bit so that the categories don't take so much real estate.
- Should each category be multilingual, or should we have parallel category hierarchies in different language?
Figure out the right level of tracking
- By default, users should be setup to track certain things. What should those things be:
- Track pages that they themselves created?
- Track creation of new pages (i.e. new terms), so that they can track implicit terminology questions from other users?
Tracking a page should also track its translations
- If I create a term in English for which I don't know the French equivalent, as a way of implictly asking a question. Then, when someone actually translates that page to create a French equivalent, I should be notified of that.
- But right now, that does not happen.
- Note: Maybe a better way to ask a question is to use a discussion forum. See todo regarding forum.
Priority 3
When translating, only list languages that I speak
If the site supports 12 languages but I told it that I only speak 2, then when I click on the Translate button, the system should only give me the choice between those 2 languages. Not all 12 of them.
Automatically select language of equivalent when possible
- If I translate a term to another language, if there is only one language left in the user's language preferences, for which a translation of that term does not exist, then automatically select that language by default.
- For example, if I have set only En and Fr as my languages, and I am translating an En term, then system should automatically select Fr by default for the translated page.
Allow people to vote on the best equivalent
Simplest way to do this is to use the proposal plugin: http://doc.tikiwiki.org/tiki-index.php?page=PluginProposal.
For example, if you want to specify a list of possible alternatives for a term, "wiki engine", you could write:
((wiki engine)): {proposal()}{PROPOSAL} (alias(wiki system)): {PROPOSAL(){PROPOSAL} (alias(wiki backend)): {PROPOSAL()}{PROPOSAL}
Then each equivalent is displayed with a voting plugin next to it.
Problem with that is that the vote plugin takes WAY too much realestate! Maybe we could have an argument to the PROPOSAL plugin which would tell it to only display a summary of the votes, without details of who voted for what. There could be a link allowing people to see more details.
For example, the above could be redndered more or less as follows
wiki engine accept(0), undecided(0), reject(0) (details) etc...
By clicking on accept, undecided, or reject, you would vote in favour of that. If you click on details, you get the current display whith who voted for what.
Terminology module should validate that Terminology PROFILE has been applied
- The Terminology module should check that the Terminology profile has been applied. If it hasn't, it should display a highly visible warning telling the admin to apply that profile (and providing a link with instructions on how to do this... for example, a link to the profile itself, and the profile would have instructions on how to apply it.)
- Done, but the link that points to how to install the profile could be more specific. It could point to the admin page for applying the profile.
Automatic translation of labels when creating an equivalent
- Say I have a page "web browser", and I want to create its French equivalent "navigateur web".
- I click on Translate button.
- The content of the English page is pasted into the French page.
- The problem is that all the labels like Synonyms, Definition, must be translated.
- And they need to be translated in a standardized way.
- It would be nice if these could be translated automatically.
- Here's a generic way in which this could be done.
- When we create a new translation, the system will automatically translate occurrences of an English page name, to the name of the corresponding French page.
- So, now all we need to do create an English page Synonym with a French equivalent Synonymes.
- This feature would be useful in other ways.
- It would automatically translate links to English pages into links to French pages.
- It would automatically translate English terminology to French terminology (often, terms are captured as pages, even on sites where Terminology profile is not used).
- Question: Won't that be too slow?
Alias search should respect language
- Right now, if you search for a word in English, and there is an alias for that word that corresponds to a French page, the alias will be listed.
- The list of aliases should instead be filtered on the basis of the language of the page they refer to.
Priority 4
Create all terms in a same category called Term
- Terms should all be created in a same categorry called Term. Search and page creation form for the Terminology module should use that category. Make the seeded pages in the profile part of that category.
- Note: The list of aliases should be filtered, so that we onlyh show aliases for pages that are in that category.
-
Misc
- Put a new users dashboard for admins, so they can move new users to the Editors group.
- Need language indicator in front of the term in the list of equivalents. Ex: fr: Fil RSS, en: RSS feed.