Giter VIP home page Giter VIP logo

galaglobal / tapicc Goto Github PK

View Code? Open in Web Editor NEW
24.0 23.0 4.0 24.75 MB

The Translation API Cases and Classes (TAPICC) initiative is a collaborative, community-driven, open-source project to advance API standards in the localization industry.

Home Page: https://galaglobal.github.io/TAPICC/

License: Other

HTML 13.84% XSLT 78.49% Python 0.09% Perl 0.03% Makefile 0.04% CSS 0.50% Ruby 0.11% Shell 0.31% JavaScript 6.46% NewLisp 0.04% Perl 6 0.04% SystemVerilog 0.05%
localization xliff xliff2 best-practices internationalization translation-api localization-industry review best-practice l10n i18n

tapicc's Introduction

Translation API Cases and Classes Initiative (TAPICC)

The Translation API Cases and Classes (TAPICC) initiative is a collaborative, community-driven, open-source project to advance API standards in the localization industry. The overall purpose of this project is to provide a metadata and API framework on which users can base their integration, automation and interoperability efforts.

Governance

This GitHub public repository (https://github.com/GALAglobal/TAPICC) was created as a GALA Open Repository to support development of open source resources related to the Translation API Class and Cases Initiative (TAPICC) initiative.

All contributions made to this Open Repository are subject to open source license terms expressed in the BSD-3-Clause License and CC-BY 2.0 License, the declared applicable licenses when the Open Repository was created.

  1. The 3-Clause BSD License (BSD-3 Clause): https://opensource.org/licenses/BSD-3-Clause
  2. Creative Commons Legal Code (CC-BY 2.0): https://creativecommons.org/licenses/by/2.0/legalcode

Contributions to this GALA Open Repository are invited from all parties, whether affiliated with GALA or not. Participants must have a GitHub account, but no fees or GALA membership obligations are required. Participation is expected to be consistent with the open source LICENSE designated for this particular repository.

Maintainers

Open Repository Maintainers are responsible for oversight of this project's community development activities, including evaluation of GitHub pull requests and preserving open source principles of openness and fairness. Maintainers are recognized and trusted experts who serve to implement community goals and consensus design preferences.

Initially, the TAPICC Steering Committee members have designated one or more persons to serve as Maintainer(s); subsequently, participating community members may select additional or substitute Maintainers.

Current Maintainers of this Open Repository

About TAPICC

Feedback

Questions or comments about this Open Repository's activities should be composed as GitHub issues or comments. If use of an issue/comment is not possible or appropriate, questions may be directed by email to the Maintainer(s) listed above. Please send general questions about GALA to [email protected].

Public reviews and final published versions

Final deliverables as well as public review documents and artifacts are being exposed through the following GitHub webpage: https://galaglobal.github.io/TAPICC/

tapicc's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tapicc's Issues

Validation of the Job submitter property

When doing a POST on Job with this:

{
  "name": "string",
  "description": "string",
  "submitDate": "2018-03-23T21:42:50.205Z",
  "dueDate": "2018-03-23T21:42:50.205Z",
  "submitter": "test"
}

We get an error of type for submitter.

"invalidAttributes": {
    "submitter": [
      {
        "rule": "numeric",
        "message": "Value should be a numeric (instead of \"test\", which is a string)"
      }
    ]

Changing the value to "100" or 100 makes it work. But the model shows it's should be string.

Plural for URI

One suggestion: Using the plural forms for the URIs:

/jobs
/jobs/{id}
/jobs/{jobId}/assets
/jobs/{jobId}/assets/{assetId}
etc.

It feels more intuitive (GET /jobs lists all the jobs, GET /jobs/123 gets the job 123 among all jobs)

Invalid XLIFF example 2

extraction_examples/ph_and_mrk/ph.xlf is invalid. Inline element with canDelete="no'" is missing in target.

You should highlight the fact that you are forced to include it but not have the inline element missing.

Add DocBook build instructions

To implement automated build of documentation #3 we need to create a shared knowledge about building it at local machines.

I've tried to build it by gut feeling but failed. Please, help me with build instructions.

I've submitted my questions with some starting point at #6

Test feedback

I think we need to change this or that in the wiki.

Extraction examples are available in multiple places

The folder extraction_examples is in 3 different locations:

Also the file XLIFF-EM-BP-ED.html/PDF are available in two locations:

It is not very clear which is the latest version, which is the current and which is the source.
Maybe put the output generated in folder called dist

Error with import

Trying to run the develop branch I'm getting this error:

error: A hook (`controllers`) failed to load!
error: `include-all` attempted to `require(C:\Dev\GALA-TAPICC-server\dev\trunk\src\api\controllers\AssetController.ts)`, but an error occurred::
Details:C:\Dev\GALA-TAPICC-server\dev\trunk\src\api\controllers\AssetController.ts:7
import express = require('express');
^^^^^^

It seems import is not supported with all versions of Node. Is there some minimal version required here?

Thanks

Configure an automated build into HTML

It's rather complicated to check out the current version of DocBook.

I suggest to set up an automatic build into GitHub pages. So non-devs could quickly read the latest version.

What do you think about it?
If it's ok with you, I can prepare a PR, but it would require some guided configuration done by one of the repo collaborators.

XLIFF extraction and merging open source tool

Are you aware of such tools? Which one do you think is the best?
If we want to enable the TAPICC API to do merging and extracting, I suggest that we should use external tool for this. My vision is that it should be a command line tool which could be run in linux terminal.
Something like tikal

few related questions

  1. What file types do we want to support?
  2. What would be the workflow/steps when a user is supposed to perform an extract or merge?
  3. Should this be a separate API endpoint, or should this happen in the background when a user uploads a file (Asset) to a Task?
  4. What happens after the extraction is done? Are we saving the XLIFF or adding data to database?
  5. What happens after the merge is done? Are we somehow manipulating the database or producing a file?

Bad example regarding language tags

At https://github.com/GALAglobal/TAPICC/tree/master/docs/T1/WG3/wd01/extraction_examples/language_tags it is mentioned that using simplified language tags is bad. That is an incorrect assumption.

Identifying language variants is not always necessary or desirable. There are some languages that are used mainly in one country, like Japanese for example and providing the country is redundant.

In most cases, "ja" is enough for Japanese and "ja-JA" is simply redundant. Same thing happens with many other languages.

As indicated by W3.org:

Always bear in mind that the golden rule is to keep your language tag as short as possible. Only add further subtags to your language tag if they are needed to distinguish the language from something else in the context where your content is used.

Check https://www.w3.org/International/questions/qa-choosing-language-tags

Several ways to do the same thing

I realize this is an early version and you may have already plan to change things, but I thought any input could be helpful:

I've noticed that the current API offers several way to access the same resources. For example you can get the asset 123 of the job 456 with GET /job/456/asset/123 and with GET /asset/123.

I'm not sure this is a good or bad idea:

  • The developers have to implement, maintain and test more code,
  • The users have different ways to do the same thing, which from my experience may not be a good idea.
  • It also forces the ID of the assets, tasks, etc. to be globally unique, which may or may not be OK.
  • It also allows access to the deeper resources with only the knowledge of the ID of that resources, not knowing, for example, the job ID. And that may be an advantage.

I guess it would be good to have a discussion about the pros and cons for this in the WG.

TEST

Testing issues. - Allison

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.