Loading...
 
Skip to main content

History: Collaborative_Multilingual_Terminology

Source of version: 199

Copy to clipboard
            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:

* http://htaglossary.net/

However, as of 2009-06-01, it is not ready for prime time yet.

{maketoc}

!Features & settings
{CODE(caption=>YAML)}
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


#
# 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


 

{CODE}


!Modules
{CODE(caption=>YAML)}
objects:
#
# Note: terminology module may only be available in trunk
# version, not 3.0.
#
 -
  type: module
  ref: module_terminology
  data:
   name: terminology
   position: right
   groups: [ Registered ]
   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
{CODE}

!Wiki pages included with this profile

This is where we include some wiki pages
{LISTPAGES(find="collaborative_terminology_platform")}{LISTPAGES}
collaborative_terminology_platform_include_module


{CODE(caption=>YAML)}
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_Term_Template    
    data:
      name: Term Template
      lang: en
      content: wikicontent:collaborative_terminology_platform_include_Term_Template
  -
    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 page ]
  -
    type: template
    ref: Term_Template_fr
    data:
      name: Term Template-fr
      content: wikicontent:collaborative_terminology_platform_include_Term_Template_fr
      sections: [ wiki page ]

  -
    type: wiki_page
    ref: collaborative_terminology_platform_rss_feed
    data:
      name: RSS feed
      lang: en
      content: wikicontent:collaborative_terminology_platform_rss_feed
      translations: [ $collaborative_terminology_platform_fil_rss]
  -
    type: wiki_page
    ref: collaborative_terminology_platform_fil_rss
    data:
      name: Fil rss
      lang: fr      
      content: wikicontent:collaborative_terminology_platform_fil_rss
  -
    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
{CODE}




!Permissions
{CODE(caption=>YAML, wrap=1)}
objects:
 -
  ref: Multilingual_Permissions
permissions:
 Anonymous:
  allow:
   -view
   -comment
   -wiki_view_comments
   -post_comments
   -search
   -search_categorized
   -view_categories
 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
 Admins:
  description: Have all rights
  allow: [ admin ]
{CODE}


!Questions to answer

* 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?


!Todos

!!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

* Use the proposal plugin:
** http://doc.tikiwiki.org/tiki-index.php?page=PluginProposal

!!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?


!!Figure a way to automate installation of Term Templates
* Alain changed the profile to use LPH's new handler.
* But it needs to be tested to make sure it works.

!!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.

!!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.

!!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.

!!More explanations in the guide pages

* The guide 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.

!!Permissions for administering categories

* Should editors be allowed to control addition, deletion of categories?
** Editors should definitely be allowed to assign categories to pages. But should they be allowed to create new categories, or delete existing ones?

* Guide should provide instructions on how to track the whole site (not just individual pages)

!!Translate guide to French

* Make it so that the guide is available in French and English.

!!Page tracking
* Add page tracking, and provide instructions in the guide.

!!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?


!!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.

* Ajouter un forum pour poser des questions menant à la création de fiches.
* Système permettant de voter?
**Insertion de sondages dans les fiches pour chacun des équivalents proposés.

* Put comments in the YAML stuff to document the various decisions made.


!Related wishes
*[http://dev.tikiwiki.org/wish2719|Creation of wiki page: enter description and wiki page name is suggested (but editable)]

        

History

Information Version
Thu 28 of Dec, 2023 17:00 GMT-0000 Marc Laporte warning 621
Fri 14 of Jul, 2017 11:44 GMT-0000 luciash d' being 🧙 mark broken link 620
Tue 24 of Jan, 2017 11:09 GMT-0000 Xavi (as xavidp - admin) adding a space between "-" and the permission name to have th enew yaml library in 16.x accept the syntax (it was probably invalid yaml being tolerated only by the former yaml library and not allowed) 619
Wed 18 of Apr, 2012 19:00 GMT-0000 Marc Laporte more 618
Wed 18 of Apr, 2012 17:22 GMT-0000 Marc Laporte more 617
Wed 18 of Apr, 2012 16:59 GMT-0000 Marc Laporte more 616
Wed 18 of Apr, 2012 16:57 GMT-0000 Marc Laporte more 615
Wed 18 of Apr, 2012 16:50 GMT-0000 Marc Laporte more 614
Wed 18 of Apr, 2012 16:48 GMT-0000 Marc Laporte more 613
Wed 18 of Apr, 2012 16:45 GMT-0000 Marc Laporte more 612
Wed 18 of Apr, 2012 16:42 GMT-0000 Marc Laporte more stuff todo! 611
Wed 18 of Apr, 2012 16:39 GMT-0000 Marc Laporte new stuff 610
Sun 18 of Mar, 2012 20:53 GMT-0000 Greg Wheat Moved to needs a bit more coding 609
Fri 03 of Dec, 2010 13:31 GMT-0000 Marc Laporte Should be obvious 608
Tue 14 of Sep, 2010 02:10 GMT-0000 Marc Laporte cleaner 607
Mon 15 of Feb, 2010 21:27 GMT-0000 alain_desilets 606
Mon 15 of Feb, 2010 21:25 GMT-0000 alain_desilets 605
Mon 15 of Feb, 2010 19:37 GMT-0000 alain_desilets 604
Mon 15 of Feb, 2010 19:20 GMT-0000 alain_desilets 602
Wed 03 of Feb, 2010 20:57 GMT-0000 alain_desilets 601
Sun 24 of Jan, 2010 12:07 GMT-0000 alain_desilets 600
Tue 22 of Dec, 2009 21:48 GMT-0000 alain_desilets 599
Tue 22 of Dec, 2009 16:56 GMT-0000 alain_desilets 598
Tue 22 of Dec, 2009 16:48 GMT-0000 alain_desilets 597
Tue 22 of Dec, 2009 16:38 GMT-0000 alain_desilets 596