<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>YaCy '#[clientname]#': Federated Index</title> #%env/templates/metas.template%# <script type="text/javascript"> //<![CDATA[ function xmlhttpPost() { var searchform = document.getElementById('searchform'); search(searchform.discoverobjectspace.value); } function search(query) { var xmlHttpReq = false; var self = this; if (window.XMLHttpRequest) { // Mozilla/Safari self.xmlHttpReq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } self.xmlHttpReq.open('GET', "yacysearch.json?verify=false&resource=local&maximumRecords=100&nav=none&query=" + query + "+inurl:" + query, true); self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); self.xmlHttpReq.onreadystatechange = function() { if (self.xmlHttpReq.readyState == 4) { updatepage(self.xmlHttpReq.responseText); } } self.xmlHttpReq.send(null); } function updatepage(str) { var raw = document.getElementById("raw"); if (raw != null) raw.innerHTML = str; var rsp = eval("("+str+")"); var firstChannel = rsp.channels[0]; var totalResults = firstChannel.totalResults.replace(/[,.]/,""); var startIndex = firstChannel.startIndex; var itemsPerPage = firstChannel.itemsPerPage; var navigation = firstChannel.navigation; var html = ""; if (totalResults > 0 && firstChannel.items.length > 0) { var item; html += "<table class=\"networkTable\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" width=\"99%\">"; html += "<tr class=\"TableHeader\" valign=\"bottom\">"; html += "<td>URL from index (total results = " + totalResults + ")<\/td>"; for (var i = 0; i < firstChannel.items.length; i++) { item = firstChannel.items[i]; html += "<tr class=\"TableCellLight\"><td align=\"left\" onclick=\"document.getElementById('searchform').value='" + item.link + "';\">" + item.link + "<\/td>"; } html += "<\/table>"; } document.getElementById("searchresults").innerHTML = html; } //]]> </script> </head> <body id="Vocabulary_p"> #(edit)#:: <div id="api"> <a href="Vocabulary_p.xml" id="apilink"><img src="/env/grafics/api.png" width="60" height="40" alt="API"/></a> <script type="text/javascript"> //<![CDATA[ document.getElementById('apilink').setAttribute('href', 'Vocabulary_p.xml?' + window.location.search.substring(1)); //]]> </script> <span>The information that is presented on this page can also be retrieved as XML Click the API icon to see the RDF Ontology definition for this vocabulary. To see a list of all APIs, please visit the <a href="http://www.yacy-websuche.de/wiki/index.php/Dev:API">API wiki page</a>.</span> </div> #(/edit)# #%env/templates/header.template%# #%env/templates/submenuSemantic.template%# <h2>Vocabulary Administration</h2> <p> Vocabularies can be used to produce a search navigation. A vocabulary must be created before content is indexed. The vocabulary is used to annotate the indexed content with a reference to the object that is denoted by the term of the vocabulary. The object can be denoted by a url stub that, combined with the term, becomes the url for the object. </p> <form action="Vocabulary_p.html" method="get" accept-charset="UTF-8"> <fieldset><legend>Vocabulary Selection</legend> <dl> <dt>Vocabulary Name</dt> <dd> <select name="vocabulary" onchange="this.form.submit()"> #{vocabularyset}# <option value="#[name]#" #(selected)#::selected="selected"#(/selected)#>#[name]#</option> #{/vocabularyset}# </select> </dd> <dt></dt><dd><input type="submit" name="view" value="View" /></dd> </dl> </fieldset> </form> #(create)#:: <!--<form action="Vocabulary_p.html" id="searchform" method="get" accept-charset="UTF-8" onkeyup="xmlhttpPost(); return false;">--> <form action="Vocabulary_p.html" id="searchform" method="get" accept-charset="UTF-8" > <fieldset><legend>Vocabulary Production</legend> It is possible to produce a vocabulary out of the existing search index. This is done using a given 'objectspace' which you can enter as a URL Stub. This stub is used to find all matching URLs. If the remaining path from the matching URLs then denotes a single file, the file name is used as vocabulary term. This works best with wikis. Try to use a wiki url as objectspace path. <dl> <dt>Vocabulary Name</dt><dd><input type="text" name="discovername" value="" size="16" maxlength="128" /></dd> <dt>Objectspace</dt><dd><input type="text" name="discoverobjectspace" value="http://" size="78" maxlength="128" /> <div id="searchresults"></div></dd> <dt>Discover Terms:</dt> <dd> <input type="radio" name="discovermethod" value="none" checked="checked" />no auto-discovery (empty vocabulary) <input type="radio" name="discovermethod" value="path" />from file name <input type="radio" name="discovermethod" value="title" />from page title <input type="radio" name="discovermethod" value="titlesplitted" />from page title (splitted) <input type="radio" name="discovermethod" value="author" />from page author</dd> <dt></dt><dd><input type="submit" name="create" value="Create" /></dd> </dl> </fieldset> </form> #(/create)# #(edit)#:: <form action="Vocabulary_p.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8"> <fieldset><legend>Vocabulary Editor</legend> <dl> <dt>Vocabulary Name</dt><dd>#[name]#</dd> <dt>File</dt><dd>#(editable)#[automatically generated, not stored, cannot be edited]::#[file]##(/editable)#</dd> <dt>Size</dt><dd>#[size]#</dd> <dt>Namespace</dt><dd>#[namespace]#</dd> <dt>Predicate</dt><dd>#[predicate]#</dd> <dt>Prefix</dt><dd>#[prefix]#</dd> <dt>Objectspace</dt><dd>#(editable)##[objectspace]#::<input type="text" name="objectspace" value="#[objectspace]#" size="78" maxlength="128" /><br/>if set, uses the predicate <a href="#[objectspacepredicate]#" target="_blank">#[objectspacepredicate]#</a> for generated objects. Hint: use 'http://dbpedia.org/resource/' as default.#(/editable)#</dd> </dl> <p>This produces the following triples in the <a href="/interaction/GetRDF.xml?global=">triplestore</a> if a term or synonym matches in a document:</p> <dl> <dt>Triple #1</dt><dd>#[triple1]#</dd> <dt>Triple #2</dt><dd>#[triple2]#</dd> <dt>more Triples for linking into objectspace</dt><dd>#[tripleN]#</dd> </dl> <table class="sortable" border="0" cellpadding="2" cellspacing="1"> <tr class="TableHeader" valign="bottom"> <td>Modify</td> <td>Delete</td> <td>Literal</td> <td>Synonyms</td> <td>Object Link</td> </tr> #{terms}# <tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#"> <td align="center">#(editable)# ::<input type="checkbox" name="modify_#[term]#" id="modify_#[term]#" value="checked" disabled="disabled"/>#(/editable)#</td> <td align="center">#(editable)# ::<input type="checkbox" name="delete_#[term]#" id="delete_#[term]#" value="checked" />#(/editable)#</td> <td align="left">#[term]#</td> <td align="left">#(editable)##[synonyms]#::<input type="text" name="synonyms_#[term]#" value="#[synonyms]#" size="40" maxlength="1024" onkeyup="document.getElementById('modify_#[term]#').checked='checked'; document.getElementById('modify_#[term]#').disabled=''; document.getElementById('delete_#[term]#').disabled='disabled';"/>#(/editable)#</td> <td align="left">#(editable)##[objectlink]#::<input type="text" name="objectlink_#[term]#" value="#[objectlink]#" size="60" maxlength="1024" onkeyup="document.getElementById('modify_#[term]#').checked='checked'; document.getElementById('modify_#[term]#').disabled=''; document.getElementById('delete_#[term]#').disabled='disabled';"/>#(/editable)#</td> </tr> #{/terms}# #(editable)#:: <tr class="TableCellDark"> <td align="center" colspan="2"><input type="checkbox" name="add_new" id="add_new" value="checked" disabled="disabled"/><i>add</i></td> <td align="left"><input type="text" name="newterm" id="newterm" value="" size="24" maxlength="128" onkeyup="document.getElementById('add_new').checked='checked'; document.getElementById('add_new').disabled=''"/></td> <td align="left"><input type="text" name="newsynonyms" id="newsynonyms" value="" size="40" maxlength="1024"/></td> <td align="left"><input type="text" name="newobjectlink" id="newobjectlink" value="" size="60" maxlength="1024"/></td> </tr> <tr class="TableCellDark"> <td colspan="3"></td> <td colspan="2" align="right" class="TableCellSummary"><input type="checkbox" name="clear_table" id="clear_table" value="checked" /><i>clear table (remove all terms)</i></td> </tr> <tr class="TableCellDark"> <td colspan="3"></td> <td colspan="2" align="right" class="TableCellSummary"><input type="checkbox" name="delete_vocabulary" id="delete_vocabulary" value="checked" /><i>delete vocabulary</i></td> </tr> #(/editable)# </table> <input type="hidden" name="vocabulary" value="#[name]#" /> <input type="submit" name="set" value="Submit" /> </fieldset> </form> #(/edit)# #%env/templates/footer.template%# </body> </html>