Skip to content

Commit 2b71e71

Browse files
authored
Update README.md
1 parent 8899dea commit 2b71e71

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

README.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
11
# Arabic Lexemes Analysis Tool
22

3-
A comprehensive web application for analyzing, comparing, and managing Arabic lexical data from Wikidata with integration to the Arabic Ontology. [1](#0-0)
3+
A comprehensive web application for analyzing, comparing, and managing Arabic lexical data from Wikidata with integration to the Arabic Ontology.
44

55
## Features
66

77
### Lexical Analysis
8-
- **Morphological Analysis**: Interactive lexeme analysis with morphological table generation [2](#0-1)
9-
- **Autocomplete Search**: Real-time search with Wikidata integration [3](#0-2)
10-
- **Category Support**: Analysis for adjectives (Q34698), verbs (Q24905), nouns (Q1084), and roots (Q111029) [4](#0-3)
8+
- **Morphological Analysis**: Interactive lexeme analysis with morphological table generation
9+
- **Autocomplete Search**: Real-time search with Wikidata integration
10+
- **Category Support**: Analysis for adjectives (Q34698), verbs (Q24905), nouns (Q1084), and roots (Q111029)
1111

1212
### Data Management
13-
- **Lexeme Listing**: Browse and filter lexemes by category with pagination [5](#0-4)
14-
- **Recent Lexemes**: View newest additions to the Arabic lexeme database [6](#0-5)
15-
- **Tree Visualization**: Hierarchical display of lexical data with grouping options [7](#0-6)
13+
- **Lexeme Listing**: Browse and filter lexemes by category with pagination
14+
- **Recent Lexemes**: View newest additions to the Arabic lexeme database
15+
- **Tree Visualization**: Hierarchical display of lexical data with grouping options
1616

1717
### Quality Control
18-
- **Duplicate Detection**: Identify and compare duplicate lexical entries [8](#0-7)
19-
- **Side-by-Side Comparison**: Compare multiple lexemes with detailed property analysis [9](#0-8)
20-
- **Arabic Ontology Integration**: Track P11038 property connections and synchronization status [10](#0-9)
18+
- **Duplicate Detection**: Identify and compare duplicate lexical entries
19+
- **Side-by-Side Comparison**: Compare multiple lexemes with detailed property analysis
20+
- **Arabic Ontology Integration**: Track P11038 property connections and synchronization status
2121

2222
### Data Visualization
23-
- **Statistical Charts**: Visual representation of lexical category distributions [11](#0-10)
24-
- **Performance Metrics**: Real-time query execution timing and data counts [12](#0-11)
23+
- **Statistical Charts**: Visual representation of lexical category distributions
24+
- **Performance Metrics**: Real-time query execution timing and data counts
2525

2626
## Architecture
2727

2828
### Frontend Components
29-
- **PHP Templates**: Jinja2-based template system extending `main.php` base template [13](#0-12)
30-
- **JavaScript Modules**: Modular client-side processing for SPARQL queries and data visualization [14](#0-13)
31-
- **Bootstrap UI**: Responsive design with Arabic language support and RTL layout [15](#0-14)
29+
- **PHP Templates**: Jinja2-based template system extending `main.php` base template
30+
- **JavaScript Modules**: Modular client-side processing for SPARQL queries and data visualization
31+
- **Bootstrap UI**: Responsive design with Arabic language support and RTL layout
3232

3333
### Backend Systems
34-
- **Flask Application**: Python web framework handling routing and template rendering [16](#0-15)
35-
- **Database Integration**: MySQL database operations for lexeme storage and P11038 property management [17](#0-16)
36-
- **SPARQL Integration**: Direct queries to Wikidata SPARQL endpoint with result processing [18](#0-17)
34+
- **Flask Application**: Python web framework handling routing and template rendering
35+
- **Database Integration**: MySQL database operations for lexeme storage and P11038 property management
36+
- **SPARQL Integration**: Direct queries to Wikidata SPARQL endpoint with result processing
3737

3838
### Automated Synchronization
39-
- **Scheduled Jobs**: Hourly synchronization with Wikidata using Toolforge job scheduler [19](#0-18)
40-
- **Data Processing**: Automated detection of new lexemes and P11038 property updates [20](#0-19)
39+
- **Scheduled Jobs**: Hourly synchronization with Wikidata using Toolforge job scheduler
40+
- **Data Processing**: Automated detection of new lexemes and P11038 property updates
4141

4242
## Key Technologies
4343

@@ -48,7 +48,7 @@ A comprehensive web application for analyzing, comparing, and managing Arabic le
4848

4949
## Data Flow
5050

51-
The application processes Arabic lexical data through a multi-stage pipeline: [21](#0-20)
51+
The application processes Arabic lexical data through a multi-stage pipeline:
5252

5353
1. **Data Retrieval**: SPARQL queries fetch lexeme data from Wikidata
5454
2. **Processing**: Client-side JavaScript transforms and groups results by category
@@ -59,27 +59,27 @@ The application processes Arabic lexical data through a multi-stage pipeline: [2
5959

6060
### Development Environment Setup
6161

62-
The system requires Python 3.11 with Flask and MySQL dependencies. [1](#1-0) Development setup includes:
62+
The system requires Python 3.11 with Flask and MySQL dependencies. Development setup includes:
6363

6464
- **Virtual Environment**: Python virtual environment with requirements installation
65-
- **Database Schema**: MySQL database with UTF8MB4 encoding for Arabic text support [2](#1-1)
66-
- **Testing Framework**: Unit tests for database operations and data validation [3](#1-2)
65+
- **Database Schema**: MySQL database with UTF8MB4 encoding for Arabic text support
66+
- **Testing Framework**: Unit tests for database operations and data validation
6767

6868
### Deployment Process
6969

70-
The deployment system uses automated shell scripts for code updates and service management: [4](#1-3)
70+
The deployment system uses automated shell scripts for code updates and service management:
7171

7272
**Deployment Pipeline**:
7373
1. **Backup Creation**: Current source code backed up with timestamp
7474
2. **Git Clone**: Fresh repository clone from specified branch
7575
3. **Dependency Installation**: Virtual environment activation and pip install
7676
4. **Service Restart**: Automatic Python 3.11 webservice restart
7777

78-
The deployment script includes error handling with automatic rollback to previous backup if deployment fails. [5](#1-4)
78+
The deployment script includes error handling with automatic rollback to previous backup if deployment fails.
7979

8080
### Data Operations
8181

82-
**Bulk Data Ingestion**: The `insert_all.py` script handles large-scale data imports from JSON datasets with batch processing (100 records per batch) and duplicate detection. [6](#1-5)
82+
**Bulk Data Ingestion**: The `insert_all.py` script handles large-scale data imports from JSON datasets with batch processing (100 records per batch) and duplicate detection.
8383

8484
**Database Maintenance**:
8585
- Schema management through SQL scripts for both MySQL and SQLite environments
@@ -88,15 +88,15 @@ The deployment script includes error handling with automatic rollback to previou
8888

8989
### Monitoring and Performance
9090

91-
The system includes comprehensive performance monitoring: [7](#1-6)
91+
The system includes comprehensive performance monitoring:
9292

9393
- **Request Timing**: Flask middleware tracks total request processing time
9494
- **Database Performance**: Individual query execution times measured and reported
95-
- **SPARQL Performance**: External API call timing for Wikidata integration [8](#1-7)
95+
- **SPARQL Performance**: External API call timing for Wikidata integration
9696

9797
### Testing and Quality Assurance
9898

99-
The testing framework includes database operation validation and data integrity checks: [9](#1-8)
99+
The testing framework includes database operation validation and data integrity checks:
100100

101101
- **Unit Tests**: Database insertion and selection operations testing
102102
- **Data Validation**: Automated checks for lemma consistency and P11038 property synchronization

0 commit comments

Comments
 (0)