This section describes new and changed semantic technologies features for Oracle Database Release 11.
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 22.214.171.124.0, which are listed in "Features Added for Release 126.96.36.199 (November, 2008)".
Release 188.8.131.52: Required Actions if Semantic Technologies Installation is Invalid:Further action may be required if your Semantic Technologies installation is invalid after upgrading to Release 184.108.40.206.0. For information, see Section A.1.4.
The following are new and changed features for an interim patch for Oracle Database Release 220.127.116.11.0 (placeholder bug 16679453):
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".
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".
The following are new subprograms in the SEM_APIS PL/SQL package:
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
scope> option and several
<stats_scope>_<stats_param>=<number> options. The
PARALLEL_CREATE_INDEX option has been removed.
The following features are included in an updated Jena Adapter kit that was made available in November 2011:
Jena 2.6.4, ARQ 2.8.8, and Joseki 3.4.4 support is added, as described in Section 7.2.
Named graph support for Java APIs and Joseki Web service endpoints is added, as described in Section 7.8, "SPARQL Update Support", Section 7.10.4, "Inference Options", Section 7.11, "Bulk Loading Using the Jena Adapter", and Section 7.15.7, "Test11.java: Query Involving Named Graphs".
SPARQL Update 1.1 support is added, as described in Section 7.8.
You can add options to entailment calls by using the
setInferenceOption(String options) procedure in the
DatasetGraphOracleSem class, as described in Section 7.10.4
S2S (SPARQL to pure SQL) query option is now enabled by default for all SPARQL queries, as explained in Section 7.6.4.
OracleGraphWrapperForOntModel class provides better performance when using the Jena
OntModel class with an model stored in an Oracle database, as explained in Section 7.14.5.
You can specify a virtual model as the default model to answer SPARQL queries by using the predicate
oracle:virtualModelName, as explained in Section 7.2.2.
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.
Note: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.
With Patch 9825019 (SEMANTIC TECHNOLOGIES 11G R2 FIX BUNDLE 3), features have been added to support the following operations with named graph data:
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.
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.
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.
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.)
Effective with Release 18.104.22.168, 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".
Effective with Release 22.214.171.124, 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".
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".
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".
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.
The recommended best practices in Section 126.96.36.199, "FILTER Constructs Involving xsd:dateTime, xsd:date, and xsd:time" and Section 188.8.131.52, "Function-Based Indexes for FILTER Constructs Involving Typed Literals"
The functions with names in the form SEM_APIS.GETV$... in Chapter 9, "SEM_APIS Package Subprograms"
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".
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.
Note: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.
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.
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.
You can use Oracle Workspace Manager to version-enable RDF data in the semantic data store, as explained in Chapter 6.
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.
You can optimize the performance of
owl:sameAs inference, as explained in Section 2.2.8.
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.
You can use incremental inference update entailments (rules indexes) efficiently after triple additions, as explained in Section 2.2.9.
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.
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.
You can perform inferencing based on a core subset of the Simple Knowledge Organization System (SKOS) data model, as explained in Chapter 3.
You can specify additional inference components to cover OWL constructs, such as
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.
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 following subprograms have been added to the SEM_APIS PL/SQL package, which is documented in Chapter 9.
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:
Instead of SEM_APIS.ALTER_SEM_INDEX_ON_RULES_INDEX, use SEM_APIS.ALTER_SEM_INDEX_ON_ENTAILMENT.
Instead of SEM_APIS.ANALYZE_RULES_INDEX, use SEM_APIS.ANALYZE_ENTAILMENT.
Instead of SEM_APIS.CREATE_RULES_INDEX, use SEM_APIS.CREATE_ENTAILMENT.
Instead of SEM_APIS.DROP_RULES_INDEX, use SEM_APIS.DROP_ENTAILMENT.
Instead of SEM_APIS.LOOKUP_RULES_INDEX, use SEM_APIS.LOOKUP_ENTAILMENT.
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
The following are new and changed features for Oracle Database 11g Release 1 (11.1).
This section describes features that are included in interim patch 7600122 for Release 184.108.40.206.0, 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
join_hint for tasks
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 220.127.116.11)
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 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.
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.
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".