Crowdin Query Language (CroQL) is a tool for Crowdin and Crowdin Enterprise API that allows you to retrieve needed localization resources based on specific conditions. Vha. CroQL kan kildestrenge og deres oversættelser filtreres ift. et bestemt målsprog.
You can use CroQL with the following API methods:
CroQL-hovedoperatorer er anført nedenfor. Benyt og kombinér dem for at opsætte særlige betingelser for at hente indhold fra Crowdin. Elementerne fra tabellerne nedenfor kan bruges til at danne CroQL-forespørgslen.
De aritmetiske operatorer bruges til at udføre matematiske operationer med enhver numeriske datatype.
Navn | Symbol | Eksempel |
---|---|---|
Addition | + | 1 + 9 |
Subtraktion | - | 11 - 1 |
Division | / | 20 / 2 |
Multiplikation | * | 2 * 5 |
Negation | - | -10 |
Sammenligningsoperatorer bruges til at sammenligne værdier og returnere true
eller false
.
Navn | Symbol | Aliaser | Eksempel |
---|---|---|---|
Mellem | {{expression}} mellem {{expression}} og {{expression}} | 5 mellem 1 og 10 | |
Lig med | = | 10 = 10 | |
Ikke lig med | != | ≠ | 1 != 10; 1 ≠ 10 |
Større end | > | 10 > 1 | |
Større end eller lig med | >= | ≥ | 10 >= 1; 10 ≥ 1 |
Mindre end | < | 1 < 10 | |
Mindre end eller lig med | <= | ≤ | 1 <= 10; 1 ≤ 10; |
Contains | {{string}} contains {{string}} | "Hello World" contains "Hello"; "Hello World" contains text; text contains "Hello World"; context contains text; |
Logiske operatører bruges til at kombinere flere booleske udtryk/værdier og give et enkelt boolesk output.
Navn | Symbol | Eksempel |
---|---|---|
Og | og | 1 < 10 and 10 > 1 |
Eller | eller | 1 < 10 or 10 > 1 |
Xor | xor | 1 < 10 xor 10 > 1 |
Ikke | ikke | not 1 < 10 |
Filtreringsoperatorer anvendes til at filtrere objekter baseret på den angivne tilstand.
Navn | Symbol | Eksempel |
---|---|---|
Filter | {{collection}} where {{predicate}} | translations where (count of votes > 0) |
Match | {{object}} med {{predicate}} | bruger med (login = "crowdin") |
The ternary operator is used to check a condition specified in the first value, and if it’s true
it returns the second value, but if it’s false
it returns the third value.
Navn | Symbol | Eksempel |
---|---|---|
Ternær | If {{condition}} then {{expression}} else {{expression}} | If 1 < 10 then "less" else "greater" |
Hent-operatører bruges til at hente data fra objekterne.
Navn | Symbol | Eksempel |
---|---|---|
Nævn | @user:{{string}}; @language:{{string}} | @user:"crowdin"; @language:"en" |
Medlem | {{member}} of {{object}} | antal af oversættelser |
Identifikator | {{identifier}} | text; identifier |
Skalaroperatorer bruges til at erklære værdier til videre behandling.
Navn | Symbol | Eksempel |
---|---|---|
Integer | {{integer}} | 10 |
Flydende | {{float}} | 10.01 |
Streng | {{string}} | “crowdin" |
Datotid | {{datetime}} | 'i dag'; '2021-03-16 00:00:00' |
Gruppeoperatorer bruges til at fastlægge operatorers eksekveringssrækkefølge.
Navn | Symbol | Eksempel |
---|---|---|
Gruppér | ( ) | 1 < 10 and (20 > 10 or 10 > 5) |
For at hente en liste over strenge uden ukrainske oversættelser med godkendelser eller stemmer, kan forespørgslen se således ud:
count of translations where ( language = @language:"uk" and ( count of approvals > 0 or count of votes > 0 ) ) = 0
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Beskrivelse: Numerisk identifikator for Crowdin-projektet. |
{croql} | Type: Beskrivelse: CroQL-udtryk. |
To retrieve a list of strings that have only one translation, your query might look like this:
count of translations = 1
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Beskrivelse: Numerisk identifikator for Crowdin-projektet. |
{croql} | Type: Beskrivelse: CroQL-udtryk. |
To retrieve a list of strings that have translations from only one specific user, your query might look like this:
count of translations > 0 and count of translations = count of translations where (user = @user:"crowdin")
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Description: Numeric identifier of your Crowdin project. |
{croql} | Type: Description: CroQL expression. |
To retrieve a list of strings that have at least one translation not from specific users, your query might look like this:
count of translations where (user != @user:"crowdin") > 0
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Description: Numeric identifier of your Crowdin project. |
{croql} | Type: Description: CroQL expression. |
To retrieve a list of strings that have all translations not from specific users, your query might look like this:
count of translations > 0 and count of translations = count of translations where (user != @user:"crowdin")
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Description: Numeric identifier of your Crowdin project. |
{croql} | Type: Description: CroQL expression. |
For at hente oversættelser foretaget af brugere med et crowdin-brugernavn
eller med ≥ 100 upvotes, kan forespørgslen se således ud:
user = @user:"crowdin" or count of votes where ( is up ) >= 100
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Description: Numeric identifier of your Crowdin project. |
{croql} | Type: Description: CroQL expression. |
To retrieve a list of strings filtered by identifier and numeric id of a file in your Crowdin project, your query might look like this:
identifier = "key" and id of file = 777
Use your query in the following endpoint in Crowdin:
In Crowdin Enterprise:
{projectId} | Type: Description: Numeric identifier of your Crowdin project. |
{croql} | Type: Description: CroQL expression. |
CroQL kan bruges i kildestrengs- og oversættelseskontekster. Brug flg. eks. som udgangspunkter ved udformning af CroQL-forespørgsler.
{
"type is plain": true,
"type is plural": false,
"type is icu": false,
"type is asset": false,
"text": "Quick Start",
"identifier": "quick_start",
"context": "quick_start",
"max length": 0,
"is visible": true,
"is hidden": false,
"file": {
"id": 32,
"name": "sample.csv",
"title": "Sample",
"type": "csv"
},
"comments": [
{
"has issue": false,
"has unresolved issue": false
}
],
"screenshots": [],
"translations": [
{
"text": "Швидкий старт",
"plural form": "none",
"is pre translated": true,
"provider": "tm",
"language": 52,
"user": 1,
"votes": [
{
"is up": true,
"is down": false,
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"approvals": [
{
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"updated": "2021-04-09 10:23:17"
}
],
"added": "2021-04-08 12:33:27",
"updated": "2021-04-08 12:33:27"
}
type is plain | Type: Beskrivelse: Kildestreng med almindelig tekst. |
type is plural | Type: Beskrivelse: Kildestreng med flertalsformer. |
type is icu | Type: Beskrivelse: Kildestreng med ICU. |
type is asset | Type: Beskrivelse: Kildestreng er et aktiv. |
text | Type: Beskrivelse: Kildestrengstekst. |
identifier | Type: Beskrivelse: Kildestrengidentifikator (nøgle). |
context | Type: Beskrivelse: Kildestrengskontekst. |
max length | Type: Description: The source string max.length. |
is visible | Type: Beskrivelse: Kildestreng er synlig. |
is hidden | Type: Beskrivelse: Kildestreng er skjult. |
file | Type: Description: The source string file. |
comments | Type: Beskrivelse: Kildestrengskommentarer. |
has issue | Type: Beskrivelse: Kildestreng med en problematik. |
has unresolved issue | Type: Beskrivelse: Kildestreng med en uløst problematik. |
screenshots | Type: Beskrivelse: Kildestrengsskærmfotos. |
translations | Type: Oversættelse Kildestrengsoversættelse. |
text | Type: Beskrivelse: Oversættelsestekst. |
plural form | Type: Beskrivelse: Oversættelse i flertalsform. |
is pre translated | Type: Description: Translation added via pre-translation. |
provider | Type: Allowed values: Description: Translation provided via translation memory or machine translation engine. |
language | Type: Beskrivelse: Numerisk identifikator for målsproget. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der tilføjede en oversættelse. |
votes | Type: Beskrivelse: Rækken af stemmerne tilføjet oversættelsen. |
is up | Type: Beskrivelse: Upvote. |
is down | Type: Beskrivelse: Downvote. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der stemte på en oversættelse. |
added | Type: Beskrivelse: Dato for, hvornår der blev stemt på en oversættelse. |
approvals | Type: Beskrivelse: Rækken af de tilføjede oversættelsesgodkendelser. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der godkendte en oversættelse. |
added | Type: Beskrivelse: Dato for, hvornår en oversættelse blev godkendt. |
updated | Type: Beskrivelse: Dato for, hvornår en oversættelse blev opdateret. |
added | Type: Beskrivelse: Dato for, hvornår en kildestreng blev tilføjet. |
updated | Type: Beskrivelse: Dato for, hvornår en kildestreng blev opdateret. |
{
"text": "Швидкий старт",
"plural form": "none",
"is pre translated": true,
"provider": "tm",
"user": 1,
"votes": [
{
"is up": true,
"is down": false,
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"approvals": [
{
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"updated": "2021-04-09 10:23:17"
}
text | Type: Beskrivelse: Oversættelsestekst. |
plural form | Type: Beskrivelse: Oversættelse i flertalsform. |
is pre translated | Type: Description: Translation added via pre-translation. |
provider | Type: Allowed values: Description: Translation provided via translation memory or machine translation engine. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der tilføjede en oversættelse. |
votes | Type: Beskrivelse: Rækken af stemmerne tilføjet oversættelsen. |
is up | Type: Beskrivelse: Upvote. |
is down | Type: Beskrivelse: Downvote. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der stemte på en oversættelse. |
added | Type: Beskrivelse: Dato for, hvornår der blev stemt på en oversættelse. |
approvals | Type: Beskrivelse: Rækken af de tilføjede oversættelsesgodkendelser. |
user | Type: Beskrivelse: Numerisk identifikator på brugeren, der godkendte en oversættelse. |
added | Type: Beskrivelse: Dato for, hvornår en oversættelse blev godkendt. |
updated | Type: Beskrivelse: Dato for, hvornår en oversættelse blev opdateret. |