Generating CodeMeta using declarative mapping rules: An open-ended approach using ShExML
GarcÃa-González
Nowadays, software is one of the cornerstones when conducting research in several scientific fields which employ computer-based methodologies to answer new research questions. However, for these experiments to be completely reproducible, research software should comply with the FAIR principles, yet its metadata can be represented following different data models and spread across different locations. In order to bring some cohesion to the field, CodeMeta was proposed as a vocabulary to represent research software metadata in a unified and standardised manner. While existing tools can help users to generate CodeMeta files for some specific use cases, they fall short on flexibility and adaptability. Hence, in this work, I propose the use of declarative mapping rules to generate CodeMeta files, illustrated through the implementation of three crosswalks in ShExML which are then expanded and merged to cover the generation of CodeMeta files for two existing research software artefacts. Moreover, the outputs are validated using SHACL and ShEx and the whole generation workflow is automated requiring minimal user intervention upon a new version release. This work can, therefore, be used as an example upon which other developers can include a CodeMeta generation workflow in their repositories, facilitating the adoption of CodeMeta and, ultimately, increasing research software FAIRness.
현재 소프트웨어는 컴퓨터 기반 방법론을 채택하는 여러 과학 분야의 연구 기초 중 하나이다. 그러나 이러한 실험의 완전한 재현성을 보장하기 위해서는 연구 소프트웨어가 FAIR 원칙을 준수해야 하지만, 그 메타데이터는 서로 다른 데이터 모델을 따르며 다양한 위치에 분산되어 있다. 이 분야에 응집력을 가져오기 위해 CodeMeta는 연구 소프트웨어 메타데이터를 통일되고 표준화된 방식으로 표현하기 위한 어휘로 제안되었다. 기존 도구들이 특정 사용 사례에 대해 CodeMeta 파일 생성을 지원할 수 있지만, 유연성과 적응성 측면에서 부족하다. 따라서 본 논문은 선언적 매핑 규칙을 사용하여 CodeMeta 파일을 생성하는 방법을 제안하며, ShExML에서 세 가지 교차 매핑을 구현하여 이를 설명한 후, 이러한 매핑을 확장하고 병합하여 두 개의 기존 연구 소프트웨어 아티팩트의 CodeMeta 파일 생성을 포함한다. 또한 SHACL과 ShEx를 사용하여 출력을 검증하고, 전체 생성 워크플로우를 자동화하여 새 버전 출시 시 최소한의 사용자 개입만 필요하다.
입력: 여러 이질적 메타데이터 제공자의 데이터 (GitHub API, Maven POM 파일, Zenodo 레코드 등)
출력: CodeMeta 3.0 사양을 준수하는 표준화된 JSON-LD 파일
제약 조건: 데이터 의미론적 무결성 유지, 자동화된 업데이트 지원, 출력 검증 통과 보장
논문은 FAIR 원칙, 의미론적 웹 기술, CodeMeta 사양, 선언적 매핑 언어 등 관련 분야의 중요한 연구를 포함한 37개의 참고문헌을 포함하고 있으며, 연구에 견고한 이론적 기초 및 기술적 지원을 제공한다.
종합 평가: 이는 연구 소프트웨어 메타데이터 관리 분야에서 실용적 가치를 갖는 기술 논문이며, 제안된 선언적 매핑 방법은 혁신성을 가지고 있고, 구현이 완전하며 재현 가능하며, CodeMeta 표준의 채택 촉진에 긍정적인 의미를 갖는다. 평가 범위와 깊이에서 개선의 여지가 있지만, 이 분야에 가치 있는 기술적 기여를 제공한다.