What's New in Semantic Technologies?

This section describes new and changed semantic technologies features for Oracle Database Release 11.

Release 11.2 Features

This section covers new and changed features for Oracle Database 11g Release 2 (11.2).

This release also includes the features that were supplied in the interim patch 7600122 for Release, which are listed in "Features Added for Release (November, 2008)".

Release Required Actions if Semantic Technologies Installation is Invalid:

Further action may be required if your Semantic Technologies installation is invalid after upgrading to Release For information, see Section A.1.4.

New and Changed Features for Interim Patch for Release11.

The following are new and changed features for an interim patch for Oracle Database Release (placeholder bug 16679453):


The new DO_UNESCAPE=T option for the options parameter in the SEM_MATCH table function causes characters in return columns to be unescaped according to the W3C N-Triples specification, as explained in Section 1.6, "Using the SEM_MATCH Table Function to Query Semantic Data".

Purging Unused Values from the RDF_VALUE$ Table

Deletion of triples over time may lead to a subset of the values in the RDF_VALUE$ table becoming unused in any of the RDF triples or rules currently in the semantic network. If the count of such unused values becomes large and a significant portion of the RDF_VALUE$ table, you may want to purge the unused values using the SEM_APIS.PURGE_UNUSED_VALUES subprogram, as explained in Section 1.7.5, "Purging Unused Values".

Changed SEM_APIS Subprograms for Release

The following significant changes were made to existing subprograms in the SEM_APIS PL/SQL package:

  • SEM_APIS.BULK_LOAD_FROM_STAGING_TABLE has the new COLLECT_PRELOAD_STATS=<scope> option and several <stats_scope>_<stats_param>=<number> options. The PARALLEL_CREATE_INDEX option has been removed.

Jena Adapter for Oracle Database (Updated November, 2011)

The following features are included in an updated Jena Adapter kit that was made available in November 2011:

The Jena Adapter for Oracle Database provides a Java-based interface to Oracle Semantic Technologies by implementing the well-known Jena Graph and Model APIs. For information about downloading and using the Jena Adapter, see Chapter 7.


Updates of the Jena Adapter have been made available since its initial release. For information about the new features in an update, see the "readme" file included in the download .zip file.

Named Graph Support Enhancements (Added in Patch 9825019 in May 2011; Included in Release

With Patch 9825019 (SEMANTIC TECHNOLOGIES 11G R2 FIX BUNDLE 3), features have been added to support the following operations with named graph data:

  • Loading

  • Querying

  • Inferencing

Section 1.3.9 provides an overview of named graph support. That section also includes links to sections about performing specific operations with named graph data.

Spatial Support (Added in Patch 9825019 in May 2011; Included in Release

With Patch 9825019 (SEMANTIC TECHNOLOGIES 11G R2 FIX BUNDLE 3), Oracle Database Semantic Technologies supports storage of spatial geometry data encoded as orageo:WKTLiteral typed literals, and it provides a set of query functions for spatial operations.

For information about representing, indexing, and querying spatial data in RDF, see Section 1.6.6.

Data Type Indexing (Added in Patch 9825019 in May 2011; Included in Release

With Patch 9825019 (SEMANTIC TECHNOLOGIES 11G R2 FIX BUNDLE 3), data type indexes (indexes on the values of typed literals stored in a semantic network) may significantly improve the performance of SEM_MATCH queries involving certain types of FILTER expressions.

Section 1.9 explains how to use data type indexes, and it provides links to reference information about new procedures to create, alter, and drop a data type index.

Jena Adapter SPARQL Gateway Support (Updated September, 2011)

SPARQL Gateway (described in Section 7.16, "SPARQL Gateway and Semantic Data") is added in the September 2011 update to the Jena Adapter. (If you are using a previous version of the Jena Adapter and if you do not want to use SPARQL Gateway, you do not need to download and install the September 2011 update.)

Enhanced Optimizer Hint Support in SEM_MATCH (

Effective with Release, you can embed inline HINT0 query optimizer hints using SPARQL comments in SEM_MATCH, which allows optimizer hints to be associated with non-root BGPs in a SPARQL query. In addition, new hints have been introduced to influence joins between BGPs. For information, see Section 1.6.4, "Inline Query Optimizer Hints".

Full-Text Indexing and Searching for RDF Terms (

Effective with Release, you can create an Oracle Text index on the MDSYS.RDF_VALUE$ table and use the orardf:textContains SPARQL FILTER function to execute efficient full-text searches in semantic queries. For information, see Section 1.6.5, "Full-Text Search".

OLS Triple-Level Security (Added in Patch 9819833 in June 2010)

Oracle Label Security (OLS) for RDF data provides the triple-level security option, in addition to the resource-level security previously available. Triple-level provides superior performance and ease of use, and is described in Section 5.2.1, "Triple-Level Security".

OWL 2 RL Support (Added in Patch 9819833 in June 2010)

The OWL 2 RL profile is supported by the addition of the system-defined rulebase OWL2RL, as explained in Section 2.1.2, "Supported OWL Subsets".

Features Added in Patch to Release 11.2 (Released March 2010)

The following features are included in a Release 11.2 Semantic Technologies patch that was made available on the Oracle Technology Network (OTN) in March 2010. You must apply that patch in order to be able to use these features.

In addition, Section A.1.2, "Upgrading Semantic Technologies Support from Release 11.1" has been expanded to include Section A.1.2.1, "Handling of Empty RDF Literals".

Sesame Adapter for Oracle Database

The Sesame Adapter for Oracle Database integrates the popular Sesame Java APIs with Oracle Semantic Technologies support. For information about downloading and using the Sesame Adapter, see Chapter 8.


Support for the Sesame Adapter was provided in a patch that was made available in January, 2010, on the Oracle Technology Network (OTN), and is updated in a patch made available in March or April, 2010.

Semantic Indexing for Documents

You can use semantic indexing to enable queries on information extracted from unstructured documents. Documents indexed semantically can be searched using the SEM_CONTAINS operator within a standard SQL query. For information about using semantic indexing, see Chapter 4.

The SEM_RDFCTX PL/SQL package contains subprograms to manage extractor policies and semantic indexes created for documents. This package is documented in Chapter 12.

Virtual Private Database (VPD) and Oracle Label Security (OLS) Support

You can enforce a fine-grained access control mechanism for RDF data by using either the Virtual Private Database (VPD) or Oracle Label Security (OLS) feature of Oracle Database, as explained in Chapter 5.

Workspace Manager Support for RDF Data

You can use Oracle Workspace Manager to version-enable RDF data in the semantic data store, as explained in Chapter 6.

New Procedures to Enable, Downgrade, and Remove Semantic Technologies Support

The procedures for enabling, downgrading, and removing semantic technologies support in the database have been redesigned. These procedures are explained in Appendix A.

Note that you still must perform certain actions and meet prerequisites before you can use any types, synonyms, or PL/SQL packages related to Oracle semantic technologies support. These actions and prerequisites are explained in Section A.1.

Optimized owl:sameAs Inference

You can optimize the performance of owl:sameAs inference, as explained in Section 2.2.8.

Optimizing Entailment Performance Through Compact Structures

You can specify RAW8=T in the options parameter to the SEM_APIS.CREATE_ENTAILMENT procedure, to cause RAW8 datatypes to be used instead of NUMBER in many intermediate tables created during the inference process. This option can improve entailment performance by up to 30% in some cases.

Incremental Inference

You can use incremental inference update entailments (rules indexes) efficiently after triple additions, as explained in Section 2.2.9.

Parallel Inference

You can use parallel inference to improve inference performance by taking advantage of the capabilities of a multi-core or multi-CPU architectures, as explained in Section 2.2.10.

Filter and Union Support in Curly Brace Syntax for SEM_MATCH

You can now specify FILTER or UNION, or both, in addition to OPTIONAL as keywords in the curly brace syntax supported for the SEM_MATCH table function. These keywords are explained in Section 1.6.2.

Simple Knowledge Organization System (SKOS) Support

You can perform inferencing based on a core subset of the Simple Knowledge Organization System (SKOS) data model, as explained in Chapter 3.

Inference Beyond OWLPrime

You can specify additional inference components to cover OWL constructs, such as owl:intersectionOf and owl:unionOf, as explained in Table 9-1, "Inferencing Keywords for inf_components_in Parameter" in the Usage Notes for the SEM_APIS.CREATE_ENTAILMENT procedure in Chapter 9.

Systematized Nomenclature of Medicine - Clinical Terms (SNOMED CT) Support

The current release includes a built-in rulebase that supports the expressiveness of Systematized Nomenclature of Medicine - Clinical Terms (SNOMED CT) terminology. To include this support, specify the SNOMED keyword in the inf_components_in parameter in the call to the SEM_APIS.CREATE_ENTAILMENT procedure.


The SEM_PERF.GATHER_STATS procedure now accepts two parameters, both optional: just_on_values_table and parallel. This procedure is documented in Chapter 11.

SEM_APIS.*_RULES_INDEX Subprograms Deprecated

In the SEM_APIS PL/SQL package, the subprograms containing "_RULES_INDEX" in their names are deprecated and removed from this manual. Instead, you should use subprograms containing "_ENTAILMENT" in their names:

The old "*_RULES_INDEX" formats will continue to work, but you are encouraged to switch to using the "*_ENTAILMENT" subprograms.

Note that several metadata views still include "RULES_INDEX" in their names.

The terms entailment and rules index are synonyms in this manual, although entailment is used predominantly

Release 11.1 Features

The following are new and changed features for Oracle Database 11g Release 1 (11.1).

Features Added for Release (November, 2008)

This section describes features that are included in interim patch 7600122 for Release, which was made available on My Oracle Support in November, 2008.

  • Support for virtual models (see Section 1.3.8)

  • Curly brace syntax for SEM_MATCH graph pattern, including support for the OPTIONAL construct (see Section 1.6.2)

  • Using HINT0 ("hint-zero") in a SEM_MATCH query (see Section 1.6)

  • New columns returned from SEM_MATCH: id, _prefix, _suffix (see Section 1.6)

  • Ability to create and manage semantic network indexes on models and rules indexes (see Section 1.8)

  • SEM_APIS.BULK_LOAD_FROM_STAGING_TABLE procedure: New options in the flags parameter join_hint for tasks IZC, MBV, and MBT; parallel=n)

  • Simplification of staging table definition (fewer columns) and privilege requirements (see Section 1.7.1)

  • Simpler event tracing during bulk load (see the information about the new RDF$ET_TAB table in Section

Storage Model Enhancements and Migration

The storage model has been enhanced to support OWL inferencing: some internal data structures and indexes have been changed, added, and removed. These changes also result in enhanced performance.

Because of the extent of these changes, if you have semantic data that you used with the previous release, you must upgrade that data to migrate it to the new format before you can use any new features for this release. For more information, see Appendix A, "Enabling, Downgrading, or Removing Semantic Technologies Support".

Support for OWL Inferencing

Support has been added to support storing, validating, and querying Web Ontology Language (OWL)-based ontologies. Support is provided for a subset of the OWL DL language.

To query ontology data, you can use table functions and operators that examine semantic relationships, such as SEM_MATCH, SEM_RELATED, and SEM_DISTANCE.

New Bulk Loading Interface for Improved Performance

You can improve performance for bulk loading of semantic data in bulk using a staging table and calling the SEM_APIS.BULK_LOAD_FROM_STAGING_TABLE procedure. For more information, see Section 1.7.1.

Ontology-Assisted Querying of Relational Data

You can go beyond syntactic matching to perform semantic relatedness-based querying of relational data, by associating an ontology with the data and using the new SEM_RELATED operator (and optionally its SEM_DISTANCE ancillary operator). The new SEM_INDEXTYPE index type improves performance for semantic queries.

Required Procedure for Using Semantic Technology Support

Before you can use any types, synonyms, or PL/SQL packages related to Oracle semantic technologies support, you must enable support for semantic technologies. For more information, see Appendix A, "Enabling, Downgrading, or Removing Semantic Technologies Support".