File: xslt_stale.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 (90 lines) | stat: -rw-r--r-- 3,540 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
<?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_xslt_stale">
  <refmeta>
    <refentrytitle>xslt_stale</refentrytitle>
    <refmiscinfo>xml</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>xslt_stale</refname>
    <refpurpose>force reload of XSL stylesheet</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_xslt_stale">
      <funcprototype id="fproto_xslt_stale">
        <funcdef><function>xslt_stale</function></funcdef>
        <paramdef>in <parameter>uri</parameter> varchar</paramdef>
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc_xslt_stale">
    <title>Description</title>
	<para>
This function can be used to force Virtuoso to reload a cached
stylesheet from the URI when next used with
<function>xslt()</function> or <function>http_xslt()</function>.
Using this function before every application of the stylesheet is
extremely inefficient.  If stylesheets are stored in the database, you
can use this function in an update trigger on the table storing the
stylesheets but you don't have to use it before every application of the
sheet.
</para>

<para>This function never needs to be applied to a stylesheet URI with
the file:// protocol since <function>xslt()</function> and
<function>http_xslt()</function> will automatically detect a stale
cache entry.  However if the stylesheet is stored on a remote web
server, or if the stylesheet contains subdocuments (
e.g. external XML entities, xsl:include or xsl:import statements)
this function is needed to force a reload.
</para>
  </refsect1>
  <refsect1 id="params_xslt_stale"><title>Parameters</title>
    <refsect2><title>uri</title>
      <para>The location of the style sheet to force a reload.</para></refsect2>
  </refsect1>
  <refsect1 id="errors_xslt_stale"><title>Errors</title>
	    <para>The function never signals any errors.
E.g. it is not an error if the specified stylesheet does not exist
or if the specified stylesheet is used by other transaction when
the <function>xslt_stale()</function> is called.
            </para>
  </refsect1>

  <refsect1 id="examples_xslt_stale"><title>Examples</title>
    <example id="ex_xslt_stale"><title>Simple Use</title>
      <programlisting>
sheet := 'virt://WS.WS.SYS_DAV_RES.RES_FULL_PATH.RES_CONTENT:/DAV/stylesheets/document.xsl';
xslt_stale (sheet);
xslt(sheet, xml_doc_tree);
</programlisting>
    </example>
  </refsect1>
  <refsect1 id="seealso_xslt_stale"><title>See Also</title>
    <para><link linkend="fn_xslt"><function>xslt()</function></link></para>
    <para><link linkend="fn_http_xslt"><function>http_xslt()</function></link></para>
  </refsect1>
</refentry>