Topic Map-Based Holy Quran Index

Similar documents
Graphical Notation for Topic Maps (GTM)

Representing Software Traceability using UML and XTM with an investigation into Traceability Patterns

Metamorphosis An Environment to Achieve Semantic Interoperability with Topic Maps

UNIVERSITY OF OSLO Department of Informatics. Topic Map for Authentic Travel. Master thesis. Atle Wandsvik & Mehdi Zare

Topic Map Aided Publishing

ETM Toolkit: A Development Tool Based On Extended Topic Map

COMP9321 Web Application Engineering

COMP9321 Web Application Engineering

BIBLID (2004) 93:1 pp (2004.6) 209. NBINet NBINet 92

0. Table of content Preface The management of knowledge and topic maps

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML Metadata Standards and Topic Maps

Automated Classification. Lars Marius Garshol Topic Maps

A web application serving queries on renewable energy sources and energy management topics database, built on JSP technology

Comparing Topic Maps Constraint Specification Languages

TMQL Getting started

Topic Maps Constraint Specification Languages: comparing AsTMa!, OSL, and XTche

A tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial.

Building Web Applications with SAS AppDev Studio TM 3.0

Introduction to Topic Maps

Using UML To Define XML Document Types

TMQL Getting started

SECTION II: JAVA SERVLETS

Providing a sophisticated TM software tool to support development of a TM-based system for managing melanoma cases images

Harvesting Topic Maps with XSLT

Using Web Services to put Metamorphosis on the Web

Improved Methods for Tagging and Semantic-Annotation for the Semantic-based OpenAPI Retrieval System *

Information management - Topic Maps visualization

UNIT I. A protocol is a precise set of rules defining how components communicate, the format of addresses, how data is split into packets

Topic Maps Reference Model,

.. Cal Poly CPE/CSC 366: Database Modeling, Design and Implementation Alexander Dekhtyar..

Chapter 13 XML: Extensible Markup Language

Introduction to XML. XML: basic elements

JAVA. Duration: 2 Months

(800) Toll Free (804) Fax Introduction to Java and Enterprise Java using Eclipse IDE Duration: 5 days

TMRA 05 Application framework based on Topic Maps

Engineering education knowledge management based on Topic Maps

Java SE7 Fundamentals

EMC Documentum xdb. High-performance native XML database optimized for storing and querying large volumes of XML content

Developing a Basic Web Page

CHAPTER 5 SEARCH ENGINE USING SEMANTIC CONCEPTS

A semantic integration methodology

Knowledge maps for composite e-services: A mining-based system platform coupling with recommendations

The XML Metalanguage

XML for Java Developers G Session 2 - Sub-Topic 1 Beginning XML. Dr. Jean-Claude Franchitti

Course Design, Representation and Browser for Web Based Education

Chapter 1: Getting Started. You will learn:

Compilers Project Proposals

XML-based Event Notification System for Large Scale. Distributed Virtual Environment

Proposal for Implementing Linked Open Data on Libraries Catalogue

Distributed Multitiered Application

COURSE DETAILS: CORE AND ADVANCE JAVA Core Java

Metadata for Digital Collections: A How-to-Do-It Manual. Introduction to Resource Description and Dublin Core

COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web

Managing TEX Resources with XML Topic Maps

IT6503 WEB PROGRAMMING. Unit-I

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

Chapter 2 FEATURES AND FACILITIES. SYS-ED/ Computer Education Techniques, Inc.

DCMI Abstract Model - DRAFT Update

Comp 336/436 - Markup Languages. Fall Semester Week 2. Dr Nick Hayward

Teiid Designer User Guide 7.5.0

Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.

Chapter 13. Application Architecture and Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

Authoring and Maintaining of Educational Applications on the Web

Document Clustering based on Topic Maps

Incorporating Topic Map Technology in a 3-Tiered Web Based Educational System

x ide xml Integrated Development Environment Specifications Document 1 Project Description 2 Specifi fications

Introduction to XML. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University

DEVELOPING TIME-SENSITIVE HYPERTEXT LINKING AND NAVIGATION SUPPORT

From SGML to HTML and back. From SGML to HTML

Advanced Java Programming

Beginning To Define ebxml Initial Draft

Introduction to XML 3/14/12. Introduction to XML

I R TECHNICAL RESEARCH REPORT. An XML-Based Approach to Integrating Semiconductor Process Information. by Jing Chen, Raymond A. Adomaitis TR

Objectives. Introduction to HTML. Objectives. Objectives

Everyday Activity. Course Content. Objectives of Lecture 13 Search Engine

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 14 Database Connectivity and Web Technologies

DESIGN AND IMPLEMENTATION OF TOOL FOR CONVERTING A RELATIONAL DATABASE INTO AN XML DOCUMENT: A REVIEW

[MS-PICSL]: Internet Explorer PICS Label Distribution and Syntax Standards Support Document

JENA: A Java API for Ontology Management


SYLLABUS JAVA COURSE DETAILS. DURATION: 60 Hours. With Live Hands-on Sessions J P I N F O T E C H

Types of Databases. Types of Databases. Types of Databases. Databases and Web. Databases and Web. Relational databases may also have indexes

Comparing Topic Maps Constraint Specification Languages

Features and Requirements for an XML View Definition Language: Lessons from XML Information Mediation

Web Application Development Using Spring, Hibernate and JPA

FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar

1.264 Lecture 13 XML

Metadata Standards and Applications. 4. Metadata Syntaxes and Containers

Agent-Enabling Transformation of E-Commerce Portals with Web Services

COMP9321 Web Application Engineering

Scenario Manager User Guide. Release September 2013

Protégé Plug-in Library: A Task-Oriented Tour

Topics. From UI prototype... About user interfaces. ... via design to implementation. Pearson Education 2005 Chapter 7 (Maciaszek - RASD 2/e) 6

Informatics 1: Data & Analysis

TERM BASED WEIGHT MEASURE FOR INFORMATION FILTERING IN SEARCH ENGINES

CERTIFICATE IN WEB PROGRAMMING

Hyperion Data Relationship Management Online Training

Pearson Education 2005 Chapter 7 (Maciaszek - RASD 2/e) 2

Transcription:

Topic Map-Based Holy Quran Index Fahmi Jafar Computer Science Departement Gadjah Mada University Yogyakarta fahmijafar@fahmijafar.net Khabib Mustofa Computer Science Departement Gadjah Mada University Yogyakarta khabib@ugm.ac.id ABSTRACT Topic Map is a standard for the representation and interchange of knowledge, with an emphasis on the findability of information. Index of book, including the Holy Quran, is primarily presented as list of terms, sometimes referring one to another. This kind of association is more advantageous if it can be presented in a way of navigating from one topic to related ones. Topic map is considered suitable for the Holy Quran ibdex representation. Topic Map-based application for Al Quran index was built for representing the main topic of Al Quran into web application so it would be a prototype of the usage of topic-map as navigation tool, visualization, and site-map. The application is able to manage topic-map document according to standard format of XML Topic Map (XTM) including topic, occurrence, and association. Topicmap is visualized by TouchGraph Link Browser applet which can helps users to explore the topics and associations among topics in the Holu Quran topic map. This application was built using Javaservlet with TM4J API and TouchGraph LinkBrowser. Keywords Al Quran, Association, Occurrence, TM4J, Topic, Topic Map, TouchGraph LinkBrowser, XTM. 1. INTRODUCTION Information nowadays are available in many formats which can be a document, image, book, electronic book, HTML pages, or web site. All these information is increasing rapidly in huge number of size every year. This information overload will cause the difficulties of accessing the right information and has appropriate relevance to a subject or topic within a specific area of interest. Hence, one of the challenges nowadays is no longer how to share the information or knowledge but shifting to how to deliver the right information in the right context to the right person [5]. One of the solutions can be used to that information overload issue is using topic map approach. Topic map uses indexing approach like in a back-of-book index which contain the context and the location of information, as depicted in Figure 1. Topic maps are designed to manage the info glut, build valuable information networks over any kind of information resources, and enable the structuring of unstructured information. A topic map can be seen as an electronic super index, implementing the backof-bok index paradigm and much more [5]. Information has unlimited size and domain, and Topic Map is just a standard applicable in many domains. To combine concepts from different domain, each topic maps can be merged to build the larger information domain. Figure 1 Topics and Back-of-Book Index This paper describes the usage of topic maps for representing topics in Holy Quran (Al Quran). An application will be built which can be a prototype of topic map application that is possibly developed for other domains. Al Quran s topic map document format refers to XML for Topic Map (XTM) ISO standard 13250:2002 [6]. The main topic of this Al Quran topic map is related to the topic ibadah. The index will be managed using application that has several functions to browse, search, and maintain the content of the document exclude the function to manage scope and merge. The knowledge contained in the Topic Map will be presented in a graphical user interface which provides navigation feature instead of just search textually. 2. HOLY QURAN (AL QURAN) Al Quran is a holy book contains 114 part, every part contains different number of verses, and every group of verses contains one or more sub-part as known as ruku which examine certain theme or topic. This paper will focus on developing topic map for one of Al Quran s domain, in this case is ibadah. 3. TOPIC MAP A topic map is a set of information resources regarded by a topic map application as a bounded object set whose hub document is a topic map document conforming to the SGML architecture defined by international standard [6]. Information structure in the topic map including topic, occurrence, and association. Topic is the representation of a real world subject. An occurrence is a source of information about the topic. An association is a relationship between topics, which describes how the topics are related to each other, by giving the different members of the association roles [4].

Topic maps can create an index of information which resides outside that information, as shown in Figure 2. The topic map (the cloud at the top) describes the information in the documents (the little rectangles) and the databases (the little cans ) by linking into them using URIs (the lines) [7]. Regarding to the topic ibadah, in this paper, topics can be: bersuci, doa, haji-umrah, puasa, shalat, sumpah-nazar, tayammum, wudhu, zakat, and zikir. In an XML document of topic map, topics are represented using topic tag. Figure 4 shows the example of adding topics into topic map document. <topicmap id="ibadah" xml:base="/quran.xtm" <topic id="bersuci">... </topic> <topic id="zikir">... </topic> <topic id="zakat">... </topic> <topic id="wudhu">... </topic> <topic id="tayammum">... </topic> <topic id="sumpah-nazar">... </topic> <topic id="sholat">... </topic> <topic id="puasa">... </topic> <topic id="mandi-besar">... </topic> <topic id="haji-umrah">... </topic> <topic id="doa">... </topic> Figure 4 Defining the main topics Figure 2 Topic Map Illustration [7] Topic map can be defined via an XML document containing all the relevant information. Example of the XML document for topic map is shown in Figure 3. The topic map document, as shown in Figure 3, starts off with a header specifying the version of XML, followed by the topicmap tag. Inside the topicmap tag, any number of topics and associations can be added to this map. The sequence of these declarations does not matter [1]. <topicmap id="topicmapname" <!-- Topics and associations --> Figure 3. Example of XML document for Topic Map 3.1 Topic Topics are the main elements in topic maps that represent the real world subjects of which the developer wish to present information. A topic can be anything, regardless whether it exists or not, whether it is of physical nature or just an idea or expression [4]. A topic has three characteristics [5]: 1. Names: Human readable name for the subject. A topic can have zero, one, or many names. 2. Occurrences: Link to information resources relevant for the topic. 3. Playing roles in associations: A topic may be associated with other topics. 3.2 Occurrence Occurrences are the representation of relationship between a subject and an information resource [6]. Whenever a resource provides information about a topic it should be considered to become an occurrence of the topic. Occurrences are one of the three topic characteristics. There are two types of occurrences: internal occurrence and external occurrence. Internal occurrence is information about the subject that is typed inside the topic map and included in the XML document for topic map. As an example, for Al Quran topic map, internal occurrence for the topic Sholat might be worship compulsory for Muslims. External occurrence is a link to information about the topic, which is located elsewhere. Most typically these links are represented as URIs, and point to a web page, or may also point to a file in a file system or a field in a database [4]. Figure 5 shows the example of defining internal and external occurrence for a topic. <topicmap id="ibadah" xml:base="/quran.xtm" <topic id="sholat"> <instanceof> <topicref xlink:href="#ibadah"/> </instanceof> <occurrence> <resourcedata> Worship compulsory for Muslims </resourcedata> </occurrence> <occurrence> <resourceref xlink:href= http://alislamu.com /> </occurrence> </topic> Figure 5 Defining occurrences

In Figure 5, an Internal occurrence is represented with resourcedata tag, while an external occurrence is represented with resourceref tag. 3.3 Association Associations represent the horizontal structure of the topic map ontology which is defining how topics are connected to one another [4]. The number of topics related by one association is not limited, as many as the application requires. Associations can be rather general like: is located in, lives in, written by, born in; or more specific like: is an academic organization within, or a facility provided by. Figure 6 Example of association in Al Quran Topic Map As seen in Figure 6, in Al Quran topic Map, the topic ibadah is related to topic puasa, while topic puasa is related to topic Albaqoroh. The definition of an association is described in association element using association tag, outside the topic element. Each member in an association is given a role. This provides extra semantics to how the topics are associated. A topic can have different roles in the different associations where it is a member of. Figure 7 shows the example of association roles. Figure 7. Al Quran Topic Map Association Roles In the Al Quran topic map, the topic puasa has different roles in two associations. In the association with ibadah it has the role included in. This association can be read that puasa is included in the ibadah. In the association with albaqoroh, puasa has the role described in, and albaqoroh has the role describes. It means albaqoroh describes the topic puasa. Figure 8 shows the syntax to define the association. 3.4 XTM XML document for topic map described in this paper refers to the international standard called XTM. XML Topic Maps (XTM) is a product of the TopicMaps.Org Authoring Group (AG), formed in 2000 by an independent consortium named TopicMaps.Org, originally chaired by Michel Biezunski and Steven R. Newcomb, and chaired at the date of delivery of XTM specification version 1.0 by Steve Pepper and Graham Moore [2]. <topicmap id="ibadah" xml:base="/quran.xtm"... <association id="x135"> <instanceof> <topicref xlink:href="#has-includes"/> </instanceof> <member id="x136"> <rolespec> <topicref xlink:href="#includes"/> </rolespec> <topicref xlink:href="#ibadah"/> </member> <member id="x137"> <rolespec> <topicref xlink:href="#included-in"/> </rolespec> <topicref xlink:href="#puasa /> </member> </association>... Figure 8 Defining association The origins of the topic maps paradigm itself dates back to 1993, when it was first expressed as a working document in the context of the Davenport Group. The paradigm was more fully developed thereafter in the context of the GCA Research Institute (now known as IDEAlliance), in an activity called Conventions for the Application of HyTime, during and after which the paradigm was independently developed, implemented, and promulgated. Early in 2000, after several years of continuous effort by an international group of individuals, the topic map paradigm was fully formalized for the first time as an ISO International Standard, ISO/IEC 13250:2000. Almost immediately thereafter, TopicMaps.Org was founded in order to develop the applicability of the paradigm to the World Wide Web, and to realize its enormous potential to improve the findability and manageability of information [2]. 3.5 TM4J TM4J is a topic map processing engine written in Java providing a pure Java API, support for the Tolog query language, support for importing XTM and LTM syntaxes, support for exporting XTM syntax and persistence of topic map information in a wide variety of databases [8]. As most of othe Java libraries, TM4J is an opensource package available to be further explored. The engine provides a comprehensive Application Programming Interface (API) to allow programmers to create and modify topic map structures. The engine can be used to manage topic maps which are maintained in-memory or which are persistently stored either in the Ozone object-oriented database, or in a relational database using the Hibernate O-R mapping. TM4J also provides interfaces for querying topic maps structures using the Tolog query language, parsing topic maps from XTM or LTM syntax files, and writing topic maps to XTM syntax files. The application on this paper is built using Java and TM4J library so that the application can provide the interface to manage the topics, occurrences, and association.

3.6 TouchGraph LinkBrowser TouchGraph LinkBrowser 1 is a Java applet which to visualize information using node and edge. The use of TouchGraph LinkBrowser in topic map application will simplify the exploration and navigation of topics and association between topics. TouchGraph LinkBrowser will read an XML document which has a specific document type definition as shown in Figure 9. This document type definition has different definition with XTM, so XTM document need to be converted to an XML document that refers to TouchGraph LinkBrowser s XML. Regarding to the conversion of XTM to XML, a function has been developed and added to the application. This function will change the topic element with its attributes into node and nodeset, and change the member element inside the association into edge and edgeset. <TOUCHGRAPH_LB version="1.20"> <NODESET> <NODE nodeid="node-id1"> </NODE> </NODESET> <EDGESET> <EDGE fromid="node-id1" toid="node-id2" type="1" length="70" visible="false"/> </EDGESET> </TOUCHGRAPH_LB> Figure 9 XML DTD to visualize topic map By the function of TouchGraph LinkBrowser applet, application provide an interface to draws the topic map as a graph, so it can help user to explore the topic map. 4. AL QURAN TOPIC MAP DESIGN Al Quran topic map design consists of topic, occurrence, and association related to topics in Al Quran domain to be represented. The main topics in Al Quran are morals/manners, Al Quran, previous, law, private law, worship, science/knowledge, faith, holy war, foods, dress, history, and muamalat [3]. The selected domain for topic map depends primarily on the needs of the application, the user needs, and the author of topic map itself. From the main topics in Al Quran, domain ibadah (worship) has been selected for this paper and from this domain can be expanded to main topics that related to domain as shown in Figure 10. Figure 10. Topic type and main topics Figure 10 shows the main topics that has been selected for domain ibadah. These main topics can be expanded into more sub-topics that related to main topics. After determining the main topics, the next step is to add the occurrences for each topic. As mentioned before, occurrences can be internal or external. Figure 11 shows the topic zikir with several external occurrences. Figure 11 Example of adding occurrences into a topic Other occurrences can be added into another topics in the domain. The process of expanding the main topics into sub-topics and adding occurrences into a topic are repeated until the topic map document considered as complete. After the topics and sub topics are determined, then the next step is to determine the relationship between topics defined by the association element. Figure 12 shows an example the association for topic puasa. Figure 12 Example of association between the topics 5. APPLICATION DESIGN After the Topic Map model is established, the next step is to create an application to manage and display the model for human consumption. There are two user types of the application, administrator and client. Administrator has access to admin page and maintain the topic map document (XTM), including add, edit, delete the topics, occurrences, and associations. Administrator also has access to the XTM conversion functions corresponding to the XML standard format required by the TouchGraph LinkBrowser applet. User client can see the web page which the menu and the content are generated from XTM document. The system design of Al Quran topic map application is shown in Figure 13. 1 http://www.touchgraph.com/newlb/tglinkbrowser.html and http://sourceforge.net/projects/touchgraph/

should be evaluated if the size or number of concept is increasing from time to time. Another approach which involves persistence store using database management systems (via JDBC, ODBC, Hibernate) could be implemented to compare with the curent achievement as the future works. Figure 13 System design of topic map application As shown in Figure 13, application uses Java Servlet with TM4J library in processing topic map document (XTM). Processing results are then returned to the servlet to be combined with HTML tags. 6. IMPLEMENTATION The process of adding, editing, deleting topics, occurrences and associations, and converting XTM document into XML standard format required by the TouchGraph LinkBrowser applet will produce a web page that can be accessed by the user. In other words, the main menu and contents of this web page are generated from XTM document maintained by administrator. The web page also contains a TouchGraph LinkBrowser applet that visualizes the topic map. Figure 14 shows the application from user side. Part (1) is the applicatioin menu which contain the main topics from the selected domain. Part (2) is the place for describing the current selected topic which contain the basename of the topic, internal occurrence and external occurrence. If a topic has association, then it will be displayed in part (3). This part can help user to navigate to the related topics. Part (4) is a visualization of topic map contents. In this part, user can see the illustration of topics with its association to other topics. As mentioned before, the visualization of topic map in part (4) is using TouchGraph LinkBrowser applet. 7. CONCLUSION AND FUTURE WORKS From the discussion above, it can be concluded that an open source web-based application for learning Holy Quran has been developed. The system works for presenting and managing knowledge of topics in Al Quran using Topic Map model. Using TouchGraph browser, the Topic Map can be presented in a userfriendly manner after the Topic Map model is converted first to XML format required by the TouchGraph browser. Using this nice GUI, the search, presentation and navigation topics becomes easy. This paper introduces an approach of wrapping inter-related knowledge, concepts or information existing in the Holy Quran. The approach discussed in this paper can be used and extended for other knowledge domains. Topic Map presentation used in this research is XTM which keeps all model in a file stored in a file system. The performance issue Figure 14. Main page of Al Quran Topic Map application REFERENCES [1] Anitta Altenburger, "Authoring XTM Topic Maps, Part I",, [online]: http://topicmaps.bond.edu.au/docs/6/toc/ access date 12 Feb 2010 [2] Biezunski, M., Newcomb, S.R., Moore, D.R., Ahmed, K., Altheim, M., and Hunting, S., "XML Topic Maps (XTM) 1.0",, [online]: http://www.topicmaps.org/xtm/1.0/xtm1-20010806.html access date 12 Feb 2010 [3] Fahrudin, A., Widodo, A., Pramono, G.H., Kamal, M.M., Poerbandono, Al Quran Digital,, 2004 [4] Frode Hjeltnes, Development of a Topic Map Application for the Project QUIS QUality, Interoperability, and Standards in e- Learning,Trodheim, Norwegia, 2006 [5] Holger Rath, "The Topic Maps Handbook",2003, [online]: Http://www.sts.tu-harburg.de/~r.f.moeller/lectures/anatomie-i-undk-system/empolistopicmapswhitepaper_eng.pdf access date 10 Feb 2010 [6] ISO/IEC, "ISO/IEC 13250:2002 Topic Maps (2nd edition)", 2002, [online]:

http://www.y12.doe.gov/sgml/sc34/document/0322_files/iso13250-2nd-ed-v2.pdf access date 10 Feb 2010 [7] Lars Marius Garshol, "What are Topic Maps",2002, [online]: http://www.xml.com/pub/a/2002/09/11/topicmaps.html access date 10 Feb 2009 [8] -, "TM4J - Topic Maps For Java",, [online]: http://tm4j.org access date 06 Feb 2010