Skip to content
Diana Carcea edited this page Jan 13, 2026 · 9 revisions

ArP – Artwork Provenance

Tags: project, infoiasi, wade, web

Overview

ArP (Artwork Provenance) is a semantic web platform developed as part of the WADe course at the Faculty of Computer Science, Iași. The application manages and explores the provenance of artistic works using Linked Open Data technologies.

It transitions Romanian national heritage data from a siloed existence to an active node in the Semantic Web, integrating local records (CIMEC) with global knowledge bases (Wikidata, Getty Vocabularies).

Team

  • Team name: ArtSynergy
  • Members: Carcea Diana, Carcea Răzvan

Contributions

Carcea Diana

  • Role: Full-Stack Developer & Semantic Data Engineer
  • Key Contributions:
    1. Designed the ARP Ontology, extending W3C PROV-O to model the Entity-Activity-Agent triad.
    2. Implemented the ETL Pipeline (LidoToTtlConverter) to transform legacy LIDO XML files into valid RDF/Turtle.
    3. Implemented the SPARQL Endpoint and the transactional data access layer using Apache Jena.
    4. Developed the ArP Query Service (Frontend SPA) and the dynamic JavaScript logic for visualizing SPARQL results in a user-friendly table format.
    5. Authored the Technical Report and User Guide.

Carcea Răzvan

  • Role: Backend Developer & Integration Specialist
  • Key Contributions:
    1. Designed the Hybrid Spring Boot Architecture (MVC + REST API) ensuring scalability.
    2. Developed the Knowledge Reconciliation modules (GettyFetcher, WikidataMuseumFetcher) to link local entities to global vocabularies (Wikidata, AAT, ULAN).
    3. Designed and implemented the Semantic Recommendation Engine (calculating related artworks by museum, category, or artist).
    4. Configured the OpenAPI (Swagger) documentation integration.
    5. Authored the Technical Report and User Guide.

Project Status

  • Project proposal defined
  • Repository and Wiki created
  • System architecture designed (Spring Boot Hybrid MVC)
  • RDF knowledge model implemented (PROV-O extension)
  • SPARQL endpoint available (with predefined queries)
  • Web application implemented and tested
  • Deployment ready

Deliverables

1. Public Project Wiki

  • Description: This Wiki documents the project evolution and serves as the main entry point for all deliverables.
  • Status: Completed
  • Location: This Wiki

2. System Architecture and Design Documentation

  • Description: The ArP platform follows a Hybrid Spring MVC Architecture, designed to serve both human users (via HTML/Thymeleaf) and automated clients (via REST/JSON). The system is built upon Spring Boot and uses Apache Jena as an embedded Semantic Knowledge Graph. The architecture is documented using the C4 Model approach to visualize the system at different levels of abstraction.

  • Artifacts:

    Click to view C4 Diagrams

    Level 1: System Context

    Illustrates the ArP Digital Catalog within the ecosystem of Web Visitors, Developers, and External Data Sources (Wikidata, Getty).

    System Context Diagram

    Level 2: Container Diagram

    Shows the high-level execution units: Spring Boot App, RDF File Storage, In-Memory Jena Graph, and ETL Modules. Container Diagram

    Level 3: Component Diagram (Backend)

    Details the internal Spring Boot components: Web vs. API Controllers, Services, and Repositories. Container Diagram

    Level 4: Class Diagram (Domain Model)

    Shows the Java class hierarchy, including Entities (Artist, Artwork), Controllers, and the ETL Fetchers used for data ingestion. Class Diagram

  • Status: Completed

  • Location: Detailed explanation available in Technical Report - Chapter 5

3. API Specification

  • Description: Formal specification of the application REST API (OpenAPI 3.0), generated via springdoc-openapi. Includes detailed schemas for Artists and Artworks, along with pragmatic usage examples.

  • Artifacts:

    Click to view Swagger UI Interface

    The interactive documentation allowing developers to test endpoints (Artist API, Artwork API, SPARQL) directly in the browser. OpenAPI Definition

  • Status: Implemented

  • Location: Interactive UI available at http://localhost:8080/swagger-ui.html (when running locally)

4. Technical Report (Scholarly HTML)

  • Description: Comprehensive technical report describing data models, APIs, RDF knowledge modeling, SPARQL queries, and Linked Data compliance.
  • Status: Completed
  • Location: Read Technical Report

5. User Guide (Scholarly HTML)

  • Description: A comprehensive manual formatted in Scholarly HTML, detailing the application's interface, features (Artist Catalog, Provenance View), and usage scenarios (including SPARQL querying).
  • Status: Completed
  • Location: Read User Guide | Watch Video Demo

6. Deployed Web Application

  • Description: The fully implemented Spring Boot solution. The application is configured for local deployment via the embedded Tomcat server.
    • Entry Point: To run the application, execute the main class: src/main/java/com/example/backend/BackendApplication.java.
    • Access: Once started, the web interface is available at http://localhost:8080.
  • Status: Completed
  • Location: View Source Code Root

External Data Sources & Standards

The project pragmatically integrates the following sources and standards to ensure interoperability and semantic richness:

  • CIMEC (LIDO XML): The primary source for Romanian heritage metadata, ingested and transformed into RDF.
  • Wikidata: Used for enriching artist biographies (via SPARQL federation) and fetching international artwork details.
  • Getty Vocabularies (AAT, ULAN, TGN): Used for standardizing materials, categories, and museum identities via skos:exactMatch links.
  • PROV-O: The W3C standard ontology used for modeling the provenance history (creation, transfer, acquisition) of the artworks.

Development & Architecture

The solution is built upon a Spring Boot backend acting as a bridge between the Apache Jena semantic store and the client.

It exposes a dual-interface architecture:

  1. Human-Friendly: A server-side rendered HTML interface using Thymeleaf.
  2. Machine-Readable: A RESTful API returning JSON and a compliant SPARQL endpoint.

This design ensures strict compliance with Linked Data principles, allowing both browser-based exploration and programmatic consumption of the knowledge graph.