File: rdfs_rule_set.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (127 lines) | stat: -rw-r--r-- 7,156 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 -
 -  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 -  project.
 -
 -  Copyright (C) 1998-2018 OpenLink Software
 -
 -  This project is free software; you can redistribute it and/or modify it
 -  under the terms of the GNU General Public License as published by the
 -  Free Software Foundation; only version 2 of the License, dated June 1991.
 -
 -  This program is distributed in the hope that it will be useful, but
 -  WITHOUT ANY WARRANTY; without even the implied warranty of
 -  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 -  General Public License for more details.
 -
 -  You should have received a copy of the GNU General Public License along
 -  with this program; if not, write to the Free Software Foundation, Inc.,
 -  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 -
 -
-->
<refentry id="fn_rdfs_rule_set">
  <refmeta>
    <refentrytitle>rdfs_rule_set</refentrytitle>
    <refmiscinfo>rdf</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>rdfs_rule_set</refname>
    <refpurpose>Adds the applicable facts of the graph into a rule set.</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_rdfs_rule_set">
      <funcprototype id="fproto_rdfs_rule_set">
        <funcdef><function>rdfs_rule_set</function></funcdef>
        <paramdef><optional>in <parameter>rule_name</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>graph_iri</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>remove</parameter> integer</optional></paramdef>
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc_rdfs_rule_set"><title>Description</title>
    <para>This function associates a rule-name with a source named graphs identified by a named graph IRI.
    	This named graph is contains RDF statements that constitute the desired inference rule to be created.
    	You can use this procedure to add RDF statements from other named graphs as part as part of a
    	rule-enhancement effort.</para>
  </refsect1>
  <refsect1 id="params_rdfs_rule_set">
    <title>Parameters</title>
    <refsect2>
      <title>rule_name</title>
      <para>Rule name (literal that identifies the rule).</para>
    </refsect2>
    <refsect2>
      <title>graph_iri</title>
      <para>A named graph IRI that identifies the source of RDF statements to be used as inference rules,</para>
    </refsect2>
    <refsect2>
      <title>remove</title>
      <para>(0|1 default 0) - where 1 indicates that the specified graph is to be removed from the rule set.</para>
    </refsect2>
  </refsect1>
  <refsect1 id="examples_rdfs_rule_set">
    <title>Examples</title>
    <example id="ex_rdfs_rule_set1">
      <title>Simple Usage Example</title>
      <para>Google and Bloomberg Stock Quote Services return HTML5+Microdata based Linked Open Data using terms from Schema.org.
      	As will be quite common, there is a case sensitive issue in regards to the HTTP URIs that identify the "Financial Quote" class.
      	For Bloomberg we have: &lt;http://schema.org/intangible/financialquote&gt; and for Google:
      	&lt;http://schema.org/Intangible/FinancialQuote&gt; . What follows in an <emphasis>owl:equivalentProperty</emphasis>
      	relation that enables a processor of this data (e.g., SPARQL Query Processor) apply reasoning and inference based on
      	the semantics of the <emphasis>owl:equivalentProperty</emphasis> relation. Using Virtuoso's SPARQL processor, you can
      	create an inference rule declaratively via <link linkend="fn_rdfs_rule_set"><function>rdfs_rule_set()</function></link>:</para>
<programlisting><![CDATA[
-- Suppose a ttl file inference-rule-for-stock-quotes.ttl has the following content:
<http://schema.org/intangible/financialquote>
  owl:equivalentProperty <http://schema.org/Intangible/FinancialQuote> .

-- Load the data to a Named Graph that's implicitly (in the case of Virtuoso)
-- identified by the RDF Document URL that contains the RDF statements that
-- constitute the rule being created
SQL> LOAD <http://example.com/inference-rule-for-stock-quotes.ttl> ;
Done. -- 15 msec.

-- Via SQL run the procedure:
SQL> RDFS_RULE_SET ('schema_stock_quotes', 'http://example.com/inference-rule-for-stock-quotes.ttl');
]]></programlisting>
    </example>
    <example id="ex_rdfs_rule_set2">
      <title>Create Rule example</title>
      <para>Create rule set and  verify rule's existence:</para>
<programlisting><![CDATA[
        SQL> rdfs_rule_set('myset', 'http://mygraph.com');
Done. -- 15 msec.
SQL> SELECT * FROM DB.DBA.SYS_RDF_SCHEMA ;
RS_NAME                              RS_URI                                                         RS_G
VARCHAR NOT NULL                     VARCHAR NOT NULL                                               VARCHAR
_______________________________________________________________________________                    
                                                                                                   
http://example.com/dataspace         http://example.com/dataspace/inf          NULL
http://www.w3.org/2002/07/owl#       http://www.w3.org/2002/07/owl#                                 NULL
myset                                http://mygraph.com                                             NULL
virtrdf-ifp                          virtrdf-ifp                                                    NULL
virtrdf-label                        virtrdf-label                                                  NULL
virtrdf-meta-entity-class            http://www.openlinksw.com/schemas/virtrdf-meta-entity-class    NULL

7 Rows. -- 0 msec.
]]></programlisting>      
    </example>
  </refsect1>
  <refsect1 id="seealso_rdfs_rule_set">
    <title>See Also</title>
    <para><link linkend="fn_rdf_audit_metadata"><function>DB.DBA.RDF_AUDIT_METADATA()</function></link></para>
    <para><link linkend="fn_rdf_backup_metadata"><function>DB.DBA.RDF_BACKUP_METADATA()</function></link></para>
    <para><link linkend="fn_rdf_load_rdfxml_mt"><function>DB.DBA.RDF_LOAD_RDFXML_MT()</function></link></para>
    <para><link linkend="fn_ttlp"><function>DB.DBA.TTLP()</function></link></para>
    <para><link linkend="fn_ttlp_mt"><function>DB.DBA.TTLP_MT()</function></link></para>
    <para><link linkend="fn_rdf_triples_to_rdf_xml_text"><function>DB.DBA.RDF_TRIPLES_TO_RDF_XML_TEXT()</function></link></para>
    <para><link linkend="fn_sparql_rexec"><function>DB.DBA.SPARQL_REXEC()</function></link></para>
    <para><link linkend="fn_sparql_rexec_to_array"><function>DB.DBA.SPARQL_REXEC_TO_ARRAY()</function></link></para>
    <para><link linkend="fn_sparql_rexec_with_meta"><function>DB.DBA.SPARQL_REXEC_WITH_META()</function></link></para>
    <para><link linkend="fn_rdf_quad_uri_l"><function>DB.DBA.RDF_QUAD_URI_L()</function></link></para>
    <para><link linkend="fn_rdf_quad_uri_l_typed"><function>DB.DBA.RDF_QUAD_URI_L_TYPED()</function></link></para>
    <para><link linkend="fn_rdf_ttl2hash"><function>DB.DBA.RDF_TTL2HASH()</function></link></para>
  </refsect1>
</refentry>