このプロジェクトは、XMLファイルをJSON形式に変換するための一連のスクリプトとツールを提供します。さまざまなXMLデータソースを使用するように設計されており、複数の変換モジュールをサポートする完全にカスタマイズ可能です。このプロジェクトは、ドキュメント、人、アーカイブなど、さまざまな種類のデータを処理するための個別のPythonモジュールに分割されています。
ソリューションには以下が含まれます。
convert/
archiveLinkConvert.py # Handles conversion of archive link XMLs
artworkConvert.py # Handles artwork XML data
commonConvert.py # Contains common conversion utilities
personConvert.py # Handles conversion of person-related XMLs
docs/
pictures/ # Picture documentation related to the project
Analyza_SP.md # Analysis related documentation
documentaria_rudolphina.md # Project-specific documentation
model/
ArchiveLink.py # Data model for archive links
Document.py # Data model for documents
Person.py # Data model for person records
scripts/
main_convert.py # Main script to execute conversion
.gitignore # Git ignore configuration
README.md # This documentation file このツールを使用するには、PythonとPIPがインストールされる必要があります。
次に、次のコマンドを実行します。
pip install -r requirements.txtこれにより、スクリプトを実行するために必要なライブラリをインストールします。次に、適切なオプションでmain_convert.pyスクリプトを実行するだけです。 XMLtoJSONディレクトリからプログラムを実行する主なコマンドは次のとおりです。
ヘルプ情報を表示:
python3 scripts/main_convert.py --helpまたは
python3 scripts/main_convert.py --hすべてのタイプのXMLファイルを変換します。
python3 scripts/main_convert.py --type all --input_path " path_for_input_data " --output_path " path_for_output_data "名前関連のXMLファイルを変換します:
python3 scripts/main_convert.py --type names --input_path " path_for_input_data " --output_path " path_for_output_data "レジスタ関連のXMLファイルを変換します:
python3 scripts/main_convert.py --type registers --input_path " path_for_input_data " --output_path " path_for_output_data "アーカイブ関連のXMLファイルを変換します:
python3 scripts/main_convert.py --type archive --input_path " path_for_input_data " --output_path " path_for_output_data "入力データフォルダーは、次のように構成する必要があります。
input_data/
Archiv/ # Archive-related XML files
Regesten/ # Register-related XML files
Namen/ # Name-related XML files
Indicies/ # Index-related XML files git clone https://github.com/VandlJ.git
cd XMLtoJSON変換を開始するには、メイン変換スクリプトを使用します。たとえば、すべてのXMLファイルを変換するには:
python3 scripts/main_convert.py --type all --input_path " ../test_data " --output_path " ../test_data/output "また、利用可能なすべてのオプションをチェックして、実行して詳細情報を取得することもできます。
python3 scripts/main_convert.py --helpこのコマンドは、指定された--input_pathディレクトリのXMLファイルの処理を開始し、結果を--output_pathディレクトリに出力します。
このプロジェクトは別のチームから継承され、その機能と信頼性を高めるためにいくつかの大幅な改善と修正を行いました。
エラー処理:テキストのインデントのためのスペース/空白文字 - Regestenファイル
display :このフィールドは、フロントエンドにテキストを表示するために使用され、読みやすさのために元のフォーマットを保持するようにします。processable :このフィールドには、コンピューター処理と分析用に最適化されたクリーンなバージョンのテキストが含まれています。メタデータ処理:Regestenの問題メタデータ
.pなどのメタデータ要素をキャプチャする際に矛盾がありました。いくつかの要素が欠落しているか、誤ってキャプチャされました。徹底的なレビューを実施し、すべてのメタデータ要素がプログラムの反復で正確にキャプチャおよび処理されるようにしました。インタラクティブ性の強化: onmouseover="highlightWords(event, '...')" onmouse on onmouseover = "を追加します
onmouseover属性が追加され、ホバリング時に単語を強調表示しました。処理されたデータには、次のものが含まれます。 "names" : [
{
"Aichholz_Johann" : " Johann Aichholz " ,
"alias" : " Johann Aichholz Ehrzney doctor "
},
{
"Strauben_Franz" : " Franz Strauben " ,
"alias" : " Frannzen Strauben "
}
]名前処理:外部ツールを介して名と姓を分割する-Gettyulan
変換のための統一されたメインスクリプト
--type 、 --input_path 、および--output_path指定できます。この変更により、実行が簡素化され、変換プロセスの柔軟性が向上します。ドキュメントとセットアップの指示を改善しました
パフォーマンスの向上とバグの修正
ArchIVタイプJSON出力の修正
hasSublink 、 linkTo 、およびnext_link変数の処理を修正しました。これにより、これらの変数がJSON出力で正確に表され、リンクされることが保証されます。これらの改善により、XMLからJSONコンバータープロジェクトの機能、使いやすさ、信頼性が大幅に向上し、より堅牢でユーザーフレンドリーになりました。