database module of vijjana, a pragmatic model for ...wvuscholar.wvu.edu/reports/amara_satish.pdf ·...

71
Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge Networks Satish Kumar Amara Problem Report submitted to the College of Engineering and Mineral Resources at West Virginia University in partial fulfillment of the requirements for the degree of Master of Science In Electrical Engineering Approved by Dr. Yenumula. V. Reddy, Ph.D., Chair Dr. James D Mooney, Ph.D. Dr. Sumitra Reddy, Ph.D. Lane Department of Computer Science and Electrical Engineering Morgantown, West Virginia 2008 Keywords: Vijjana, Database, Jan Structure, Knowledge base, ODP, Prefuse.

Upload: vongoc

Post on 31-Mar-2018

226 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge

Networks

Satish Kumar Amara

Problem Report submitted to the College of Engineering and Mineral Resources

at West Virginia University in partial fulfillment of the requirements

for the degree of

Master of Science In

Electrical Engineering

Approved by

Dr. Yenumula. V. Reddy, Ph.D., Chair Dr. James D Mooney, Ph.D. Dr. Sumitra Reddy, Ph.D.

Lane Department of Computer Science and Electrical Engineering

Morgantown, West Virginia 2008

Keywords: Vijjana, Database, Jan Structure, Knowledge base, ODP, Prefuse.

Page 2: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ABSTRACT

Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge Networks

Satish Kumar Amara

Web plays a vital role in our daily life, a person x will surf through

the web daily when he needs information about books, tutorial, health, news, sports

shopping and entertainment. Etc. Information on a particular topic is scattered all over the

web at various sources each millions of pages away from one another, to cope up with

this, people use search engines to get all the information on the topic displayed at one

place.

In general we know many search engines like Google, Yahoo, MSN, AOL,

EBAY, Netscape etc. Some search engines relies on searching data over the web using

keywords specified for specific web pages, but search engines like Google will search the

pages through the description of it rather than the specified keywords. This is the reason

Google is well used by many users. Even though these search engines are able to provide

large amounts of pages to the user, the user still has to surf through the large number of

results to find the most appropriate result for his problem. The same person will end up in

finding the result sooner if he a general idea about each and every result or the result

which worked the best for his friends working on the same topic etc. On the whole this

problem can be solved by developing an agent which could successfully handle the

results bound to particular topics or domains and which can also provide the personal

opinions of users who have worked or working on the same topics by saving their

comments or rating and enabling more collaboration between them. This framework

called Vijjana is going to breakthrough all these problems by providing Pragmatic

mechanism for collaboratively building useful knowledge networks in well-bounded

domains.

Page 3: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ACKNOWLEDGMENTS

I sincerely and heart fully thank my Committee Chair, Dr. Yenumula V. Reddy

and for his guidance, support, and ideas he gave me throughout the project. This project

has been a big Idea for him and I am glad to be a part in it. He encouraged everyone in

the project and helped the project in developing form one stage to another.

I would like to extend my thanks to Dr. James Mooney and Dr. Sumitra Reddy for

serving on the committee and supporting the project with their suggestions and

encouragement.

I would like to thank all my friends and project mates who helped me with their

suggestions and always being supportive in completing this project.

Finally, I am deeply thankful to my beloved Parents, Brother and Sister for their

encouragement and support in all the things I do.

iii

Page 4: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Table of Contents

ACKNOWLEDGMENTS........................................................................... iii Table of Contents ......................................................................................... iv

Chapter 1 Introduction ................................................................................ 1 1.1 Problem Statement ................................................................................................. 1 1.2 Introduction ............................................................................................................ 1

Chapter 2 Vijjana Model ............................................................................. 4 2.1 Introduction................................................................................................................... 4 2.2 Vijjana Agents ................................................................................................................ 5

2.2.1 Taxonomy and the Semantic Net of Knowledge (T and R)..........................................................................5 2.2.2 The Discovery Agent (dA)............................................................................................................................6 2.2.3 The Organizing Agent (oA) ..........................................................................................................................7 2.2.4 The Consistency and Completeness Agent (cA)..........................................................................................8 2.2.5 The Search Agent (sA) .................................................................................................................................9 2.2.6 The Rating Agent (rA)................................................................................................................................10 2.2.7 The Visualization Agent (vA) .....................................................................................................................11 2.2.8 The Collaboration Agent (CoA): ................................................................................................................12

2.3 The Vijjana Architecture............................................................................................... 13 2.3.1 Vijjana Framework Architecture ...............................................................................................................13 2.3.2 Vijjana Client Architecture ........................................................................................................................15

Chapter 3 VIJJANA DATABASE ............................................................ 16 3.1 Background.................................................................................................................. 16

3.1.1 IEEE 1484.12.1 [7].......................................................................................................................................16 3.1.2 Relational database...................................................................................................................................18 3.1.3 MySQL.......................................................................................................................................................20 3.1.4 Source Data for Database: ........................................................................................................................21

3.2 JAN Structure:.............................................................................................................. 23 3.2.1 PHP‐ MyAdmin:.........................................................................................................................................27 3.2.2: Populating the Database [8] ......................................................................................................................27 3.2.3 ODP/dmoz Database installation: .............................................................................................................28

Chapter 4 Visualization.............................................................................. 29 4.1 Introduction................................................................................................................. 29 4.2 MySQL Query Browser: ................................................................................................ 30

5 Conclusion ................................................................................................ 36

References.................................................................................................... 37

APPENDIX A.............................................................................................. 38

iv

Page 5: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

List of Figures

Figure 1: Sample Semantic Net View................................................................................. 5

Figure 2: A proposed View of Vijjana Knowledge Network Web Interface adding a JAN

(Sri Ram’s work - a part of Vijjana Project)....................................................................... 7

Figure 3: A proposed View of the User’s Vijjana Knowledge Network after a new Jan

was added (Suman Matcha’s work - a part of Vijjana Project) .......................................... 8

Figure 4: A proposed view of Search agent of Vijjana. (Gottipati Sasank’s work) ......... 10

Figure 5: Rating agent proposed page. ............................................................................. 11

Figure 6: Radialgraph and Hypergraph Views of Computer Science domain Vijjana..... 12

Figure 7: View of the Collaboration Agent CoA.............................................................. 13

Figure 8: The Vijjana Architecture ................................................................................... 14

Figure 9: Vijjana Client Architecture. .............................................................................. 15

Figure 10: Jan Structure .................................................................................................... 23

Figure 11: Query Execution Window of MySQL Query Browser ................................... 31

Figure 12: Database Is Selected........................................................................................ 32

Figure 13: Showing the Contents present in Vijjanadatabase .......................................... 33

Figure 14: Query Automatically Generated When General Table Is Double-clicked...... 33

Figure 15: Local Database ................................................................................................ 35

Because this work is part of a larger group project, some of the material in this report is common for all the group members. Chapter 2 is heavily referenced from Dr. Y. V. Reddy’s paper on Vijjana (IKE’08). Some part of Chapter 3 is similar to Durga Vardhineedi’s report [14] as the module of database is shared between us and this part is done in common.

v

Page 6: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Chapter 1 Introduction

1.1 Problem Statement

To develop the Database module of Vijjana and visualize the data in the form of

some standard Views. According to the standards of IEEE 1484.12.1, a main and well

structured relational database of Vijjana is built using MySQL. The database is populated

by transferring data from an Open Directory Project (ODP). Data is extracted out of it in

the form of an XML and is viewed in the form of a Tree View and a Radial View using

visualization techniques.

1.2 Introduction

Web plays a vital role in our daily life, a person x will surf through

the web daily when he needs information about books, tutorial, health, news, sports

shopping and entertainment. Etc. Information on a particular topic is scattered all over the

web at various sources each millions of pages away from one another, to cope up with

this people use search engines to get all the information on the topic displayed at one

place.

In general we know many search engines like Google, Yahoo, MSN, AOL,

EBAY, Netscape etc. Some search engines relies on searching data over the web using

keywords specified for specific web pages, but search engines like Google will search the

pages through the description of it rather than the specified keywords. This is the reason

Google is well used by many users. Even though these search engines are able to provide

large amounts of pages to the user, the user still has to surf through the large number of

results to find the most appropriate result for his problem.

1

Page 7: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Consider a scenario in which a person named x is searching for information on a

tutorial on Dreamweaver on a search engine. It takes lot of time for X to navigate through

all the results and find the best one. Suppose Y, the best pal of X is sitting along with him

on another machine and is navigating through the same results of Dreamweaver, here the

time reduces to halve because both X and Y has the same goal now and they are surfing

the same results. This is known as Collaboration or working together by sharing Ideas.

Suppose Y already came across this situation in the past and has the best result then

problem of X is solved immediately. This is the best case scenario when Y is readily

available with X.

On the other hand suppose if Y is not readily available then X has to call him r

email him and should wait for his/her response, In this case X has to go to the first

scenario or should wait for Y’s bookmark or suggestion or URL etc. The best way to

overcome this is for Y to store his result somewhere on the net and should allow X to

access or share his result at the same place. This is known as interacting with each other

irrespective of place, time, availability etc. So a secured and reliable interface like

discussion board, rating, chat client etc would be a good solution. In this case Y need not

to be a best pal of X, he can be a person X hasn’t seen before or whom he met readily at

that moment. So the problem will be solved when Y and X are allowed to interact over a

secure interface to share their opinions and suggestions over a bound set of well related

information on a particular topic or Domain. So comes the framework VIJJANA which

itself stands for knowledge obtained through Classification and Analysis proving a

2

Page 8: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

pragmatic mechanism for collaboratively building useful knowledge networks in well-

bounded domains.

3

Page 9: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Chapter 2 Vijjana Model

2.1 Introduction

The Vijjana model is a collection of different agents.

We define Vijjana as [2]

Vijjana-X = {J, T, R, dA, oA, cA, vA, sA, rA} CoA

Where

X = the domain name

J= the collection of JAN’s in the Vijjana-X

T = the Taxonomy used for classification of JAN’s

R= the domain specific relations

dA = the discovery agent which find relevant JAN’s

oA = the organizing agent which interlinks the JAN’s based on R

cA = the consistency/completeness agent

vA = the visualization agent

sA = the search agent

rA = the rating agent

CoA = the Collaboration Agent

The importance of each and every Agent IS explained below.

4

Page 10: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

2.2 Vijjana Agents

2.2.1 Taxonomy and the Semantic Net of Knowledge (T and R)

The first step in organizing any knowledge base is classification of the constituent

Jans and interlinking them to form a semantic net. This requires that we first define a

taxonomy that is appropriate for the domain under consideration. Since same knowledge

could be organized using a wide variety of taxonomies, the Vijjana model is designed to

work with any taxonomy and associated relational semantics, by treating them as

parameters that could be modified as the knowledge base evolves. This also allows the

Vijjana builder to import and export the knowledge base when the exporter and importer

use the same taxonomy and relational semantics. If we employ Vijjana to build large-

scale knowledge networks involving multiple enterprises, however, we need to first reach

an agreement on and ontology,

Figure 1: Sample Semantic Net View

5

Page 11: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 1 shows an example of the taxonomy and relational semantics used in

building the Vijjana-CS used throughout this paper to illustrate the ideas. As new JANs

are added, this knowledge network grows and shrinks (as dead links are removed).

2.2.2 The Discovery Agent (dA)

In this paper we have adopted the agent paradigm to describe all the services

needed in building or using a Vijjana. This may be viewed as a human-program

continuum where a service may be provided manually or automatically by invoking a

program using the concept of mixed initiative - where an action may be initiated by a

program or a human depending on the circumstances. In our initial version of Vijjana, the

discovery agent is a human who through normal search processes discovers a useful Jan

which will be “marked-up” (to assist in classification) and submitted to a Vijjana builder

where it will be classified and organized into the targeted knowledge network. Here

“markup” involves indicating the actual node type the discovered Jan belongs to by

“clicking” on the appropriate node type on a graphically displayed taxonomy. In addition,

we can also incorporate automatic addition of Jans to the knowledge network by

subscribing to RSS [15] feeds from key websites relevant to the domain. Since RSS feeds

are based on a standard protocol this process of parsing and adding Jans could be

automated. Email also could be used by collaborators to contribute relevant Jans by

following a predefined syntax of the message to enable automatic parsing.

6

Page 12: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 2: A proposed View of Vijjana Knowledge Network Web Interface adding a JAN (Sri Ram’s work - a part of Vijjana Project)

2.2.3 The Organizing Agent (oA)

Once a Jan is obtained through a RSS feed, Email, by “clicking” on the “markup”

button (installed by a user on his or her browser) or through the Vijjana client interface

(discussed in the next section), it is handed-off to the organizing agent which first ensures

that the Jan represents a genuine link (one that is not broken or submitted by an unreliable

source). It then examines the markup information, which is used for classification and

interlinking. This information is also used to creating inverse links. For example if we

discover a Jan of the type “syllabus” which is “based-on” a “textbook”, the oA will link

this Jan with the indicated “textbook” via the “based-on” relational link. In addition, the

oA will also link the “textbook” with the “syllabus” using the inverse link “has -syllabus”

which represents the fact that this “textbook” has the specified “syllabus”. Thus as new

7

Page 13: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Jans of the type “syllabus” enter the Vijjana knowledge network, they will be

automatically linked using the both the link and inverse link. In addition to organizing the

link into the evolving Vijjana, it logs the information into a provenance file which will be

later used for generating the history of any Jan. The oA could also notify users (who

signed-up for automatic notifications) about the incorporation of a new Jan into the

Vijjana. This Organizing agent also stores the number of times a particular Jan was

visited by the user, which could be used by the rating agent (rA) in computing the rating

heuristic value.

Figure 3: A proposed View of the User’s Vijjana Knowledge Network after a new Jan was added (Suman Matcha’s work - a part of Vijjana Project)

2.2.4 The Consistency and Completeness Agent (cA)

The Consistency and Completeness Agent (cA) is responsible for maintaining the

integrity of the Vijjana knowledge network. This is accomplished by the cA by

8

Page 14: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

periodically visiting all the URLs of the Jans to make sure they are still “alive”. The cA

will also find out all the relational links that are not set (i.e., incomplete) which will be

posted to an agenda file so that the users can manually fill them as information becomes

available. These nodes with incomplete relational information will also be color coded so

that the visualization agent can display them thus attracting the attention of the users who

may take steps to correct the problem.

2.2.5 The Search Agent (sA)

The search agent implements a variety of search mechanisms including keyword-

based search and more advanced search mechanisms such as using relational algebra. For

example, we can issue a command such as “find all textbooks that have associated syllabi

and include lecture notes” which will return all the Jans that satisfy the stated criteria.

This however is only possible if the semantic links are completely specified. We include

this feature for the sake of completeness and to cope with large knowledge networks

where the user is already familiar with the network topology but needs the results quickly

– without browsing.

9

Page 15: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 4: A proposed view of Search agent of Vijjana. (Gottipati Sasank’s work)

2.2.6 The Rating Agent (rA)

The Rating agent (rA) is another important feature of Vijjana, which is intended

to bring the attention of the user to high value Jans. High value Jans may be determined

through a rating mechanism which uses a combination of user specified values, number

of “hits”, and the number of fully specified relational links. By incorporating a coloring

scheme in the display of the knowledge network, the user’s attention is quickly drawn to

valuable Jans. For example, if a Jan representing a “textbook” has a very large number of

“has-syllabus” links, it should be intuitively obvious that the textbook represented by that

node is a high value item. We plan to experiment with a variety of heuristics and

incorporate user feedback into this agent.

10

Page 16: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 5: Rating agent proposed page.

2.2.7 The Visualization Agent (vA)

The visualization agent is responsible for displaying the Vijjana knowledge

network in a variety of forms based on user preferences. One of the most useful ways to

display a knowledge network is by drawing a hyper tree shown in Figure 1 (pioneered

by Xerox Corporation through its InXight.com website), or as a radial graph where

nodes at each level at the end of radii are equally spaced. The user can browse the lower

level nodes by “clicking” on the nodes as the information at lower levels unfolds.

In this view, the user gets a bird’s eye view of the whole knowledge network

from which the user can navigate to the area of interest as it unfolds with more and more

detail as you near the target. This is perhaps one of the biggest advantages of a Vijjana

compared to the social networking bookmark sharing websites. In addition to the hyper

tree model, we intend to provide a variety of other representations including hierarchies

and network traversal following predefined patterns.

11

Page 17: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 6: Radialgraph and Hypergraph Views of Computer Science domain Vijjana.

2.2.8 The Collaboration Agent (CoA):

The Collaboration Agent brings is a very important element of Vijjana. It brings

in the concept of ‘social networking’ into Vijjana. The CoA allows users who have

similar topics of interest to come together and contribute collectively who otherwise have

no reliable system to know about the other users. For instance, users who are interesting

in Algorithms can get to now about other users who are working on the same topic and

contribute to each others work improving the productivity and the quality of their work.

The CoA allows the users to form groups and work collaboratively. Figure10 illustrates

the Collaboration Agent designed for the first version of Vijjana

12

Page 18: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 7: View of the Collaboration Agent CoA.

2.3 The Vijjana Architecture

2.3.1 Vijjana Framework Architecture

On the left hand side of Figure 7, shown the administrator interface, which is used

for checking consistency and organizing JAN’s into the knowledge network. On the right

hand side is shown the general user interface where users can contribute JAN’s, import or

export entire knowledge networks or visualizes the network itself using the vA. In

addition, it shows an agent intended to manage social networking.

13

Page 19: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 8: The Vijjana Architecture

For example, a user browsing the knowledge network may become aware of

another user who is also interacting with the knowledge network and then may decide to

open a communication channel which may result in arriving at rating for a node

collaboratively. In the bottom we show the interface between the discovery agent and the

web through which the JAN’s migrate from the web to the Vijjana knowledge network.

On the top is shown the database that contains the taxonomies, link relationships and the

actual URLs (Uniform Resource Locators) representing the JAN’s in individual

knowledge networks.

14

Page 20: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

2.3.2 Vijjana Client Architecture

The Vijjana system may be used using a dedicated client interface shown in

Figure 8 or using a web interface shown in Figure 3. Figure 8 illustrates the overall

architecture of the Vijjana client program. As can be seen in Figure 8 a Jan may be sent

to Vijjana by Email or via a markup by the user. When the Jan arrives via Email the

message is parsed to discover the markup information for organizing the Jan into its

proper place in the evolving knowledge network using the organizing agent. In later

implementations, we plan to expand this interface to include RSS feeds.

Figure 9: Vijjana Client Architecture.

15

Page 21: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Chapter 3 VIJJANA DATABASE

3.1 Background

3.1.1 IEEE 1484.12.1 [7]

This is a multi-part standard that specifies learning object metadata. This part

specifies a conceptual data schema that defines the structure of a metadata instance for a

learning object. For this standard, a learning object is defined as any entity—digital or

non-digital—that may be used for learning, education, or training. For this standard, a

metadata instance for a learning object describes relevant characteristics of the learning

object to which it applies. Such characteristics may be grouped in general, life cycle,

meta-metadata, educational, technical, educational, rights, relation, annotation, and

classification categories.

Metadata is information about an object, and the object might be physical or

digital. Likewise we come across large number of physical or digital objects in our daily

life, this exponential growth of objects in our daily life, lack of information or metadata

puts a high demand on our ability to learn, discover, use and manage these objects. This

1484.12.1 standard addresses these problems by defining a structure for interoperable

descriptions of learning objects. A data element for which the name, explanation, size,

ordering, value space, and data type are defined in this standard is known as a Learning

Object Metadata (LOM).

16

Page 22: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Data elements which describe a physical or a digital learning object are grouped

into categories. The LOMv1.0 base schema:

a) The general

In this category the learning object is described as a whole and it groups the general

information about it.

b) The lifecycle

This category describes the features which are related to the history and current state of

learning Object and of those who have affected this learning object during its evolution.

c) The meta-metadata

Category groups information about the metadata instance itself (rather than the learning

object that the metadata instance describes).

d) The technical

This category describes the technical requirements and the technical characteristics of the

learning object.

e) The educational

This category describes the educational and pedagogic characteristics of the learning

object.

f) The rights

This category describes the conditions of use and intellectual property rights for the

learning object.

17

Page 23: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

g) The relation

This category features, define the relationship between the source learning object and the

other related target learning object.

h) The annotation

This category groups all the comments on the educational use of the learning object and

provides information on when and by whom the comments were created.

I) the classification

This category describes the relation of a learning object to a particular classification

system.

3.1.2 Relational database

[11] A database is a set of data that has a regular structure and that is organized in

such a way that a computer can easily find the desired information. A database can

generally be looked at as being a collection of records, each of which contains one or

more fields (i.e., pieces of data) about some entity (i.e., object), such as a person,

organization, city, product, work of art, recipe, chemical, or sequence of DNA. For

example, the fields of a database of a University typically might include the name,

student identification number, address, telephone number, courses taken, GPA and

attendance for every consecutive semester.

There are several basic types of database models that have been developed,

including flat, hierarchical, network, relational and Object Oriented Database. Each and

every model of these databases differs by the operations that can be performed on them.

18

Page 24: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Typically, very database will have a schema, which includes the types of entities in

relationships among them and gives the description of the model.

Among these we will show our interest towards the Object Oriented Database in

which information is represented in the form of an objects similar to that of used in

object-oriented programming. Object Oriented Database’s also known as OODBs shortly

are designed for the purpose of storing and sharing objects and stands as the solution for

persistent object handling. In the case of Applications with Complex C++ and Java object

models, using object databases for data storage brings powerful advantages and provides

high concurrency requirements, and large data sets. Also in the case of businesses with

need for processing of data with high performances, object oriented databases are highly

recommended and provides an environment to work well with Object Oriented

Programming Languages like Visual Basic.NET, Java, Python, C++ and C#.

(OODBs) evolved from a need to support object-oriented programming and to

reap the benefits, such as system maintainability, from applying object orientation to

developing complex software systems. The first OODBs appeared in the late 1980s.

OODBs are based on the object model and use the same conceptual models as Object-

Oriented Analysis, Object-Oriented Design and Object-Oriented Programming

Languages. Using the same conceptual model simplifies development; improves

communication among users, analysts, and programmers; and lessens the likelihood of

errors [Martin 93].

19

Page 25: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

OODBs do not have a general architecture or structure. But the most common

thing about all the architectures of OODBS is they all are made of three main

components namely: Object Managers, Object Servers and Object Stores. Object

managers will allow applications to interact with them and work through object servers to

gain access to object stores.

3.1.3 MySQL

[12] MySQL is a relational database management system (RDBMS) that interacts

with SQL (Structured Query Language), a tool for editing, accessing and processing data

within a database.

MySQL is a free, fast and a reliable open source relational database. It lacks some

sophistication and facilities in spite it has an active development team which goes from

release to release with more additional capabilities. Most of the times there will be a

trade-off between capabilities for the database and its speed. MySQL team keeps their

database engine fast and reliable. By comparison:

• MySQL is similarly easy to understand and learn.

• MySQL can support large databases of 50 million rows or more.

• MySQL is compatible with the vast majority of operating systems

(UNIX, Windows etc.).

• MySQL is freely available under the GNU GPL (General Public

License) and can be tailored to suit individual requirements and personally

customized under the terms of the license. [12]

20

Page 26: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

3.1.4 Source Data for Database:

As we discussed earlier information or knowledge is scattered all over the web at

different places. As users search on a particular domain or topic we need to have a

collection of URL’s for each and every domain. So a resource with a predefined

taxonomy with collection of Jan’s for each and every particular domain is necessary.

Here Open Directory project (ODP Dmoz.org, the largest and most comprehensive

Human-Edited Directory of the web with well structured and predefined taxonomy is

used as the core data for the database of Vijjana. [3] The Open Directory has followed the

footsteps of the most important editor and contributor projects of the 20th century. As we

know the Oxford English Dictionary as the definitive word on words through the efforts

of volunteers, similarly the Open Directory became the definitive catalog of the Web.

The Open Directory is 100% free and was founded in the spirit of the Open Source

movement. There is no cost ever to submit a site to the directory or to use the directory's

data. The Open Directory data is available to anyone for free who agrees to comply with

its free use license.

[3] The Open Directory powers the core directory services for the Web's largest

and most popular search engines and portals, including Netscape Search, AOL Search,

Google, Lycos, HotBot, Direct Hit, and hundreds of others. The source of Data is directly

from the user himself, when as we discussed whenever a user Mark-Up’s a Jan then that

Jan is automatically added to the database if it Is not present in the database and will be

added in his Jan’s list. Also the Consistency Agent will periodically check the Jan’s

present in the Database and removes dead links so the database shrinks and grows from

time to time.

21

Page 27: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

The database of Vijjana consists of:

1. Information or properties of the JAN’s and the

2. Information of the user and the

3. Relation of Each Jan with user like

• Who added it

• How many times it has been marked up by users.

• When it has been last modified

• Rating

It also shows the Present Status of JAN whether it is an alive or a dead link.

22

Page 28: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

3.2 JAN Structure:

Figure 10: Jan Structure

23

Page 29: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

The Above picture shows the typical schema or structure of the Vijjana Database.

1. The tables General, Identifier and Classification are related to the

Collection of the JAN’s form the Open Directory Project.

2. The Properties of the JAN are given by the tables:

• Educational

• Technical

• Rights

3. The Status of the Jan is given by the Table Life Cycle.

4. The User Information is given in the table Membership

5. The relation between the user and JAN is given by the tables:

• Comment

• CommentRating

• JanRating

• Keyword

Educational:

This table describes

• The educational and pedagogic characteristics of the learning object. The

pedagogical information is used by users like teachers, managers, authors

and learners to achieve a quality learning experience.

• The degree of interactivity associated with this learning object.

Interactivity in the sense, how much a learner can influence the aspect or

behavior of the learning object. Interactivity is of many types that can be

24

Page 30: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

“Active’ Learning, “Expositive’ Learning or “Mixed” learning “Active”

learning is achieved by doing things, and it also needs content which

shows the productive action by the learner. “Expositive” learning is also

known as passive learning, it occurs when the learner's job mainly consists

of absorbing the content exposed to him.

Rights:

This table describes

• The conditions and intellectual property rights of use for this learning

object.

• Whether copyright or other restrictions apply to the use of this learning

object.

Technical:

This table describes

• The technical requirements and characteristics of this learning object.

Technical data types of this learning object.

• To identify the software needed to access the learning object. Information

about other software and hardware requirements.

Lifecycle:

This table describes

• The completion status or condition of this learning object.

25

Page 31: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Membership:

This table relates to the personal information of the user. It includes the fields

like registration and login details, password, the Security Question of all users. The

security question Answer will enable more secure login. It can also be used when user

forgets his password.

Comment:

This table stores all the comments given by the user about respective JAN’s. The

field UserID shows the particular user, the field CommentID says the related comment of

that user and the field GeneraID shows the particular JAN. It also shows the date the

comment is created and last modified.

Comment Rating:

This table shows the user ratings for each and every comment given by different

users. For a particular comment given by a User, many other users can rate it according to

their wish. The UserID shows the user who has rated it and the CommentID shows the

comment on which he has rated it.

JanRating:

This table shows how much the users have rated for each and particular Jan. The

UserID gives the information of the user who rated that JAN and the GeneralID gives the

information of that particular JAN. Generally a user can rate any Jan irrespective of he

has created it or not.

26

Page 32: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

3.2.1 PHP- MyAdmin:

Tool written in PHP intended to handle the administration of MySQL over the

web. The advantage of using PHP-MyAdmin is that it can be accessed from any web

browser. [13] This online tool has some useful capabilities like running an SQL query,

creating tables on the local machine in MYSQL. Having the scripts for generating them

makes it easier to create the Database in seconds. This tool is used for Vijjana to create an

online server Database at www.csee.wvu.edu/phpmyadmin.

3.2.2: Populating the Database [8]

As we have already chosen to use the taxonomy of the Open Directory Project

(Dmoz.org) as the core data for the Vijjana Database, the task now is to transfer the data

from ODP to relational Database. The data in the ODP is in the format of RDF known as

Resource Description Framework. Files in this form will use tags to distinguish different

resource categories. To transfer these files into a database, the editor of Open Directory

Project created a set of tool named ``ODP/dmoz''. A famous tool for this is called

``PhpODPWorld'' [5]. The script used to import the RDF file into database is developed

by Steve who is one of open directory project editor. The following procedure explains in

steps to do the RDF to Database transformation:

27

Page 33: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

3.2.3 ODP/dmoz Database installation:

1. To the wanted directory on the web server, extract and move all the unpacked

files of downloaded PhpODPWorld package.

2. Complete the following steps

o Create "logs" directory, if you enabled logging in the config file and

this directory must be writable by the web server

o Create "smarty/cache" directory and "smarty/compiled", if you

enabled smarty in the config file and this directory must be writable

by the web server

3. Step three

o Create a database and a user either with password or without.

o The database table defined in "tools/db.sql" is created.

4. Wanted categories and references, database settings are reflected by editing

"config.inc.php" and "tools/config.pl".

5. Downloaded either the complete content or structure RDF.

6. Use the Perl script "tools/extract.pl" to extract your categories from the RDFs.

(Perl module DMOZ-ParseRDF-0.14 should be installed now)

7. Using Perl scripts insert your categories (from the RDFs) into the database.

8. Do the following for initial run to update the count (of sites) for each category

o Turn on maintenance mode in "config.inc.php".

o Turn off maintenance mode in "config.inc.php".

9. The above steps should make you build your site.

Note: Repeat step 5 to 8 when you want to install a new RDF.

28

Page 34: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Chapter 4 Visualization

4.1 Introduction

Wiki’s Definition of Visualization is any technique for creating images, diagrams,

or animations to communicate a message. Visualization through visual imagery has been

an effective way to communicate both abstract and concrete ideas since the dawn of

man.[6] Visualization of Vijjana is the most important part of all the agents that we have

in Vijjana model. It is the users interface to interact with the knowledge base to find the

semantics and also to obtain relevant information in a particular field by means of user

friendly navigation.

Now for the Visualization of Vijjana we have to first connect to the database of

Vijjana and generate XML’s, which are given as an input to the Prefuse and Hypergraph

tools and thereby we will get corresponding User Controllable visuals. Before dealing

with generation of XML, I will introduce XML, XML schemas and the XML schema’s

used for different visual views.

The raw data from the database is to be given in an abstract form to the Prefuse &

Hypergraph toolkits, so an XML having the structured information about the Vijjana

semantic net or taxonomy is required. There are several XML schemas that are related to

the corresponding visual views. For example for Hypergraph we use an XML that has the

schema of GraphXML. So based on the type of Visualization that we generate, first we

have to study the XML schema and then we have to transform the raw data to that form

of XML.

29

Page 35: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

The XML file is easy to transfer because of its small size but, hard to interpret

because of its flexibility. Actually, what we are going to implement is to create the XML

data schema based on the database table we have, and create an automatically intelligence

system to generate the XML file based on the search result. The result is large XML file

which can be interpret based on several of data schema, and it will return different small

xml files based on them. This XML file can be interpreted as the raw data file for the

visualization and other purposes.

Now for the visualization of Vijjana, in the first stage, we have to define the logic

in retrieving data to follow the rules of XML schema’s of corresponding visualizations.

4.2 MySQL Query Browser: The MySQL Query Browser is a graphical shell where you can execute queries and

develop SQL scripts, with several features to help you improve your productivity. The

MySQL Query Browser interface tries to mimic the interface of a web browser. [9]

Here we are using MySQL query browser to create a local database. Queries are

executed on this local database to extract data in the desired manner for the generation of

the XML’s. These XML’s are used as an input for the Prefuse to generate the

Visualization techniques. Since the MySQL query browser interface almost acts as the

original browser, our task is to fill the local database with the data present in the original

database over the server. After the data is ready in this database, several operations can

be done to manage it and it also can be accessed in different programming languages for

generating the XML’s.

30

Page 36: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

The whole process in creating a Database and populating it with data is described

below:

1. Install MySQL Server 5.0

2. Open MySQL query browser

3. On the top of the page you can see a small window (Query Execution

Space), execute a query for creating a new database.

Create Database Vijjanadatabase;

Figure 11: Query Execution Window of MySQL Query Browser

4. The created database will be shown at the schemata window. Select the

database by double clicking it; this means that all the future operations like

queries etc will be done on that database since you have selected it.

31

Page 37: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 12: Database Is Selected

5. Now create a new Table by name general in the database

(Vijjanadatabase) by executing the whole SQL script for the Table

General at the query window.

6. The created table will not be shown immediately, so right click on the

database Vijjanadatabase and then click refresh. This can also be done by

double clicking on the Vijjanadatabase.

7. Likewise all other corresponding Tables which are present in

vijjanadatabase are created using their corresponding scripts.

32

Page 38: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 13: Showing the Contents present in Vijjanadatabase

8. Now select the general table by double clicking it. This also generates the

query automatically in the query browser window. At the start the General

table will not show any values because it not having any data with it. This

is similar with all other tables so created.

Figure 14: Query Automatically Generated When General Table Is Double-clicked

9. Now our task is to populate this local database with the data present in the

server. To do this we have to first download all the data from the server @

eksarva.csee.wvu.edu/vijjanadata. .

33

Page 39: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

10. The above site would let you download over 1GB of data file with name

“vijjanadata”, Change the name of this file to “vijjanadata.sql” so that it

will become an executable SQL file format.

11. To import this data into the database on your machine (vijjanadatabase),

we use cmd prompt. ”mysqldump -u root -p vijjanadatabase <

vijjanadata.sql.”

12. The above command will dump the data vijjanadata.sql in the

vijjanadatabse created on your local machine. A dialog box will appear

showing Dump is complete. This means that the data has been imported

into the local database and is available for usage.

13. After the data has been imported into the local database (Vijjanadatabase),

it can be used for further execution of queries and for generating the

XML’s required for the visualization.

34

Page 40: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Figure 15: Local Database

35

Page 41: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

5 Conclusion

Thus according to the standards and format of IEEE 1484.12.1, a database schema

has been designed. The user database has been integrated into the schema and a complete

Jan Structure has been developed for Vijjana. The corresponding script for this schema

has been generated. The scripts were executed over the server using the PHP-MyAdmin

tool and a database (vijjanadatabase) has been created (at csee.wvu.edu/phpMyAdmin).

Data is imported into this Database by using “PhpODPWorld” and PEARL scripting

language. A local Database has been created by using MySQL query browser interface

and is populated with a few amounts of data.

Now programming and query execution can be done on this local database rather

than working on the large some of data over the server.

36

Page 42: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

References [1] Ivan Herman, (W3C) Semantic Web Activity Lead. W3C Semantic Web. W3C. [Online] 1994-2008. http://www.w3.org/2001/sw/.

[2] Vijjana: A Pragmatic Model for Collaborative, Self-organizing, Domain Centric. Reddy, Dr. Ramana. Morgantown : IKE08, 2008.

[3] Corporation, Netscape Communications. About the Open Directory Project. dmoz. [Online] Netscape Communications Corporation, 1998-2005. http://www.dmoz.org/about.html.

[4] W3C. Resource Description Framework (RDF). W3C. [Online] http://www.w3.org/RDF/.

[5] Hansfn, Srainwater, ODP Editors. phpODPWorld. sourceforge.NET. [Online] http://phpodpworld.sourceforge.net/.

[6] Visualization module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge Networks. Sasanka Babu Gottipati.

[7] IEEE 1484.12.1-2002, 15 July 2002 Draft Standard for Learning Object Metadata. [PDF] http://ltsc.ieee.org/wg12/files/LOM_1484_12_1_v1_Final_Draft.pdf

[8] Wolf, Boris. Storing RDF Metadata in a Relational Database V1.2. 2001, [Online] http://www.kbs.uni-hannover.de/Arbeiten/Studienarbeiten/01/Wolf/olr_documentation.pdf.

[9] MySQL Query Browser cross-platform GUI client program [Online] http://www.mysql.com/products/tools/query-browser/

[10] MySQL 5.0 Reference Manual B.2. Server Error Codes and Messages [Online] http://dev.mysql.com/doc/refman/5.0/en/error-messages-server.html

[11] LINFO Created June 22, 2006. Copyright © 2006 The Linux Information Project. All Rights Reserved. http://linfo.org [Online]

[12] UCL INFORMATION SERVICES DIVISION WEB SERVICES www.ucl.ac.uk [online]

[13] http://www.phpmyadmin.net/home_page/index.php The phpMyAdmin project, effective MySQL management

[14] Database Agent and Data for Visualization of vijJAna, a Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge Networks by Durga Vardhineedi

37

Page 43: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

APPENDIX A Defense Presentation Slides Follows:

38

Page 44: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Database Module Of VIJJANA

Amara Satish KumarWest Virginia University

Page 45: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

SCENARIOX is searching for a Video Tutorial

Y Is Readily Available.

Y should have experience

COLLABORATION

Page 46: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

No need to browse through unnecessary resources

Time is saved

Secured and Reliable InterfaceWorks in a Interactive and Collaborative way.Y need not to be a best Pal of X.

INTERACTION

Page 47: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

VIJJANAVijjana: A Pragmatic Model for Collaborative, Self-organizing, Domain Centric Knowledge Networks.vijJAna includes understanding, comprehending, recognizing, intelligence, knowledge, the act of distinguishing or discerning, science, doctrine, etc.Vijjana itself form a knowledge base with huge amount of Data and also allows users to store some information in its database.Strictly speaking it allows user to store information of his choice as well as view information from its database.

Page 48: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

VIJJANA MODELVijjana-X = { J, T, R, dA, oA, cA, vA, sA, rA}

X = the domain name J = the collection of Jans in the Vijjana-X T = the Taxonomy used for classification of Jans R = the domain specific relations dA = the discovery agent which find relevant Jans oA = the organizing agent which interlinks the Jans

based on R cA = the consistency/completeness agent vA = the visualization agent sA = the search agent rA = the rating agent

Page 49: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

VIJJANA ARCHITECTURE

Page 50: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

VIJJANA CLIENT ARCHITECTURE

Page 51: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

FEAUTURES OF VIJJANAHuge TaxonomyClassified resourcesMarkup Of JAN’sSearching through Concepts rather than keywordsVisualization of the desired domain or topic.Knowledge of other users on information resource

Rating of Jan’sComments on JanComment RatingKeywords

Also provides interaction between usersChat client andEmail

Page 52: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

BUILDING OF VIJJANA DATABASEVijjana generally will have two types of Data, the raw data and the User data. Both these data’s help Vijjana build its knowledge networkUser Data:

A user mark’s up a JAN of his own interest.Organizing agent places this JAN at the appropriate place according to its properties.This new JAN is added to the database of Vijjana and is now available for other user’s.The new JAN:

Can be Marked Up by another user.Can be Commented.Can be rated etc

Page 53: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Raw Data:This is the core data of Vijjana database.We need a large collection of data.Pre-defined taxonomy.Well organized data with respect to a particular domain.A well defined schema.

Populating the Database with the raw data.When the user marks up the JAN, the organizing agent places the JAN in the database at the appropriate place.User visualizes the data according to his wish.

Page 54: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

DATABASE MODULE Of VIJJANA

VIJANA Agents

VIJJANA DatabaseVIJJANA Database

Email And ChatClient

Page 55: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

IEEE STANDARDThis is a multi-part standard that specifies learning object metadata. Specifies a conceptual data schema that defines the structure ofa metadata instance for a learning object. For this standard, a metadata instance for a learning object describes relevant characteristics of the learning object. Such characteristics may be grouped in general, life cycle, meta-metadata, technical, educational, rights, relation, annotation, and classification categories.

Page 56: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

classificationThis category describes this learning object in relation to a particular classification system.

educationalThis category groups the educational and pedagogic characteristics of the learning object.

generalThis category groups the general information that describes the learning object as a whole.

technicalThis category groups the technical requirements and technical characteristics of the learning object.

rightsThis category groups the intellectual property rights and conditions of use for the learning object.

Page 57: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

DB DESIGNER 4Open Source, freely available Software.DBDesigner 4 is a database design system that integrates database design, modelling, creation and maintenance into a single, seamless environment. A model is a visualization of the meta-information stored in a database (e.g. Tables and Indices, Relations, ...). They only represents the meta-information, not the data itself. When DBDesigner 4 is switched to Query Mode the model can be used to build complex SQL querys and edit the tables' data.

Page 58: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

JANSTRUCTURE

Page 59: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Schema Description

The Above picture shows the typical schema or structure of the Vijjana Database.The tables General, Identifier and Classification are related to the Collection of the JAN’s form the Open Directory Project.The Properties of the JAN are given by the tables:

1. Educational2. Technical3. Rights

The Status of the Jan is given by the Table Life Cycle.The User Information is given in the table MembershipThe relation between the user and JAN is given by the tables:

1. Comment2. CommentRating3. JanRating4. Keyword

Page 60: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,
Page 61: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ODP DMOZ.ORG

ODP is the largest, most comprehensive human-edited directory of the web by Volunteer editors. 4,600,074 Sites, 80,917 editors and over 590,000 categories.Constantly Growing.This open source ODP is used as the standard taxonomy.widely used as a directory standard of World Wide Web by several search engines like Google and Linux.

Page 62: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

IMPORTING DATADownload phpODPWorldPackageThe script used to import the RDF file into database is developed by Steve who is one of open directory project editor.Based on the tools he designed, we can easily manipulate data by searching by their categories and their own features.We also apply different searching algorithm to generate keywords on them.First, we write this sql script to fetch data from the database.Second, we generate the key words from the description.Third, Refine the Result set by keywords:Fourth: Organize them into the format we need.

Page 63: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ODP to VIJJANA DATABASEConnecting to the Database

‘dbi:mysql:dbname;host=localhost",“Username","password’Delete Existing Content of the new Database.Intialize a DB handler to insert Data into the New Database.Initialize An XML ParserParse The File Content.clean and Structure.Clean

Page 64: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

The data has been Imported into the three main tables of VijjanaDatabase namely

The Important Fields Of these tables areGeneral IdCoverageDescriptionEntry

Page 65: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

MySQL QUERY BROWSERThe MySQL Query Browser is a graphical shell where you can execute queries and develop SQL scripts, with several features to help you improve your productivity MySQL Query Browser interface tries to mimic the interface of a web browser. Here we are using MySQL query browser to create a local database. Queries are executed on this local database to extract data in the desired manner for the generation of the XML’s. Since the MySQL query browser interface almost acts as the original browser, our task is to fill the local database with the data present in the original database over the server.

Page 66: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Create Database Vijjanadatabase;

SELECT * FROM general g;

INSERT INTO General VALUES(0,0,0,0,0,'Top/Adult',0,0,0,0,0);

Page 67: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

Personal VIJJANA Database

Now programming and query execution can be done on this local database rather than working on the large some of data over the server.

Page 68: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ConclusionThus according to the standards and format of IEEE 1484.12.1, a database schema has been designed. The user database has been integrated into the schema and a complete Jan Structure has been developed for Vijjana.Data is imported into this Database by using “PhpODPWorld”and PEARL scripting language. A local Database has been created by using MySQL query browser interface and is populated with a few amounts of data.

Page 69: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,
Page 70: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,

ACKNOWLEDGEMENTDr. Yenumula V. Reddy, Ph.D., ChairDr. James D. Mooney, Ph.D.Dr. Sumitra Reddy, Ph.D.

Luyi Wang, Friends & Vijjana TeamFamily

Page 71: Database module of Vijjana, a Pragmatic Model for ...wvuscholar.wvu.edu/reports/Amara_Satish.pdf · Database module of Vijjana, a Pragmatic Model for Collaborative, Self-organizing,