Bilkent University
Department of Computer Engineering




Umut Utku Çalış
MS Student
(Supervisor: Prof. Dr. Uğur Doğrusöz)
Computer Engineering Department
Bilkent University

Graph visualization is a research field where relational information is graphically represented in the form of graphs or networks. It is applicable in numerous areas from computer network systems, to biology, to software engineering. In such areas, graph visualization techniques provide effective visual analysis of graph based data. Systems Biology Graphical Notation (SBGN) facilitates a standard model for representing biological entities and their interactions by using graph visualization. SBGN-ML is an XML based format for keeping information about SBGN maps. libSBGN enables writing and reading SBGN-ML files in an easy manner and is meant to bring syntactic and semantic validation to SBGN maps. It is currently available in Java/C++ (libSBGN) and JavaScript (libSBGN.js) programming languages with varying support for aforementioned.

libSBGN enables important syntactic and semantic correctness concepts for manipulating SBGN maps and converting SBGN-ML files into several other formats. Syntactic validation of SBGN-ML files involves using a simple XML Schema Denition (XSD) file. This validation checks whether files are in correct form or not. However, this XSD file does not enable checking against semantic rules. For semantic validation of such files, the Schematron language was developed providing higher level semantic rule controls.

With this thesis, we first enabled high level semantic validation (schematron validation) of SBGN maps in libSBGN.js, which uses XSLT and transformation of process description maps in SBGN-ML files. By using Schematron rules which are written in XPath syntax and enabling human-readable messages of validation errors and source of errors, we developed an XSLT stylesheet. We obtained validation result report by transforming SBGN-ML files using this XSLT stylesheet. In the JavaScript version of libSBGN library, we used a web based XSLT processor for transformation; hence, this library is now available for providing schematron validation in any SBGN related software. Furthermore, we added schematron validation checks to Newt, a web based SBGN pathway editor, using the updated libSBGN.js library. With this addition, Newt is now able to show validation results not only in a human-readable message text for the current map but also highlights the invalid map objects graphically, and, where appropriate, suggests a way to fix the problem automatically.


DATE: 11 September 2019, Wednesday @ 13:40