Multilingual SemanticMediaWiki
OpenPublic

Description

Semantic MediaWiki would benefit from being multilingual-capable out of the box. We could integrate it with the Translate extension. This can be done in some isolated steps, but there is a need to list all the things in need of translation and define appproach and priority for each of them. Some of the steps could be:

  1. Fix the issues that prevent full localisation of Semantic Forms.
  2. Enhance Special:CreateForm and friends (all the Special:Create* special pages by Semantic Forms) to create forms that are already i18n -ed with placeholders and message group for Translate extension.
  3. Make it possible to define translation for properties and create a message group for Translate extension, similar to what CentralNotice does (sending strings for translation to Translate message groups).
    1. There are lot of places where properties are displayed: many special pages, queries, property pages. Some thinking is required to find out a sensible way to handle translations on all these places.
    2. In most wikis, properties names are supposed to be hidden to the user, e.g. queries results are usually shown in infobox-like templates (whose labels could in theory be localised as all templates).

Translate would be fed with the strings in need of translation. Localised strings/messages would be displayed based on the interface language, that in core every user can set on Special:Preferences and with ULS is made way easier to pick for everyone including unregistered users.

For real field testing, WikiApiary could be used, or at worst translatewiki.net (quick deployments, little SMW content).

For further material, see https://www.mediawiki.org/wiki/Multilingual_Semantic_MediaWiki and follow the links.

See also:

Project characteristics:

  • Skills: PHP and web frontend; having used Semantic MediaWiki and Semantic Forms is a plus.
  • Suggested micro-task: reproduce and submit a patch for one of the bugs linked above; then get it merged, or get an i18n bug fixed (see the list at T40638 under "Blocked by" and the list of open Language Engineering bugs); then feel free to contact the mentors about this project.
  • Mentors: Niklas Laxström, Federico Leva, Yaron Koren.
  • Estimated project time for a senior contributor: 2-3 weeks
bzimport added a subscriber: wikibugs-l.
bzimport set Reference to bz46522.
Qgil created this task.Via LegacyMar 25 2013, 1:17 AM
JeroenDeDauw added a comment.Via ConduitMar 25 2013, 1:24 AM

Any more details on how one would make SMW multilingual? Or how integration with Translate would work?

Qgil added a comment.Via ConduitMar 25 2013, 1:44 AM

Not yet, the same entry at the wiki page reads:

"Disclaimer: This a long list proposal. The team will assess this long list on 2013-03-28 and update it with more specific information, or retract it."

I asked Siebrand please please to post a list of potential GSOC 2013 projects. He said he only had time to list ideas that would be reviewed next Thursday at the WMF Language team meeting. I'm grateful he did (our GSOC deadline is Friday), and I'm trying to help getting more feedback from other sources. In this case it made sense to ask the SMW maintainers here.

Thank you for your understanding.

Qgil added a comment.Via ConduitMar 28 2013, 11:16 PM

There are more details now at http://www.mediawiki.org/wiki/Mentorship_programs/Possible_projects#Multilingual_SemanticMediaWiki

Some of the steps could be:

  • Fix the issues that prevent full localisation of semantic forms.
  • Enhance Special:CreateForm and friends to create forms that are already i18ned with placeholders and message group for Translate extension.
  • Make it possible to define translation for properties and create a message group for Translate extension
    • There are lot of places where properties are displayed: many special pages, queries, property pages. Some thinking is required to find out a sensible way to handle translations on all these places.

Question: are there existing bug reports about this issues? If so please let's make them blockers of this one in order to provide more information to potential volunteers.

This is a proposal coming from the WMG Language team but it needs the buy-in and help from the SMW maintainers before I can move it to the Featured section, where it will be explicitly promoted to potential GSOC & OPW candidates.

JeroenDeDauw added a comment.Via ConduitMar 28 2013, 11:23 PM

Question: are there existing bug reports about this issues?

Not AFAIK.

The two first points seem to be SF specific. The other two indeed need more thought, and need further specification. I suspect they will not be easy to implement.

Unknown Object (User) added a comment.Via ConduitMar 28 2013, 11:41 PM
  • Make it possible to define translation for properties and create a message group for Translate extension
    • There are lot of places where properties are displayed: many special pages, queries, property pages. Some thinking is required to find out a sensible way to handle translations on all these places.

My 3 cents, since SMW needs to function with or without a Translate extension in mind, the translated text should probably go into a separate blob table with a property tracking id, language key, and its translation. Some setter/getters to catch the representation based on the language key returning a Message object.

Also some enlightenment about how and what the Translate extension actually does and how it would interact might be helpful (can't really picture the Translate extension).

How does the ULS would come into play with this?

Qgil added a comment.Via ConduitMar 28 2013, 11:51 PM

You can see the Translate extension in action at

https://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_example

https://www.mediawiki.org/wiki/How_to_contribute

and many other pages at http://mediawiki.org

Look at the Edit views to see the tags inserted. Then there is a backend for admins and translators to notify new translatable versions of a page, see % of completion per language and so on.

Unknown Object (User) added a comment.Via ConduitMar 29 2013, 12:15 AM

(In reply to comment #6)

You can see the Translate extension in action at

https://www.mediawiki.org/wiki/Help:Extension:Translate/
Page_translation_example

Fair enough.

<< Example
Fréttinga is a small municipality in MungoLand, located on the [[Located at::BaMungo island]].
It hosts a population of about 400 people. It has some agriculture and fishing.
Tourists like to visit it in the summer time.
...

Within the text you have some annotations (such as [[Located at::BaMungo island]]), what would the Translate extension do now? Provide an event to catch the translation? Should SMW look in the parserOutput for something that says "I have a translation, please handle me differently?"!

Should SMW look for <translate></translate> and somehow find out about the original and the translated copy.

Should free-text annotations (as above) be considered at all or should the focus be on SpecialProperties [1] only?

This is what I meant by "can't really picture the Translate extension" mainly about how the Translate extension and SMW should work together and what is the expected outcome.

[1] http://www.semantic-mediawiki.org/wiki/Special_properties

Nikerabbit added a comment.Via ConduitApr 1 2013, 6:48 PM

Translate extension would provide the translation interface. SMW would register a message group(s) to Translate. One of these groups would contain all the *name* of the properties known to exist in the wiki.

The above part is easy. The harder part is to use those translations in various places. Most cases are probably easy to change, but there can be a lot of them and some of them might be difficult because of caching or other issues.

I would leave inline syntax out of scope. There is enough to do with templates and forms.

To give you some idea: Something like this but automated and integrated to Translate (I've spent considerable time doing these by hand):
Forms: http://tieteentermipankki.fi/mediawiki/index.php?title=Lomake:K%C3%A4site&action=edit
Templates: http://tieteentermipankki.fi/mediawiki/index.php?title=Malline:K%C3%A4site&action=edit (only partially i18ned)

bzimport added a comment.Via ConduitApr 19 2013, 8:52 PM

jodi.a.schneider wrote:

Some of the steps could be:

  • Fix the issues that prevent full localisation of semantic forms.

Is there a list of known issues? Or how would I go about tracking these down?

Qgil added a comment.Via ConduitApr 22 2013, 4:36 PM

Background: Jodi is interested in this project in the context of Google Summer of Code. However, so far there is no unanimous opinion between Semantic MediaWiki maintainers.

Either we get a fast agreement or Jodi should go for another project proposal, since GSoC deadlines are close.

Yaron_Koren added a comment.Via ConduitApr 22 2013, 5:17 PM

I don't think the issue here is unaminity - just lack of communication. I have the greatest respect for the Translatewiki/Translate extension developers, and I think this project makes a lot of sense in theory, but I don't think they've explained enough yet about how this project would work, either here or on the SMW mailing list(s), for it to happen for this GSoC, given the upcoming deadline. I do hope we can have a full discussion about it soon, ideally on the semediawiki-devel list.

Nikerabbit added a comment.Via ConduitApr 24 2013, 7:29 AM

Thanks Yaron. Can you help me by pointing what questions I should answer wrt to the integration. Can you also start the discussion on smw-devel or should I or Jodi do that?

Yaron_Koren added a comment.Via ConduitApr 24 2013, 11:55 AM

Hi Niklas - ideally you can do that, by sending an email fully describing this idea: what the Translate extension does, how it could be used by SMW and SF, what prevents that usage from happening now, and maybe how long you think it would take to fix.

bzimport added a comment.Via ConduitDec 1 2013, 3:47 PM

vladjohn2013 wrote:

Hi, this project is still listed at https://www.mediawiki.org/wiki/Mentorship_programs/Possible_projects#Multilingual_SemanticMediaWiki

Should this project be still listed in that page? If not, please remove it. If it still makes sense, then it could be moved to the "Featured projects" section if it has community support and mentors.

bzimport added a comment.Via ConduitMar 18 2014, 5:18 PM

rishimittal_ajmer wrote:

Hi everyone ,

The project is not clear , can someone tell me is it part of GSOC-2014 or not.

thanks
Rishi Mittal

Aklapper added a comment.Via ConduitMar 18 2014, 6:25 PM

See comment 11 (I guess).

Nemo_bis added a comment.Via ConduitMar 19 2014, 11:09 AM

(In reply to Rishi Mittal from comment #15)

The project is not clear , can someone tell me is it part of GSOC-2014 or
not.

Yes, it is; we also clarified the description recently. Please ask questions on the project in public, for instance on this bug; or on the talk page of your proposal as soon as you create it (which should be immediately, even if it's incomplete and you have to work on it).

Qgil added a comment.Via ConduitSep 12 2014, 9:43 AM

FOSS OPW round 9 is about to start. Do you still want to feature this project at https://www.mediawiki.org/wiki/Mentorship_programs/Possible_projects#Multilingual_Semantic_MediaWiki and are there mentors available?

Qgil triaged this task as "Lowest" priority.Via WebFeb 11 2015, 12:56 PM
Qgil added a comment.Via WebFeb 11 2015, 1:44 PM

Wikimedia will apply to Google Summer of Code and Outreachy on Tuesday, February 17. If you want this task to become a featured project idea, please follow these instructions.

Nemo_bis raised the priority of this task from "Lowest" to "Needs Triage".Via WebFeb 11 2015, 3:08 PM
Nemo_bis set Security to None.
Nemo_bis edited the task description. (Show Details)
Nemo_bis edited the task description. (Show Details)Via WebFeb 11 2015, 3:38 PM
Nemo_bis edited the task description. (Show Details)Via WebFeb 11 2015, 3:42 PM
Qgil added a comment.Via WebFeb 12 2015, 11:55 AM

Just checking, are @Nikerabbit and @Yaron_Koren confirmed as primary mentor and co-mentor, respectively?

Jatin.me added a subscriber: Jatin.me.Via WebFeb 13 2015, 12:22 PM
Nemo_bis added a comment.Via WebFeb 17 2015, 10:10 AM

Niklas is, Yaron I didn't ask yet.

polybuildr added a subscriber: polybuildr.Via WebFeb 19 2015, 12:42 PM
Qgil moved this task to Featured Project Ideas on the Google-Summer-of-Code-2015 workboard.Via WebFeb 20 2015, 8:49 AM
Qgil added a project: Outreachy-Round-10.Via WebFeb 20 2015, 1:49 PM
Qgil moved this task to Featured Project Ideas on the Outreachy-Round-10 workboard.
Yaron_Koren added a comment.Via WebFeb 20 2015, 4:42 PM

I just saw this now - yes, I'd definitely be willing to serve as a co-mentor for this project.

Qgil edited the task description. (Show Details)Via WebFeb 22 2015, 10:54 AM
Rits added a subscriber: Rits.Via WebMar 4 2015, 9:33 PM
Liuxinyu970226 added a subscriber: Liuxinyu970226.Via WebMar 6 2015, 2:41 AM
Pmlineditor added a subscriber: Pmlineditor.Via WebMar 7 2015, 11:05 AM
Darkdragon09 added a subscriber: Darkdragon09.Via WebMar 8 2015, 11:46 AM

Hi,

I would like work on this project as part of GSOC 2015. I understand that the main goal of this project is to integrate MediaWiki with the Translate extension, so that it benefits from it's multilingual capabilities out of the box.

I was not able to understand "There are lot of places where properties are displayed: many special pages, queries, property pages. Some thinking is required to find out a sensible way to handle translations on all these places", point of the project description completely. What properties are we talking about here?

Also I have been working on getting the bug T85924 resolved and have got some insights as to how messages are fetched and displayed to the user and the coding standards.

I would greatly appreciate suggestions as to how can I get started on this project, to get better understanding of the challenges in the project.

Thanks

Nemo_bis added a comment.Via WebMar 8 2015, 12:14 PM

Also I have been working on getting the bug T85924 resolved and have got some insights as to how messages are fetched and displayed to the user and the coding standards.

Sure, we can continue in gerrit. In the meanwhile, the best way to progress is sending more patches in gerrit for the bugs which you do understand. :)

phoenix_du_42 added a subscriber: phoenix_du_42.Via WebMar 10 2015, 2:54 PM
Nemo_bis edited the task description. (Show Details)Via WebMar 10 2015, 10:42 PM
Nemo_bis edited the task description. (Show Details)Via WebMar 16 2015, 10:35 AM
Nemo_bis edited the task description. (Show Details)Via WebMar 17 2015, 8:47 AM
NiharikaKohli added a comment.Via WebMar 21 2015, 1:15 PM

We're holding an IRC meeting on March 25, at 1700 UTC for prospective GSoC and Outreachy participants with Wikimedia, on #wikimedia-office channel. Do join us!

Darkdragon09 added a comment.Via WebMar 23 2015, 9:08 PM

Hi @Nemo_bis, I would like to submit a proposal for this project. Besides updating the page on google-melange website, could you tell me if there are any other requirements.

Also I was not able to understand the following point of the project description :- "There are lot of places where properties are displayed: many special pages, queries, property pages. Some thinking is required to find out a sensible way to handle translations on all these places". Could you tell me what properties are we talking about here?

Thanks

Aklapper added a comment.Via WebMar 24 2015, 10:56 AM

I would like to submit a proposal for this project. Besides updating the page on google-melange website, could you tell me if there are any other requirements.

This should be covered by https://www.mediawiki.org/wiki/Google_Summer_of_Code_2015#Add_your_proposal - if anything is unclear, please ask.

NiharikaKohli added a comment.Via WebMar 24 2015, 4:03 PM

Hello! The IRC meeting tomorrow has been shifted to #wikimedia-ect channel. Looking forward to seeing you there. :)

Hypergrove added a subscriber: Hypergrove.Via WebThu, Apr 23, 6:18 PM

Happily, I am able to create a multilingual semform by a) using {{UILANGCODE}} in switches and b) using the 'mapping template' parameter on the {{{field}}} statement where {{UILANGCODE}} is used to select translated text values for properties of the page.

My great thanks to those who added the 'mapping template' to {{{field}}} !

Ckoerner added a subscriber: Ckoerner.Via WebMon, Apr 27, 8:28 PM

Add Comment