Loading...
 
Skip to main content

History: Collaborative_Multilingual_Terminology

Source of version: 104

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.


!Features & settings
{CODE(caption=>YAML)}
instructions: Get Started with Multilingual Terminology
preferences:
 feature_wiki : y
#
# Page title only displayed once, so we can't use page title
# to display the term. Instead, ask the user to enter the
# term on the first line
#
 feature_page_title : n
 feature_messages: y
 feature_multilingual : y
 feature_categoryobjects: y
 wiki_edit_plugin: y
 wiki_comments_displayed_default: n
 feature_translation: y
 feature_urgent_translation: y 
 quantify_changes: y 
 feature_categories: y
 feature_freetags: y
 feature_wiki_description: y
 feature_search: y
 feature_print_indexed: y
 feature_multilingual_one_page: y
 feature_mytiki: y
 feature_userPreferences: y
 feature_wiki_comments: y
 wiki_comments_displayed_default: y
 allowRegister: y
 validateRegistration: y
 auth_ldap_adminuser: y
 auth_ldap_adminpass: y
 validateUsers: n
{CODE}

removing for now:
 wikiHomePage: Get Started with Multilingual Terminology
!Modules
{CODE(caption=>YAML)}
objects:
 -
  type: module
  ref: module_translation
  data:
   name: translation
   position: right
   groups: [ Registered, Anonymous ] 
   order: 10
 -
  type: module
  ref: module_quick_edit
  data:
   name: quick_edit
   position: right
   groups: [ Registered ]
   order: 20
 -
  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

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


{CODE(caption=>YAML)}
objects:
  -
    type: module
    data:
      name: last_modif_pages
      position: right
      order: 1
      groups: [ Editors, Registered, Admins ]
  -
    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: 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: 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

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



!Todo

* First paragraph of the profile should provide a plain English description.

* Use only page name for the term.
** At the moment, we tell people to enter the term as the first line of the page, because we don't want people to enter non-English characters in the page name (cause many browsers don't deal well with non-English chars in URLs). 
** But that doesn't mean people will actually follow that convention. The temptation to type the actual term for the page name is just too strong.
** So, just allow people to use the page name as the actual term. Those who browse in non-English langauges probably already use a browser which can display non-English chars in the URLs.
** Worst case scenario is that some people will see the URL with URLEncoded characters (ugly % signs, etc...).

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

* Make it so that comments are invisible by default 
** Pofiling of that feature  does not seem to work.
** For now, just added instructions on the admin guide telling them to do this manually.

* Profile does not correctly set the home page to be the Get Started page.

* Make it so that Search form searches only in the term, not the full text.
** Can do this by replacing the Search module with a QuickEdit module configured to search.
** Seems all I need to do is change the action parameter of the QuickEdit module to tiki-index.php (according to LPH).
*** http://doc.tikiwiki.org/tiki-pagehistory.php?page=Module%20quick_edit&diff_style=sidediff&compare=Compare&newver=3&oldver=2
** Also, change the label of the QuickEdit module to "Find term".

* 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:
*** Finalising 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.

* We should have a template for new terminology entries
** According to this: http://doc.tikiwiki.org/tiki-index.php?page=Module+quick_edit, parameter templateId  allows you to specify a template to use. How do I create such a template?
** Looks like this is how you create a template.

* Right now, categories take too much space
** Displays categories, plus list of pages in each category.
** Marc says you can configure it so that you only see the category path at the top. Chang profile so it does that.
** Note: This will end up only showing the categories for the page corresponding to the first language. So, if the categories assigned to the French and English pages are not the same, only categories assigned to the page that corresponds to the URL will be displayed.

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

* Guide should mention breadcrumbs feature.

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

* 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 -- metadatat", "tag -- markup", "tag -- identity plaque".

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

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

* Make it so editors can view history.

* Make it so editors can revert changes.

* Make it so that Anynoymous can see comments (only enabled for admins at the moment)

* Activate breadcrumbs.

* Have a standard template for terminology entry (ex: synonnyms, etc...)

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

* Put a new users dashboard for admins, so they can move new users to the Editors group.

* Limit term search to a particular language. 

* Need language indicator in front of the term in the list of equivalents. Ex: fr: Fil RSS, en: RSS feed.

* Need to prevent users from creating page names that have accented chars in the name. 
** See discussion below about transliterating page names.

----

!Discussion about transliteration of page names

[3:18:38 PM] Alain Désilets says: I create a function called transliteratePageName().
[3:19:09 PM] Alain Désilets says: I make it so that QuickEdit (which is what I use for the terminology profile) calls that method before creating the page.
[3:19:29 PM] Alain Désilets says: For the moment, transliatePageName() would only work for French and English.
[3:20:03 PM] Alain Désilets says: As we progress, people can start calling it from different places where pages are created.
[3:20:14 PM] Alain Désilets says: And they can start adding support for transliteration of other languages.
[3:20:20 PM] Alain Désilets says: Makes sense?
[3:20:37 PM] Louis-Philippe Huberdeau says: well, pecl.php.net/translit already supports everything
[3:20:47 PM] Alain Désilets says: Coool.
[3:20:53 PM] Louis-Philippe Huberdeau says: but requires additional stuff on the server
[3:20:55 PM] Alain Désilets says: Is it included in tiki?
[3:21:03 PM] Louis-Philippe Huberdeau says: it's a PHP extension
[3:21:11 PM] Alain Désilets says: Oh, I see.
[3:21:17 PM] Louis-Philippe Huberdeau says: can't be bundled... can only check if present
[3:21:39 PM] Alain Désilets says: How do we deal with situations like this, i.e. we need an extension, and are not sure that all PHP servers that run Tiki will have it enabled.
[3:22:02 PM] Alain Désilets says: Can Tiki activate it?
[3:22:09 PM] Louis-Philippe Huberdeau says: you can use function_exists() to verify if the extension is installed
[3:22:32 PM] Louis-Philippe Huberdeau says: installing an extension requires root access
[3:22:34 PM] Alain Désilets says: Can tiki-intall.php check for that and warn the admin if it's not?
[3:22:41 PM] Louis-Philippe Huberdeau says: that can be added
[3:22:57 PM] Louis-Philippe Huberdeau says: already done for GD support
[3:22:58 PM] Alain Désilets says: Usually people who install tiki will have root access right?
[3:23:02 PM] Louis-Philippe Huberdeau says: no
[3:23:08 PM] Alain Désilets says: Oh.
[3:23:41 PM] Alain Désilets says: Well, at least we can write a message telling them that this extension has to be activated, and then they can contact their sysadmin to do it.
[3:24:12 PM] Alain Désilets says: How about the variable thing...
[3:24:27 PM] Alain Désilets says: Is it possible to put variables in templates, for example, date, time, and page name?
[3:37:11 PM] Alain Désilets says: While I am at it, I should probably add a colum to some SQL table, so that I remember the non-translisated name that the user typed in. Cause that's probably what you should display as the page name on the page itself.
[3:37:26 PM] Alain Désilets says: Never done that in my life (I'm an SQL virgin).
[3:37:34 PM] Alain Désilets says: When the time comes to do it, can I give you guys a call?


        

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