69
1

- Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

1

Page 2: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

<Insert Picture Here>

Cytoscape Plugin for

Oracle Database Semantic Technologies

Seema Sundara, Consulting Member Technical StaffJags Srinivasan, Consulting Member Technical Staff

Page 3: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

3

Cytoscape Plugin

• Overview

• Basic Elements

• Basic Operations

• A Quick Tour

• Browsing UniProt Data

• Browsing Entailed RDF Data (TSNET &LUBM)

• Browing Wikipedia Data

• Setup

• Interactive Visualization

• Components

Page 4: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

4

<Insert Picture Here>

Overview

Page 5: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

5

Semantic Technologies in a Nut Shell

• Model complex real-world relationships beyond Boolean in the data as a graph

Allow schemas to continuously and dynamically evolve

• Inference among relationships with rules, standard concepts and terms to discover new information

Enable machine-driven creation of new data relationships without restructuring the data model

• Query using graph patterns to provide more semantically complete information for decision-making

Support discovery workflows

Page 6: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

6

Why Organizations use Oracle RDF Store

• Standards Compliance

– RDF, RDFS, OWL; ontologies – SNOMED, SKOS, etc.

• Open Source Technology Support

– Jena, Joseki, ARQ, TDB, SDB, Sesame, Pellet, D2RQ, Jetty, Cytoscape, GATE, Protégé…

• Scalability & Performance

– storage, native inference engine, querying

– Customers tell us other triple-stores routinely fail with large datasets

– Leading Lehigh University Benchmark (LUBM) results

• Query RDF data using SPARQL or SQL

– SEM_MATCH, SEM_CONTAINS, Ontology-assisted SQL queries

• Security

– Virtual Private Database, Oracle Label Security to control access

• Semantic Indexing for Documents stored in Oracle Database

Page 7: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

7

Oracle Database 11g Semantic Technologies

• Only leading commercial database with native semantic data management

• Scalable & secure platform scales to repositories w/ billions of triples

• RAC & page-level compression support

• Choice of SQL or SPARQL query

• Native inferencing and 3rd partyreasoner support e.g., PelletDB

• Industry leading 3rd party & open source tools, services, apps support

• W3C standards-based technologies

• Native RDF graph data store• Manages billions of triples• Fast batch, bulk and incremental load

• SPARQL-Jena/Joseki, Sesame• SQL: SEM_Match • Ontology assisted query of relational data

• RDFS, OWL 2 RL support• User-defined SWRL-like rules• Plug-in architecture

Key Capabilities:

Load / Storage

Query

Reasoning

Page 8: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

8

Key Features of the Cytoscape Plugin

• Plugin from Oracle that connects the open source Cytoscape RDF data visualizer to Oracle Database

• Visualizes RDF and OWL datasets in Oracle Database

• Visualizes original and entailed (inferenced) graphs

• Enables Fish Eye views by building hybrid (summary-detail) graphs

• Performant with large RDF data sets

• Available for download from the OTN Semantic Technologies page

Fish eye views show the point of interest in detail and the overview of the graph in the same window. The picture is scaled non uniformly. Objects far away from the focus point are shrunk while objects near the focus point are magnified. See Furnas, G.W.: Generalized Fisheye Views, Proc. ACM SIGCHI'86, 1986

Page 9: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

9

Key Features

• Visualization rendered using the state-of-art Open Source CytoScape* by implementing a Oracle RDF Plugin Class.

(*Uses CytoScape 2.6 :for more details see http://cytoscape.org/ )

Page 10: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

10

Key Features

• Powered by Oracle’s PL/SQL SEM_ANALYSIS package providing fast and optimized access to Oracle Semantic Store.

Page 11: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

11

Large-scale RDF Data Visualization

A 3-S approach

Subset Browsing

• Static subsets such as root classes

• Dynamic subsets specified via SPARQL graph pattern

Summary Graphs

• Reduces clutter by representing portions of graph by its summary (user can create their own Fish Eye views)

• Improves response time

Sampling

• For very large datasets, allows browsing a sample of the dataset

Page 12: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

12

<Insert Picture Here>

Basic Elements

Page 13: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

13

Basic Elements

• Detail Graph

– Whole graph or a subgraph

• Summary Graph

– Static Summaries

• Representative Instance

• Particular Instance

– Dynamic Summaries

• Summary for SPARQL-pattern based dynamic subgraph

• (Summary-Detail) Hybrid Graph

Page 14: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

14

Example 1: Detail Graph

Page 15: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

15

Example 2:Detail SubGraphs

Page 16: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

16

Example 3: Representative & Particular Instance Summary

Graphs

Note: The right graph was manually re-arranged to simplify comparison.

Page 17: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

17

Example 4: Dynamic Subset-based Summary

Page 18: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

18

Example 5: Particular Instance also an example of hybrid (detail-

summary) graph

Detail Edge

Aggregate Edge

(can be expanded

Using expand Property) Absent Edge

Page 19: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

19

<Insert Picture Here>

Basic Operations

Page 20: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

20

Basic Operations on a Model

Operation Type Max. Result Size

Default (Get Root Classes) Static Subset Num_Nodes

Get Demographics Static Summary 1

Get Class Demographics Static Summary 1

SEM_MATCH (with focal point) based Summary

Dynamic Subset Summary

2*(Num_Predicates)

SEM_MATCH based subset Dynamic Subset Num_Triples

Page 21: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

21

Basic Operations on a Class

Operation Type Max. Result Size

Get (Class) Representative Summary

Static Subset Summary

2*(Num_Predicates)

Get Particular Instance Summary

Static Subset Summary

2*(Num_Predicates)

Expand Class Dynamic Subset Num_Triples

Page 22: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

22

Basic Operations on a Hybrid Graph

Operation Type Max. Result Size

Expand Class Dynamic Subset Num_Triples

Expand Node Static Subset Summary

2*(Num_Predicates)

Expand Property Dynamic Subset Num_Triples

Page 23: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

23

Expand Node

Basic Operation Overview

Root Classes

SPARQL-patternbased Summary

SPARQL-patternbased subset

ClassRepresentative Summary

ParticularInstance Summary

Expand Class

Expand Property

Hybrid (Summary-Detail) Graph

Page 24: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

24

Handling Operation returning Large Results

• Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property.

• Two threshold are used for the result set

– Database Result Set Limit: Identifies the maximum number of triples returned by database for an operation (currently, set to2,000). Thus, the above operations would return at most FIRST 2,000 rows to the rendering engine.

– Display Set Limit: Identifies the maximum number of triples displayed in a single view (currently, set to 250). The rendering engine currently uses a shuffle operation to randomly pick 250 triples after combining the existing set of triples with the newly obtained triples.

Page 25: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

25

Handling Operation returning Large Results:

Selective Expand Property

• Support selectiveExpandProperty(), which allows user to restrict expansion based on look-ahead filter specified by a SPARQL pattern

• [Benefits:Could be useful when property being expanded has a very high count]

• Example: the type edge has 76529 edge count, which can be restricted using sem_match pattern to publications containing ‘Publication1’

Page 26: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

26

<Insert Picture Here>

A Quick Tour of

the Cytoscape Plugin

Page 27: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

27

Steps to Browse RDF Data

• Select Model, Rulebase, Overlay option– Overlay option decides whether you want to see object/property/class expansions in

the same view or a new separate view

• You get all root classes

• Expand Class to get all its subclasses or get a Representative Instance of a class

• Get a Particular Instance of a class– Either from root class view

– Or from representative instance view

– Properties having >1 count of particular instance are shown as an aggregate edge.

• Perform Expand Property on an aggregate edge or perform expand object on any named node in the given view.

• In general:– Expand Property is allowed on any aggregate property edge

having either source or destination as a named node

– Expand Object and Expand Class are allowed on any named node.

Page 28: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

28

Browsing RDF Data

Get Root Class Expand Person Class

Get Representative for ITProfessionalGet Particular Instance: Jack

Page 29: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

29

Browsing Data: Expand Property:friendOf(2)

Expand friendOf PropertyGet Particular Instance: Jack

Page 30: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

30

Browsing RDF Data: Expand Node(John)

Page 31: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

31

After Multiple Property & Node Expansions

Page 32: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

32

<Insert Picture Here>

Browsing UniProt Data

Page 33: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

33For Internal Use Only

Protein Class Representative Summary Particular Instance Summary

Page 34: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

34For Internal Use Only

Examining protein subsets w.r.t :encodedIn property

Page 35: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

35For Internal Use Only

Examining protein subsets w.r.t :sequence property

Page 36: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

36For Internal Use Only

Dynamic Subset of ProteinsSummary

Page 37: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

37For Internal Use Only

Dynamic subset of Gene Instances

Page 38: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

38For Internal Use Only

Dynamic subset of Gene Instances

Page 39: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

39

<Insert Picture Here>

Browsing Entailed RDF

Data (TSNET & LUBM)

Page 40: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

40For Internal Use Only

Entire Dataset Summary (before inference) Entire Dataset Summary (after ‘RDFS’ inference)

Page 41: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

41For Internal Use Only

LUBM Class Hierarchy (after ‘RDFS’ inference)

Page 42: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

42For Internal Use Only

Particular Instance Summary (with ‘RDFS’ inference)

Page 43: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

43

<Insert Picture Here>

Browsing Wikipedia Data

Page 44: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

44

Particular Instance Summary of Join McCain Article in Wikipedia

Page 45: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

45

Particular Instance Summary of Barack Obama Article in Wikipedia

Page 46: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

46

<Insert Picture Here>

Setup

Page 47: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

47

Database Setup

• After creating semantic network

– use Flexible Indexing API to create two additional indexes

EXEC SEM_APIS.ADD_SEM_INDEX('CPS');

EXEC SEM_APIS.ADD_SEM_INDEX(‘SP’);

[Index created to allow efficient querying for incoming edges]

• Load models as before

• Perform entailment as before (if needed).

[For visualization shown, we used minimal ‘RDFS’, as shown below]

EXEC SEM_APIS.CREATE_ENTAILMENT('sem_tsnet', SDO_RDF_MODELS('tsnet'), SDO_RDF_RULEBASES('RDFS'),SEM_APIS.REACH_CLOSURE,

'RDFS4A-, RDFS4B-, RDFS6-, RDFS8,-RDFS10-, RDFS13-',‘ENTAIL_ANYWAY=T, DISTANCE=T, USER_RULES=F');

Page 48: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

48

Database Setup

• Generate summary for model data and entailed model

DECLARE

model VARCHAR2(32):='tsnet';

rulebase VARCHAR2(32) := ‘rdfs’;

sample_size number := 100;

cnt1 NUMBER;

cnt2 NUMBER;

BEGIN

SEM_ANALYSIS.GEN_SUMMARY(

model, rulebase, sample_size, cnt1, cnt2);

DBMS_OUTPUT.PUT_LINE(‘Model ‘||model);

DBMS_OUTPUT.PUT_LINE(‘genclassinscnt:’||cnt1||

‘ genclasspropcnt:’||cnt2||’ ----’);

END;

Page 49: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

49

CytoScape Setup

• Need Cytoscape 2.6 ; Install Oracle RDF Visualizer Plugin jar inplugin directory

• Launch Cytoscape

– From Plugin Menu select Oracle RDF Visualizer

– Provide database connect parameters and connect. It will bring the following form

Page 50: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

50

<Insert Picture Here>

Interactive Visualization

Page 51: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

51

Interactive Visualization of a representative

instance

• Queries performed on a model with and without arulebase

• Queries performed with and without a summary table

• Summary tables facilitate the response time to be within several seconds.

• Improved performance with summary tables

Page 52: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

52

Summary tables

• Summary information for the dataset

LUBM 1 million UNIPROT 5 million

Summary creation time 1 min, 24 sec 4 min, 41 sec

Class inst. count rows

(without rulebase)20 89

Property Count rows(without rulebase)

150 467

Class inst. count rows

(with rulebase)36 94

Property Count rows (with rulebase)

390 574

Page 53: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

53

Interactive visualization for LUBM 1 million data

set

• Query to get a representative instance of the “department” class

select * from

table(sem_analysis.get_class_representative(

'LUBM1M_MODEL','http://www.lehigh.edu/~zhp2/2004/0401/u

nivbench.owl#Department', 'RDFS'));

Without Rulebase With Rulebase

With Summary 0.01 sec 0.01 sec

Without Summary 0.5 sec 1.62 sec

Page 54: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

54

Interactive Visualization for UniProt 5 million data

set

• Query to get a representative instance of the “protein” class

select * from

table(sem_analysis.get_class_representative(

'UNIPROT5M_MODEL',

'urn:lsid:uniprot.org:ontology:Protein', 'RDFS'));

Without Rulebase With Rulebase

With Summary 0.01 sec 0.01 sec

Without Summary 2.8 sec 14.4 sec

Page 55: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

55

<Insert Picture Here>

Oracle RDF Visualizer

Component Overview

Page 56: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

56

Oracle RDF Visualizer Component Overview

Oracle RDF PluginJava Class

Oracle SemanticData Store

RDF Graphs

OWL Graphs

Summary Graphs

SEM_ANALYSISPL/SQL Package

*The Cytoscape Core Architecture shown above (in the left) is from [1]

Page 57: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

57

<Insert Picture Here>

Cytoscape Plugin

Java Class

Page 58: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

58

Cytoscape Plugin Java Class

• Extend CytoscapePlugin abstract class exposed by Cytoscape

• Add items to JMenu which are action listeners to appear under particular plugin

• Add an action listener for the item added

• Implement a class for the action listener which implements actionPerformed method

• Make a jar file of plugin and include in Cytoscapeplugins directory

– It gets picked up automatically when Cytoscape is started

Page 59: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

59

<Insert Picture Here>

SEM_ANALYSIS

PL/SQL Package

Page 60: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

60

SEM_ANALYSIS PL/SQL Package

• Utility package that can be used standalone or with any application (such as Cytoscape)

• Contains set of functions/procedures to get both static/dynamic RDF graph information

• Contains set of functions to dynamically generate summaries for model or model with inferred triples

Page 61: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

61

SEM_ANALYSIS PL/SQL package

• Summary Tables

– RDF_CLASS_INSTANCE_SUMMARY$

– Instance count summary per distinct class

– RDF_CLASS_PROPERTY_SUMMARY$

– Summary of distinct property count

Model Name RulebaseName

Class Name Instance Count

TSNET NULL sc:ITProfessional 2

TSNET NULL sc:Receptionist 1

Model Name Rulebase

Name

Class Name Property Property count

TSNET NULL sc:ITProfessional sc:Age 1

TSNET NULL sc:ITProfessional sc:residesIn 1

Page 62: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

62

SEM_ANALYSIS PL/SQL package

• Demographics gathering functions

– get_demographics - returns

• Total number of triples in the graph

• Total number of DISTINCT subject/predicate/object/literals in the graph

– get_class_demographics - returns

• Size of the graph (number of unique nodes, excluding root nodes)

• Maximum Fanout for class hierarchy

• Class hierarchy (DAG or a Tree)

Page 63: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

63

SEM_ANALYSIS PL/SQL Package

• Functions to get graph information (modeled as Table functions)– get_class_representative

- gets the representative (one-hop) connectivity graph for a given class

– get_matching_triples

- gets the sub graph satisfying the specified triple pattern

– get_expanded_prop

- get all property value triples for the given class instance viathe specified propertyExample get_expanded_prop(:Jack, sc:friendOf)

returns(:Jack sc:friendOf :John)(:Jack sc:friendOf :Jill)

Page 64: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

64

SEM_ANALYSIS PL/SQL Package

• Functions to get graph information (modeled as Table functions)– get_propcount_gtone

- gets the properties of a given instance that have an occurrence count of more than one

– get_propcount_one

- gets the properties of a given instance that have an occurrence count of one

The above two functions, along with get_class_representative, determine the summary graph for an instance

Page 65: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

65

SEM_ANALYSIS PL/SQL Package

• Functions to get schema information

– get_root_classes

- gets the root classes in the given model

– get_sub_classes

- gets all the subclasses of the given class

Page 66: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

66

Summary – Cytoscape Plugin for Oracle Database

• Visualize RDF and OWL datasets in Oracle Database

• Visualize original and entailed (inferenced) graphs

• Create Fish Eye views w/ summary-detail graphs

• Performant for for large RDF data sets

Page 67: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

67

For More Information and Software Download

http://search.oracle.com

Google “Oracle RDF”

Or go to

oracle.com

Semantic Technologies

Page 68: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

68

Page 69: - Oracle · Handling Operation returning Large Results • Namely, Get Root Classes, SEM_MATCH based subset, Expand Class, Expand Property. • Two threshold

69