이 프로젝트는 XML 파일을 JSON 형식으로 변환하기위한 스크립트 및 도구 세트를 제공합니다. 다양한 XML 데이터 소스와 함께 작동하도록 설계되었으며 여러 전환 모듈을 지원하는 완전히 사용자 정의 할 수 있습니다. 이 프로젝트는 문서, 사람 및 아카이브를 포함하여 다양한 종류의 데이터를 처리하기 위해 별도의 파이썬 모듈로 나뉩니다.
솔루션에는 다음이 포함됩니다.
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 이 도구를 사용하려면 파이썬과 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 디렉토리로 출력합니다.
이 프로젝트는 다른 팀으로부터 물려 받았으며 기능과 신뢰성을 향상시키기 위해 몇 가지 중대한 개선과 수정을했습니다.
오류 처리 : 텍스트의 압입을위한 공백/빈 문자 - 레슬 턴 파일에서
display :이 필드는 프론트 엔드에 텍스트를 표시하는 데 사용되며 가독성을 위해 원래 형식을 유지합니다.processable :이 필드에는 컴퓨터 처리 및 분석에 최적화 된 텍스트의 더 깨끗한 버전이 포함되어 있습니다.메타 데이터 처리 : Regesten의 문제 메타 데이터
.p 와 같은 메타 데이터 요소를 캡처하는 데 불일치가있었습니다. 일부 요소는 누락되거나 잘못 캡처되었습니다. 우리는 철저한 검토를 수행했으며 이제 모든 메타 데이터 요소가 프로그램 반복에서 정확하게 캡처되고 처리되도록 보장했습니다. 향상된 상호 작용 : regesten에서 onmouseover="highlightWords(event, '...')" 정보 추가
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 변환기 프로젝트의 기능, 유용성 및 신뢰성이 크게 향상되어보다 강력하고 사용자 친화적입니다.