Google Summer of Code 2026 proposed ideas: Διαφορά μεταξύ των αναθεωρήσεων

Από Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση
Χωρίς σύνοψη επεξεργασίας
(adding new project idea "Unified SBOM Management via RDF Database Abstraction")
Γραμμή 59: Γραμμή 59:
Cheimarios Nikolaos, Vissarion Fysikopoulos
Cheimarios Nikolaos, Vissarion Fysikopoulos


== '''Unified SBOM Management via RDF Database Abstraction''' ==
==== Brief Explanation ====
Software Bill of Materials (SBOM) documents, specifically in the ISO standard SPDX format, are becoming the cornerstone of software supply chain security. As the volume of SBOM data grows, simple file-based storage is no longer sufficient for complex analysis and cross-referencing. This project aims to develop a suite of tools to ingest, store, and extract SPDX documents using RDF databases (Triplestores). By utilizing the triplestore Python library, these tools will remain database-agnostic, allowing users to seamlessly switch between backends like Apache Jena, AllegroGraph, Blazegraph, GraphDB, and Oxigraph without changing the codebase.
==== Background information ====
Triplestores are a type of database specialized in storing triples, a data structure for representing information in a subject-predicate-object format. They are crucial in semantic web technologies, such as RDF, SPARQL, and OWL. However, there are numerous triplestore alternatives available, each with its own strengths and weaknesses.
For GSoC 2025, a Python library abstracting some commonly used databases was developed.
SBOM data in SPDX format can be serialized in RDF, and therefore can be stored in such databases.
==== Project Description ====
The current SPDX ecosystem relies heavily on flat files (JSON, RDF/XML, or even Tag-Value for SPDXv2). While effective for transport, these files are difficult to query at scale—for example, when looking for a specific vulnerable component across thousands of SBOMs. Since SPDXv3 is natively based on an knowledge graph model, storing it in a RDF Triplestore is the most logical and powerful way to handle this data. However, different RDF databases have varying APIs and connection protocols.
This project will leverage the triplestore library (which provides a high-level Python abstraction) to build tools that:
- ''Ingest:'' Parse SPDX documents (multi-format support) and map them to the unified RDF store.
- ''Extract:'' Reconstruct valid SPDX documents from the database based on specific queries (e.g., "Export the SBOM for Project X version 1.2").
- ''Manage:'' Provide basic management functions like listing stored SBOMs, deleting old versions, and validating data integrity.
==== Expected Outcome ====
By the end of the project, we expect to have a number of well-documented tools that can operate on SBOM data. These will allow users to seemlessly move between SPDX documents and RDF databases.
An indicative list of tools and deliverables is:
- ''SBOM-to-Store Ingestor:'' A CLI tool to upload SPDX documents (v2 and v3) into any supported triplestore.
- ''Store-to-SBOM Exporter:'' A tool to query the database and output a standard-compliant SPDX file.
- ''Database Management Utilities:'' Tools for basic CRUD operations on the stored SBOM data.
- ''Test Suite:'' A comprehensive set of tests to verify the abstraction works.
- ''Documentation:'' User guide for the CLI tools and developer documentation for the API.
==== Duration of the Project ====
Long (350 hours)
==== Related Resources and Repositories ====
- https://github.com/eellak/triplestore
- https://github.com/spdx/tools-python
- https://github.com/RDFLib/rdflib
- https://spdx.github.io/spdx-spec
==== Knowledge Areas ====
Python3, RDF, SPARQL, SPDX specifications.
''Tip for your application:'' Study SPDX v3 (and v2): SPDX is heavily RDF-centric. Demonstrating knowledge of how 3.0 maps to triples will make your proposal stand out.
==== Mentors ====
Alexios Zavras




[[Κατηγορία:GSOC]]
[[Κατηγορία:GSOC]]

Αναθεώρηση της 20:53, 21 Ιανουαρίου 2026

Contributors interested to participate should check which of the following projects fits their interests and skills.

Τo communicate with the mentors and ask questions about the projects, students should subscribe to this list and post relevant questions. Please follow the Proposal Template

For practical information, developers should visit this page.

FOSSBot Platform: Simulation Enhancements and AI Integration

Brief Explanation

The FOSSBot Platform aims to enhance robotic simulation environments by integrating AI-driven capabilities and improving simulation realism. The project focuses on extending existing open-source robotic simulation tools with advanced features that support experimentation, education, and research in autonomous systems. Emphasis is placed on modularity, extensibility, and reproducibility within open-source ecosystems.

Expected Results

The expected outcomes include enhanced simulation modules, AI-assisted decision-making components, improved documentation, and example use cases. The project will deliver code contributions upstream, along with benchmarks and demonstrations showcasing the improvements in robotic simulation fidelity and usability.

Duration of the Project

Large Project - 350 hrs

Related Repositories

https://github.com/eellak/fossbot-platform https://github.com/eellak/fossbot https://fossbot.gr

Knowledge Prerequisites

Applicants should have good knowledge of JavaScript, Python, robotics simulation environments, and basic AI/ML concepts. Familiarity with open-source workflows and collaborative development is required.

Mentors

Christos Chronis, Eleftheria Papageorgiou, Irida Ntinou

AI assisted KMC

Brief Explanation

This project explores the integration of machine learning techniques into Kinetic Monte Carlo (KMC) simulations. The goal is to accelerate simulations and improve predictive accuracy by leveraging AI models trained on simulation data. The project targets scientific computing and materials science applications.

Expected Results

Deliverables include AI-augmented KMC algorithms, performance evaluations against traditional methods, and a reproducible pipeline for training and inference. Documentation and example experiments will accompany the final implementation.

Duration of the Project

Large Project - 350 hrs

Related Repositories

https://github.com/nixeimar/Apothesis

Knowledge Prerequisites

C++, working knowledge of machine learning techniques, numerical methods, and statistical modeling. Prior experience with scientific simulations is a plus.

Mentors

Cheimarios Nikolaos, Vissarion Fysikopoulos


Unified SBOM Management via RDF Database Abstraction

Brief Explanation

Software Bill of Materials (SBOM) documents, specifically in the ISO standard SPDX format, are becoming the cornerstone of software supply chain security. As the volume of SBOM data grows, simple file-based storage is no longer sufficient for complex analysis and cross-referencing. This project aims to develop a suite of tools to ingest, store, and extract SPDX documents using RDF databases (Triplestores). By utilizing the triplestore Python library, these tools will remain database-agnostic, allowing users to seamlessly switch between backends like Apache Jena, AllegroGraph, Blazegraph, GraphDB, and Oxigraph without changing the codebase.

Background information

Triplestores are a type of database specialized in storing triples, a data structure for representing information in a subject-predicate-object format. They are crucial in semantic web technologies, such as RDF, SPARQL, and OWL. However, there are numerous triplestore alternatives available, each with its own strengths and weaknesses. For GSoC 2025, a Python library abstracting some commonly used databases was developed.

SBOM data in SPDX format can be serialized in RDF, and therefore can be stored in such databases.

Project Description

The current SPDX ecosystem relies heavily on flat files (JSON, RDF/XML, or even Tag-Value for SPDXv2). While effective for transport, these files are difficult to query at scale—for example, when looking for a specific vulnerable component across thousands of SBOMs. Since SPDXv3 is natively based on an knowledge graph model, storing it in a RDF Triplestore is the most logical and powerful way to handle this data. However, different RDF databases have varying APIs and connection protocols.

This project will leverage the triplestore library (which provides a high-level Python abstraction) to build tools that:

- Ingest: Parse SPDX documents (multi-format support) and map them to the unified RDF store.

- Extract: Reconstruct valid SPDX documents from the database based on specific queries (e.g., "Export the SBOM for Project X version 1.2").

- Manage: Provide basic management functions like listing stored SBOMs, deleting old versions, and validating data integrity.

Expected Outcome

By the end of the project, we expect to have a number of well-documented tools that can operate on SBOM data. These will allow users to seemlessly move between SPDX documents and RDF databases.

An indicative list of tools and deliverables is:

- SBOM-to-Store Ingestor: A CLI tool to upload SPDX documents (v2 and v3) into any supported triplestore.

- Store-to-SBOM Exporter: A tool to query the database and output a standard-compliant SPDX file.

- Database Management Utilities: Tools for basic CRUD operations on the stored SBOM data.

- Test Suite: A comprehensive set of tests to verify the abstraction works.

- Documentation: User guide for the CLI tools and developer documentation for the API.

Duration of the Project

Long (350 hours)

Related Resources and Repositories

- https://github.com/eellak/triplestore

- https://github.com/spdx/tools-python

- https://github.com/RDFLib/rdflib

- https://spdx.github.io/spdx-spec

Knowledge Areas

Python3, RDF, SPARQL, SPDX specifications.

Tip for your application: Study SPDX v3 (and v2): SPDX is heavily RDF-centric. Demonstrating knowledge of how 3.0 maps to triples will make your proposal stand out.

Mentors

Alexios Zavras