Method Article

A Reproducible Protocol for Constructing a Chinese–English Ceramic Cultural Tourism Lexicon using Registered Corpora

DOI:

10.3791/71320

July 3rd, 2026

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

This protocol constructs a Chinese–English ceramic cultural tourism lexicon using registered bilingual corpora, standardized cleaning, candidate term extraction, similarity-ranked alignment, and expert validation with adjudication. Using this workflow, 60 verified entries were exported with definitions, usage examples, provenance records, and TBX-compatible outputs.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Building bilingual terminology resources for ceramic cultural tourism is challenging because relevant texts are often fragmented, translation choices are inconsistent, and reusable construction workflows are rarely documented. This protocol presents a reproducible, step-by-step workflow for constructing a Chinese–English ceramic cultural tourism lexicon through corpus registration and cleaning, candidate term extraction, bilingual alignment, and expert validation with adjudication. Applied to a registered bilingual corpus, the workflow generated shortlisted Chinese and English candidate terms, produced ranked bilingual term pairs, and retained validated alignments after independent expert review. The finalized lexicon exported 60 verified entries with bilingual term forms, domain tags, translation types, bilingual definitions, usage examples, provenance records, and interoperable outputs such as Excel and TBX files. To support transparency and rerunability, the protocol also records thresholds, package versions, frozen resources, and validation decisions throughout the workflow. This makes the procedure auditable and easier to adapt to other heritage tourism domains. When transferred to a new domain, users can extend the domain keyword list, update the bilingual mapping resource, and adjust a small number of shortlist and similarity thresholds according to corpus size and terminology density.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Cultural tourism has become an important driver of destination development as travelers increasingly seek heritage-based experiences that are meaningful rather than purely recreational1. At the policy and industry levels, international organizations have repeatedly emphasized the value of linking tourism with culture and improving interpretation, documentation, and communication across diverse heritage assets. Within this broader context, ceramic cultural tourism is especially terminology-dense because visitors regularly encounter specialized concepts related to materials, glaze and firing processes, kiln technologies, stylistic motifs, artifact types, and craft-process narratives. These terms often carry technical meanings that are not easily conveyed through casual paraphrase, and translation choices can directly shape what visitors understand from labels, guided interpretation, and educational materials2. At the same time, heritage frameworks have stressed that safeguarding intangible cultural heritage depends on sustained knowledge transmission and public awareness, both of which require language that is accurate, accessible, and contextually appropriate for interpretation and education3.

Despite this demand, bilingual terminology resources for ceramic cultural tourism remain fragmented and inconsistent. Across museum labels, exhibition texts, tourism guide pages, and heritage descriptions, the same concept may be rendered differently across institutions, regions, and communicative settings4. Such variation is not merely stylistic. It can affect visitor comprehension, reduce the comparability of descriptions across sites, and weaken the perceived credibility of heritage communication5. Terminology research has long argued that high-quality term resources should be concept-oriented, supported by explicit definitions, and anchored in traceable evidence such as sources, contexts, and quality-control records6. However, many domain teams still lack a workflow that can systematically transform dispersed texts into a curated bilingual lexicon while preserving transparent decision rules, reproducible procedures, and reusable outputs7. Compared with ad hoc manual compilation, a standardized protocol offers clearer documentation, more consistent validation, and better conditions for updating, auditing, and cross-institution reuse.

To address these challenges, a practical protocol for bilingual lexicon construction needs to organize two linked tasks: candidate term discovery and bilingual alignment. For term discovery, corpus-based automatic extraction can reduce dependence on fully manual collection by combining linguistic patterns with statistical evidence, making it easier to identify domain-relevant terminology at scale8. In cultural heritage settings, however, corpus construction is rarely straightforward. Source materials often differ in style, register, and communicative purpose, and they may contain domain-specific names and mixed descriptive conventions9. These features make transparent parameter recording and stable processing rules especially important. For bilingual alignment, computational methods can generate ranked cross-language candidate pairs by comparing term forms and their surrounding usage contexts, after which domain experts can verify whether the proposed pairs are conceptually appropriate10. In this protocol, automation is used to generate and rank plausible candidates first, while expert review is used to confirm or reject them afterward. This combination improves efficiency without removing interpretive judgment from the final decision. Because heritage terminology often carries cultural and educational implications, reviewers must be able to inspect the evidence behind each proposed pair rather than rely on an opaque output11.

Here, a step-by-step and auditable protocol is presented for constructing a Chinese–English ceramic cultural tourism lexicon from registered text sources. The workflow standardizes corpus registration and cleaning, bilingual candidate extraction, ranked pair generation, two-annotator review with adjudication, and final entry completion under a fixed schema. By integrating version logging, threshold control, frozen resources, and expert validation, the protocol improves reproducibility, auditability, and standardization relative to less structured terminology-building workflows. To support longer-term reuse in terminology management and translation practice, the finalized lexicon can also be exported in TermBase eXchange (TBX) format, an ISO-aligned standard for structured terminological data exchange12.

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

This study used only publicly available or institution-authorized textual data and did not involve human or animal subjects. No institutional ethical approval was required.

1. Create the project workspace

  1. Create a project folder and the following subfolders: corpus_raw, corpus_clean, candidates, alignment, validation, outputs, logs, and resources.
  2. Create the run log and record the environment settings.
    1. Create logs/run_notes.txt.
    2. Record the run date/time, operating system version, and project scope as “Chinese–English ceramic cultural tourism terminology”.
    3. Set the Python interpreter to Python 3.11 and record this information in logs/run_notes.txt.
  3. Run python -m pip freeze > logs/pip_freeze.txt and confirm that logs/pip_freeze.txt has been generated and is not empty13.
  4. Create the dependency file and install the software environment.
    1. Create resources/requirements.txt.
    2. List the core package versions used in this protocol as follows: jieba==0.42.1, spacy==3.7.2, scikit-learn==1.4.2, and RapidFuzz==3.6.1.
    3. Record the installation command in logs/run_notes.txt.
    4. Install en_core_web_sm==3.7.1. 1.4.5 Run python -m spacy validate and record the validated model version in logs/run_notes.txt.
      NOTE: Confirm that both logs/pip_freeze.txt and logs/run_notes.txt exist and are non-empty before proceeding.

2. Compile a balanced bilingual corpus and register sources

  1. Select sources to match the bilingual and genre composition shown in Table 1 and assign each document a unique source_id, such as S001 or S00214.
  2. Create SourceRegister.xlsx and record, for each document, source_id, title, owner/publisher, language, genre, access_date, and license_note.
  3. Convert each document to UTF-8 plain text, name each file as source_id_lang.txt (e.g., S001_zh.txt or S001_en.txt), and save the files in corpus_raw.
  4. Save a frozen copy of the register as outputs/SourceRegister_v1.xlsx and record the freeze date and the document totals (n_docs_zh and n_docs_en) in logs/run_notes.txt.
    NOTE: The protocol may be paused here. If resuming later, do not change any source_id assignments.
    CAUTION: Use only publicly accessible or institution-authorized texts. Do not redistribute copyrighted full texts without explicit permission.

3. Clean and normalize corpus files

  1. Remove navigation-only lines, URL-only lines, and duplicated headers or footers repeated across at least three documents. Keep all remaining lines in their original order15.
  2. Retain punctuation that may form part of multiword or compound terms during cleaning, including the hyphen (-), slash (/), parentheses (( and )), and middle dot (·).
  3. Normalize Chinese text by converting full-width alphanumeric characters to half-width characters and standardizing bracket forms to ( and ).
  4. Normalize English text by collapsing repeated whitespace into a single space and standardizing all hyphen variants to the ASCII hyphen (-) while preserving hyphenated compounds.
  5. Save each cleaned file to corpus_clean using the same source_id_lang.txt filename as in corpus_raw.
  6. Record source_id, lang, n_chars_before, n_chars_after, timestamp, and cleaning_ruleset set as v1.0 in outputs/CorpusStats.xlsx16.
    NOTE: For each language, verify that every file in corpus_raw has a corresponding cleaned file in corpus_clean with the same source_id and language suffix.
    CAUTION: Remove personal information such as names, phone numbers, and email addresses during preprocessing if such information appears in the raw text.

4. Extract candidate terms in Chinese and English

  1. Segment Chinese text using jieba version 0.42.1 with the fixed user dictionary resources/userdict_zh.txt and keep candidates that match either 2–8 consecutive Chinese characters or 2–6 Chinese characters separated by one retained delimiter17.
  2. Process English text using spaCy version 3.7.2 with en_core_web_sm version 3.7.1 and keep only noun phrases and hyphenated compounds containing 1–5 tokens18.
  3. Compute freq as the total number of occurrences of each candidate across the cleaned corpus and compute doc_freq as the number of distinct source_id files containing that candidate at least once.
  4. Apply the shortlist thresholds by keeping only candidates with doc_freq ≥ 2 and freq ≥ 3 and discard the remaining candidates19.
    NOTE: These shortlist thresholds were selected for a relatively small, genre-balanced corpus. For larger or more heterogeneous corpora, the thresholds may be adjusted after pilot inspection.
  5. Export candidates/Candidates_ZH.xlsx and candidates/Candidates_EN.xlsx with the columns term, freq, doc_freq, example_source_id, and example_snippet.
  6. Export candidates/Shortlist_ZH.xlsx and candidates/Shortlist_EN.xlsx using the same columns, with Chinese snippets shown as ±20 characters and English snippets shown as ±10 tokens around one attested occurrence.
  7. Record the tokenizer or tagger names and versions, candidate patterns, and shortlist thresholds in logs/thresholds.txt.
  8. Calculate a checksum for resources/userdict_zh.txt, record it in logs/thresholds.txt, and save a frozen copy as outputs/userdict_zh_v1.txt20.
    NOTE: Open Shortlist_ZH.xlsx and Shortlist_EN.xlsx and confirm that both files contain non-zero rows and populated example_snippet fields.

5. Generate bilingual alignment candidates and rank term pairs

  1. For each shortlisted Chinese term, collect context windows of ±20 Chinese characters around each occurrence and concatenate up to five windows to form one context string named ctx_zh.
  2. For each shortlisted English term, collect context windows of ±10 tokens around each occurrence and concatenate up to five windows to form one context string named ctx_en.
  3. Create and freeze the bilingual mapping resource.
    1. Create resources/term_map_zh2en.xlsx with the columns term_zh and term_zh_en.
    2. Populate the file using an authorized process such as existing institutional glossaries, previously accepted bilingual term lists, and rule-based normalization.
    3. Save the frozen mapping as outputs/term_map_zh2en_v1.xlsx.
    4. Record the freeze date, mapping coverage, and file checksum in logs/alignment_log.txt. NOTE: When adapting this workflow to a new domain, begin the mapping resource with a seed list of high-frequency domain terms and expand the table between full reruns rather than during scoring.
  4. Map each term_zh to an English-comparable form term_zh_en using the frozen mapping and keep the same mapping resource for the full run21.
  5. Generate ctx_zh_en by applying the frozen mapping to ctx_zh, replacing matched term_zh occurrences with term_zh_en while leaving all other text unchanged.
  6. Record the mapping and normalization procedure.
    1. Record the mapping procedure in logs/alignment_log.txt.
    2. Record all normalization rules, including lowercasing and hyphen normalization, in logs/alignment_log.txt.
  7. Compute the string similarity score S_str by using RapidFuzz version 3.6.1 token_sort_ratio to compare normalized English term strings between term_zh_en and term_en and divide the result by 100 to scale the score to the range [0, 1]22.
  8. Compute the context similarity score S_ctx.
    1. Use scikit-learn version 1.4.2 and TfidfVectorizer with the fixed parameters lowercase=True, ngram_range=(1, 2), min_df=1, max_df=0.95, and stop_words="english"23.
    2. Fit the vectorizer on the combined set of ctx_en and ctx_zh_en strings from the current run.
    3. Compute S_ctx as the cosine similarity between each ctx_zh_en string and each ctx_en string.
      NOTE: TF-IDF represents the relative importance of words and short phrases in each context window, and cosine similarity is used to compare the resulting context representations.
  9. Compute the final similarity score and rank the candidate pairs.
    1. Compute the final score as S = 0.60 × S_str + 0.40 × S_ctx.
    2. For each Chinese term, retain the top k = 3 English candidates ranked by S.
    3. Remove duplicates by keeping the highest-scoring instance for each unique (term_zh, term_en) pair.
    4. Record k, the score weights, and the total number of exported pairs in logs/alignment_log.txt24.
      NOTE: The weighting scheme and value of k were selected to maintain a manageable review set while preserving plausible alternatives. For larger corpora or more variable terminology, these settings may be adjusted after pilot testing.
  10. Assign domain_tag values using the fixed keyword map resources/domain_keywords.csv and the following priority order: kiln_technology > craft_process > heritage_museum > tourism_experience > product_commerce25.
    NOTE: When transferring the workflow to another subject domain, replace the keyword map and revise the priority order before rerunning the full pipeline.
  11. Save a frozen copy of the keyword map as outputs/domain_keywords_v1.csv and record its checksum in logs/alignment_log.txt.
  12. Export alignment/AlignmentPairs.xlsx with the columns pair_id, term_zh, term_en, term_zh_en, S, rank_within_zh, domain_tag, evidence_snippet_zh, evidence_snippet_en, and evidence_snippet_zh_en.
  13. Label each pair as auto_accept, review, or auto_reject using the following cutoffs: S ≥ 0.90, 0.75 ≤ S ≤ 0.89, and S < 0.75, and record the cutoffs and the counts in each label group in logs/alignment_log.txt.
    NOTE: On a standard desktop environment comparable to the one used in this study, context generation, TF-IDF fitting, and similarity scoring for a corpus of this size were completed within several minutes.
    NOTE: Randomly inspect at least 10 rows in AlignmentPairs.xlsx and confirm that evidence_snippet_zh_en is present and that term_zh_en is non-empty for mapped cases.
    CAUTION: Keep all mapping resources fixed within a run. Do not update the bilingual mapping table or keyword map after scoring has begun.

6. Verify term pairs by expert annotation and adjudication

  1. Create validation/Annotation.xlsx with the columns pair_id, term_zh, term_en, term_zh_en, S, domain_tag, A1_decision, A2_decision, adjudication, and rationale.
  2. Prepare a one-page annotation guideline defining conceptual equivalence in ceramic cultural tourism, acceptable explanatory translations, and exclusion cases such as partial overlap, overly generic renderings, and mismatched artifact types26.
  3. Instruct two annotators to independently label each pair as include or exclude using the evidence snippets provided, and do not allow the annotators to view each other’s decisions.
  4. Review all disagreements after independent annotation and record the final decision and a one-sentence rationale in the adjudication and rationale columns.
  5. Calculate raw agreement and Cohen’s κ using the include and exclude labels and record the agreement metrics and the include and exclude totals in outputs/Evaluation.xlsx27.
  6. Review the excluded pairs to identify systematic false-positive patterns and save the most frequent rejected patterns in logs/rule_update_v1.txt.
  7. Save a frozen copy of the completed annotation file as outputs/Annotation_v1.xlsx and do not change adjudicated labels after this point.
    NOTE: The protocol may be paused here. If resuming later, do not revise any frozen validation decisions.

7. Finalize the lexicon and export

  1. Populate the final lexicon using the entry fields summarized in Table 2, including bilingual term forms, part of speech, domain tags, translation type, bilingual definitions, usage examples, provenance information, and quality flags.
  2. Use the same entry_id values across all exports and confirm identifier consistency before file generation.
  3. Export the final spreadsheet as outputs/FinalLexicon.xlsx and verify that all required fields are populated before saving.
  4. Generate and validate the TBX export.
    1. Generate a TBX file using the same entry_id values to preserve traceability.
    2. Validate the TBX file against the intended TBX schema.
    3. Record the validation result in logs/run_notes.txt28.
  5. Archive all logs, parameter files, frozen resources, and outputs in the versioned folder outputs/Lexicon_v1/ and record the archive date and file counts in logs/run_notes.txt.
  6. Provide the scripts, frozen resources, and parameter logs as Supplementary Files, including outputs/userdict_zh_v1.txt, outputs/domain_keywords_v1.csv, outputs/term_map_zh2en_v1.xlsx, logs/thresholds.txt, and logs/alignment_log.txt.
  7. Provide a permission-cleared verification subset of the corpus using the same file structure and output schema so that readers can reproduce the workflow on the released subset29.
    CAUTION: Before sharing supplementary materials, confirm that no copyrighted full texts, sensitive identifiers, or unauthorized institutional resources are included in the release package.

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Corpus assembly and cleaning yield
Following the corpus design shown in Table 1, a registered bilingual corpus was assembled from museum and exhibition texts, heritage descriptions, and visitor-facing tourism materials. After cleaning, the corpus comprised 12 Chinese documents and 8 English documents, totaling 47,843 Chinese characters and 32,193 English characters30. The corpus retained the intended combination of technical, interpretive, and tourism-oriented...

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

The main value of this protocol lies in its ability to transform a terminology task that is often handled informally into a reproducible and reviewable workflow. In ceramic cultural tourism, many terms are both technical and interpretive: they refer not only to materials, kiln types, firing stages, or decorative styles, but also to how these concepts are communicated to visitors in labels, narratives, and educational materials36. For that reason, bilingual variation in this domain is not a minor s...

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

The authors declare that they have no competing financial or non-financial interests related to this work.

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

The authors thank the ceramic cultural tourism practitioners and museum staff who provided access to textual materials and domain feedback during corpus construction and validation. The authors also thank the two independent domain annotators for their careful review of alignment candidates and constructive comments on entry design. This work was supported by the Research Project of Jiangxi Association of Higher Education titled “Study on Intelligent English Translation of Chinese Ceramic Tourism Terminology Based on DeepSeek and Its Multi-channel Dissemination Model” (Grant No. WY-D-115).

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Computer workstationHardwareAny modern computer capable of running Python 3.11 and processing text corpora; ≥8 GB RAM recommendedNo catalog number required
Source: Generic (any supplier)
Operating systemSoftwareWindows 10/11, macOS, or Linux (record exact OS version in logs/run_notes.txt)Version recorded in run_notes.txt
Source: System-installed
PythonSoftwarePython 3.11Version recorded in logs/pip_freeze.txt
Source: Python Software Foundation distribution
jiebaSoftware library0.42.1jieba==0.42.1
Source: PyPI package repository
spaCySoftware library3.7.2spacy==3.7.2
Source: PyPI package repository
English pipeline modelNLP modelen_core_web_sm 3.7.1 (spaCy model package)en_core_web_sm==3.7.1; installation recorded in run_notes.txt
Source: spaCy model repository
scikit-learnSoftware library1.4.2scikit-learn==1.4.2
Source: PyPI package repository
RapidFuzzSoftware library3.6.1RapidFuzz==3.6.1
Source: PyPI package repository
Spreadsheet editorSoftwareAny software capable of editing .xlsx filesUsed to view/edit SourceRegister.xlsx, CorpusStats.xlsx, Candidates/Shortlist files
Source: Generic (any supplier)
Plain-text editorSoftwareAny software capable of editing .txt and .csv filesUsed to view/edit logs/.txt and resources/.csv
Source: Generic (any supplier)
UTF-8 text conversion toolSoftwareAny tool capable of exporting documents to UTF-8 plain textUsed in Step 2.3; exact method recorded in run_notes.txt
Source: Generic (any supplier)
SourceRegister templateFile templateSourceRegister.xlsx with fields: source_id, title, owner/publisher, language, genre, access_date, license_noteFrozen as outputs/SourceRegister_v1.xlsx
Source: Created in this study
Corpus statistics templateFile templateCorpusStats.xlsx with fields: source_id, lang, n_chars_before, n_chars_after, timestamp, cleaning_rulesetGenerated during Step 3.6
Source: Created in this study
Chinese user dictionaryResource fileresources/userdict_zh.txt (domain-specific term list for segmentation support)Frozen copy saved; checksum recorded in thresholds.txt
Source: Created/curated in this study
Domain keyword mapResource fileresources/domain_keywords.csv with domain_tag priority rulesFrozen as outputs/domain_keywords_v1.csv; checksum recorded in alignment_log.txt
Source: Created/curated in this study
Chinese-to-English term mapping tableResource fileresources/term_map_zh2en.xlsx with columns term_zh and term_zh_enFrozen as outputs/term_map_zh2en_v1.xlsx; coverage recorded in alignment_log.txt
Source: Created/curated in this study
Threshold logLog filelogs/thresholds.txt (patterns, thresholds, library versions, resource checksums)Required for deterministic reruns
Source: Generated in this study
Alignment logLog filelogs/alignment_log.txt (weights, k, cutoffs, vectorizer settings, mapping coverage, map checksums)Required for deterministic reruns
Source: Generated in this study
Annotation sheetFile templatevalidation/Annotation.xlsx (pair_id, term_zh, term_en, S, decisions, adjudication, rationale)Frozen as outputs/Annotation_v1.xlsx after Step 6.6
Source: Created in this study
Evaluation outputOutput fileoutputs/Evaluation.xlsx (raw agreement, Cohen’s κ, totals)Produced in Step 6.4
Source: Generated in this study
Final lexicon exportOutput fileoutputs/FinalLexicon.xlsx following Table 2 schemaProduced in Step 7.2
Source: Generated in this study
TBX exportOutput fileTBX file generated from FinalLexicon.xlsx with stable entry_id mappingValidation result recorded in run_notes.txt
Source: Generated in this study

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

BehaviorAllbilingual terminologylexicon constructionautomatic term extractionbilingual term alignmentexpert validationTBX TermBase eXchangecultural heritage interpretationChinese English translation

Related Articles