---
title: "Altova MissionKitを使った国際化対応"
date: "2009-06-01"
categories: 
  - "technology"
tags: 
  - "missionkit"
  - "stylevision"
  - "xml-editor"
  - "xmlspy"
description: Altova MissionKitのツールであるXMLSpyやStyleVisionなどを活用し、XMLアプリケーションを国際化するための戦略を検討することで、多様なユーザーにとってのアクセシビリティを向上させることができます。
---
Status: #blog

Tags:  #missionkit #stylevision #xml-editor #xmlspy

Categories: [development](/blog/ja/category/development.md)
# Altova MissionKitを使った国際化対応

_以下の文章は、TM-GlobalのCEO兼翻訳管理コンサルタントであり、Kilgray Translation Technologiesの執行役員である**ピーター・レイノルズ**氏によって書かれたものです。アイルランド国籍でワルシャワを拠点とし、オープン大学で理学士号と経営学修士号を取得しており、ローカリゼーションおよび翻訳業界のベテランです。ピーター氏は、以前はIdiom Technologies Inc.（現在はSDL PLC）に勤務していました。IdiomのLSPパートナープログラムのディレクターとして、同社のグローバルなLSPパートナープログラムを成功させ、革新的な取り組みへと導きました。Idiomに先立ち、Lionbridge、Bowne Global Solutions、Berlitz GlobalNETといった、いくつかのグローバルローカリゼーション企業で言語技術の開発に携わっていました。ダブリンにある開発チームを率い、BerlitzIT、Elcano、Freeway 2.0といった技術ソリューション、および社内プロジェクトおよびベンダー管理ツールを担当していました。ピーター氏は、10年以上にわたり、特にXLIFFに関する標準の開発と普及に積極的に関わってきました。2008年にXLIFFが公開されるまで、彼はOASISのXLIFF技術委員会で事務を担当し、Translation Web Services TCの議長を務めていました。現在もOASIS、TILPに関わり、ISO SC2およびSC4のアイリッシュ専門家として活動しており、EN 15038規格の監査員育成も行っています。_

#### はじめに

すべての開発者は、自分の作成したアプリケーションが広く利用され、人気になることを願っています。アメリカのメイン州の農村部で開発されたウェブアプリケーションでも、隣の町に住んでいる人だけでなく、マレーシア、ニュージーランド、ドイツ、ポーランドなど、世界中のどこにいる人でも容易に利用できます。アプリケーションが翻訳（ローカライズ）されていなくても、地域によってデータの表示方法に重要な違いがある場合があります。W3Cにおける国際化の定義は、「文化、地域、または言語が異なるターゲットオーディエンスに対応できるように設計および開発された製品」です。これは、製品がターゲットオーディエンスの言語に翻訳されることを意味するのではなく、ターゲットオーディエンスがアプリケーションを利用でき、データがどのように表示されるかを理解できるように設計されていることを意味します。国際化の目的は、アプリケーションの利用者を可能な限り広げ、その翻訳を容易にし、コストを削減することです。 

この記事では、国際化について解説し、Altova MissionKitという統合的なXML、データベース、UMLツールスイート（XMLSpy、StyleVision、MapForceなどを含む）を使用して、アプリケーションを国際化する方法を紹介します。もし、XMLSpyやStyleVisionなどのツールをご利用であれば、すでに国際化されたXMLアプリケーションを開発されている可能性が高いです。 

私が提案する戦略は、アプリケーションの対象となるユーザー層を事前に特定し、それに応じて国際化を進めることです。この記事では、まずXMLの国際化のための戦略について説明します。その後、国際化タグセットを紹介し、XMLの国際化に関する課題について検討します。

#### XMLの国際化戦略

国際化の計画を立てる最初のステップは、必要な国際化のレベルについて、十分な情報に基づいて判断することです。貴組織には、その判断を支援してくれる人がいるかもしれません。特に、異なる国に住んでいる人からの意見を聞くことは非常に役立ちます。以下に提示する3段階のアプローチは、導入する国際化のレベルを決定するのに役立つはずです。ただし、文書やアプリケーションが国際化されていない場合、いくつかの問題が発生する可能性があります。しかし、それらを完全に国際化することで、そのような問題は確実に回避できます。国際化の3つのレベルは以下の通りです

- レベル1：お客様のアプリケーションは、比較的限られたユーザー層を対象としている可能性があり、ユーザー数は増加するかもしれませんが、翻訳や国際的な利用は期待できないでしょう。その場合、この記事で提案されている内容に従い、Altova MissionKitの機能を活用して、国際化に対応するようにしてください。
- レベル2：お客様のアプリケーションは幅広い層に利用される可能性があり、翻訳されて国際的に使用されることも考えられます。Altova MissionKitの機能に加えて、国際化タグセットも活用してください。これは、W3Cが国際化を目的として公開しているスキーマです。
- レベル3：お客様のアプリケーションは、国際的に利用される可能性が高く、様々な言語に翻訳される可能性があります。コンテンツとコードを分離することで、ローカライゼーションのプロセスをどのように改善できるかをご検討ください。また、翻訳者が、エンドユーザーが実際に利用する際の表示状態を把握できるようにすることが重要です。この内容は、本記事の範囲を超えるため、以下に参考文献をいくつかご紹介します。

[Altova MissionKit](https://www.altova.com/ja/products/missionkit/software_development_tools.html)に含まれるソフトウェアツールは、国際化をサポートする多くの機能を備えています。これらのツールを使用することで、国際化されたXMLドキュメントを作成するための非常に強力な基盤を構築できます。また、[XMLSpy XMLエディタ](https://www.altova.com/ja/xml-editor/)で作成されるアプリケーションでは、Unicodeがデフォルトのエンコーディングとして設定されています。この文字セットを使用することを強くお勧めします。

#### 国際化対応タグセット

国際化タグセット（ITS）は、W3Cによって推奨されており、国際化に対応し、容易にローカライズ可能なXMLを作成するために設計されています。もし、ローカライズが必要となる可能性のあるXMLドキュメントを扱っている場合は、ITSの使用をお勧めします。この技術を使用することで、翻訳が必要なテキストを特定したり、翻訳者向けの指示を提供したり、テキストの方向を指定したりすることができます。ITSに含まれる7つのデータカテゴリは以下の通りです

- **翻訳：** ドキュメントのどの部分が翻訳可能かを定義します。
- **ローカライゼーションに関する注意点：** 翻訳者の皆様への補足情報および役立つ情報を提供します。
- **用語集:** 文書に含まれる用語を解説します。
- **方向性：** 文書または文書の一部が記述され、読み始める方向を示します。
- **ルビ:** ドキュメントのどの部分をルビとして表示するかを指定します。（ルビとは、本文の横に短いテキストを表示するもので、主に東南アジアの言語の文書で、発音を示すためや、簡単な注釈を付けるために使用されます）。
- **言語情報：** このセクションでは、文書の各部分で使用されている言語を特定します。
- **テキスト内の要素:** 言語的な区切り方に関して、要素がどのように扱われるかを示します。

W3Cは、XML文書の国際化に関するベストプラクティスガイドを公開しており、その中でITSの利用方法について詳しく説明しています。このガイドは、以下のウェブサイトで確認できます：[http://www.w3.org/TR/2007/WD-xml-i18n-bp-20070427/](http://www.w3.org/TR/2007/WD-xml-i18n-bp-20070427/) 仕様書は、以下のセクションで確認できます：[http://www.w3.org/TR/2007/REC-its-20070403/](http://www.w3.org/TR/2007/REC-its-20070403/) 国際化を進める前に、これらのドキュメントを読んでいただくことを強くお勧めします。

#### 国際化に関する課題

以下の表には、国際化の際に遭遇する可能性のあるいくつかの問題点について説明されています。以下では、これらの問題点についてより詳細に解説し、Altova MissionKitを使用してこれらの問題を解決するための提案を提示します。 


| 項目 | 説明 |
|---|---|
| エンコーディング | 使用するコードページで、すべての文字がサポートされている必要があります。Unicodeは、一般的な言語の文字をすべてサポートするエンコーディングです。 |
| 日付と時刻 | 日付と時刻の表記方法は、国によって異なります。 |
| 数字 | 小数点や桁区切り記号の表記方法は、国によって異なります。 |
| 通貨 | 一部の国では、通貨記号または通貨名が数字の後に記述されますが、ほとんどの国では数字の前に記述されます。また、数字の表記方法も国によって異なります。 |
| 挨拶と名前 | 国によって、挨拶の仕方が異なります。また、ハンガリーなど一部の国では、人の名前を姓から記述します。日本語では、ミドルネームは使用しません。 |
| 住所 | 住所の表記方法も国によって異なります。例えば、一部の国では番地が通り名よりも前に記述されますが、他の国ではその逆です。また、一部の国では郵便番号を使用しますが、他の国ではそれとは異なる方式を使用します。 |
| RTL (右から左への表示) | 多くの言語ではテキストは左から右に読まれますが、ヘブライ語やアラビア語など一部の言語では、テキストは右から左に読まれます。 |
| ソートと並べ替え | アルファベットの並べ替え方法も国によって異なります。一部の北欧言語には「aa」という文字があり、通常はアルファベットの最後に並べられますが、必ずしもそうではありません。 |
| 感嘆符と疑問符 | 英語では、疑問符と感嘆符は文の最後に記述されますが、スペイン語では、文の最初と最後に疑問符が記述されます。 |



#### エンコーディング

すべての電子テキストは、文字を数値で表現する文字コードシステムを使用しています。Unicodeが広く普及する以前、これは国際化における最も重要な課題の一つでした。アプリケーションが、特定のコードページに存在しない文字を表示しようとすると、文字化けしたテキストとして表示されます。問題は、異なる言語間だけでなく、異なるオペレーティングシステムで動作するコンピュータ上で文字が正しく表示されない場合にも発生しました。Unicodeは、プラットフォーム、プログラム、言語に関係なく、単一のコードページを作成することで、これらの問題をほとんど解決しました。XMLは、デフォルトのコードページとしてUnicodeを使用します。XMLSpyで作成するXMLドキュメントは、デフォルトで "encoding="UTF-8" という宣言が含まれます。もしファイルがXMLSpyで作成されていない場合は、ファイルがUTF-8で保存されていることを確認する必要があります。UTFは、Unicode Transformation Formatの略で、UTF-8は、文字を1、2、または4バイトで格納するUnicodeの一種です。これは最も一般的に使用される形式であり、XMLやWebで広く利用されています。XMLSpyがサポートする他のUnicodeのバージョンは以下の通りです

- **UTF-7。** これは、Unicodeの7ビット版です。7ビットのデータ転送方式、例えば電子メールなどでのみ使用されるべきです。
- ** ISO 1064 UCS – 2 および UTF – 16。** UCSは「Universal Character Set（ユニバーサル文字セット）」の略称で、UCS-2は各文字に2バイトを使用します。UTF-16はUCS-2を拡張したもので、文字を表現するために2バイトまたは4バイトを使用します。UTF-16は、WindowsやJavaでよく使用されます。新しい文書を作成する際は、UCS-2ではなくUTF-16を使用することをお勧めします。
- **ISO 1064 UCS-4。** 各文字に4バイトを使用し、UTF-32と同じです。UTF-32は、Unixシステムでよく使用されます。

UTF-8以外のエンコーディングを使用する理由があるかもしれません。XMLSpyでデフォルトのエンコーディングを設定するには、[ツール] | [オプション] を選択し、[エンコーディング] タブを選択してください。  

[![XMLSpyのエンコーディング設定オプション](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/xmlspyencodingoptions_thumb.gif)](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/xmlspyencodingoptions.gif) 

特定のXMLドキュメントのエンコーディングを変更したい場合は、そのドキュメントをXMLSpyで開き、「ファイル」メニューから「エンコーディング」を選択してください。 

[![XMLエンコーディングのオプション](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/xmlencodingoptions_thumb.gif)](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/xmlencodingoptions.gif)

#### 言語

XMLネームスペースでは、xml:lang属性がXMLドキュメントの言語を識別するために使用されます。xml:lang属性の値は、ISOの言語コード（ISO 639-2）でなければなりません。もし、XMLドキュメントが特定の言語で記述されているものの、別の言語のセグメントが含まれている場合は、ドキュメントの主要な言語を識別するために、ルート要素でxml:lang属性を使用し、別の言語のテキストが含まれる要素で、その言語を識別するためにxml:lang属性を使用することができます。

#### 日付

国によって、日付や時刻の表現方法は大きく異なります。例えば、10/09/08という日付を例に考えてみましょう

> In most European countries this means the 10th of September 2008. 
> In the United States this means the 9th of October 2008. 
> In Japan this means 8th of October 2009.

この問題を解決するには、アプリケーション内で日付と時刻を指定する際に、ISO 8601規格を使用してください。これは、日付と時刻をYYYY-MM-DDTHH:MM:SS[±HH:MM]という形式で表現するための標準的な方法です

> YYYY- represents year  
> MM- represents month  
> DD - represents day  
> T signifies that Time follows this  
> HH- represents hours  
> MM- represents minutes  
> SS- represents seconds.

その後、StyleVisionを使用して、[スタイルシートを作成](https://www.altova.com/ja/products/stylevision/xslt_stylesheet_designer.html)し、日付をターゲットとする読者にとって適切な形式で表示することができます。StyleVisionは、XMLデータをHTML、Microsoft Word、PDFなどの形式で表示するための、XSLTおよびXSL:FOスタイルシートをグラフィカルに設計できるツールです。StyleVision内で日付の書式設定機能を使用するには、以下の手順に従ってください

- ノードの内容プレースホルダーまたは入力フィールドを選択してください。
- プロパティサイドバーで、コンテンツ項目を選択し、次に「コンテンツ」グループのプロパティを選択してください。
- 入力形式のプロパティにある「編集」ボタンをクリックしてください。
- 入力形式の設定ダイアログが表示されます

[![StyleVisionの日付表示形式](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/StyleVisiondate_thumb.gif)](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/StyleVisiondate.gif)

- 「フォーマット指定」のラジオボタンを選択してください。これにより、使用したいデータ型を選択でき、日付を選択した場合は、その日付の表示形式を選択できます。

ここでは、他の日付と時刻の表示形式も選択できます。日付選択ウィジェットの使用を強くお勧めします。日付選択ウィジェットを挿入するには、カーソルが `<xs:date>` または `<xs:dateTime>` ノードの間に位置している必要があります。その後、メインメニューの「挿入」を選択し、「日付選択ウィジェットの挿入」を選択します。もしカーソルが `<xs:date>` または `<xs:dateTime>` ノードの間にない場合、「日付選択ウィジェットの挿入」というメニュー項目はグレー表示になります。

#### 数字

小数点やカンマの使用は、地域によって異なります。また、桁区切り記号の使い方も地域によって異なります。StyleVisionでは、対象とする読者層に合わせて数値をフォーマットする機能を提供しています

- ノードの内容プレースホルダーまたは入力フィールドを選択してください。
- プロパティサイドバーで、コンテンツ項目を選択し、次に「コンテンツ」グループのプロパティを選択してください。
- 入力形式のプロパティにある「編集」ボタンをクリックしてください。
- 入力形式の設定ダイアログが表示されます

[![StyleVisionにおける数値の表示形式設定](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/numberformatting_thumb.gif)](https://www.altova.com/blog/images/InternationalizationwiththeAltovaMission_C8AF/numberformatting.gif)

- 「書式設定」のラジオボタンを選択してください。これにより、数値の表示形式を選択できます。

#### お金

数値に関する問題は、お金についても同様に適用されますが、それに加えて、通貨記号の表記方法には様々な慣習があります。例えば、ドルのように、同じ名称と記号を使用する通貨もありますが、オーストラリアドル、カナダドル、シンガポールドルはそれぞれ異なる通貨であり、それらは区別されるべきです。数値の扱いは上記のように行うことができますが、通貨名または記号を数値の前に置くか、後に置くかという問題は、翻訳プロセスの一部として扱われる可能性が高いです。

#### 住所

オンラインで購入する際、海外の企業から購入する顧客が直面する問題の一つは、システムが顧客が正確に住所を入力できない場合があることです。例えば、番地が道路名の前にあるか後にあるか、住所の構成要素の順番、郵便番号の形式など、様々な違いがあります。CEN（欧州標準化機構）は、住所の構成要素をリスト化した標準を開発しており、UPU（国際郵便連合）は、さらにこの標準を発展させ、氏名と住所の要素を網羅的にリスト化する取り組みを進めています。お客様が主なターゲット市場に必要な情報を収集するとともに、別の国からの顧客も住所を正確に入力できるようにすることをお勧めします。国名を選択できるドロップダウンリストを使用することで、住所の特定の要素が必要な場合にエラーチェックを行うことができます。ただし、住所の構造が不明な国では、誤ったエラーメッセージが表示されないように注意が必要です。

#### クレジットカード

一部の米国を拠点とするウェブサイトでは、米国以外のクレジットカードは利用できません。セキュリティチェックの一環として、有効な米国内の住所の登録を義務付けている場合があります。もしクレジットカード決済を受け付け、自国以外の顧客との取引を希望される場合は、海外発行のクレジットカードが利用可能かどうかを確認する必要があります。

#### RTL (右から左への表示)

多くの言語では、テキストは左から右へ読まれますが、これは決して普遍的なものではありません。アラビア語やヘブライ語は、右から左へ書かれます。XML文書では、XML要素は左から右へ読み込まれますが、テキストは右から左へ読む必要があります。ITS名前空間には、読み取り方向を指定するための属性があり、これを使用して適切な方向を特定できます。
<its:span dir="rtl"> 魚釣りは楽しい！ </its:span>

#### 分類

アルファベットの並び順には違いがあります。一部の北欧言語には「aa」という文字があり、通常はアルファベットの最後に並べられますが、必ずしもそうとは限りません。XMLドキュメントで言語設定を行い、XSLドキュメントで`xsl:sort`を使用している場合、その言語の並び順ルールに従って並び替えが機能するはずです。ただし、実際にそのように機能しているかを確認する必要があります。StyleVisionに付属しているサンプルファイルには、並び替えの例が含まれています。StyleVisionのサンプルを選択し、次に「チュートリアル」フォルダ、そして「並び替え」を選択して、ファイル「SortingOnTwoTextKeys.sps」を開きます。並び替えがどのように機能するかを確認するには、デザインビューに移動し、メンバー要素を右クリックします。次に、コンテキストメニューから「並び替え」のオプションを選択します。ここで、この特定のリストの並び替え方法を制御できます。

#### 感嘆符と疑問符

英語では、疑問符と感嘆符は常に文の最後に置かれますが、スペイン語では、これらの記号が文の最初と最後に現れることがあります。これは、翻訳の過程で通常修正される点です。

#### 結論

国際化は、アプリケーションの対象となるユーザー層を максимальноに広げ、翻訳作業をできる限り低コストかつ容易にする上で重要なステップです。この取り組みにおいては、現実的な視点を持つことが重要です。国際化に関する準備に初期段階で時間をかけることで、その後のプロセス全体で大きなメリットが得られ、製品のマーケティングポテンシャルを大幅に向上させることができます。この記事の目的は、国際化の概要を説明し、その概念を紹介することでした。以下に記載されている参考文献には、さらに役立つ情報が掲載されています。 

Altova MissionKitソフトウェアスイートに含まれるXMLSpyやStyleVisionといったツールは、XML文書の国際化プロセスを大幅に容易にするものであり、多くの組み込み機能によって国際化をサポートしています。W3Cが提供する国際化タグセット（ITS）は、国際化されたXMLアプリケーションを開発したい開発者にとって、非常に重要な革新であり、利用可能なツールキットに大きな貢献をしています。XMLは、その誕生から国際化と翻訳を考慮した技術です。XMLのデフォルトエンコーディングとしてUnicodeが採用されていることは非常に重要であり、国際化に関する問題に直面した場合でも、その解決を大きく助けます。Altova MissionKit、ITS、そしてUnicodeに搭載されている機能は、優れた国際化アプリケーションを開発するための基盤となります。 

**参照**
以下は、国際化に関する詳細情報を提供する、役立つウェブサイトおよびその他のリソースのリストです。
主要なXMLツールを提供する企業：Altova [https://www.altova.com/](https://www.altova.com/ja/)。
同社では、MissionKitの無料トライアルも提供しています：[https://www.altova.com/download](https://www.altova.com/ja/download)。 

Unicodeのウェブサイト：[http://www.unicode.org/](http://www.unicode.org/) 

国際化タグセット [http://www.w3.org/TR/2007/REC-its-20070403/](http://www.w3.org/TR/2007/REC-its-20070403/) 

W3Cにおける国際化に関する推奨事項 [http://www.w3.org/TR/2007/WD-xml-i18n-bp-20070427/](http://www.w3.org/TR/2007/WD-xml-i18n-bp-20070427/) 

Open Tag (イヴ・サヴレルのウェブサイト) [http://www.opentag.com/](http://www.opentag.com/) 

イヴ・サヴレルの著書「XMLの国際化とローカライズ」は、非常に優れた情報源です。詳細については、以下のウェブサイトをご覧ください：[http://www.opentag.com/xmli18nbook.htm](http://www.opentag.com/xmli18nbook.htm)

TM-Globalのウェブサイトは、翻訳、ローカライゼーション、および業界標準に関する多くの有益な記事、意見、調査結果などを掲載しています。[http://www.tm-global.com/](http://www.tm-global.com/) 

国際化の専門家であるテックス・テキシンのウェブサイト：[http://www.xencraft.com/](http://www.xencraft.com/) および [http://www.i18nguy.com/](http://www.i18nguy.com/) 

ローカリゼーションのプロセス – 国際化の専門家によるウェブサイト [http://www.locflowtech.com/](http://www.locflowtech.com/) 

費用対効果の高い、XMLベースの翻訳支援ツール（TEnTs）や翻訳ツールは、例えばKilgray Translation Technologies社（[http://www.kilgray.com/](http://www.kilgray.com/)）から提供されています
