How ikhwan-arief/doajpreassessment works
DOAJ Pre-Assessment is an OJS 3.3 plugin that gathers public-site and OJS-published-content evidence, evaluates it with deterministic rules, and presents findings and corrective actions. Users enter through the OJS backend, pass access and English-only acknowledgement gates, then run an assessment; they can review history, manage corrective actions, and export reports. The README documents major capabilities, while sampled excerpts show only portions of the handler, crawl, assessment, and reporting paths; edges based on product-level behavior cite the README.
Main entry points: DoajPreAssessmentHandler.inc.php Backend handler · DoajPaCrawlService.inc.php Website crawl · DoajPaDb.inc.php Plugin database · DoajPaAssessmentOrchestrator.inc.php Assessment orchestrator
Components 25
OJS access
- Plugin entry
DoajPreAssessmentPlugin.inc.php - Backend handler
pages/DoajPreAssessmentHandler.inc.php - Access policy
classes/auth/DoajPaAccessPolicy.inc.php - Role lookup
classes/auth/DoajPaRoleQuery.inc.php - English acknowledgement
classes/gate/DoajPaEnglishGate.inc.php
Evidence collection
- Website crawl
classes/services/DoajPaCrawlService.inc.php - HTTP crawl controls
classes/crawler - OJS content source
classes/crawler/DoajPaBackendSource.inc.php - HTML and PDF extraction
classes/extract
Assessment engine
- Assessment runs
classes/services/DoajPaAssessmentRunService.inc.php - Assessment orchestrator
classes/framework/DoajPaAssessmentOrchestrator.inc.php - Evidence context
classes/framework/DoajPaEvaluationContext.inc.php - Deterministic checks
classes/rules/DoajPaChecks.inc.php - Criteria datasets
classes/rules/data/DoajPaApprovedDataset.inc.php
History and actions
- Plugin database
classes/persistence/DoajPaDb.inc.php - Run history and diffs
classes/history/DoajPaLifecycle.inc.php - Corrective actions
classes/services/DoajPaCorrectiveActionService.inc.php
Review and reports
- Read views
classes/services/DoajPaReadService.inc.php - Report model and plan
classes/reports/DoajPaReportModel.inc.php - Report export
classes/services/DoajPaReportExportService.inc.php - HTML PDF DOCX
classes/reports
Other components
- Journal user
- OJS database
- Journal website
- Poppler optional
Connections 26
- Journal user → Plugin entry: opens in OJS
README.md - Plugin entry → Backend handler: routes requests
README.md - Backend handler → Access policy: checks authorization
pages/DoajPreAssessmentHandler.inc.php - Access policy → Role lookup: looks up roles
classes/auth/DoajPaRoleQuery.inc.php - Backend handler → English acknowledgement: requires acknowledgement
pages/DoajPreAssessmentHandler.inc.php - Backend handler → Website crawl: starts crawl
README.md - Website crawl → HTTP crawl controls: fetches scoped pages
README.md - HTTP crawl controls → Journal website: reads public pages
README.md - Website crawl → OJS content source: collects published content
README.md - OJS content source → OJS database: reads journal content
README.md - Website crawl → HTML and PDF extraction: extracts page and PDF text
README.md - HTML and PDF extraction → Poppler optional: may use
README.md - Backend handler → Assessment runs: starts assessment run
README.md - Backend handler → Assessment orchestrator: requests assessment
README.md - Assessment orchestrator → Evidence context: prepares evidence context
classes/framework/DoajPaAssessmentOrchestrator.inc.php - Assessment orchestrator → Deterministic checks: evaluates criteria
README.md - Deterministic checks → Criteria datasets: applies criteria
README.md - Assessment runs → Plugin database: stores run evidence
classes/services/DoajPaAssessmentRunService.inc.php - Run history and diffs → Plugin database: tracks run lifecycle
README.md - Corrective actions → Plugin database: stores action register
README.md - Backend handler → Read views: loads form guide
pages/DoajPreAssessmentHandler.inc.php - Read views → Plugin database: reads assessment history
README.md - Backend handler → Corrective actions: manages corrections
README.md - Backend handler → Report export: requests report export
README.md - Report export → Report model and plan: builds report content
README.md - Report model and plan → HTML PDF DOCX: renders common model
classes/reports/DoajPaReportModel.inc.php