2009/1/11 Evgeny Egorochkin <span dir="ltr">&lt;<a href="mailto:phreedom.stdin@gmail.com">phreedom.stdin@gmail.com</a>&gt;</span><br><br>First sorry for the late response. Work and sick kids has kept me with very little screen time lately. <br>
<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">
&gt; First: Are we talking xesam:creator only here or are we discussing a more<br>
&gt; general idea?<br>
<br>
</div>xesam:creator is more or less treated as an exception or as a properly typed<br>
version of original link-by-id<br>
<div class="Ih2E3d"></div></blockquote><div><br>&lt;SNIP&gt;<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">
<br>
&gt; 1) xesam:creator chilren are allowed to only link to xesam:ContactMedium of<br>
&gt;<br>
&gt; &gt; xesam:Contact, which is consistent with the way it&#39;s usually done in RDF<br>
&gt; &gt; world.<br>
&gt; &gt;<br>
&gt; &gt; 2) Links by ID between documents are resolved directly to URI of the<br>
&gt; &gt; document(s) if it exists, or a dummy Document of appropriate type is<br>
&gt; &gt; created with ID assigned to it and xesam:Source set to xesam:Unavailable.<br>
&gt; &gt;</div></blockquote><div>&lt;SNIP&gt; <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d"><br>
&gt; We still want globally unique IDs, no? I can&#39;t see how that is possible<br>
&gt; without URI schemes<br>
<br>
</div>Yes, ID field values won&#39;t be globally unique then. Only values of a<br>
particular field stay unique.<br>
<div class="Ih2E3d"></div></blockquote><div><br>Ok, then you have to know the exact field to search for the id in to get the object of a given id.<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d"><br>
&gt; * direct links work much faster<br>
&gt;<br>
&gt; What do you mean direct link? You link to BookB via its URI user:BookB just<br>
&gt; like one would use any other id...<br>
<br>
</div>You&#39;d have to have an index for every id field for this to work fast enough<br>
and still you have several times more uris to match. Of course the<br>
performance penalty greatly depends on the rdf/sql backend.<div class="Ih2E3d"></div></blockquote><div><br>You are suggesting that xesam:contactMedium would be the only id because of performance reasons? xesam:contactMedium would by far contribute the biggest number of id fields anyway... 15 from contactMedium and 3 others.<br>
&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d"><br>
&gt; * documents can&#39;t be authored by audio files<br>
&gt;<br>
&gt;<br>
&gt; This is a bit academic, but true.<br>
<br>
</div>Not too academic though since you can expect to confront software with<br>
metadata it&#39;s not fully aware of with the only available description being an<br>
ontology.<br>
<div class="Ih2E3d"></div></blockquote><div><br>Unless you add a whole verification layer to the metadata storage you can never expect anything from the metadata. And with my experience in this I don&#39;t think this is feasible on the desktop (not if you want to check relations and such that is).<br>
&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d"><br>
&gt; I must admit that I am pretty lost here... I this all about making<br>
&gt; xesam:creator a relation-but-not-quite?<br>
<br>
</div>More like dropping link-by-id for everything but creator :)<br>
<font color="#888888"></font></blockquote><div>&nbsp;</div></div>I just really like the idea of making relations between files based on their md5 sums for instance. This makes it &quot;free&quot; to keep persistent user metadata across file moves.<br>
<br>Generally I am not overly keen on your idea. However if linking stuff to contacts is our 95% use case then I can better justify your proposal, but as I see it this just isn&#39;t the case.<br clear="all"><br>To re-iterate your proposal:<br>
<br>1) xesam:creator (and children) must contain values from the xesam:contactMedium field of a xesam:Contact<br><br>2) All other relations use xesam:url for linking<br><br>I can see 1) working if we just specify in xesam:creator that it must contain an child of xesam:contactMedium that is an id. The only child of xesam:contactMedium that is not an id is xesam:physicalAddress...<br>
<br>I think we can skip 2) because the performance impact of the 3 extra id fields shouldn&#39;t be big. <br><br>-- <br>Cheers,<br>Mikkel<br>