<docbook><section><title>ODSInstallDocs</title><bridgehead class="http://www.w3.org/1999/xhtml:h2">OpenLink Data Spaces (ODS) Quick Start</bridgehead>
<para> </para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Configuring ODS</bridgehead>
<para> ODS is now delivered as part of the Virtuoso Open Source 5.0 edition.
 This page provides instructions on installation of the ODS suite of Data Space applications.</para><para>Please note that ODS is preinstalled into the Virtuoso Demo Database.
 Thus, you do not need to perform the installation steps below if working with a Virtuoso 5.0 (or higher) demonstration database.</para><bridgehead class="http://www.w3.org/1999/xhtml:h4">Configuration Parameters</bridgehead>
<para> ODS depends on certain parameters in the Virtuoso Database Initialization File (INI file), e.g.
 &quot;demo.ini&quot; for the demonstration database.
 The settings in this file are appropriate for most installations.
 Thus, prior to starting the Virtuoso server, you need to verify that the following parameters in the INI file are set:</para><itemizedlist mark="bullet" spacing="compact"><listitem> HTTP Server is enabled (&#39;HTTPServer&#39; section) . </listitem>
<listitem> The default mail server is properly specified by the DefaultMailServer INI option in the &#39;HTTPServer&#39; section.
 This must point to a valid SMTP server for outgoing mail.
</listitem>
<listitem> The URIQA section must have a proper &#39;DefaultHost&#39; setting and must contain the name and http port of the HTTP listener.
 This name must be valid across the network where ODS will be used.
 This may require you to have a CNAME or similar entry in DNS for the service.</listitem>
</itemizedlist><para>For example:</para><programlisting>[URIQA]
DefaultHost = demo.mydomain.com:1112
</programlisting><para> See the <ulink url="http://docs.openlinksw.com/virtuoso/dbadm.html#ini_URIQA">URIQA section</ulink> in the documentation for more details.</para><itemizedlist mark="bullet" spacing="compact"><listitem> The ImageMagick, Wikiv, CreoleWiki, and MediaWiki plugins are enabled via the following entries in the &quot;[Plugins]&quot; section:</listitem>
</itemizedlist><programlisting>{{{Load5    = plain,creolewiki
... other plugins ...
</programlisting><para> </para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Locate and install the VAD packages</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h4">VAD Packages</bridgehead>
<para>Once you have verified the server settings, the next step is to install the VAD packages.</para><para>For binary distributions and the tree made by make install, packages are located in the share/virtuoso/vad directory under the installation root.
 If you are using the demo database, the packages are preinstalled.</para><para>The ODS VAD packages for this release include:</para><orderedlist spacing="compact"><listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsFramework">OpenLink Data Space (ODS) Framework</ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_framework_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_framework_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsBlog"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-WebBlog</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_blog_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_blog_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsBriefcase"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Briefcase</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_briefcase_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_briefcase_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsFeedManager"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Feed Manager</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_feedmanager_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_feedmanager_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsWiki"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Wiki</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_wiki_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_wiki_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsMail"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Mail</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_webmail_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_webmail_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsCalendar"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Calendar</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_calendar_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_calendar_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsBookmarkManager"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Bookmark Manager</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_bookmark_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_bookmark_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsGallery"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Gallery</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_gallery_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_gallery_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsCommunity"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Community</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_community_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_community_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsPolls"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Polls</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_polls_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_polls_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsAddressbook"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Addressbook</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_addressbook_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_addressbook_dav.vad</span></ulink>) </listitem>
<listitem> <ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OdsDiscussions"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiODS-Discussions</span></ulink> (<ulink url="http://virtuoso.openlinksw.com/vads/ods_discussions_dav.vad"><span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:nowikiods_discussions_dav.vad</span></ulink>)</listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h5">VAD Installation</bridgehead>
<para>The next step is to install the VAD packages.
 Run the following command with isql:</para><programlisting>SQL&gt; VAD_INSTALL(&#39;&lt;path of the VAD file&gt;&#39;,0);
</programlisting><para> Install the files in the order of the above listing.
 The web pages of the packages will go into the server&#39;s WebDAV repository.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">DNS Settings</bridgehead>
<para>If you wish to offer virtual host names for applications, as in myblog.example.com, then the DNS has to be set up to direct *.example.com to the host where Virtuoso is running.
 If users will not choose virtual host names for their applications, this step can be skipped.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Configure ODS</bridgehead>
<para>The larger part of configuration is performed through the browser:</para><itemizedlist mark="bullet" spacing="compact"><listitem> Enter the URL http:<emphasis>[host]:[port]/ods where the host and port are the server and port your Virtuoso instance is running on.
 (e.g.
 <computeroutput>http://localhost:8890/ods/</computeroutput>).
</emphasis></listitem>
<listitem> Login as &quot;dav&quot;.
 The default password is also &quot;dav&quot;.
</listitem>
<listitem> Click on &quot;Site Settings.&quot; </listitem>
<listitem> Open the &quot;Web Application Configuration&quot; page and enter a Google API key.
 You can obtain a key from <ulink url="http://www.google.com/apis/maps/signup.html">http://www.google.com/apis/maps/signup.html</ulink> . Just choose the appropriate Geocoder service.
 <emphasis>Note that not all Geocoder services return addresses for non-US countries.</emphasis> </listitem>
<listitem> Save the changes and return to the &quot;Site Settings&quot; via the link at the top.</listitem>
</itemizedlist><para><emphasis>You can skip these steps, but the map-related features will be disabled.</emphasis></para><itemizedlist mark="bullet" spacing="compact"><listitem> Open the &quot;Mail&quot; settings page.
</listitem>
<listitem> Specify the default mail domain.
 Specify whether to use the default mail server (from the INI) or enter another.
</listitem>
<listitem> Specify the ODS admin mail address and save the settings.
</listitem>
<listitem> Press the &quot;Test&quot; button to verify that the mail settings actually work.
</listitem>
<listitem> Return to the &quot;Site Settings&quot; page.
</listitem>
<listitem> Enter the &quot;Member Registration Settings&quot; page.
</listitem>
<listitem> Select the desired registration scheme from the options.
 f you are not sure what to use, leave it as it is.
 Here are the options that change the behavior of the ODS site registration:</listitem>
</itemizedlist><orderedlist spacing="compact"><listitem> &quot;Allow WA Default-Site Registrations&quot;: If registration is not allowed.
 only users created by a site admin will be able to login.
</listitem>
<listitem> &quot;Verify registration by email&quot; - Specifices whether to send a confirmation mail to new users or create the account immediately.</listitem>
</orderedlist><para>ODS is now ready for use.</para><para>Note: If you disable the default site registration, then in addition to the above, the ODS admin will need to create user accounts for site members.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Configuring the ODS domain(s)</bridgehead>
<para>In order to allow ODS users to create their own sub-domains (e.g.
 user.sample.domain, where the ODS domain is sample.domain), the ODS should be configured via the Conductor UI.</para><para>The following steps describe how you may enable an ODS domain :</para><itemizedlist mark="bullet" spacing="compact"><listitem> Go to <computeroutput>http://host:port/conductor.</computeroutput> </listitem>
<listitem> Login as &#39;dba&#39; and open &quot;WebDAV &amp; HTTP&quot;<computeroutput>=&gt;</computeroutput> &quot;HTTP Hosts &amp; Directories.&quot; </listitem>
<listitem> Specify the interface address, listen port, and domain like &#39;0.0.0.0&#39; (all interfaces), 8888, and &#39;sample.domain&#39; in the form below the list.
 Then, click &#39;Add.&#39; </listitem>
<listitem> Open &quot;System Admin&quot;<computeroutput>=&gt;</computeroutput>&quot;Packages.&quot; Then, open the Configure page for the &quot;Framework&quot; package.
</listitem>
<listitem> Select &quot;Create New Endpoint&quot; link; the new ODS endpoint form should be shown.
</listitem>
<listitem> You can specify either &quot;Endpoint prefix&quot; or &quot;Virtual directory&quot; or both to enable the domain from the selection list to be used as an ODS domain.
</listitem>
<listitem> Leave the &quot;Domain registration&quot; option enabled.
</listitem>
<listitem> Confirm the changes; the new ODS endpoint will be listed.</listitem>
</itemizedlist><para>After performing the above steps, the new domain will be selectable when choosing a virtual host name for new application instances.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Customization</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem> ODS pages</listitem>
</itemizedlist><para>The ODS pages can be modified by editing the *.vspx and *.css files in &lt;Virtuoso OpenSource&gt;/appsrc/ODS-Framework/ and then re-building the ods_dav.vad and re-installing it.
 Alternately, you can install the ods_filesystem.vad package which will put the dynamic web pages in the filesystem.
 You can edit the pages while the server is running, just as you would edit any dynamic web pages under PHP or similar.</para><itemizedlist mark="bullet" spacing="compact"><listitem> User&#39;s home</listitem>
</itemizedlist><para>The users in ODS may wish to change the look and feel of their own home pages in ODS.
 To do so, the user should go to the &#39;Settings&#39; page and enter the &#39;Home Page Template Selection&#39;.
 In the presented text area, he or she can edit the home page without special permissions from the ODS administrator.</para><para>Note: The current version of ODS contains one &#39;default&#39; home page template, which can serve as a basis for customization.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Adding users with Conductor</bridgehead>
<para>IMPORTANT: Below are instructions for adding new user accounts, if registrations are disabled.</para><para>This can be performed in the Conductor (pre-installed on the Demo Database):</para><itemizedlist mark="bullet" spacing="compact"><listitem> Open the Conductor via a browser at <computeroutput>http://host:port/conductor</computeroutput> (e.g.
 <computeroutput>http://localhost:8890/conductor/</computeroutput>).
</listitem>
<listitem> Login as &#39;dba&#39;.
</listitem>
<listitem> Go to &quot;System Admin&quot; and the &quot;User Accounts&quot; tab.
</listitem>
<listitem> Open the &quot;Create New Account&quot; page.
</listitem>
<listitem> Enter the requested information and check &quot;Allow DAV Logins&quot;.
</listitem>
<listitem> Repeat the previous step for every member of ODS.
</listitem>
<listitem> From the Conductor&#39;s left-hand menu, click on the &quot;Data Space&quot; or &quot;Web Applications&quot; link in the Conductor to commence using your Data Space applications.
 (This will take you to <computeroutput>http://localhost:8890/ods/</computeroutput> .)</listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3">Configuring the Virtuoso mail handler</bridgehead>
<para>Virtuoso provides a local mail delivery program (virt_mail) for SMTP servers.
 This program is used to store received mail into the Virtuoso database.</para><para>The following instructions are applicable to UNIX systems using sendmail as a mail server.</para><bridgehead class="http://www.w3.org/1999/xhtml:h4">Virtuoso Mail Handler Configuration</bridgehead>
<orderedlist spacing="compact"><listitem> Copy virt_mail to /usr/bin/virt_mail.
</listitem>
<listitem> Copy <span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:virtuoso/binsrc/maildrop/odbc_mail.default.ini to /etc/odbc_mail.ini.
</span></listitem>
<listitem> Edit /etc/odbc_mail.ini and change the login settings to match your current database installation:</listitem>
</orderedlist><programlisting>[Options]
DSN = DSN=Virtuoso; HOST=localhost:1111;UID=dba;PWD=dba
;MaxMessageSize = 2097152
Verify = DB.DBA.WA_MAIL_VALIDATE (&#39;$local&#39;)
Deliver = DB.DBA.WA_NEW_MAIL(&#39;$1&#39;, $message)
</programlisting><para> (You can probably leave the rest of the odbc_mail.ini alone.)</para><para>Note that the DSN contains reference to the VOS server SQL port.
 This should be modified, if a non-default SQL port (1111) is used.</para><bridgehead class="http://www.w3.org/1999/xhtml:h4">Sendmail program configuration</bridgehead>
<para>Replace the default local mailer in your sendmail.cf:</para><programlisting>...
#Mlocal,        P=/usr/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL,
#               T=DNS/RFC822/X-Unix,
#               A=procmail -t -Y -a $h -d $u
Mlocal,         P=/usr/bin/virt_mail, F=lsDFMA5:/|@qSPhn9, S=10/30, R=20/40,
                T=DNS/RFC822/X-Unix,
                A=virt_mail -c /etc/odbc_mail.ini -l $u -h $h -s $g
...
</programlisting><para> IMPORTANT: Make sure that ODS packages are installed prior to making the above changes.</para><bridgehead class="http://www.w3.org/1999/xhtml:h4">Verify Mail Settings</bridgehead>
<para>Send an e-mail to the &#39;dav&#39; user account:</para><programlisting>bash$ mail dav@&lt;domain&gt;
Subject: virt-mail-test
.
Cc:
</programlisting><para> Using the ISQL tool, check the mailbox of the &#39;dav&#39; user account:</para><programlisting>SQL&gt; select mm_subj from mail_message where mm_own = &#39;dav&#39;;
MM_SUBJ
VARCHAR
_______________________________________________________________________________

virt-mail-test

</programlisting><para> If you see the subject of the mail which was sent in the previous step, then the handler works correctly.
 Otherwise, you should check the log of the sendmail program.</para><para> </para><bridgehead class="http://www.w3.org/1999/xhtml:h4">Other SMTP Servers</bridgehead>
<para>For the other mail server programs, please consult the INSTALL document in the &lt;Virtuoso Open Source&gt;/binsrc/maildrop/ directory.</para><bridgehead class="http://www.w3.org/1999/xhtml:h3">Setting the VOS SMTP Mail handler on Win32 platforms</bridgehead>
<para>Before starting, make sure that STMP services for Internet Information Services (IIS) are installed on your windows box.</para><para>To check, open Control Panel</para><para>&gt;Add or Remove Programs</para><para>&gt;Add/Remove Windows Components.
 In &quot;Internet Information Services,&quot; review Details.
 There, you must have &quot;SMTP Service&quot; installed.
 If not check the service and proceed with a windows installation update.
 Please note that the windows installation disk may be requested.</para><para>If SMTP Service is installed, proceed with the following steps:</para><itemizedlist mark="bullet" spacing="compact"><listitem> Open IIS configuration via Control Panel<computeroutput>=&gt;</computeroutput>Administrative Tools.
</listitem>
<listitem> Check to see that the default SMTP Virtual server is running, and if needed, add an alias or domain.
 Note the domain name.
 This will be used in future steps.
</listitem>
<listitem> Open a command prompt (CMD).
</listitem>
<listitem> Go to the VOS binary distribution (c:\vos for example) in the c:\vos\bin directory.
</listitem>
<listitem> Make sure register.bat, smtpreg.vbs, and virt_mail.ini are in place.
 If not, download the ZIP (attached) and unpack in this directory.
</listitem>
<listitem> Run the following command: <programlisting>   register.bat /register &quot;domain-name&quot;
</programlisting>    Here, the domain-name is the domain that you wish to be served.</listitem>
</itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem> If no error occurs, you should see a message like: <programlisting>   assigning priority (0 of 32767)
   registered OpenLink MailDrop
   set priority Command to c:\vos\bin\virt_mail.exe
</programlisting> </listitem>
<listitem> Open c:\vos\bin\virt_mail.ini and edit the HOST address and port to match your Virtuoso OpenSource server in following line :</listitem>
</itemizedlist><programlisting>   DSN = DSN=Virtuoso; HOST=localhost:1112;UID=dba;PWD=dba
</programlisting><para> </para><itemizedlist mark="bullet" spacing="compact"><listitem> Make sure the Virtuoso OpenSource server is running, and test the SMTP handler installation as follows:</listitem>
</itemizedlist><itemizedlist mark="bullet" spacing="compact"><listitem> Connect with ISQL to the VOS database and execute the following commands:</listitem>
</itemizedlist><programlisting>SQL&gt; smtp_send (&#39;localhost:25&#39;, &#39;dba@testdomain&#39;, &#39;dba@testdomain&#39;, &#39;Subject: test\r\n\r\ntest&#39;);

Done. -- 26 msec.
SQL&gt; select MM_SUBJ from mail_message;
MM_SUBJ
VARCHAR
_______________________________________________________________________________

test

1 Rows. -- 0 msec.
SQL&gt;
</programlisting><para>    You should see a row with the text &quot;test&quot; in the result.
 Please note that &quot;testdomain&quot; should be replaced by your domain (see above).</para><itemizedlist mark="bullet" spacing="compact"><listitem> If something is broken, you can turn on logging in virt-mail.ini by uncommenting the MailDebug setting.
</listitem>
<listitem> If all is ok, then change the Verify and Deliver options in virt_mail.ini to:</listitem>
</itemizedlist><programlisting>Verify = DB.DBA.WA_MAIL_VALIDATE (&#39;$local&#39;)
Deliver = DB.DBA.WA_NEW_MAIL(&#39;$1&#39;, $message)
</programlisting><para> </para><itemizedlist mark="bullet" spacing="compact"><listitem> The STMP mail handler is ready for use with VOS ODS applications.</listitem>
</itemizedlist></section></docbook>