Queries

Enabling

Querying

for

Semantic

Associations

on

the

Semantic

Web

This

paper

presents

the

notion

of

Semantic

Associations

as

complex

relationships

between

resource

entities

These

relationships

capture

both

a

connectivity

of

entities

as

well

as

similarity

of

entities

based

on

a

specific

notion

of

similarity

called

isomorphism

It

formalizes

these

notions

for

the

RDF

data

model

by

introducing

a

notion

of

a

Property

Sequence

as

a

type

In

the

context

of

a

graph

model

such

as

that

for

RDF

Semantic

Associations

amount

to

specific

certain

graph

signatures

Specifically

they

refer

to

sequences

-LRB-

i.e.

directed

paths

-RRB-

here

called

Property

Sequences

between

entities

networks

of

Property

Sequences

-LRB-

i.e.

undirected

paths

-RRB-

or

subgraphs

of

isomorphic

Property

Sequences

The

ability

to

query

about

the

existence

of

such

relationships

is

fundamental

to

tasks

in

analytical

domains

such

as

national

security

and

business

intelligence

where

tasks

often

focus

on

finding

complex

yet

meaningful

and

obscured

relationships

between

entities

However

support

for

such

queries

is

lacking

in

contemporary

query

systems

including

those

for

RDF

This

paper

discusses

how

querying

for

Semantic

Associations

might

be

enabled

on

the

Semantic

Web

through

the

use

of

an

operator

It

also

discusses

two

approaches

for

processing

queries

on

available

persistent

RDF

stores

and

memory

resident

RDF

data

graphs

thereby

building

on

current

RDF

query

languages

H.

-LSB-

Information

Systems

-RSB-

Database

Management

Query

Languages

Languages

Theory

Management

The

Semantic

Web

-LSB-

-RSB-

proposes

to

explicate

the

meaning

of

Web

resources

by

annotating

them

with

metadata

that

have

been

described

in

an

ontology

This

will

enable

machines

to

understand

the

meaning

of

resources

on

the

Web

thereby

unleashing

the

potential

for

software

agents

to

perform

tasks

on

behalf

of

humans

Consequently

significant

effort

in

the

Semantic

Web

research

community

is

devoted

to

the

development

of

machine

processible

ontology

representation

formalisms

Some

success

has

been

realized

in

this

area

in

the

form

of

standards

such

as

the

eXtensible

Markup

Language

-LRB-

XML

-RRB-

-LSB-

-RSB-

which

is

a

standard

for

data

representation

and

exchange

on

the

Web

and

the

Resource

Description

Framework

-LRB-

RDF

-RRB-

-LSB-

-RSB-

along

with

its

companion

specification

RDF

Schema

-LRB-

RDFS

-RRB-

-LSB-

-RSB-

which

together

provide

a

uniform

format

for

the

description

and

exchange

of

the

semantics

of

web

content

Other

noteworthy

efforts

include

OWL

-LSB-

-RSB-

Topic

Maps

-LSB-

-RSB-

DAML+OIL

-LSB-

-RSB-

There

are

also

related

efforts

in

both

the

academic

and

commercial

communities

which

are

making

available

tools

for

semi-automatic

-LSB-

-RSB-

and

automatic

-LSB-

-RSB-

-LSB-

-RSB-

semantic

-LRB-

ontology-driven

and/or

domain-specific

-RRB-

metadata

extraction

and

annotation

With

the

progress

towards

realizing

the

Semantic

Web

the

development

of

semantic

query

capabilities

has

become

a

pertinent

research

problem

Semantic

querying

techniques

will

exploit

the

semantics

of

web

content

to

provide

superior

results

than

present-day

techniques

which

rely

mostly

on

lexical

-LRB-

e.g.

search

engines

-RRB-

and

structural

properties

-LRB-

e.g.

XQuery

-LSB-

-RSB-

-RRB-

of

a

document

There

are

now

a

number

of

proposals

for

querying

RDF

data

including

RQL

-LSB-

-RSB-

SquishQL

-LSB-

-RSB-

TRIPLE

-LSB-

-RSB-

RDQL

-LSB-

-RSB-

These

languages

offer

most

of

the

essential

features

for

semantic

querying

such

as

the

ability

to

query

using

ontological

concepts

inferencing

as

part

of

query

answering

and

some

allow

the

ability

to

specify

incomplete

queries

through

the

use

of

path

expressions

One

key

advantage

of

this

last

feature

is

that

users

do

not

need

to

have

in-depth

knowledge

of

schema

and

are

not

required

to

specify

the

exact

paths

that

qualify

the

desired

resource

entities

However

even

with

such

expressive

capabilities

many

of

these

languages

do

not

adequately

support

a

query

paradigm

that

enables

the

discovery

of

complex

relationships

between

resources

The

pervasive

querying

paradigm

offered

by

these

languages

is

one

in

which

queries

are

of

the

form

Get

all

entities

that

are

related

to

resource

A

via

a

relationship

R

where

R

is

typically

specified

as

possibly

a

join

condition

or

path

expression

etc.

In

this

approach

a

query

is

a

Copyright

is

held

by

the

author/owner

-LRB-

s

-RRB-

May

Budapest

Hungary

ACM

specification

of

which

entities

-LRB-

i.e.

resources

-RRB-

should

be

returned

in

the

result

Sometimes

the

specification

describes

a

relationship

that

the

qualifying

entities

should

have

with

other

entities

e.g.

a

join

expression

or

a

path

expression

indicating

a

structural

relationship

However

the

requirement

that

such

a

relationship

be

specified

as

part

of

the

query

is

prohibitive

in

domains

with

analytical

or

investigative

tasks

such

as

national/homeland

security

-LSB-

-RSB-

and

business

intelligence

where

the

focus

is

on

trying

to

uncover

obscured

relationships

or

associations

between

entities

and

very

limited

information

about

the

existence

and

nature

of

any

such

relationship

is

known

to

the

user

In

fact

in

this

scenario

the

relationship

between

entities

is

the

subject

of

the

user

's

query

and

should

being

returned

as

the

result

of

the

query

as

opposed

to

be

specified

as

part

of

the

query

That

is

queries

would

be

of

the

form

How

is

Resource

A

related

to

Resource

B

For

example

a

security

agent

may

want

to

find

any

relationship

between

a

terrorist

act

and

a

terrorist

organization

or

a

country

known

to

support

such

activities

One

major

challenge

in

dealing

with

queries

of

this

nature

is

that

it

is

often

not

clear

exactly

what

notion

of

a

relationship

is

required

in

the

query

For

example

in

the

context

of

assessing

flight

security

the

fact

that

two

passengers

on

the

same

flight

are

nationals

of

a

country

with

known

terrorist

groups

and

that

they

have

both

recently

acquired

some

flight

training

may

indicate

an

association

due

to

a

similarity

On

the

other

hand

the

fact

that

a

passenger

placed

a

phone

call

to

someone

in

another

country

that

is

known

to

have

links

to

terrorist

organizations

and

activities

may

indicate

another

type

of

association

characterized

by

connectivity

Therefore

various

notions

of

relatedness

should

be

supported

This

paper

intends

to

make

two

main

contributions

First

we

formalize

a

set

of

complex

relationships

for

the

RDF

data

model

which

we

call

Semantic

Associations

Second

we

outline

two

possible

approaches

for

processing

queries

about

Semantic

Associations

through

the

use

of

an

operator

-LRB-

Queries

-RRB-

One

of

the

two

approaches

is

based

on

processing

queries

on

persistent

RDF

data

systems

such

as

RDFSuite

-LSB-

-RSB-

while

the

other

is

based

on

processing

these

queries

on

a

main

memory

based

representation

of

an

RDF

model

such

as

JENA

-LSB-

-RSB-

The

rest

of

the

paper

is

organized

as

follows

Section

discusses

some

background

and

motivates

our

work

with

the

help

of

an

example

Section

presents

the

formal

framework

for

Semantic

Associations

section

discusses

implementation

strategies

for

the

operator

section

reviews

some

related

work

and

section

concludes

the

paper

Although

there

are

various

knowledge

modeling

languages

that

may

be

used

on

the

Semantic

Web

such

as

Topic

Maps

-LSB-

-RSB-

UML

-LSB-

-RSB-

DAML+OIL

-LSB-

-RSB-

OWL

-LSB-

-RSB-

etc.

in

this

paper

we

have

chosen

to

formalize

Semantic

Associations

for

the

RDF

data

model

It

should

be

clear

that

we

are

not

suggesting

that

the

notion

of

Semantic

Associations

only

applies

to

RDF

On

the

contrary

the

notion

is

very

general

and

is

applicable

to

any

data

model

that

can

be

represented

as

a

graph

The

choice

of

RDF

for

formalization

does

not

confer

serious

problems

however

In

the

first

place

some

of

these

other

models

e.g.

DAML+OIL

build

upon

RDF

Secondly

there

is

work

on

mappings

from

other

formalisms

to

RDF

-LSB-

-RSB-

-LSB-

-RSB-

Next

we

will

briefly

summarize

the

RDF

data

model

and

then

motivate

our

work

with

an

example

RDF

RDF

-LSB-

-RSB-

is

a

standard

for

describing

and

exchanging

semantics

of

web

resources

It

provides

a

simple

data

model

for

describing

relationships

between

resources

in

terms

of

named

properties

and

their

values

The

rationale

for

the

model

is

that

by

describing

what

relationships

an

entity

has

with

other

entities

we

somehow

capture

the

meaning

of

the

entity

Relationships

in

RDF

or

Properties

as

they

are

called

are

binary

relationships

between

two

resources

or

between

a

resource

and

a

literal

value

An

RDF

Statement

which

is

a

triple

of

the

form

-LRB-

Subject

Property

Object

-RRB-

asserts

that

a

resource

the

Subject

has

a

Property

whose

value

is

the

Object

-LRB-

which

can

be

either

another

resource

or

a

literal

-RRB-

This

model

can

be

represented

as

a

labeled

directed

graph

where

nodes

represent

the

resources

-LRB-

ovals

-RRB-

or

literals

-LRB-

rectangles

-RRB-

and

arcs

representing

properties

whose

source

is

the

subject

and

target

is

the

object

and

are

labeled

with

the

name

of

the

property

For

example

in

the

bottom

part

of

Figure

we

can

see

a

node

connected

by

a

paints

arc

to

the

node

which

reflects

the

fact

that

-LRB-

a

painter

with

first

name

Pablo

and

last

name

Picasso

-RRB-

painted

another

resource

-LRB-

a

painting

-RRB-

The

meaning

of

the

nodes

and

arcs

is

derived

from

the

connection

of

these

nodes

and

arcs

to

a

vocabulary

-LRB-

the

top

part

of

the

figure

-RRB-

The

vocabulary

contains

describes

types

of

entities

i.e.

classes

-LRB-

e.g.

Museum

-RRB-

and

types

of

properties

-LRB-

e.g.

creates

-RRB-

for

the

domain

The

vocabulary

description

and

is

done

using

the

companion

specification

to

RDF

called

the

RDF

Schema

specification

-LSB-

-RSB-

For

example

in

Figure

classes

like

Painter

Museum

and

properties

such

as

Paints

are

defined

Resources

are

connected

to

classes

using

an

rdf

typeof

property

indicating

an

instantiation

relationship

MOTIVATING

EXAMPLE

Although

the

focus

of

our

current

evaluations

involves

scenarios

in

the

National

Security

domain

for

brevity

and

pedagogical

reasons

for

this

paper

we

have

chosen

to

use

a

modified

version

of

the

example

from

-LSB-

-RSB-

We

will

now

illustrate

Semantic

Associations

by

way

of

a

simple

example

shown

in

Figure

The

figure

shows

an

RDF

model

base

containing

information

to

be

used

in

the

development

of

a

cultural

portal

given

from

two

perspectives

reflected

in

two

different

schemas

-LRB-

the

top

part

of

the

figure

-RRB-

The

top

left

section

of

the

picture

is

a

schema

that

reflects

a

museum

specialist

's

perspective

of

the

domains

using

concepts

like

Museum

Artist

Artifact

etc.

The

top

right

section

is

a

schema

that

reflects

a

Portal

administrator

's

perspective

of

the

domains

using

administrative

metadata

concepts

like

file-size

mime-type

etc.

to

describe

resources

The

lower

part

of

the

figure

is

the

model

base

-LRB-

or

description

base

in

the

linguo

of

-LSB-

-RSB-

-RRB-

that

has

descriptions

about

some

Web

resources

e.g.

museum

websites

-LRB-

-RRB-

images

of

artifacts

-LRB-

-RRB-

and

for

resources

that

are

not

directly

present

on

the

Web

e.g.

people

nodes

representing

electronic

surrogates

are

created

-LRB-

for

the

artists

Pablo

Picasso

Rembrandt

and

Rodin

August

respectively

-RRB-

Reina

Sofia

Museun

oil

on

canvas

oil

on

canvas

Rodin

Museum

image/jpeg

Ext.

Resource

String

Date

Integer

String

title

e

m

i

m

e

t

y

p

e

Artist

Sculptor

Artifact

Sculpture

Museum

String

String

String

fname

lname

creates

exhibited

sculpts

String

Painting

Painter

paints

technique

material

typeOf

-LRB-

instance

-RRB-

subClassOf

-LRB-

isA

-RRB-

subPropertyOf

mime-type

exhibited

technique

exhibited

title

title

technique

exhibited

Rodin

August

fname

lname

fname

lname

paints

paints

creates

Rembrandt

Pablo

Picasso

fname

Figure

Cultural

Portal

Information

in

RDF

Typically

a

query

language

allows

you

to

find

all

entities

that

are

related

by

a

specific

relationship

For

example

we

may

ask

a

query

to

retrieve

all

resources

related

to

resource

via

a

paints

relationship

or

via

a

paints.exhibited

relationship

and

get

as

a

result

for

the

first

query

and

as

the

answer

for

the

second

query

However

we

are

unable

to

ask

queries

such

as

How

are

resources

and

related

Such

a

query

should

return

for

example

that

paints

which

is

exhibited

in

indicating

a

path

connecting

the

two

entities

With

a

query

such

as

this

one

the

user

is

trying

to

determine

if

there

is

a

relationship

between

entities

and

what

the

nature

of

the

relationship

-LRB-

s

-RRB-

is

-LRB-

are

-RRB-

It

should

be

possible

to

ask

such

a

query

without

any

type

of

specification

as

to

the

nature

of

the

relationship

such

as

using

a

path

expression

to

give

information

about

the

structure

of

the

relationship

For

example

the

following

example

RQL

query

select

from

-LCB-

Artist

-RCB-

@P

-LCB-

X

-RCB-

-LCB-

Sculpture

-RCB-

@Q

-LCB-

Y

-RCB-

@R

-LCB-

Z

-RCB-

finds

all

data

paths

that

traverse

the

class

hierarchies

Artist

and

Sculpture

containing

three

schema

properties

one

for

each

property

variable

-LRB-

@variable

-RRB-

However

we

notice

that

the

query

requires

that

a

property

variable

be

added

for

every

edge

in

the

required

path

That

is

the

user

is

required

to

have

some

idea

of

at

least

the

structure

e.g.

length

of

the

relationship

One

approach

that

some

of

these

systems

offer

to

alleviate

this

problem

is

that

they

provide

mechanisms

for

browsing

or

querying

schemas

to

allow

users

to

get

the

information

they

need

While

this

may

be

a

reasonable

requirement

when

querying

specific

domains

with

a

few

schemas

involved

on

the

Semantic

Web

many

schemas

may

be

involved

in

a

query

and

requiring

a

user

to

browse

them

all

would

be

a

daunting

task

for

the

user

In

fact

in

some

cases

such

information

may

not

be

available

to

all

users

-LRB-

e.g.

classified

information

-RRB-

even

though

the

data

may

be

used

indirectly

to

answer

queries

Furthermore

browsing

schemas

do

not

always

give

the

complete

picture

especially

in

the

case

of

RDFS

schemas

because

entities

may

belong

to

different

schemas

creating

links

between

entities

that

are

not

obvious

from

just

looking

at

the

schemas

For

example

in

Figure

the

relationship

paints.exhibited.title

connecting

to

Reina

Soifa

Museum

is

not

apparent

by

just

looking

at

either

schema

So

far

we

have

talked

about

relationships

in

terms

of

a

directed

path

connecting

two

entities

However

there

are

some

other

interesting

types

of

relationships

Let

us

take

for

example

resources

and

Both

resources

could

be

said

to

be

related

because

they

have

both

created

artifacts

-LRB-

and

-RRB-

that

are

exhibited

at

the

same

museum

-LRB-

-RRB-

In

this

case

having

some

relationship

to

the

same

museum

associates

both

resources

This

kind

of

connectivity

is

an

undirected

path

between

the

entities

Another

closely

related

kind

of

association

is

class

membership

For

example

and

are

both

Artists

even

though

of

a

different

kind

and

therefore

are

somewhat

associated

Also

and

could

be

said

to

be

associated

because

they

both

have

creations

-LRB-

and

-RRB-

that

are

exhibited

by

a

Museum

-LRB-

and

respectively

-RRB-

In

this

case

the

association

is

that

of

a

similarity

So

in

the

first

three

associations

the

relationships

capture

some

kind

of

connectivity

between

entities

while

the

last

association

captures

a

similarity

between

entities

Note

that

the

notion

of

similarity

used

here

is

not

just

a

structural

similarity

but

a

semantic

similarity

of

paths

-LRB-

nodes

and

edges

-RRB-

that

the

entities

are

involved

in

Nodes

are

considered

similar

if

they

have

a

common

ancestor

class

For

example

in

the

relationship

involving

and

although

one

case

involves

a

painting

and

the

other

a

sculpture

we

consider

them

similar

because

sculptures

and

paintings

are

kinds

of

Artifacts

and

sculpting

and

painting

are

both

kinds

of

creative

activities

-LRB-

the

notion

of

similarity

is

extended

to

properties

as

well

-RRB-

The

Semantic

Associations

shown

in

this

example

are

fairly

simple

involving

only

short

paths

and

are

useful

only

for

the

purpose

of

illustration

However

in

environments

that

support

information

analytics

and

knowledge

discovery

involve

longer

paths

especially

undirected

paths

which

are

not

easily

detectable

by

users

in

fast-paced

environments

For

example

at

airport

security

portals

agents

may

want

to

quickly

determine

if

a

passenger

has

any

kind

of

link

to

terrorist

organizations

or

activities

The

framework

described

in

this

section

provides

a

formal

basis

for

Semantic

Associations

It

builds

on

the

formalization

for

the

RDF

data

model

given

in

-LSB-

-RSB-

by

including

a

notion

of

a

Property

Sequence

A

Property

Sequence

allows

us

to

capture

paths

in

the

RDF

model

and

forms

the

basis

for

formalizing

Semantic

Associations

as

binary

relations

on

Property

Sequences

Secondly

we

some

complex

queries

called

queries

for

querying

about

Semantic

Associations

Formal

Data

Model

In

section

we

describe

the

RDF

data

model

informally

as

a

labeled

directed

graph

To

recap

the

RDF

Schema

specification

-LSB-

-RSB-

provides

a

special

vocabulary

for

describing

classes

and

properties

in

a

domain

A

Property

is

defined

by

specifying

its

domain

-LRB-

the

set

of

classes

that

it

applies

to

-RRB-

and

its

range

-LRB-

either

a

Literal

type

e.g.

String

Integer

etc

or

the

classes

whose

entities

it

may

take

as

values

-RRB-

Classes

are

defined

in

terms

of

their

relationship

to

other

classes

using

the

rdfs

sublassOf

property

to

place

them

at

the

appropriate

location

in

a

class

hierarchy

as

well

as

other

user

specified

properties

that

may

include

them

in

their

range

or

domain

thereby

linking

them

to

other

classes

Properties

may

also

be

organized

in

a

hierarchy

using

the

rdfs

subPropertyOf

property

The

formalization

in

-LSB-

-RSB-

defines

a

graph

data

model

along

with

a

type

system

that

connects

the

RDF

Model

Syntax

specification

with

the

RDFS

schema

specification

using

an

interpretation

mechanism

It

forms

the

basis

for

a

typed

RDF

query

language

called

RQL

-LSB-

-RSB-

RQL

is

fairly

expressive

and

supports

a

broad

range

of

queries

Its

type

system

T

is

the

set

of

all

possible

types

that

can

be

constructed

from

the

following

types

C

P

M

U

L

-LCB-

-RCB-

-LSB-

n

n

-RSB-

-LRB-

n

n

-RRB-

where

C

indicates

a

class

type

P

a

property

type

M

a

metaclass

type

L

a

literal

type

in

the

set

L

of

literal

type

names

-LRB-

string

integer

etc.

-RRB-

and

U

is

the

type

for

resource

URIs

For

the

RDF

multi-valued

types

we

have

-LCB-

-RCB-

as

the

Bag

type

-LSB-

-RSB-

is

the

Sequence

type

and

-LRB-

-RRB-

is

the

Alternative

type

The

set

of

values

that

can

be

constructed

using

the

resource

URIs

literals

and

class

property

names

is

called

V.

Then

the

interpretation

of

types

in

T

is

given

naturally

by

the

interpretation

function

-LSB-

-LSB-

-RSB-

-RSB-

which

is

a

mapping

from

to

the

set

of

values

in

V.

For

example

a

class

C

is

interpreted

as

unary

relation

of

type

-LCB-

U

-RCB-

which

is

the

set

of

resources

-LRB-

i.e.

of

type

U

-RRB-

that

have

an

rdf

typeOf

property

with

range

C

and

includes

the

interpretations

of

the

subclasses

of

C.

For

a

property

p

-LSB-

-LSB-

p

-RSB-

-RSB-

is

given

by

-LCB-

-LSB-

v

v

-RSB-

v

-LSB-

-LSB-

p.domain

-RSB-

-RSB-

v

-LSB-

-LSB-

p.range

-RSB-

-RSB-

-RCB-

-LCB-

-LSB-

-LSB-

p

-RSB-

-RSB-

p

is

a

subPropertyOf

p

-RCB-

It

defines

an

RDF

schema

as

a

RS

-LRB-

V

S

E

S

H

-RRB-

where

V

S

is

the

set

of

nodes

and

E

S

is

the

set

of

edges

is

an

incidence

function

E

S

V

S

V

S

and

is

a

labeling

function

that

maps

class

and

property

names

to

one

of

the

types

in

T

i.e.

V

S

E

S

T.

H

-LRB-

N

-RRB-

where

N

C

P

C

and

P

are

the

set

of

class

and

property

names

in

RS

respectively

H

is

a

well-formed

hierarchy

i.e.

is

a

smallest

partial

ordering

such

that

if

p

p

P

and

p

p

then

p

domain

p

domain

and

p

range

p

range

It

also

formalizes

an

instance

of

an

RDFS

schema

called

a

description

base

which

contains

all

the

asserted

instances

of

classes

and

properties

of

an

RDF

schema

We

generalize

these

definitions

to

sets

of

RDF

schemas

and

description

bases

as

basic

notion

of

context

for

a

query

Definition

The

RDFS

schema

set

of

RDFS

Schemas

RSS

-LCB-

RS

i

i

n

-RCB-

Let

C

C

C

C

where

C

Si

is

the

set

of

class

names

in

schema

RS

i

and

P

P

P

P

Sn

where

P

Si

is

the

set

of

property

names

in

RS

i

then

N

C

P

-LSB-

-RSB-

defines

a

description

base

RD

which

is

an

instance

of

an

RDFS

schema

RS

containing

all

the

asserted

instances

of

the

classes

and

properties

in

RS

We

generalize

that

definition

here

to

the

union

of

instances

of

the

set

of

schemas

in

an

RDFS

schema

set

Definition

An

instance

of

an

RDF

schema

set

RSS

-LCB-

RS

RS

RS

n

-RCB-

is

a

description

base

RDS

defined

as

a

-LRB-

V

DS

E

DS

-RRB-

where

V

DS

V

V

V

Dn

and

V

Di

is

the

set

of

nodes

in

the

description

base

of

the

schema

RS

i

and

E

DS

is

defined

similarly

is

the

incidence

function

E

DS

V

DS

V

DS

is

a

value

function

that

maps

the

nodes

to

the

values

in

V

i.e.

V

DS

V

is

a

labeling

function

that

maps

each

node

either

to

one

of

the

container

type

names

-LRB-

Seq

Bag

Alt

-RRB-

or

to

a

set

of

class

names

from

the

schema

set

RSS

whose

interpretations

contain

the

value

of

the

node

and

each

edge

e

-LSB-

v

v

-RSB-

to

a

property

name

p

in

RSS

where

the

interpretation

of

p

contains

the

pair

-LSB-

-LRB-

v

-RRB-

-LRB-

v

-RRB-

-RSB-

i.e.

the

values

of

v

and

v

Formally

V

D

E

D

N

-LCB-

Bag

Seq

Alt

-RCB-

in

the

following

manner

i.

For

a

node

n

in

RDS

-LRB-

n

-RRB-

-LCB-

c

c

C

and

-LRB-

n

-RRB-

-LSB-

-LSB-

c

-RSB-

-RSB-

-RCB-

ii

For

an

edge

e

from

node

n

to

n

-LRB-

e

-RRB-

p

P

and

the

values

of

n

to

n

belong

in

the

interpretation

of

p

-LSB-

-LRB-

n

-RRB-

-LRB-

n

-RRB-

-RSB-

-LSB-

-LSB-

p

-RSB-

-RSB-

In

order

capture

paths

in

the

RDF

graph

model

we

define

a

notion

of

a

Property

Sequence

represented

in

the

graph

as

a

sequence

of

edges

-LRB-

i.e.

properties

-RRB-

There

is

a

choice

to

be

made

in

the

method

for

realizing

such

a

notion

in

a

query

language

such

as

RQL

One

option

is

to

add

paths

or

property

sequences

as

types

in

a

query

language

making

them

first

class

citizens

The

second

option

is

to

realize

them

as

complex

operations

such

as

Cartesian

product

on

property

types

We

choose

the

later

approach

because

attempting

to

make

paths

as

first

class

citizens

brings

up

additional

issues

such

as

defining

path

subsumption

and

so

on

We

will

now

define

the

notion

of

a

Property

Sequence

Definition

-LRB-

Property

Sequence

-RRB-

A

Property

Sequence

PS

is

a

finite

sequence

of

properties

-LSB-

P

P

P

P

n

-RSB-

where

P

i

is

a

property

defined

in

an

RDF

Schema

RS

j

of

a

schema

set

RSS

The

interpretation

of

PS

is

given

by

-LSB-

-LSB-

PS

-RSB-

-RSB-

i

n

-LSB-

-LSB-

P

i

-RSB-

-RSB-

where

for

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

called

an

instance

of

PS

ps

-LSB-

i

-RSB-

-LSB-

-LSB-

P

i

-RSB-

-RSB-

for

i

n

and

ps

-LSB-

i

-RSB-

-LSB-

-RSB-

ps

-LSB-

i

-RSB-

-LSB-

-RSB-

-RRB-

ps

-LSB-

i

-RSB-

-LSB-

-RSB-

refers

to

the

second

element

of

the

i

th

ordered

pair

and

ps

-LSB-

i

-RSB-

-LSB-

-RSB-

refers

to

the

first

element

of

the

i

th

ordered

pair

We

define

a

function

NodesOfPS

-LRB-

-RRB-

which

returns

the

set

of

nodes

of

a

Property

Sequence

PS

i.e.

PS.NodesOfPS

-LRB-

-RRB-

-LCB-

C

C

C

C

k

-RCB-

where

C

i

is

a

class

in

either

the

domain

or

range

of

some

Property

P

j

in

PS

j

n.

For

example

in

Figure

for

PS

c

reates.exhibited.title

PS

NodesOfPS

-LRB-

-RRB-

-LCB-

Artist

Artifact

Museum

Ext.

Resource

String

-RCB-

Let

PS

-LSB-

P

P

P

P

n

-RSB-

a

description

base

RDS

is

said

to

satisfy

or

be

a

model

of

PS

-LRB-

RDS

PS

-RRB-

if

there

exists

a

sequence

of

edges

e

e

e

e

n

in

the

description

base

RDS

such

that

for

all

i

-LRB-

e

i

-RRB-

P

i

-LRB-

e

i

-RRB-

-LRB-

v

i

v

i

-RRB-

and

i

n

-LRB-

v

i

v

i

-RRB-

ps

for

some

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

We

define

a

function

PSNodesSequence

-LRB-

-RRB-

on

Property

Sequence

instances

that

returns

its

sequence

of

nodes

i.e.

ps.PSNodesSequence

-LRB-

-RRB-

-LSB-

v

v

v

v

n

-RSB-

The

node

v

is

called

the

origin

of

the

sequence

and

v

n

is

called

the

terminus

Next

we

define

a

set

of

binary

relations

on

Property

Sequences

Definition

-LRB-

Joined

Property

Sequences

-RRB-

PS

PS

is

true

if

NodesOfPS

-LRB-

PS

-RRB-

NodesOfPS

-LRB-

PS

-RRB-

The

Property

Sequences

PS

and

PS

are

called

joined

and

for

C

-LRB-

NodesOfPS

-LRB-

PS

-RRB-

NodesOfPS

-LRB-

PS

-RRB-

-RRB-

C

is

called

a

join

node

For

example

in

Figure

the

sequences

creates.exhibited

and

paints.exhibited

are

joined

because

they

have

a

join

node

Museum

oil

on

canvas

oil

on

canvas

Artist

Sculptor

Artifact

Sculpture

Museum

String

String

fname

lname

creates

exhibited

sculpts

String

String

Painting

Painter

paints

technique

material

typeOf

-LRB-

instance

-RRB-

subClassOf

-LRB-

isA

-RRB-

subPropertyOf

exhibited

technique

exhibited

technique

exhibited

Rodin

August

fname

lname

fname

lname

paints

paints

creates

Rembrandt

Pablo

Picasso

fname

Figure

Isomorphic

Property

Sequences

Definition

-LRB-

Isomorphic

Property

Sequences

-RRB-

Two

property

sequences

PS

P

P

P

P

m

and

PS

Q

Q

Q

Q

m

are

called

isomorphic

-LRB-

PS

PS

-RRB-

if

for

all

i

i

m

P

i

Q

i

or

P

i

Q

i

or

Q

i

P

i

-LRB-

means

subPropertyOf

-RRB-

For

example

in

Figure

the

sequences

paints.exhibited

and

creates.exhibited

are

isomorphic

because

paints

is

considered

to

be

similar

to

creates

since

paints

is

a

subproperty

of

creates

Note

that

the

example

that

we

use

here

is

somewhat

misleading

because

the

example

shown

for

Joined

Property

Sequences

also

happens

to

be

Isomorphic

However

the

two

notions

are

quite

different

because

Joined

Property

Sequences

are

not

required

to

be

similar

Definition

-LRB-

Length

-RRB-

The

length

of

a

Property

Sequence

is

equal

to

the

number

of

properties

in

the

Property

Sequence

In

the

case

of

a

Joined

Property

Sequence

its

length

is

the

sum

of

all

the

properties

in

its

constituent

Property

Sequences

i.e.

the

length

of

the

undirected

path

from

origin

of

one

Property

Sequence

to

the

origin

of

the

other

Property

Sequence

For

example

in

Figure

the

Joined

Property

Sequences

-LSB-

creates.exhibited

paints.exhibited

-RSB-

has

a

length

of

Semantic

Associations

We

can

now

define

some

binary

relations

on

the

domain

of

entities

i.e.

resources

based

on

the

different

types

of

Property

Sequences

Definition

-LRB-

pathAssociated

-RRB-

pathAssociated

-LRB-

x

y

-RRB-

is

true

if

there

exists

a

Property

Sequence

with

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

and

either

x

and

y

are

the

origin

and

terminus

of

ps

respectively

or

vice

versa

i.e.

y

is

origin

and

x

is

terminus

Then

ps

is

said

to

satisfy

pathAssociated

-LRB-

x

y

-RRB-

written

as

ps

pathAssociated

-LRB-

x

y

-RRB-

Definition

-LRB-

joinAssociated

-RRB-

Let

PS

and

PS

be

two

Property

Sequences

such

that

PS

PS

with

a

join

node

C

and

there

exists

ps

and

ps

such

that

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

and

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

and

n

-LRB-

-RRB-

-LRB-

-RRB-

then

joinAssociated

-LRB-

x

y

-RRB-

is

true

if

either

of

the

conditions

are

satisfied

-RRB-

x

is

the

origin

of

ps

and

y

is

the

origin

of

ps

or

-RRB-

x

is

the

terminus

of

ps

and

y

is

the

terminus

of

ps

This

means

that

either

ps

PSNodesSequence

-LSB-

x

b

c

n

r

-RSB-

and

ps

PSNodesSequence

-LSB-

y

n

-RSB-

or

ps

PSNodesSequence

-LSB-

a

b

c

n

r

x

-RSB-

-RSB-

and

ps

PSNodesSequence

-LSB-

n

y

-RSB-

and

n

-LSB-

-LSB-

C

-RSB-

-RSB-

We

say

that

-LRB-

ps

ps

-RRB-

joinAssociated

-LRB-

x

y

-RRB-

Definition

-LRB-

cpAssociated

-RRB-

This

is

a

special

case

of

Definition

that

captures

an

inclusion

or

sibling

relationship

-LRB-

i.e.

common

parent

-RRB-

between

resources

cpAssociated

-LRB-

x

y

-RRB-

is

true

if

there

exists

two

Property

Sequences

PS

and

PS

such

that

PS

PS

which

satisfy

joinAssociated

-LRB-

x

y

-RRB-

and

both

PS

and

PS

are

of

the

form

rdf.typeOf

-LRB-

rdfs

subClassOf

-RRB-

This

relation

is

used

to

capture

the

notion

that

entities

are

related

if

they

either

belong

to

the

same

class

or

to

sibling

classes

For

example

and

are

related

because

they

are

both

Artists

We

say

that

-LRB-

ps

ps

-RRB-

cpAssociated

-LRB-

x

y

-RRB-

However

in

order

to

reduce

the

possibility

of

meaningless

associations

e.g.

both

x

and

y

belong

to

rdfs

Resource

we

make

further

restrictions

We

say

that

cpAssociated

-LRB-

x

y

-RRB-

is

strong

if

-RRB-

For

the

join

node

j

of

the

Joined

Property

Sequence

-LRB-

inducing

the

association

-LRB-

i.e.

the

common

parent

of

x

and

y

-RRB-

j

where

called

the

ceiling

refers

to

the

most

general

class

in

the

hierarchy

that

is

to

be

considered

which

is

usually

user-specified

-RRB-

the

length

of

the

Joined

Property

Sequence

inducing

the

association

is

minimal

By

minimal

we

mean

that

it

is

less

than

a

specific

value

indicated

by

context

or

specified

by

user

The

first

restriction

ensures

that

we

do

go

to

far

up

the

hierarchy

looking

for

a

common

parent

while

the

second

ensures

that

the

relationship

is

not

too

distant

to

be

meaningful

in

the

user

's

context

Definition

-LRB-

IsoAssociated

-RRB-

IsoAssociated

-LRB-

x

y

-RRB-

is

true

if

there

exists

two

property

sequences

PS

and

PS

such

that

PS

PS

and

there

exists

ps

and

ps

such

that

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

and

ps

-LSB-

-LSB-

PS

-RSB-

-RSB-

such

that

x

is

the

origin

of

ps

and

y

is

the

origin

of

ps

We

say

that

-LRB-

ps

ps

-RRB-

IsoAssociated

-LRB-

x

y

-RRB-

We

say

that

x

and

y

are

semantically

associated

if

either

pathAssociated

-LRB-

x

y

-RRB-

cpAssociated

-LRB-

x

y

-RRB-

IsoAssociated

-LRB-

x

y

-RRB-

or

joinAssociated

-LRB-

x

y

-RRB-

Queries

A

Query

Q

is

defined

as

a

set

of

operations

that

map

from

a

pair

of

keys

-LRB-

e.g.

resource

URIs

-RRB-

to

the

set

of

Property

Sequences

PS

in

the

following

manner

U

-LRB-

-RRB-

PS

U

-LRB-

-RRB-

PS

-LRB-

-RRB-

U

-LRB-

-RRB-

PS

-LRB-

-RRB-

U

-LRB-

-RRB-

-LCB-

-LCB-

x

y

-RCB-

x

y

U

and

x

y

-RCB-

Similarly

PS

-LRB-

-RRB-

is

the

set

of

pairs

of

Property

Sequences

In

we

map

from

a

pair

of

keys

x

and

y

to

a

set

of

Property

Sequences

that

induces

a

pathAssociation

of

x

and

y

In

we

map

from

-LRB-

x

y

-RRB-

to

a

set

of

binary

tuples

of

Property

Sequences

that

induces

either

a

joinAssociation

or

a

strong

cpAssociation

of

x

and

y

and

in

we

map

from

-LRB-

x

y

-RRB-

to

a

set

of

binary

tuples

of

Property

Sequences

that

induces

a

isoAssociation

Our

strategy

for

implementation

involves

investigating

alternative

approaches

to

implementing

the

operator

and

evaluate

their

merits

and

demerits

We

consider

two

major

categories

The

first

category

which

we

have

developed

a

partial

implementation

for

involves

leveraging

existing

RDF

persistent

data

storage

technologies

Here

a

query

processing

layer

is

developed

above

the

RDF

data

storage

layer

which

performs

some

of

the

computation

and

relegates

a

specific

portion

of

the

computation

to

the

data

store

layer

In

the

second

approach

the

implementation

involves

the

use

of

a

memory

resident

graph

representation

of

the

RDF

model

along

with

the

use

of

efficient

graph

traversal

algorithms

We

will

outline

how

query

processing

is

done

using

both

approaches

Exploiting

RDF

Data

Management

Systems

In

this

approach

we

leverage

existing

RDF

data

storage

technologies

such

as

RDFSuite

-LSB-

-RSB-

and

SESAME

-LSB-

-RSB-

and

develop

a

query

processing

layer

which

performs

some

of

the

computation

and

relegates

a

specific

portion

of

the

computation

to

the

data

store

layer

Figure

gives

an

illustration

of

this

approach

-LRB-

although

this

is

somewhat

of

an

oversimplification

it

adequate

for

the

purposes

of

this

discussion

-RRB-

Here

the

processing

of

a

query

is

broken

down

to

phases

Phases

and

occur

at

the

data

store

layer

and

phases

and

occur

at

the

query

processing

layer

Phase

captures

the

query

i.e.

the

resources

and

context

-LRB-

i.e.

schema

set

-RRB-

In

the

second

stage

the

resources

are

classified

i.e.

the

classes

that

entities

belong

to

within

the

given

context

are

identified

This

involves

a

query

to

the

data

store

layer

which

exploits

the

rdf

typeOf

statements

to

answer

the

query

Much

of

the

processing

is

done

in

the

third

phase

where

potential

paths

involving

the

entities

in

the

query

are

discussed

by

querying

a

PathGuide

-LRB-

a

combination

of

index

structures

that

stores

information

about

paths

that

exist

between

resources

classes

-RRB-

There

are

two

kinds

of

paths

that

are

kept

in

the

PathGuide

The

first

kind

of

path

is

that

which

is

obvious

from

the

schema

The

second

kind

is

those

paths

that

exist

at

the

data

level

but

are

not

evident

at

the

schema

level

This

is

because

of

the

fact

that

the

RDF

data

model

allows

multiple

classifications

of

entities

Consequently

every

instance

of

a

multiple

classification

induces

a

connection

between

two

classes

that

does

not

exist

at

the

schema

level

and

thus

is

not

general

to

all

entities

of

those

classes

Therefore

a

query

to

the

PathGuide

yields

potential

property

sequences

paths

between

entities

since

some

of

the

paths

are

not

general

to

entire

classes

but

specific

to

the

entities

that

are

multiply

classified

For

example

in

Figure

the

paints.exhibited.title

sequence

is

not

a

sequence

in

either

the

left

or

right

schema

but

is

present

in

the

description

base

-LRB-

i.e.

between

and

the

literal

node

Reina

Sofia

Museum

-RRB-

The

reason

for

this

is

s

membership

in

both

the

Museum

and

the

Ext.Resource

classes

this

can

be

seen

as

having

created

an

intermediate

class

node

that

collapses

Museum

and

the

Ext.Resource

classes

and

consequently

links

the

paints.exhibited

sequence

to

the

title

property

The

fourth

stage

of

query

processing

involves

the

validation

of

the

paths

found

in

the

PathGuide

for

the

specific

entities

in

the

query

by

executing

queries

on

the

underlying

data

store

The

output

of

this

stage

selects

only

those

paths

whose

queries

do

not

return

an

empty

result

A

B

E

C

D

A

B

E

C

D

A

B

E

C

D

Query

Entities

Classification

of

Entities

Identification

of

Candidate

Paths

Pruning

of

Invalid

Paths

Figure

Illustration

of

Query

Processing

Issues

Two

challenges

arise

from

storing

all

potential

paths

between

classes

in

the

PathGuide

indexes

The

first

is

that

it

causes

the

size

of

indexes

to

be

quite

large

Second

the

potential

paths

found

in

the

PathGuide

in

response

to

a

query

could

generate

a

large

number

of

RQL

queries

that

need

to

be

validated

at

the

data

store

layer

which

slows

down

processing

time

significantly

However

heuristics

could

be

employed

to

minimize

these

problems

For

example

to

reduce

the

size

of

the

indices

we

could

choose

to

avoid

adding

every

single

potential

path

between

classes

in

the

index

but

include

only

those

whose

support

value

is

at

least

as

large

as

a

user

supplied

threshold

value

where

the

support

value

represents

the

percentage

of

resources

that

are

involved

in

multiple

classification

for

any

given

pair

of

classes

This

means

that

if

very

few

resources

induce

a

connection

between

two

otherwise

unconnected

schema

classes

because

of

a

multiple

classification

then

we

do

not

include

in

the

indexes

those

additional

paths

created

due

to

the

multiple

classification

thereby

reducing

the

size

of

the

indices

The

rationale

for

this

is

that

the

probability

of

those

paths

being

involved

in

the

result

of

a

query

is

low

therefore

the

additional

cost

of

storing

the

paths

in

the

indices

may

not

be

worth

it

A

second

heuristic

is

to

try

to

prune

the

number

of

paths

that

need

to

be

validated

at

the

data

storage

layer

This

could

be

done

by

assigning

weights

to

Semantic

Associations

based

on

the

contextual

relevance

and

then

validating

only

those

associations

with

a

high

relevance

weight

Our

work

in

this

area

is

still

in

progress

An

additional

problem

with

processing

queries

on

existing

RDF

storage

systems

is

that

some

of

these

systems

represent

each

property

as

a

separate

relation

in

a

relational

database

model

Therefore

the

computation

of

a

Property

Sequence

results

in

a

large

number

of

joins

which

has

a

negative

impact

of

the

speed

of

query

processing

Currently

we

do

not

see

any

easy

solution

to

this

problem

Using

Graph

Algorithms

This

approach

involves

the

computation

of

Semantic

Associations

on

a

memory-resident

graph

representation

of

the

RDF

model

such

as

that

provided

by

JENA

-LSB-

-RSB-

or

the

memory

representation

of

the

schema

set

as

in

SESAME

-LSB-

-RSB-

to

which

graph

traversals

algorithms

can

be

applied

In

the

case

of

pathAssociation

we

can

search

for

paths

between

entities

and

in

the

case

of

a

joinAssociation

we

check

if

the

two

entities

belong

in

the

same

connected

component

One

issue

with

this

approach

is

that

that

trying

to

find

all

paths

between

entities

could

easily

lead

to

an

exponential

time

algorithm

However

-LSB-

-RSB-

provides

promising

fast

algorithms

for

solving

path

problems

which

may

be

employed

for

such

computations

In

particular

it

offers

near-linear

time

algorithms

for

computing

a

path

expression

representing

the

set

of

all

paths

between

nodes

in

a

graph

Such

a

representation

may

then

be

processed

using

contextual

information

to

prune

paths

that

are

not

very

relevant

in

the

given

context

In

addition

other

heuristics

may

be

added

For

example

a

user

may

be

asked

to

characterize

the

desired

result

set

e.g.

shortest

paths

or

longest

paths

which

will

also

help

to

reduce

the

result

set

Similar

heuristics

to

those

discussed

in

the

first

approach

that

use

context

to

prune

paths

based

on

degree

of

relevance

can

also

be

used

here

In

that

case

the

complexity

of

the

problem

can

be

analyzed

along

the

number

of

semantic

paths

retrieved

Complexity

-LRB-

-RRB-

-LRB-

l

-RRB-

-LRB-

paths

of

length

l

-RRB-

-LRB-

probability

of

keeping

path

of

length

l

-RRB-

Another

issue

is

the

complexity

of

graph

isomorphism

problem

which

is

known

to

be

NP-complete

However

certain

classes

of

graphs

have

properties

making

them

amenable

to

efficient

manipulation

For

example

-LSB-

-RSB-

describes

a

polynomial

time

algorithm

for

detecting

isomorphism

in

rooted

directed

path

graphs

which

includes

the

exact

class

of

graphs

that

are

required

for

checking

isomorphism

We

are

currently

working

on

a

prototype

implementation

of

this

approach

There

is

some

relationship

between

our

work

and

that

on

querying

object-oriented

and

semi-structured

data

using

path

expressions

-LSB-

-RSB-

-LSB-

-RSB-

-LSB-

-RSB-

-LSB-

-RSB-

-LSB-

-RSB-

-LSB-

-RSB-

-LSB-

-RSB-

Although

these

systems

provide

powerful

and

expressive

capability

allowing

users

to

query

for

data

without

having

in-depth

schema

knowledge

most

of

them

work

on

the

premise

that

the

goal

of

a

query

is

to

find

data

entities

but

not

complex

relationships

such

as

Semantic

Associations

Some

of

these

systems

-LSB-

-RSB-

-LSB-

-RSB-

support

paths

as

first

class

entities

and

allow

for

path

variables

to

be

used

outside

of

the

FROM

clause

i.e.

to

be

returned

as

a

result

of

a

query

which

suggests

that

queries

for

pathAssociations

could

be

supported

However

they

typically

assume

a

simpler

data

model

which

is

a

rooted

directed

graph

without

the

nuances

of

RDF

such

as

multiple

classification

and

property

hierarchies

Furthermore

the

more

complex

Semantic

Associations

such

as

the

joinAssociation

and

Isomorphism

are

not

supported

even

in

systems

like

-LSB-

-RSB-

which

provide

some

functions

that

range

over

path

variables

e.g.

the

difference

function

which

returns

the

difference

in

the

set

of

paths

that

originate

from

two

nodes

With

respect

to

RDF

the

current

generation

of

RDF

query

languages

RQL

-LSB-

-RSB-

SquishQL

-LSB-

-RSB-

RDQL

-LSB-

-RSB-

do

not

support

path

variables

as

first

class

entities

and

so

can

not

even

be

used

for

querying

for

path

relationships

In

the

case

of

the

logic-based

RDF

query

languages

such

as

TRIPLE

-LSB-

-RSB-

the

inference

rules

required

to

reason

about

the

full

range

of

the

Semantic

Associations

discussed

here

would

require

functionality

beyond

FOL

The

DISCOVER

system

-LSB-

-RSB-

provides

a

keyword

proximity

search

capability

over

relational

databases

which

return

associations

called

Joining

Sequences

Joining

Sequences

represent

the

paths

connecting

keywords

in

the

query

obtained

by

traversing

foreign

key

links

However

the

semantics

associated

with

these

associations

is

not

explicit

but

is

implicit

in

the

database

schema

Thus

the

interpretation

of

the

meaning

and

usefulness

of

the

associations

must

be

done

by

users

Furthermore

other

more

complex

Semantic

Associations

such

as

the

Isomorphism

are

not

captured

There

is

a

common

intuition

underlying

our

work

and

some

of

the

tasks

related

to

data

mining

in

that

they

both

involve

discovering

relationships

However

there

are

significant

differences

in

the

goals

methods

and

results

produced

by

the

both

kinds

of

systems

The

first

difference

is

articulated

in

a

statement

made

in

-LSB-

-RSB-

where

data

mining

is

said

to

be

opportunistic

while

information

access

techniques

-LRB-

such

as

ours

-RRB-

are

goal-driven

Traditional

data

mining

-LSB-

-RSB-

-LSB-

-RSB-

focuses

on

discovering

patterns

and

relationships

in

data

that

can

be

used

to

develop

models

of

the

data

In

association

analysis

-LSB-

-RSB-

rules

that

associate

attribute-value

pairs

are

learned

from

patterns

of

co-occurrences

of

attribute

values

in

data

which

capture

co-occurrence

relationships

between

attributes

On

the

contrary

we

do

not

try

to

learn

patterns

from

data

rather

we

provide

specific

rules

for

inferring

relationships

between

entities

by

looking

at

property

value

dependencies

and

focus

on

providing

methods

for

verifying

whether

these

kinds

of

associations

exist

between

entities

That

is

we

identify

meaningful

sequences

of

binary

predicates

while

data

mining

association

rules

involve

sets

of

attribute

value

pairs

Therefore

we

view

data

mining

as

a

complimentary

technology

For

example

the

association

rules

learnt

from

patterns

in

data

can

provide

knowledge

that

can

be

used

to

guide

the

search

for

Semantic

Associations

or

to

rank

resulting

Semantic

Associations

based

on

how

close

the

follow

the

patterns

An

initial

discussion

on

Semantic

Associations

is

made

in

-LSB-

-RSB-

Most

RDF

query

systems

do

not

provide

adequate

querying

paradigms

to

support

querying

for

complex

relationships

such

as

Semantic

Associations

Support

for

such

querying

capabilities

is

highly

desirable

in

many

domains

We

have

presented

a

formal

framework

for

these

Semantic

Associations

for

the

RDF

data

model

and

reviewed

some

implementation

strategies

for

computing

them

There

are

many

open

research

issues

that

we

plan

to

focus

on

in

the

near

future

First

it

may

be

necessary

to

develop

data

organization

techniques

for

data

that

will

adequately

support

the

kinds

of

queries

discussed

here

Such

techniques

should

eliminate

the

need

for

an

excessive

number

of

expensive

computations

such

as

joins

during

query

processing

Secondly

we

plan

to

develop

techniques

for

dealing

with

the

space

complexity

problem

of

the

indices

used

in

the

PathGuide

For

example

we

may

use

encoding

schemes

that

compress

path

information

or

heuristics

for

managing

the

size

of

the

indices

Another

top

priority

is

the

development

of

context-sensitive

ranking

algorithms

that

assign

higher

weights

to

results

that

are

most

relevant

in

the

query

context

Finally

we

will

perform

a

comparative

study

of

the

two

implementation

strategies

discussed

in

section

over

a

testbed

consisting

of

large

amount

of

automatically

extracted

metadata

generated

using

the

SCORE

system

-LSB-

-RSB-

Our

thanks

to

Drs.

Bob

Robinson

John

Miller

Krys

Kochut

and

Budak

Arpinar

for

the

illuminating

discussions

and

insightful

contributions

and

to

Boanerges

Aleman-Meza

on

his

revision

comments

We

are

also

indebted

to

Dr.

Vassilis

Christophides

whose

comments

and

suggestions

were

invaluable

in

preparing

the

final

version

of

the

paper

This

work

is

funded

by

NSF-ITR-IDM

Award

titled

Semantic

Association

Identification

and

Knowledge

Discovery

for

National

Security

Applications

-LSB-

-RSB-

S.

Abiteboul

P.

Buneman

and

D.

Suciu

Data

on

the

Web

From

Relations

to

Semistructured

Data

and

XML

Morgan

Kaufmann

-LSB-

-RSB-

S.

Abiteboul

Querying

Semi-Structured

data

In

Proc

of

ICDT

Jan

-LSB-

-RSB-

S.

Abiteboul

D.

Quass

J.

McHugh

J.

Widom

and

J.

Wiener

The

Lorel

Query

Language

for

Semistructured

Data

International

Journal

on

Digital

Libraries

-LRB-

-RRB-

April

-LSB-

-RSB-

S.

Abiteboul

R.

Hull

and

V.

Vianu

Foundations

of

Databases

Addison-Wesley

-LSB-

-RSB-

R.

Agrawal

Alpha

An

Extension

of

Relational

Algebra

to

Express

a

Class

of

Recursive

Queries

IEEE

Transactions

on

Software

Engineering

-LRB-

-RRB-

July

-LSB-

-RSB-

R.

Agrawal

A.

Borgida

and

H.V.

Jagadish

Efficient

Management

of

Transitive

Relationships

in

Large

Data

Bases

In

SIGMOD

pages

Portland

Oregon

USA

-LSB-

-RSB-

R.

Agrawal

T.

Imielienski

and

A.

Swami

Mining

Assocation

Rules

between

Sets

of

Items

in

Large

Databases

Proc

Conf

On

Management

of

Data

Washington

DC

USA

ACM

Press

New

York

NY

USA

-LSB-

-RSB-

S.

Alexaki

G.

Karvounarakis

V.

Christophides

D.

Plexousakis

and

K.

Tolle

The

ICS-FORTH

RDFSuite

Managing

Voluminous

RDF

Description

Bases

In

International

Workshop

on

the

Semantic

Web

pages

Hong

Kong

-LSB-

-RSB-

S.

Alexaki

G.

Karvounarakis

V.

Christophides

D.

Plexousakis

and

K.

Tolle

On

Storing

Voluminous

RDF

descriptions

The

case

of

Web

Portal

Catalogs

In

International

Workshop

on

the

Web

and

Databases

-LRB-

WebDB

-RRB-

Santa

Barbara

CA

Available

at

-LSB-

-RSB-

K.

Anyanwu

A.

Sheth

The

Operator

Discovering

and

Ranking

Associations

on

the

Semantic

Web

SIGMOD

Record

-LRB-

Special

issue

on

Amicalola

Workshop

-RRB-

December

-LSB-

-RSB-

D.

Avant

M.

Baum

C.

Bertram

M.

Fisher

A.

Sheth

Y.

Warke

Semantic

Technology

Applications

for

Homeland

Security

Proc

of

the

th

Intl

Conf

on

Information

and

Knowledge

Management

-LRB-

CIKM

-RRB-

McLean

VA

November

pp.

-LSB-

-RSB-

L.

Babel

I.

Ponomarenko

G.

Tinhofer

The

Isomorphism

Problem

for

Directed

Paths

and

For

Rooted

Directed

Path

Graphs

Journal

of

Algorithms

-LSB-

-RSB-

T.

Berners-Lee

J.

Hendler

and

O.

Lassila

The

Semantic

Web

Scientific

American

May

-LSB-

-RSB-

B.

Berendt

A.

Hotho

G.

Stumme

Towards

Semantic

Web

Mining

In

Proceedings

of

the

International

Semantic

Web

Conference

pp.

Sardinia

Italy

June

-LSB-

-RSB-

A.

Branstadt

V.

B.

Le

J.

P.

Spinrad

Graph

Classes

A

Survey

SIAM

-LSB-

-RSB-

T.

Bray

J.

Paoli

and

C.M.

Sperberg-McQueen

Extensible

Markup

Language

-LRB-

XML

-RRB-

Recommendation

February

-LSB-

-RSB-

D.

Brickley

and

R.V.

Guha

Resource

Description

Framework

-LRB-

RDF

-RRB-

Schema

Specification

Candidate

Recommendation

-LSB-

-RSB-

J.

Broekstra

A.

Kampman

and

F.

van

Harmelen

SESAME

An

Architecture

for

Storing

and

Querying

RDF

Data

and

Schema

Information

In

D.

Fensel

J.

Hendler

H.

Lieberman

and

W.

Wahlster

editors

Semantics

for

the

WWW

MIT

Press

-LSB-

-RSB-

P.

Buneman

M.

Fernandez

D.

Suciu

UnQL

A

Query

Language

and

Algebra

for

Semistructured

Data

Based

on

Structural

Recursion

VLDB

Journal

-LRB-

-RRB-

-LSB-

-RSB-

W.

W.

Chang

A

Discussion

of

the

Relationship

Between

RDF-Schema

and

UML

A

Note

-LSB-

-RSB-

M.

Chen

J.

Han

and

P.

Yu

Data

Mining

An

Overview

from

the

Database

Perspective

IEEE

Trans

On

Knowledge

and

Data

Engineering

Vol

No.

December

-LSB-

-RSB-

V.

Christophides

S.

Abiteboul

S.

Cluet

and

M.

Scholl

From

Structured

Documents

to

Novel

Query

Facilities

In

Proc

of

ACM

SIGMOD

Conf

on

Management

of

Data

pp

Minneapolis

Minnesota

May

-LSB-

-RSB-

V.

Christophides

S.

Cluet

and

G.

Moerkotte

Evaluating

Queries

with

Generalized

Path

Expressions

In

Proc

of

ACM

SIGMOD

pp.

-LSB-

-RSB-

D.

Chamberlin

D.

Florescu

J.

Robie

J.

Simeon

and

M.

Stefanescu

XQuery

A

Query

Language

for

XML

Working

draft

World

Wide

Web

Consortium

June

-LSB-

-RSB-

M.

Dean

D.

Connolly

F.

Harmelen

J.

Hendler

I.

Horrocks

D.

McGuinness

P.

F.

Patel-Schneider

and

L.

Stein

OWL

Web

Ontology

Language

Reference

Working

Draft

July

-LSB-

-RSB-

U.

M.

Fayyad

G.

Piatetsky-Shapiro

P.

Smyth

and

R.

Uthurusany

Advances

in

Knowledge

Discovery

and

Data

Mining

AAAI/MIT

Press

-LSB-

-RSB-

R.

Fikes

DAML+OIL

query

language

proposal

August

html

-LSB-

-RSB-

R.

H.

Guting

GraphDB

Modeling

and

querying

graphs

in

databases

In

Proceedings

of

the

International

Conference

on

Very

Large

Data

Bases

pp.

-LSB-

-RSB-

B.

Hammond

A.

Sheth

and

K.

Kochut

Semantic

Enhancement

Engine

A

Modular

Document

Enhancement

Platform

for

Semantic

Applications

over

Heterogeneous

Content

in

Real

World

Semantic

Web

Applications

V.

Kashyap

and

L.

Shklar

Eds.

IOS

Press

December

pp

-LSB-

-RSB-

S.

Handschuh

and

S.

Staab

Authoring

and

annotation

of

web

pages

in

CREAM

In

The

Eleventh

International

World

Wide

Web

Conference

-LRB-

-RRB-

Honolulu

Hawaii

USA

May

-LSB-

-RSB-

F.

Harmelen

P.

F.

Patel-Schneider

I.

Horrocks

eds

Reference

Description

of

the

DAML+OIL

-LRB-

March

-RRB-

ontology

markup

language

-LSB-

-RSB-

M.

Hearst

Distinguishing

between

Web

Data

Mining

and

Information

Access

Position

statement

for

Web

Data

Mining

KDD

-LSB-

-RSB-

Y.

E.

Ioannidis

R.

Ramakrishnan

L.

Winger

Transitive

Closure

Algorithms

Based

on

Graph

Traversal

TODS

-LRB-

-RRB-

-LRB-

-RRB-

-LSB-

-RSB-

Y.

E.

Ioannidis

Y.

Lashkari

Incomplete

Path

Expressions

and

their

Disambiguation

In

Proc

of

the

ACM

SIGMOD

International

Conference

on

Management

of

Data

May

Minneapolis

Minnesota

United

States

-LSB-

-RSB-

P.

Hayes

RDF

Model

Theory

Working

Draft

September

-LSB-

-RSB-

I.

Horrocks

S.

Tessaris

The

Semantics

of

DQL

pdf

-LSB-

-RSB-

I.

Horrocks

and

S.

Tessaris

A

Conjunctive

Query

Language

for

Description

Logic

Aboxes

In

Proc

of

-LSB-

-RSB-

V.

Hristidis

and

Y.

Papakonstanti-nou

DISCOVER

Keyword

search

in

relational

databases

In

Procs

VLDB

Aug.

-LSB-

-RSB-

ICS-FORTH

The

ICS-FORTH

RDFSuite

web

site

Available

at

March

-LSB-

-RSB-

G.

Karvounarakis

S.

Alexaki

V.

Christophides

D.

Plexousakis

M.

Scholl

RQL

A

Declarative

Query

Language

for

RDF

May

Honolulu

Hawaii

USA

-LSB-

-RSB-

M.

S.

Lacher

and

S.

Decker

On

the

Integration

of

Topic

Maps

and

RDF

Data

In

Proc

of

Semantic

Web

Working

Symposium

Palo

Alto

California

August

-LSB-

-RSB-

O.

Lassila

and

R.

Swick

Resource

Description

Framework

-LRB-

RDF

-RRB-

Model

and

Syntax

Specification

Recommendation

-LSB-

-RSB-

M.

Mannino

L.

Shapiro

L.

Extensions

to

Query

Languages

for

Graph

Traversal

Problems

TKDE

-LRB-

-RRB-

-LSB-

-RSB-

A.

O.

Mendelzon

and

P.

T.

Wood

Finding

Regular

Simple

Paths

in

Graph

Databases

SIAM

J.

Comput.

-LRB-

-RRB-

-LSB-

-RSB-

L.

Miller

A.

Seaborne

A.

Reggiori

Three

Implementations

of

SquishQL

a

Simple

RDF

Query

Language

In

Proc

of

st

International

Semantic

Web

Conference

June

Sardinia

Italy

-LSB-

-RSB-

A.

Nanopoulos

Y.

Manolopoulos

Mining

Patterns

from

Graph

Traversals

Data

and

Knowledge

Engineering

Vol

No.

-LSB-

-RSB-

J.

Rumbaugh

I.

Jacobson

and

G.

Booch

The

Unified

Modeling

Language

Reference

Manual

Addison-Wesley

-LSB-

-RSB-

A.

Seaborne

RDQL

A

Data

Oriented

Query

Language

for

RDF

Models

html

-LSB-

-RSB-

A.

Sheth

C.

Bertram

D.

Avant

B.

Hammond

K.

Kochut

Y.

Warke

Semantic

Content

Management

for

Enterprises

and

the

Web

IEEE

Internet

Computing

July/August

pp.

-LSB-

-RSB-

A.

Sheth

S.

Thacker

and

S.

Patel

Complex

Relationship

and

Knowledge

Discovery

Support

in

the

InfoQuilt

System

VLDB

Journal

September

-LSB-

-RSB-

M.

Sintek

and

S.

Decker

TRIPLE

A

Query

Inference

and

Transformation

Language

for

the

Semantic

Web

International

Semantic

Web

Conference

-LRB-

ISWC

-RRB-

Sardinia

June

-LSB-

-RSB-

Tarjan

R.

Fast

Algorithms

for

Solving

Path

Problems

J.

ACM

Vol

No.

July

pp.

-LSB-

-RSB-

DQL

DAML

Query

Language

-LSB-

-RSB-

Inkling

RDF

query

using

SquishQL

-LSB-

-RSB-

ISO/IEC

Topic

Maps

Jan

-LSB-

-RSB-

JENA

A

Java

API

for

RDF

-LSB-

-RSB-

Whitepaper

on

National

Security

and

Intelligence

Semagix

Inc.

semantic association
isomorphism
semantic web
property sequence
analysis
rdf
graph traversals
rooted directed path
semantic associations
relationship
query processing

automation
complex data relationships
ai
semantic web querying