removed mods directory from the ATutor codebase
[atutor.git] / mods / wiki / doc / WikiXmlRpc
diff --git a/mods/wiki/doc/WikiXmlRpc b/mods/wiki/doc/WikiXmlRpc
deleted file mode 100644 (file)
index e80d1b7..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-+ interwikimapquery
-
-The XmlPlusRpc (XML-RPC compatible) interface of ewiki allows to query
-information for the Wiki using a standardized interface (remote procedure
-calls) to access the database indirectly. Speaking of standards, there are
-two, and ewiki adheres to the JspWiki:WikiRPCInterface, because that is
-believed to be more well-thought than the implementations in UseMod,
-MoinMoin and of course TWiki (as usual).
-
-All <string> and <base64> values passed back and forth are supposed to be
-UTF-8 encoded for compliant access (even if ewiki itself does not support
-it).
-
-Interface methods so far:
-
-: wiki.getRPCVersionSupported() :
-   returns (int) 1
-: wiki.getPage(pagename) :
-   returns raw WikiSource for the given page (current version) in <base64>
-: wiki.getPageVersion(pagename, version) :
-   returns raw WikiSource for the given page (given version) in <base64>
-: wiki.getPageHtml(pagename) :
-   returns rendered WikiPage for the given name (current version) in <base64>
-: wiki.getPageHtmlVersion(pagename, version) :
-   returns rendered WikiPage for the given name (specified version) in <base64>
-: wiki.getPageInfo(pagename) :
-   returns [.#MetaDataStruct] for the WikiPage (current version),
-: wiki.getPageInfoVersion(pagename, version) :
-   returns [.#MetaDataStruct] for the WikiPage (specified version)
-: wiki.getAllPages() :
-   returns an array of page names
-: wiki.getRecentChanges(since_timestamp) 
-   returns an array of [.#MetaDataStruct]s
-: wiki.listLinks(pagename) :
-   returns one [.#ListLinksStruct] for the given page (current version)
-: wiki.listLinksVersion(pagename, version) :
-   returns one [.#ListLinksStruct] for the given page (requested version)
-: wiki.putPage(pagename, content) :
-   not enabled (not implemented)
-
-
-! ~MetaDataStruct [#MetaDataStruct]
-
-The wiki.getPageInfo() and wiki.getRecentChanges() calls return a <struct>
-(or an array of) as follows:
-
-<code>
-  array(
-    "name" => ... as <string>,
-    "lastModified" => ... in <dateTime.iso8601>,
-    "author" => ... as <string>,
-    "version" => ... as <int>,
-  )
-</code>
-
-Or the same in XmlPlusRpc notation:
-
-<pre>
-<value>
-  <struct>
-     <member>
-       <name>name</name>
-       <value><string>PageName</string></value>
-     </member>
-     <member>
-       <name>lastModified</name>
-       <value><dateTime.iso8601>20010909T01:46:40</dateTime.iso8601></value>
-     </member>
-     <member> 
-        <name>author</name>
-        <value><string>AuthorNamePage</string></value>
-     </member>
-     <member>
-        <name>version</name>
-        <value><int>1</int></value>
-     </member>
-  </struct>
-</value>
-</pre>
-
-----
-
-! ~ListLinksStruct [#ListLinksStruct]
-
-Only the wiki.listLinks() method returns this result <struct>:
-
-<code>
-  array(
-    "page" => URL or pagename <string>,
-    "type" => "external" or "local" <string>,
-    "href" => local (WikiLinks) or absolute URL <string>,
-  )
-</code>
-
-Or in XmlPlusRpc notation:
-
-<pre>
-<value><array>
-   <data>
-      <value><struct>
-        <member>
-            <name>page</name>
-            <value><string>PageName</string></value>
-        </member>
-        <member>
-            <name>type</name>
-            <value><string>local</string></value>
-        </member>
-        <member>
-            <name>href</name>
-            <value><string>/cgi-bin/wiki.cgi?PageName</string></value>
-        </member>
-      </struct></value>
-      <value><struct>
-        <member>
-            <name>page</name>
-            <value><string>http://www.example.com/</string></value>
-        </member>
-        <member>
-            <name>type</name>
-            <value><string>external</string></value>
-        </member>
-        <member>
-            <name>href</name>
-            <value><string>http://www.example.com/</string></value>
-        </member>
-      </struct></value>
-      ...
-   </data>
-</array></value>
-</pre>
-
-------
-
-
-!! known WikiRpcImplementations
-
-There are two differing ''standards'' for the Wiki XmlPlusRpc interface.
-
-| version  | WikiServers implementing it        | WikiClients using it    |  implementation details |
-| old      | [MoinMoin:], [UseMod:], [TWiki:]   | [MetaWiki:WikiGateway]  | sporadically uses additional URL encoding for parameter and result <string>s that are already UTF-8 encoded |
-| new      | [JspWiki:], [ErfurtWiki:]          | ???                     | all <string>s and <base64> ''binary'' data is encoded as UTF-8, in __all__ parameters and in result values |
-
-So all further occourences of <string> and <base64> actually mean an UTF-8
-encoded string representation, that additionally is sometimes urlencoded().
-
-
-! the interface
-
-The current version of the interface is 1, everything else should be
-considered as extension of the mentioned WikiWare.
-
-All WikiXmlRpc methods have a class prefix of "__wiki.__" to their
-methodName().
-
-|ver | XmlPlusRpc methodName()            | input parameter types | result values | WikiWare notes |
-|1 | getRPCVersionSupported()              | -                    | <int> 1       | -  |
-|1 | getPage(pagename)                     | <string>             | <base64>WikiPageSource</base64>  | -  |
-|1 | getPageVersion(pagename, version)     | <string>, <int>      | <base64>WikiPageSource</base64>  | -  |
-|1 | getPageHtml(pagename)                 | <string>             | <base64>HtmlRenderedWikiPage</base64>  | -  |
-|1 | getPageHtmlVersion(pagename, version) | <string>, <int>      | <base64>HtmlRenderedWikiPage</base64>  | -  |
-|1 | getPageInfo(pagename)                 | <string>             | a [.#MetaDataStruct "MetaDataStruc"]   | -  |
-|1 | getPageInfoVersion(pagename, version) | <string>, <int>      | a [.#MetaDataStruct "MetaDataStruc"]   | -  |
-|1 | getAllPages()                         | -                    | an <array> of PageName <string>s       | -  |
-|1 | getRecentChanges(since_timestamp)     | <dateTime.iso8601>, since_timestamp represents the time point from which one would like to get the list of changed pages | returns an <arrra> of [.#MetaDataStruct "meta data <struct>s"] like the one emitted by wiki.getPageInfo() | -  |
-|1 | listLinks(pagename)                   | <string>             | returns an [.#ListLinksStruct "<array> of listLinks <struct>s"]  | wiki.listLinks() returns the links from a page, internal and external (WWW) ones; it is unknown which of the implementations also return image links, and links to not yet existing internal pages (QuestionMarkLinks) |
-|1 | putPage(pagename, content)            | <string>, <base64> content to be saved as new page source | returns <boolean>1</boolean> on success, else the false value | not implemented/enabled in all Wikis  |
-|2 | putPage(pagename, content, attributes) | <string>, <base64> content, struct> attributes | -  | where the attributes struct shall have parameters like {comment} and {minoredit}  |
-|2 | getBackLinks(pagename)                | <string>             | <array> of <string>s like for getAllPages()  | proposed extension for [JspWiki:]   |
-|x | filterData(data, contentType, params) | <base64>, <string>, <struct>    | returns <struct> with { "data" => <base64/>, "contentType" => <string/> }  | a [TWiki:] extension, see [TWiki:XmlRpcFilteringPipe]   |
-|x | listLinksVersion(pagename, version)   | -  | -  | only implemented in [ErfurtWiki:], works like wiki.listLinks()   |
-