Hi,<div>I am a bit irritated by the term "Annotations" and you should explain somewhere what you mean by annotations. Otherwise Java developers probably think about "the other" annotations which are around since JavaSE5.</div>
<div><br></div><div>Annotations are usually declarative configuration attributes on classes and methods, like</div><div><br></div><div>@Singleton</div><div>public class DataService {</div><div>}</div><div><br></div><div>or</div>
<div><br></div><div>@XmlTransient</div><div>private String thisDoesNotGetPersisted = null;</div><div><br></div><div>Cheers</div><div>Balz<br><br><div class="gmail_quote">On Thu, Feb 24, 2011 at 9:18 AM, Schaaf Marc <span dir="ltr"><<a href="mailto:marc.schaaf@fhnw.ch">marc.schaaf@fhnw.ch</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">








<div bgcolor="white" lang="DE" link="blue" vlink="purple">

<div>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">Hi</span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">Thanks Michael for applying my patches! </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">As Michael already mentioned, they add basic support for
annotations by introducing a new “Annotatable” interface which is
currently implemented only by the XMLResource. Via this interface it is
possible to set/get/remove/clear the annotations where an annotation is a
simple string with no further properties (for now).  To allow the usage
those annotations, they are also added to the access logging from where an
analyzing component can read them together with the user requests.</span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">If you have any further questions, feel free to ask </span><span lang="EN-US" style="font-size:11.0pt;font-family:Wingdings;color:#1F497D">J</span><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"></span></p>


<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">Regards,</span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D">Marc</span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:#1F497D"> </span></p>

<div>

<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">

<p class="MsoNormal"><b><span style="font-size:10.0pt;color:windowtext">Von:</span></b><span style="font-size:10.0pt;color:windowtext"> <a href="mailto:yanel-development-bounces@wyona.com" target="_blank">yanel-development-bounces@wyona.com</a>
[mailto:<a href="mailto:yanel-development-bounces@wyona.com" target="_blank">yanel-development-bounces@wyona.com</a>] <b>Im Auftrag von </b>Michael
Wechner<br>
<b>Gesendet:</b> Mittwoch, 23. Februar 2011 13:08<br>
<b>An:</b> <a href="mailto:yanel-development@wyona.com" target="_blank">yanel-development@wyona.com</a><br>
<b>Betreff:</b> Re: [Yanel-dev] Annotating resources</span></p>

</div>

</div>

<p class="MsoNormal"> </p>

<p class="MsoNormal" style="margin-bottom:12.0pt">Hi<br>
<br>
Thanks to Marc the annotations are now also added to the access log:<br>
<br>
Sending       
src/webapp/src/java/org/wyona/yanel/servlet/AccessLog.java<br>
Sending       
src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java<br>
Transmitting file data ..<br>
Committed revision 56923.<br>
<br>
whereas the results of the review are:</p>

<ul type="disc">
 <li class="MsoNormal">Does it build? YES (but it didn't originally
     because it broke backwards compatibility)</li><div class="im">
 <li class="MsoNormal">Is the formatting correct? Should be fixed now
     (used tabs instead of spaces)</li>
 <li class="MsoNormal">Is there an automatic test? Make sure that there
     are automatic tests, which are covering the changes which the patch will
     imply. NO</li>
 </div><li class="MsoNormal">Is it backwards compatible? YES (but it was
     broken, see
     src/contributions/resources/contact-form/src/java/org/wyona/yanel/impl/resources/contactform/ContactResource.java)</li>
 <li class="MsoNormal">Does it scale/perform? (Can the implementation be
     changed?) YES and NO, because the logging has become slower, but the
     analysis will become faster and it is a workaround for the revision
     problem</li>
 <li class="MsoNormal">Can it be enhanced? Kind of ...</li>
 <li class="MsoNormal">Can it be customized? The annotation
     implementation can be customized ....</li>
 <li class="MsoNormal">Does it work within a cluster? YES</li>
 <li class="MsoNormal">Is it secure? YES and NO, depends if the
     annotations contain "secret" information</li><div class="im">
 <li class="MsoNormal">Can it be used offline? YES</li>
 </div><li class="MsoNormal">Can the patch be reverted easily? YES</li><div class="im">
 <li class="MsoNormal">Does it work for all browsers? Only tested
     Firefox yet</li>
</div></ul>

<p class="MsoNormal"><br>
Btw, I have also fixed that if a URL contains a query string that this is also
written into the access log file,<br>
because for example in the case of introspection the "same" URL is
called twice be the browser, e.g.<br>
<br>
<a href="http://127.0.0.1:8080/yanel/yanel-website/en/about.htm?yanel.resource.usecase=introspection" target="_blank">http://127.0.0.1:8080/yanel/yanel-website/en/about.htm?yanel.resource.usecase=introspection</a><br>
<br>
Cheers<br>
<br>
Michael</p><div class="im"><br>
<br>
<br>
On 2/22/11 9:35 AM, Michael Wechner wrote: </div><p></p><div><div></div><div class="h5">

<p class="MsoNormal" style="margin-bottom:12.0pt">Hi<br>
<br>
Thanks to Marc Schaaf we now have an "Annotatable" interface which
allows to annotate resources<br>
and also use this information for third party applications, e.g. Boost in order
to generate tag clouds re what users are interested in. Marc has also created a
simple annotation editor which is currently used by the yanel website realm. <br>
<br>
I guess Marc will send some more notes re further steps (e.g. re ontologies: <a href="http://en.wikipedia.org/wiki/Ontology_%28information_science%29" target="_blank">http://en.wikipedia.org/wiki/Ontology_%28information_science%29</a>)<br>

<br>
The basic code pieces are:<br>
<br>
U    conf/resource-types.xml<br>
A   
src/realms/yanel-website/res-configs-repo/data/usecases/pageMetadataManager.html.yanel-rc<br>
U   
src/realms/yanel-website/src/java/org/wyona/yanel/website/menu/impl/YanelWebsiteMenu.java<br>
U    src/realms/yanel-website/data-repo/data/xslt/global.xsl<br>
A   
src/core/java/org/wyona/yanel/core/api/attributes/AnnotatableV1.java<br>
U    src/resources/xml/src/java/org/wyona/yanel/impl/resources/XMLResource.java<br>
A    src/resources/pageMetaDataManager<br>
A   
src/resources/pageMetaDataManager/src/java/com/wyona/yanel/metadata/manager/PageMetaDataManager.java<br>
<br>
Re code review:</p>

<ul type="disc">
 <li class="MsoNormal">Does it build? YES</li>
 <li class="MsoNormal">Is the formatting correct? Should be fixed now
     (used tabs instead of spaces)</li>
 <li class="MsoNormal">Is there an automatic test? Make sure that there
     are automatic tests, which are covering the changes which the patch will
     imply. NO</li>
 <li class="MsoNormal">Is it backwards compatible? YES, because
     annotations are implemented as a versioned interface</li>
 <li class="MsoNormal">Does it scale/perform? (Can the implementation be
     changed?) YES, because of doing it as an interface</li>
 <li class="MsoNormal">Can it be enhanced? YES, because of versioned
     interface</li>
 <li class="MsoNormal">Can it be customized? The implementation can be
     customized</li>
 <li class="MsoNormal">Does it work within a cluster? NOT really,
     because the properties are not locked yet, but we will fix that shortly.
     But also depends on the repository implementation.</li>
 <li class="MsoNormal">Is it secure? YES, if the policies for the editor
     are set correctly, but NO otherwise</li>
 <li class="MsoNormal">Can it be used offline? YES</li>
 <li class="MsoNormal">Can the patch be reverted easily? NO, because
     various resource types (e.g. XMLResource) will start implementing this
     interface</li>
 <li class="MsoNormal">Does it work for all browsers? Only tested
     Firefox yet</li>
</ul>

<p class="MsoNormal" style="margin-bottom:12.0pt">Cheers<br>
<br>
Michael<br>
<br>
</p>

<p class="MsoNormal"> </p>

</div></div></div>

</div>


<br>--<br>
Yanel-development mailing list <a href="mailto:Yanel-development@wyona.com">Yanel-development@wyona.com</a><br>
<a href="http://lists.wyona.org/cgi-bin/mailman/listinfo/yanel-development" target="_blank">http://lists.wyona.org/cgi-bin/mailman/listinfo/yanel-development</a><br></blockquote></div><br></div>