2009/1/11 Evgeny Egorochkin <span dir="ltr"><<a href="mailto:phreedom.stdin@gmail.com">phreedom.stdin@gmail.com</a>></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">
> First: Are we talking xesam:creator only here or are we discussing a more<br>
> 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><SNIP><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>
> 1) xesam:creator chilren are allowed to only link to xesam:ContactMedium of<br>
><br>
> > xesam:Contact, which is consistent with the way it's usually done in RDF<br>
> > world.<br>
> ><br>
> > 2) Links by ID between documents are resolved directly to URI of the<br>
> > document(s) if it exists, or a dummy Document of appropriate type is<br>
> > created with ID assigned to it and xesam:Source set to xesam:Unavailable.<br>
> ></div></blockquote><div><SNIP> <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>
> We still want globally unique IDs, no? I can't see how that is possible<br>
> without URI schemes<br>
<br>
</div>Yes, ID field values won'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>
> * direct links work much faster<br>
><br>
> What do you mean direct link? You link to BookB via its URI user:BookB just<br>
> like one would use any other id...<br>
<br>
</div>You'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>
</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>
> * documents can't be authored by audio files<br>
><br>
><br>
> 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'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't think this is feasible on the desktop (not if you want to check relations and such that is).<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>
> I must admit that I am pretty lost here... I this all about making<br>
> 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> </div></div>I just really like the idea of making relations between files based on their md5 sums for instance. This makes it "free" 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'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't be big. <br><br>-- <br>Cheers,<br>Mikkel<br>