<docbook><section><title>VirtuosoOdsUbiquity</title><title>ODS Ubiquity Commands</title>ODS Ubiquity Commands
<para> </para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> What is the ODS Ubiquity Commands implementation?</bridgehead>
<para>ODS provides Ubiquity commands to manipulate user accounts as well as instances and instance specific data using the ODS Controllers API.
 This command set is available only for the Firefox browser with the Ubiquity extension installed.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> How does it work?</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Installation</bridgehead>
<para>First, the <ulink url="https://wiki.mozilla.org/Labs/Ubiquity">Ubiquity</ulink> Firefox extension must be installed.
 Then, ODS Ubiquity commands can be installed by accessing http://host:port/ods/ods_ubiquity.html page.
 Ubiquity commands are accessed by the ctrl-space key combination.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Commands</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Utility Commands</bridgehead>
 <orderedlist spacing="compact"><listitem>show current ODS Ubiquity params: <programlisting>Syntax: ods-get-params
Example: ods-get-params
</programlisting></listitem>
<listitem>enable log command execution - steps and parameters.
 The log can be shown on Firebug console: <programlisting>Syntax: ods-log-enable
Example: ods-log-enable
</programlisting></listitem>
<listitem>disable log command execution: <programlisting>Syntax: ods-log-disable
Example: ods-log-disable
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3"> Basic Session Setup  Commands</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h4"> ODS Instance Identification</bridgehead>
 Assuming you are using the server at: <ulink url="http://myopenlink.net/,">http://myopenlink.net/,</ulink> in order to change it use the command: <programlisting>Syntax: ods-host &lt;host_url&gt;
Example: ods-host http://demo.openlinksw.com/ods
</programlisting><para> Example usage you can find <ulink url="VirtuosoOdsUbiquityTutorialsPublBookmark">here</ulink>.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h4"> ODS OAuth Endpoint Identification</bridgehead>
 Assuming the OAuth endpoint: <ulink url="http://myopenlink.net/OAuth,">http://myopenlink.net/OAuth,</ulink> in order to change it use the command: <programlisting>Syntax: ods-oauth-host &lt;host_url&gt;
Example: ods-oauth-host http://demo.openlinksw.com/OAuth
</programlisting><para> Example usage you can find <ulink url="VirtuosoOdsUbiquityTutorialsOAuth">here</ulink>.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h4"> ODS Command Mode</bridgehead>
 There are two command modes available to ubiquity commands when working against an ODS instance: oauth or sid.<para>In OAuth mode, for every ODS application instance, an OAuth key must be obtained and then initialized via the following steps: </para>
<orderedlist spacing="compact"><listitem>obtain an ODS based OAuth session-key via the ODS example endpoint: <ulink url="http://host:port/ods/oauth_sid.vsp">http://host:port/ods/oauth_sid.vsp</ulink> <programlisting>http://myopenlink.net/ods/oauth_sid.vsp
</programlisting></listitem>
<listitem>bind session key to command session via the command: *ods-set-oauth &lt;oauth-key&gt;* or use *ods-set-[class name]-oauth &lt;oauth-key&gt;* when oauth-key was generated for particular application instance.
<itemizedlist mark="bullet" spacing="compact"><listitem>Example usage you can find <ulink url="VirtuosoOdsUbiquityTutorialsOAuth">here</ulink>.</listitem>
</itemizedlist></listitem>
</orderedlist><para>If you choose the SID mode of interaction with ODS you have to perform the following steps: </para>
<orderedlist spacing="compact"><listitem>set mode via command: <emphasis>ods-set-mode sid</emphasis> or <emphasis>ods-set-mode oauth</emphasis> </listitem>
<listitem>set sid via command: <emphasis>ods-set-sid sid</emphasis> <itemizedlist mark="bullet" spacing="compact"><listitem>Example usage you can find <ulink url="VirtuosoOdsUbiquityTutorialsPublBookmark">here</ulink>.</listitem>
</itemizedlist></listitem>
</orderedlist> <para><emphasis>Note</emphasis>: The sid is a session ID applicable to all ODS commands for a given bound instance and user combination.
 It&#39;s obtained from an ODS session.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3">ODS Application Commands By Functionality Realm</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h4"> ODS Object Information</bridgehead>
<orderedlist spacing="compact"><listitem>get information for ODS object by uri: <emphasis>ods-get-uri-info</emphasis>: <programlisting>Syntax: ods-get-uri-info &lt;uri&gt;
Example: ods-get-uri-info http://myopenlink.net/dataspace/person/kidehen
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User Management</bridgehead>
<orderedlist spacing="compact"><listitem>create user in ODS: <emphasis>ods-create-user</emphasis>: <programlisting>Syntax: ods-create-user &lt;user_name&gt; password &lt;password&gt; email &lt;email&gt;
Example: ods-create-user test password test email test@openlinksw.com
</programlisting></listitem>
<listitem>authenticate user in ODS: <emphasis>ods-authenticate-user</emphasis>: <programlisting>Syntax: ods-authenticate-user &lt;user_name&gt; with &lt;password&gt;
Example: ods-authenticate-user demo with demo
</programlisting><itemizedlist mark="bullet" spacing="compact"><listitem>Example usage you can find <ulink url="VirtuosoOdsUbiquityTutorialsPublCalendar">here</ulink>.
</listitem>
</itemizedlist></listitem>
<listitem>get user info: <emphasis>ods-get-user test</emphasis>: <programlisting>Syntax: ods-get-user &lt;user_name&gt;
Example: ods-get-user test
</programlisting></listitem>
<listitem>enable user: <emphasis>ods-enable-user</emphasis>: <programlisting>Syntax: ods-enable-user &lt;user_name&gt;
Example: ods-enable-user test
</programlisting></listitem>
<listitem>disable user: <emphasis>ods-disable-user</emphasis>: <programlisting>Syntax: ods-disable-user &lt;user_name&gt;
Example: ods-disable-user test
</programlisting></listitem>
<listitem>user removal: <emphasis>ods-delete-user</emphasis>: <programlisting>Syntax: ods-delete-user &lt;user_name&gt;
Example: ods-delete-user test
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User Annotations</bridgehead>
<orderedlist spacing="compact"><listitem>new annotation: <programlisting>Syntax: ods-create-user-annotation &lt;iri&gt; has &lt;relation&gt; with &lt;value&gt;
Example: ods-create-user-annotation http://yahoo.com has see:Also with test
</programlisting></listitem>
<listitem>remove existing annotation: <programlisting>Syntax: ods-delete-user-annotation &lt;iri&gt; has &lt;relation&gt; with &lt;value&gt;
Example: ods-delete-user-annotation http://yahoo.com has see:Also with test
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User Topic Of Interests</bridgehead>
<orderedlist spacing="compact"><listitem>new topic of interest: <programlisting>Syntax: ods-create-user-topicOfInterest &lt;topicURI&gt; [label &lt;topicLabel&gt;]
Example: ods-create-user-topicOfInterest http://yahoo.com label Yahoo Search Engine
</programlisting></listitem>
<listitem>remove existing topic of interest: <programlisting>Syntax: ods-delete-user-topicOfInterest &lt;topicURI&gt;
Example: ods-delete-user-topicOfInterest http://yahoo.com
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User Thing Of Interests</bridgehead>
<orderedlist spacing="compact"><listitem>new thing of interest: <programlisting>Syntax: ods-create-user-thingOfInterest &lt;thingURI&gt; [label &lt;thingLabel&gt;]
Example: ods-create-user-thingOfInterest http://facefook.com
</programlisting></listitem>
<listitem>remove existing thing of interest: <programlisting>Syntax: ods-delete-user-thingOfInterest &lt;thingURI&gt;
Example: ods-delete-user-thingOfInterest http://facefook.com
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User Biographical Data</bridgehead>
<orderedlist spacing="compact"><listitem>new annotation: <programlisting>Syntax: ods-create-user-bioevent &lt;bioEvent&gt; on &lt;bioDate&gt; in &lt;bioPlace&gt;
Example: ods-create-user-bioevent bio:Birth on 1970-01-01 in London
</programlisting></listitem>
<listitem>remove existing annotation: <programlisting>Syntax: ods-delete-user-bioevent &lt;bioEvent&gt; on &lt;bioDate&gt; in &lt;bioPlace&gt;
Example: ods-delete-user-bioevent bio:Birth on 1970-01-01 in London
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User&#39;s OfferList</bridgehead>
<orderedlist spacing="compact"><listitem>new offer: <programlisting>Syntax: ods-create-user-offer &lt;offerName&gt; [comment &lt;offerComment&gt;]
Example: ods-create-user-offer LCD Monitor
</programlisting></listitem>
<listitem>new offer property: <programlisting>Syntax: ods-create-user-offer-property &lt;offerName&gt; property &lt;offerProperty&gt; value &lt;offerPropertyValue&gt;
Example: ods-create-user-offer-property LCD Monitor property gr:price value $199.95
</programlisting></listitem>
<listitem>remove existing offer property: <programlisting>Syntax: ods-delete-user-offer-property &lt;offerName&gt; property &lt;offerProperty&gt; 
Example: ods-delete-user-offer-property LCD Monitor property gr:price
</programlisting></listitem>
<listitem>remove existing offer: <programlisting>Syntax: ods-delete-user-offer &lt;offerName&gt;
Example: ods-delete-user-offer LCD Monitor
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> User&#39;s WishList</bridgehead>
<orderedlist spacing="compact"><listitem>new thing of interest: <programlisting>Syntax: ods-create-user-wish &lt;wishName&gt; type &lt;wishType&gt; [comment &lt;wishComment&gt;]
Example: ods-create-user-wish Keyboard type wishs
</programlisting></listitem>
<listitem>remove existing wish: <programlisting>Syntax: ods-delete-user-wish
Example: ods-delete-user-wish Keyboard
</programlisting> </listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4"> Instance Management</bridgehead>
 <orderedlist spacing="compact"><listitem>get instance id: <emphasis>ods-get-instance-id</emphasis>: <programlisting>Syntax: ods-get-instance-id &lt;instance_name&gt;
Example: ods-get-instance-id demo&#39;s Bookmarks
</programlisting><itemizedlist mark="bullet" spacing="compact"><listitem>Example usage you can find at <ulink url="VirtuosoOdsUbiquityTutorials">Tutorials section</ulink>.
</listitem>
</itemizedlist></listitem>
<listitem>freeze instance: <emphasis>ods-freeze-instance</emphasis>: <programlisting>Syntax: ods-freeze-instance &lt;instance_id&gt;
Example: ods-freeze-instance 10
</programlisting></listitem>
<listitem>unfreeze instances: <emphasis>ods-unfreeze-instance</emphasis>: <programlisting>Syntax: ods-freeze-instance &lt;instance_id&gt;
Example: ods-unfreeze-instance 10
</programlisting></listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3"> Briefcase</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityBriefcase">Briefcase Ubiquity Commands</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3"> Bookmarks</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityBookmarks">Bookmarks Ubiquity Commands</ulink></listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Calendar</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityCalendar">Calendar Ubiquity Commands</ulink></listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3">Addressbook</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityAddressbook">Addressbook Ubiquity Commands</ulink></listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Polls</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityPolls">Polls Ubiquity Commands</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3"> Weblog</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityWeblog">Weblog Ubiquity Commands</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3">Feed Manager</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityFeeds">Feed Manager Ubiquity Commands</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3">Discussion</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityDiscussion">Discussion Ubiquity Commands</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h3">Gallery</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityGallery">Gallery Ubiquity Commands</ulink></listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2">Learn More</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="VirtuosoOdsUbiquityTutorials">Virtuoso ODS Ubiquity Commands Tutorials</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2">References</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/OAuth">OpenLink&#39;s explanation of OAuth</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtuosoOAuthServer">Virtuoso OAuth server</ulink> </listitem>
<listitem><ulink url="VirtOAuthControllers">Using OAuth with ODS</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtOAuth">Virtuoso OAuth Implementation</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsControllers">ODS Controllers</ulink> </listitem>
<listitem><ulink url="VirtODSOAuthQA">Testing Virtuoso OAuth with 3rd Party OAuth Clients</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorialsOAuth">OAuth Ubiquity Tutorial</ulink> </listitem>
<listitem><ulink url="VirtOAuthTestTool">Virtuoso OAuth Test Tool for ODS Controllers</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuthSPARQL">Virtuoso SPARQL OAuth Tutorial</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorials">ODS Ubiquity Tutorials</ulink> </listitem>
<listitem><ulink url="VirtOAuthExamples">OAuth Applications Authentication examples</ulink> </listitem>
<listitem><ulink url="http://oauth.net/core/1.0/">OAuth API</ulink></listitem>
</itemizedlist><para><ulink url="CategoryODS">CategoryODS</ulink> <ulink url="CategoryOpenSource">CategoryOpenSource</ulink> <ulink url="CategoryWebSite">CategoryWebSite</ulink> </para>
</section></docbook>