The following list shows the important features of translate5 in bullets without detailed explanation.
It aims at giving an overview of the software and is addressed to people, who know how translation software and translation business works.
This list is the most complete list of features, that exists. It will be kept up2date, as translate5 progresses further. So watch this page (with the "watch button" in the right top corner), if you want to be up2date with new features coming in. More details can be looked up in translate5 JIRA.
The page tree on the left shows some features more in details, yet it is far from complete and not up2date.
General features
- Tabular views of translate5 (including editor)
- are sortable and filterable. Filter can be set as AND filters in several columns.
- are "endless" grids, which means you can scroll through the table from the first to the last entry with great performance, even with 100000 entries in a tabular view (implemented for editor; soon also for other views).
- Order of columns can be changed by drag and drop
- Columns can be hidden and shown
- default column order and visibility can be configured on system level for task overview and user overview
Multi-tenancy support
- Tasks, language resources and users can be assigned to different clients and filtered accordingly in the overviews
- Only language resources belonging to the same client as the task can be assigned to a task
- Only language resources belonging to the same client as the currently logged in user can be used in InstantTranslate
- The complete application can be filtered by one click so that all tabular views only show entries belonging to the respective client
Editor
- All general features for tabular views (see above)
- Multi user support: A task can be edited simultaneously by any number of users. If this is the active editor mode is configured in the task properties (see below)
- If language resources are assigned, for all assigned language resources the following features are offered:
- Concordance search (can be narrowed to single language resources)
- Fuzzy matching (queries all assigned language resources, when a segment is opened)
- In-Context translation & review
- with visual plug-in active (visual is a paid plug-in that helps financing the open source development of translate5 - please contact MittagQI)
- "What you see is what you get" - see the changes in the layout while typing; The changes in the layout respect the text frames (paragraphs, headlines etc.) as you would expect it
- available for practicably all file formats (e.g. MS Office, Indesign, FrameMaker, HTML, XML/XSL, etc. plus CMS and PIM integrations)
- Optionally use HTML or XML/XSL for in-context review of SDLXLIFF or other Xliff files (ask MittagQI for support regarding segmentation)
- Risk prediction with ModelFront
- Show ModelFronts risk prediction analysis
- in the match rate column of the editor
- in the fuzzy match panel
- in the analysis overview of the task
- Show ModelFronts risk prediction analysis
- In-line Track Changes
- with TrackChanges plug-in active (TrackChanges is a paid plug-in that helps financing the open source development of translate5 - please contact MittagQI)
- MS Word style track changes
- different background colors for different users
- Changes are recorded across all workflow steps, that translate5 offers
- Cascaded file tree with folder hierarchy for the files of a task and the reference files of a task
- files sortable, new sort order is respected on export
- Potential usage as integrated editor in other applications without task overview etc.
- Great performance with large tasks - 100000 segments and 1000 files in a tasks work seamlessly
- Optional pivot language (if reviewer does not understand German, but an English translation is available)
- Search and replace (with replace all, wildcards, regular expressions and case-sensitive options)
- Comments on segment level, filterable for content, date and creator of comment
- Altering of font size
- Keyboard short cuts for all important user interactions
- Auto propagate of repeated segments on saving (configurable if it is down automatic, asked each time for which segments it should be done or never done)
- Max. and min. length restrictions
- Length restriction can be
- character based (number of characters)
- pixel based (number of pixel for a defined font and font size; used for translation of display texts)
- Works across all segments of a trans-unit
- Check of max. numbers of lines in a segment possible
- Length restriction can be
- full tag and short tag mode; hide tags possible with editing disabled
- Bookmarking of segments
- On opening a task, translate5 scrolls to the last edited segment - also when switching editor mode, resetting a filter, etc.
- Access task and segment via URL
- Current task and segment IDs reflected in URL
- URL can be send to someone for pointing to a task / segment, even if he is not logged in
- Processing state column shows
- workflow step, in which segment was changed the last time
- if segment was edited or just saved without changes or auto-propagated
- if segment is untranslated
- Automated QA checks on segment level:
- Terminology check against translate5 TermCollections
- Empty segment check
- Tag check (potentially configurable, that segment can only be saved without tag errors or only with different white-space tags than the source; for review tasks the comparison is done against the translation at import time)
- Spell-, Grammar and Style-Check based on languageTool (Open Source);
- Spell-check for all languages, that Hunspell supports plus all languages LanguageTool supports
- Additional grammar and style-check for all languages, that LanguageTool supports
- Manual QA based on
- DQF/MQM on subsegment level (definable on system and task level; error types in cascading levels)
- including DQF/MQM statistics (visualized and exportable as XML)
- QA flags on segment level (definable different flags on system level)
- Manual status (definable different status on system level)
- DQF/MQM on subsegment level (definable on system and task level; error types in cascading levels)
- Meta data columns (by default visible) for
- Segment no. in task
- match rate in TM system
- match rate type (shows, where a segment content comes from)
- Meta data columns (by default hidden) for
- QA flags
- Manual status
- last editor
- edited at workflow step XYZ
- target language at import time (for review tasks)
- Optionally add white space tags (non-breaking space, tab, soft return)
- Add additional special characters with configuration
- Display of number of segments in current filtering
- "Hovering open segment": If segment is opened, it is possible to scroll under it all segments of the table and also filter and sort these segments
- Segment actions:
- Save and jump to next in workflow
- Save and jump to next
- Save and jump to previous
- Abort and jump to next in workflow
- Abort and jump to previous in workflow
- Abort and jump to next
- Abort and jump to previous
- Refocus open segment in context (see "hovering open segment")
- Reset segment to non-edited state
- Switch of default modes for font size of and visible columns and panels (normal mode, details mode and simple mode (the latter only available with visualReview plug-in active)
- Layout of the editor can be customized and is remembered for the current user
- Visibility of columns
- Order of columns
- Current editor mode
- Height of panels
- Visibility of panels
- Full or short-tag mode
- etc.
- Multiple target language columns (if imported like that in CSV format; see "task overview")
Project and task overview
- All general features for tabular views (see above)
- Which task actions are available for a user depends on the rights a user has
- Seperate project and task overviews
- Project overview combines all translations for the same source file(s)
- Task overview enables simple filtering across all tasks, independent of project
- Show Key Performance Indicatators (KPI) for currently filtered task-overview
- Add tasks:
- Importable file formats:
- All file formats supported by Okapi Framework through Okapi integration
- An Okapi bconf file can be passed in a zip import package for translate5 to adjust Okapi filter settings (like ignoring Excel cells with certain colors, configuring xml, etc.)
- SDLXLIFF
- XLIFF 1.2
- OpenTM2 XLIFF
- Across XLIFF
- MemoQ XLIFF
- Star Transit bilingual file pairs
- Bilingual CSV (also multiple target language columns possible, that lead to multiple target language columns in translate5 editor, usable for comparing different translations, e.g. with DQF/MQM)
- All file formats supported by Okapi Framework through Okapi integration
- decide, if
- 100% should be editable
- segments locked in original xliff should be editable
- source language should be editable (does not export in all export formats, mainly made for CSV so far)
- Add meta data
- source language
- target language
- client
- order number
- delivery date
- order date
- Optionally use pivot language (if reviewer does not know the source language, but e.g. an English translation exists)
- A general configuration flag decides, if source files are automatically attached as reference files to a task or not
- Importable file formats:
- Associate language resources to tasks
- All language resources are selectable, that are associated with the same source language, target language and client as the task is
- automatic assignment of language resources, that are assigned as default language resources for the client, to whom the task belongs
- Decide if match analysis should include internal fuzzy matches (fuzzy matches produced by segments that are only translated while the task is translated)
- Decide if pre-translation should be done against associated termCollections and Translation Memories and if yes up to which match rate
- Decide if pre-translations should be done against associated MT resources (only for segments still empty after TM pre-translation)
- Decide, if terminology should be tagged in segments
- All language resources are selectable, that are associated with the same source language, target language and client as the task is
- Match analysis
- Shows count of translation memory matches, repetitions, no matches
- Supports internal fuzzy matches
- With ModelFront integration shows risk prediction scores for machine translations
- Export as Excel possible
- Assign users to task
- Multiple users per workflow step. These users can work in different modes. What mode is active the PM decides in the task properties "Other properties" tab. The following modes exist:
- Simultaneous Work
(All assigned users of a workflow step can work simultaneously) - Competing assignment
(The first assigned user of a workflow step that opens and accepts the job will do the job. All other users assignments are removed and the users informed.) - Sequential work
(All assigned users of a workflow step can edit the task, but only one at a time)
- Simultaneous Work
- Workflow roles
- translator
- reviewer
- check of review
- Configure the editor more in detail for users or roles
- which source and target columns can be seen
- if the column name of source and target columns can be read
- if only DQF/MQM tags can be set, but the content can not be changed
- if non-editable target columns (target text at import time) can be seen
- Multiple users per workflow step. These users can work in different modes. What mode is active the PM decides in the task properties "Other properties" tab. The following modes exist:
- Export
- meta data of the task-overview with KPI (Key Perfomance Indicators). The currently filtered subset is exported with the currently shown columns.
- task in original format
- task with diff compared to the import stage (main use case: sdlxliff with change marks, that work with Trados Studio track changes)
- task as xliff 2.1 with reflection of translate5 in-line track changes (who changed what when) and segment meta data (please note: this track changes is complete workflow based, the "diff to import stage" in the previous bullet does not reflect changes within the translate5 workflow steps)
- task to Excel for external editing (should be re-imported afterwards)
- MQM statistics as xml
- Change a number of task properties, e.g. task name, project manager, delivery date, delivery date (real), order date (only with PM rights, or if special rights are configured in ACL
- See, filter and sort task meta data
- source, target and pivot language
- client
- task status
- task name
- job assignments to tasks
- assigned user
- assignment date
- deadline date
- finish date
- job status
- user workflow role
- order number
- number of words in a task
- associated users with their workflow roles and workflow status (task table can currently not be filtered along this column)
- associated language resources (task table can currently not be filtered along this column)
- reference files available
- terminology associated
- project manager
- a click on the project manager name opens an email to the project manager
- order date
- delivery date
- delivery date (real)
- number of files in a task
- 100% matches can be edited
- task is a translation or review task
- locked segments in imported xliff are also locked in task
- source language is editable
Workflow
translate5 has implemented a flexible workflow mechanism:
- To every task the following job types can be assigned:
- translation
- review
- check of review
- For every job type multiple users can be assigned, resulting in multiple jobs within one workflow step
- As soon as all jobs of one job type are finished, the workflow jumps to the next job type / workflow step and the users of this workflow step and the project manager are notified
- Optionally also an e-mail can be send to the project manager when a job is finished, even if there are other open jobs for the same workflow step (configurable in translate5 workflow configuration)
- The notifications after finishing of review and "check of review" list all changed segments as HTML mail, including tags, term markup, MQM markup, comments, TrackChanges, etc.
- On job assignment an email is send (configurable in the workflow configuration)
- Translate5 sends mail reminders to assigned users, when their job deadline is near or overdue (this feature only works reliable, if the admin has configured a cronPeriodical cron job for the translate5 instance).
- Translate5 can be configured to send emails at numerous other workflow events
- Each job has one of the following workflow job status
- open
- waiting
- finished
- The project manager is completely free:
- Each workflow step can be assigned to users, even if no other workflow steps are used
- At any point in time new users can be assigned to any workflow step or removed
- At any point in time the job status of a user can manually be changed to any value.
- If this makes sense and works in regarding of the current todos of other users is the responsibility of the project manager. He can change also the job status of other users or notify them manually about consequences, if necessary
- workflow configuration:
- the actions / notifications which are triggered in the workflow are configurable
- This configuration is currently only available on database level in table LEK_workflow_action
- available actions and notifications are listed in a separate table below
New workflow roles or steps can easily be extended on a programming level for a certain installation.
List of available workflow notifications and actions
Type | Name | Description | enabled by default |
---|---|---|---|
Notifications | notifyAllFinishOfARole | Workflow specific Notification after all users of a role have finished a task | when all users of a role have finished |
notifyOneFinishOfARole | Workflow specific PM Notification after one users of a role have finished a task | disabled by default | |
notifyCompetitiveDeleted | Sends a notification to users which are removed automatically from the task | disabled by default | |
notifyNewTaskAssigned | Sends a notification to users which are attached newly to a task with status open | disabled by default | |
notifyAllAssociatedUsers | Notifies all associated users about the task association (contains a list of all users) | triggered manually by the PM | |
notifyNewTaskForPm | Notifies the tasks PM over the new task, but only if PM != the user who has uploaded the task | after import | |
notifyOverdueDeadline | Notify the task assock when the delivery date is over the defined days in the config | disabled by default | |
notifyDeadlineApproaching | Notify the the associated users when the deadlineDate is approaching. | on periodical cron job (all 15 minutes in translate5 hosting) | |
notifyImportErrorSummary | Sends by default only the summary to the tasks PM if another user has created the task (for example via API) | after import | |
notifyTermProposals | Notify the configured user with term and term attribute proposals of the configured or all termcollections | on daily cron job call | |
Actions | segmentsSetUntouchedState | sets all segments to untouched state - if they are untouched by the user | when all reviewers have finished |
segmentsSetInitialState | sets all segments to initial state - if they were untouched by the user before | when a previously reviewed and finished job is reopened for the reviewers | |
endTask | ends the task | disabled by default | |
confirmCooperativeUsers | enables the other unconfirmed users in cooperative mode | when first user confirms the task | |
removeCompetitiveUsers | removes all competitive users in competitive mode | when first user confirms the task | |
autoAssociateEditorUsers | associates automatically editor users to the task by users languages | after import | |
finishOverduedTaskUserAssoc | Checks the deadine dates of a task assoc, if it is overdued, it'll be finished for all lectors, triggers normal workflow handlers if needed. | on daily cron job call | |
deleteOldEndedTasks | delete all tasks where the task status is 'end' | disabled by default | |
removeOldConnectorUsageLog | Remove old connector usage logs. How old the logs should be is defined in system configuration | on periodical cron job (all 15 minutes in translate5 hosting) |
Users
- All general features for tabular views (see above)
Manage users
- Create and delete users
- Associate users to clients
- Set preferred GUI language of user
- Set system roles of users (do not mix up with workflow roles)
- it is configurable via ACL which system roles can be set by a specific system role (example: PMs can only set Editor roles, admin can set all roles)
- Set password of user
- Set default languages of this user. When a task is created, users for whom a default language is set are automatically assigned to this task as reviewer.
- A parent user can be set. This user only has any effect, if in the database-based ACL for a PM role is set, that it is not allowed to see all users. If this is the case, a user can only see those users in the user management, for whom he is the parent user. And in addition all users that are children of his children users and so forth.
- On database level it can be configured, if it is allowed to edit or delete a certain user
Language Resources
Language resources in translate5 are TermCollections, Translation Memories and Machine Translation resources.
- All general features for tabular views apply (see above)
- The following resource types are currently available:
- TermCollections:
- Internal translate5 TermCollections
- Import TBX
- Internal translate5 TermCollections
- Translation Memory resources
- OpenTM2
- Import / Export TMX and OpenTM2 binary TMs
- NEC-TM
- SDL GroupShare
- OpenTM2
- Machine Translation Resources
- DeepL (as Plugin, only available for companies with a Support- and Development contract)
- Lucy
- Moses default
- MS Translator
- SDL LanguageCloud
- Globalese (not as part of Language Resources, but with a special integration)
- TildeMT (as Plugin)
- TermCollections:
- Language resources can be associated to multiple clients
- Language resources can be associated as default resources for clients. In that case they are automatically associated for tasks of these clients.
Client management
So far the client management is a simple tabular list of customer names and numbers.
All general features for tabular views apply (see above).
TermPortal
At the current stage the TermPortal aims only at serving end-users as a simple interface for looking up the terminology of their companies.
In addition users with the appropriate role can propose changes to terms or propose new terms and leave a note for the change. These change proposals can be exported as Excel file by a project manager.
Every user sees the terminology of all TermCollections, that are associated with the a client, that the user itself is also associated with (see user management and language resources).
This can be used by language service providers to serve different clients with the same translate5 instance.
The TermPortal provides:
- Wildcard search
- Live search
- Fast and very easy to use interface
- Shows the attributes of term entries, language level and term level
- Also supports none-standard term attributes
- Term attribute labels can be customized on database level and translated with the translate5 GUI translation mechanism (xliff based)
- Term attributes for processStatus and administrativestatus are also shown as icons
InstantTranslate
InstantTranslate is a Google-Translate-like interface for automatic on-the-fly translation of content
- in a text area
- by uploading files (all file formats possible, that translate5 supports)
It also can be used as an easy interface to search through translation memories.
The interface sends the entered text to all language resources, that are associated with a client, that itself is associated with the current user.
This means, the text is send to TermCollections, Translation Memories and Machine Translation resources at the same time.
The answers of all resources that have matches are listed.
For Translation Memories also Fuzzy Matches are listed - the difference of what does not match with the requested translation is highlighted and the match rate shown.
If MS Translator is used as language resource and English is part of the language combination, alternative translations are also proposed (for other language combination Microsoft does not offer this feature so far).
InstantTranslate is only available for translate5 users, that support the community driven open source development with a support and development contract for translate5.
Login, Session, Password Rest
- Session time out can be set in the configuration
- Password can be reset in a secure way by the user
- Password can be set inside the application by a user for himself and by a PM or admin for everyone
OpenId Connect
Login is possible via OpenID connect.
- Optionally with a "Login with XY" link on the login page
- Or with direct forwarding to the OpenID connect server, when the user is not authenticated
If configured accordingly, the OpenID connect server is able to register new users and set the users roles in translate5.
It is possible to set up the same translate5 instance to run on different domains and configure a different OpenID connect server as authentication server for each domain, as long as each domain refers to a distinct customer in translate5.
Error- and Event-logging
translate5 has a detailed error- and event-logging with detailed error and event codes that point to the actual issue of the event in translate5s confluence.
For every task users can see the events in the "Events" tab of the task properties window.
Change log plug-in
In the task overview in the right bottom corner a button opens the change log of translate5.
It is filterable by translate5 JIRA issue type.
It only lists the issues that are relevant for the currently logged in translate5 role.
If there are new issues after login (because of a recent translate5 update) the change log window automatically pops up and only shows the new issues.
As all plug-ins it can be deactivated.
Maintenance mode
A maintenance mode allows server admins
- to notify users time X before a translate5 update
- to lock the login time Y before a translate5 update
- to lock the application for any interaction at point Z in time
After the update is done it automatically requests the browser of the user to refresh itself so that the Javascript is refreshed with the updated code.
Database-based features
- Detailed configuration of rights and roles possible in translate5 ACL table
- More than 200 options for configuration on system level for translate5 in Zf_configuration table
- "Materialized view" of a task for fast performance on reading segments
- Saving of complete segment history (each editing step of a segment is saved in a history)
- Saving of the time it takes for a user to edit a segment
Features for developers and good performance
Worker
The worker concept in translate5 allows
- to run processes in the background
- to fork processes
- to chain processes with dependencies
- to load balance and split processes, especially when using micro services for background tasks
Editor only usage
Integration of only the editor of translate5 into another application. All other features are used via API, if necessary.
Skinning / customizing the layout
It is possible to
- completely customize layout and content of the pages that users see, that are NOT logged in
- customize the head panel of translate5, when logged in
- insert any kind of HTML/Javascript in an iframe in the upper right part of the editor
- to completely customize the whole look and feel of the application by creating a custom ExtJs template.
Event-based architecture
translate5s architecture is event-based in the GUI and the back-end. This means, developers can easily hook in new actions at important points of the flow of actions. This mechanism is used for the plug-in system.
Plug-in system
Even major new functionality on the back-end and the GUI can be written as plug-ins based on the event-based architecture.
API
In general: All actions that can be done by a user in the GUI can also be automated via translate5 REST API (by design)
Installer and Updater
Translate5 provides an install and update bash script for linux and a batch script for windows systems.
- The installer guides the admin through the whole installation process, downloading and installing also all needed third party packages
- The updater updates the installation with just one call with latest publicly available translate5 version; same for potentially updated third party packages
- Users of a customized version just have to provide the customized version as zip file to the updater
- Further features of the install-and-update script:
- Fast enabling / disabling of the maintenance mode
- check the current installation usage (if there are running imports for example)