Skip to main content

Welcome to Sistema de Envío de Encomiendas

A powerful microservices architecture that combines traditional REST APIs with semantic web technologies to provide intelligent package shipping management and advanced search capabilities.

Quick Start

Get up and running in minutes with our step-by-step guide

Architecture

Understand the system’s microservices architecture

API Reference

Explore the complete API documentation

Semantic Search

Learn about natural language search capabilities

Key Features

RESTful API

Complete package shipment management with tracking, status updates, and multi-branch support

Semantic Web Integration

Apache Jena-powered semantic graph with OWL ontology modeling

Natural Language Search

Query shipments using natural language with automatic SPARQL generation

Automated Synchronization

Real-time synchronization between relational database and semantic graph

System Overview

The system consists of two main microservices:

Shipment Service (svc-envio-encomienda)

Manages the core business logic for package shipping operations:
  • Create and track shipments
  • Update shipment status through lifecycle
  • Assign vehicles to shipments
  • Manage client and branch office data
  • MySQL database with JPA/Hibernate

Semantic Web Service (svc-web-semantica)

Provides intelligent querying and semantic data management:
  • Natural language search processing
  • SPARQL query execution
  • RDF/OWL triple store management
  • Apache Jena TDB2 database
  • Automated semantic graph synchronization

Use Cases

Create shipments, assign them to vehicles, track their progress through different states (PENDING, EN_TRANSITO, DISPONIBLE, ENTREGADO), and manage pickups with secure delivery passwords.
Manage shipments across multiple branch offices with origin and destination tracking, enabling inter-city package delivery operations.
Execute custom SPARQL queries to analyze shipment patterns, customer behavior, and operational metrics using the semantic graph.

Technology Stack

  • Backend Framework: Spring Boot 3.5.11
  • Database: MySQL (relational), Apache Jena TDB2 (semantic)
  • Semantic Web: Apache Jena 4.10.0, OWL ontologies, SPARQL
  • Build Tool: Maven
  • Java Version: 25
  • Architecture: Microservices with OpenFeign for inter-service communication

Next Steps

1

Set up the environment

Follow the setup guide to configure MySQL, install dependencies, and prepare both microservices.
2

Run the quickstart

Complete the quickstart tutorial to create your first shipment and test semantic search.
3

Explore the API

Review the API documentation to understand all available endpoints.
4

Learn semantic search

Dive into semantic search capabilities to leverage natural language queries.

Build docs developers (and LLMs) love