ALTO (Analyzed Layout and Text Object) XMLについて
概要
ALTO (Analyzed Layout and Text Object) XMLについて、GPT-4に問い合わせた結果を共有します。
必須項目
ALTO (Analyzed Layout and Text Object) XMLは、OCR生成テキストとそのレイアウトを表現するためのXMLスキーマです。その構造は非常に柔軟で、多くの要素と属性が存在しますが、必須の要素は限られています。
最も単純な形式のALTO XMLは、以下のような階層構造を持ちます:
-
<alto>
: ルート要素です。ALTO XMLスキーマのバージョンを示す@xmlns
属性と@xmlns:xsi
属性を持つ必要があります。また、<Description>
と<Layout>
という二つの子要素を持つ必要があります。 -
<Description>
: ファイルのメタデータを含みます。この要素自体に必須の子要素はありませんが、通常、<MeasurementUnit>
,<sourceImageInformation>
や<OCRProcessing>
などの子要素を含むでしょう。 -
<Layout>
: ファイルの物理的なレイアウトを表現します。これは<Page>
という子要素を1つ以上含む必要があります。 -
<Page>
: 一つのページを表現します。この要素は@ID
と@WIDTH
と@HEIGHT
という三つの必須属性を持つべきです。また、<PrintSpace>
という子要素を1つ持つことができます。
上記の要素はALTO XMLの最も基本的な構造を表現していますが、テキストの内容やそのレイアウトを詳細に表現するためには、さらに多くの要素と属性を使用することが可能です。例えば、<PrintSpace>
, <TextBlock>
, <TextLine>
, <String>
などの要素を使用することで、テキストの物理的な配置や内容を詳細に表現することができます。それぞれの要素や属性の詳細については、ALTO XMLスキーマのドキュメンテーションを参照してください。
OCRProcessing
要素
OCRProcessing
要素は、ALTO XML内の<Description>
エレメント内で使用されます。この要素は、特定のOCRプロセスに関する情報を格納します。それは以下のサブ要素を持つことができます:
-
ocrProcessingStep
: OCR処理の各ステップを記述します。この要素はprocessingDateTime
,processingAgency
,processingSoftware
,processingStepSettings
,processingStepDescription
といった属性を持つことができます。
以下に、OCRProcessingエレメントの使用例を示します:
<Description>
...
<OCRProcessing ID="OCR1">
<ocrProcessingStep>
<processingDateTime>2023-08-01T00:00:00</processingDateTime>
<processingAgency>Agency Name</processingAgency>
<processingSoftware>
<softwareCreator>Software Creator Name</softwareCreator>
<softwareName>Software Name</softwareName>
<softwareVersion>Software Version</softwareVersion>
</processingSoftware>
<processingStepSettings>Settings</processingStepSettings>
<processingStepDescription>Description of the processing step</processingStepDescription>
</ocrProcessingStep>
</OCRProcessing>
...
</Description>
ここで、processingDateTime
はOCR処理が行われた日時を表し、processingAgency
はその処理を行った機関名を表します。processingSoftware
はOCR処理に使用されたソフトウェアに関する情報を含み、processingStepSettings
とprocessingStepDescription
はそれぞれ設定と処理手順の説明を提供します。
このようにして、OCRProcessing
要素を使用することで、OCR処理に関する詳細な情報をALTO XML内に格納することができます。
まとめ
誤りなど含む可能性がありますが、参考になりましたら幸いです。
Discussion