15.112 SEM_APIS.GRANT_MODEL_ACCESS_PRIVS

Format

SEM_APIS.GRANT_MODEL_ACCESS_PRIVS(
     model_name      IN VARCHAR2, 
     user_name       IN VARCHAR2,
     priv_list       IN SYS.ODCIVARCHAR2LIST, 
     user_view       IN VARCHAR2 DEFAULT NULL, 
     options         IN VARCHAR2 DEFAULT NULL,
     network_owner   IN VARCHAR2 DEFAULT NULL,
     network_name    IN VARCHAR2 DEFAULT NULL);

Note:

This subprogram will be deprecated in a future release. It is recommended that you use the SEM_APIS.GRANT_RDF_GRAPH_ACCESS_PRIVS subprogram instead.

Description

Grants access privileges on a model or entailment.

Parameters

model_name

Name of the model.

user_name

Database user that is recipient of this privilege.

priv_list

Specifies the list of privileges that are granted. Currently allowed values include the following:

  • QUERY: Query the model using SPARQL
  • SELECT, READ: Retrieve model content using SQL. The source for the content is the RDFT_<model> view in the network owner's schema or the view name, if any, specified for the user_view parameter.
  • INSERT, UPDATE, DELETE: Perform SPARQL Update (DML) operations on the model or SQL DML operations. For SQL DML, the target object is the RDFT_<model> view in the network owner's schema.

Note:

QUERY is the only valid choice if the model is not a regular model (that is, not created using sem_apis.create_sem_model).
user_view

Applicable to schema-private network only. If a view was created on the RDFT_<model> view at model creation time using sem_apis.create_sem_model or later, privileges are granted on that view.

options

If user specifies the word ENTAILMENT as part of the string value, then the specified model_name is taken as the name of an entailment (rules index).(Additional words or phrases may be allowed in future.)

network_owner

Owner of the semantic network. (See Table 1-2.)

network_name

Name of the semantic network. (See Table 1-2.)

Usage Notes

The recipient must already have query-only or full access to the semantic network (which guarantees access to dictionary tables, but not individual models). This operation grants access to the specified model.

Examples

The following example grants privileges to perform DML operations against a semantic technology model named articles in the schema-private network NET1 owned by database user RDFUSER. (This example refers to the model described in Example 1-129.)

EXECUTE SEM_APIS.GRANT_MODEL_ACCESS_PRIVS('articles', 'USER1', sys.odcivarchar2list('INSERT','UPDATE','DELETE'), network_owner=>'RDFUSER', network_name=>'NET1');