Web Dictionary Maintenance

From Apertium
Jump to navigation Jump to search

Translate to PT-BR with Google Tradução

Introduction

Apertium over the years still has deficiencies so that lay people can contribute to increase the base of words in dictionaries, even with simple contributions. Collaboration is the key to developing a tool that serves a huge range of users throughout the world. We believe that it is possible to engage more users and thus give greater impact to the tool within the communities where there is involvement. We will deal in this document with requirements on non-functional and technical objectives regarding the tool proposal. O Apertium com o passar dos anos ainda apresenta deficiências para que pessoas leigas possam contribuir para o aumento da base de palavras em dicionários, mesmo que com contribuições simples. A colaboração é a chave para o desenvolvimento de uma ferramenta que serve a uma gama enorme de usuários ao longo do mundo. Acreditamos que é possível engajar mais usuários e com isso dar maior impacto da ferramenta dentro das comunidades em que existe envolvimento. Trataremos neste documento sobre requisitos sobre objetivos não funcionais e técnicos sobre a proposta de ferramenta.

Original Ideias
http://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code
http://wiki.apertium.org/wiki/Ideas_for_Google_Summer_of_Code/Easy_dictionary_maintenance
Original GSOC2019 Application
http://wiki.apertium.org/wiki/User:Alessiojr/Easy_dictionary_-_Application-GSOC2019
Studant Information
Student: Vinícius Silva Nogueira
Unofficial Mentor: Alessio Miranda Junior
Telegram/Whatsapp: Alessio: +55 (31) 9.8888-7770
E-mail: alessio@cefetmg.br or viniciussnogueira13@gmail.com
IRC: AlessioJr
GTalk: alessiojunin@gmail.com

Description

Abstract:

Even with several tools that help the way you manage and create dictionaries, Apertium is far from the normal users, who have a huge contribution potential. Or even create a simple way to create contributions to recurring users with advanced knowledge.

Although it is a bold plan, and there are several possible and desirable requirements, we will describe some basic premises for this step and that must be respected and aligned with the apertium developer community. Mesmo com várias ferramentas que auxiliam a forma de gerir e criar dicionários ainda o apertium se mostra distante dos usuários normais que tem um enorme potencial de contribuição. Ou mesmo criar uma forma simples de criar contribuições para usuários recorrentes com conhecimento avançado. Apesar de ser um plano ousado, e existirem vários requisitos possíveis e desejáveis, vamos descrever algumas premisas básicas para este etapa e que devem ser respeitadas e devem estar alinhadas com a comunidade de desenvolvedores apertium.

Definitions

  • Lay users do not need to know Apertium's internal structure,
  • Intermediate users need to have a knowledge of dictionary management methodology
  • Advanced users are those who know the structure of Apertium.
  • Communities are user groups that merge characteristics to the database extension of a dictionary of a specific language.
  • Official dictionaries are dictionaries managed and with seal of the apertium community.
  • Unofficial dictionaries are dictionaries run by an independent community
  • Test dictionaries are deprived of users to test their contributions

Objectives:

  • The major goal of the project is to develop a web tool to facilitate the management of the Apertium (XML's) database of integrators for novice and advanced users. O Objetivo maior do projeto é desenvolver uma ferramenta da Web para facilitar a gestão da base de dados dos discionários Apertium (XML's) integrando usuários iniciantes e avançados.
  • New communities of contributions should be able to organize independently of a central command. The command exists but will be distributed. Novas comunidades de contribuições devem poder se organizar independente de um comando central. O comando existe mas será distribuído.
  • Lay users who feel motivated to contribute, should have an interface that promotes ease in contributing even with limited possibilities.Ususários leigos que se sintam motivados para contribuir, deve ter uma interface que promova a facilidade em contribuir mesmo que com possibilidades limitadas.

  • The development of dictionaries should be collaborative and distributed. Each dictionary should have a management community, but a user may have the freedom to disagree and create a new version maintaining a history of the author. O desenvolvimento de dicionários deve ser colaborativo e distribuído. Cada dicionário deve ter uma comunidade que faz a gestão, mas um usuário pode ter a liberdade de discordar e criar uma nova versão mantendo um histórico do autor.
  • Any tool should maintain the traditional apertium structure and not be interoperable between existing tools. Qualquer ferramenta deve manter a estrutura tradicional do apertium e não ser interoperãvel entre as ferramentas já existentes.
  • There must be a methodology for communities to maintain the quality of their dictionaries. Although they are distributed the goal is to create a unified and mature dictionary. Deve haver uma metodologia para que as comunidades possam manter a qualidade de seus dicionários. Embora eles sejam distribuídos o objetivo é criar um dicionário unificado e maduro.
  • -- --

Technical Objectives:

  • Develop, initially, monolingual dictionaries but keeping the particular format of each file.
  • Minimize the direct manipulation of XML files, providing features that reduce this need.
  • Making use of DixTools to keep code reuse.
  • Evitar a manipulação direta de arquivos XML, facilitando o trabalho dos desenvolvedores de dicionários e consequentemente aumentando sua produtividade;
  • Permitir que usuários leigos em programação possam contribuir com o desenvolvimento e manutenção dos dicionários;
  • Facilitar a colaboração entre membros da comunidade no desenvolvimento dos dicionários.
  • --.


Git, GitLab and Appertium

  • --.

Application-GSOC2019

Abstract:

   The idea is to develop a GUI tool to manage Apertium Monolingual and Bilingual XML files with the follow objectives:
   • Create a alternative form to edit dix files with GUI resources.
   • Develop, initially, monolingual dictionaries but keeping the particular format of each file.
   • Minimize the direct manipulation of XML files, providing features that reduce this need.
   • Making use of DixTools to keep code reuse.

Why is it you are interested in machine translation?

   My .

Why are they interested in the Apertium project?

   I’ve .

Which of the published tasks are you interested in?

   Easy.

Why should Google and Apertium sponsor it?

   I .

How and who will it benefit in society?

   I .

What do you plan to do?

   We.

Development Paradigm: MVC Paradigm
Program Language: Java/SWING
Persistence: XML (Apertium XML Files)
Framworks: Dixtools, JPA, Swing Application Framework

Stages/Milestones

Week Stage Description
1, 2 -- --.
2, 3 -- --.
Prototype Milestone 1 --
5, 6 -- --.
7 -- --.
8 -- --.
Prototype Milestone 2 --
9 -- --.
10 -- --.
11 Pré-Release --
Prototype --
12 Makeup --
Final Release

Presentation

   My name is Vinicius, a Brazilian Student at .

Resume of Skills

Apertium Knowledge:

   * Study to develop a collaborative tool for apertium.
   * A study of actual Apertium process about creating a language pair by the user point of view.
   * Analysis of the characteristics of the 2010 project of Aléssio and adaptation to current times.

Academic Skills:

   * Graduating in Computer Engineering- Federal Center for Technological Education of Minas Gerais – Brazil

Professional Skills:

   * Language developer: Java, Phyton, 

Projects for Summer:

   * No professional activities planned.
   * Planning to work in GSOC


Project

Why?

  • --.
  • --.
  • --.
  • --.

How can use?

  • --.
  • --.
  • --.
  • --.

What its the plan?

  • --
  • --
  • --
  • --
  • --

How it Works?

  • --
  • --
  • --
  • --
  • --

Components ans Tecnologies

Components Diagram
  • --
  • --
  • --
  • --
  • --

Example of Iteraction

Example Sequence Diagram
  • --
  • --
  • --
  • --
  • --