2007/5/4, jamie &lt;<a href="mailto:jamiemcc@blueyonder.co.uk">jamiemcc@blueyonder.co.uk</a>&gt;:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Fri, 2007-05-04 at 18:27 +0300, Evgeny Egorochkin wrote:<br><br>&gt;<br>&gt; This apparently solves the storage issue for this particular case. However,<br>&gt; there are several shortcomings:<br>&gt; 1) Structures are not extensible.
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *You cannot define generic structure for an OO language and subclass it if<br>&gt; necessary.<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *Applications can&#39;t add custom fields to existing structures.<br>&gt; 2) Data retrieval.<br>&gt; If you put the whole structure in a single property, you make it hard 
e.g. to<br>&gt; use several&nbsp;&nbsp;files to describe a single structure. Also, it is hard to<br>&gt; interlink classes e.g. point to ancestor class(es).<br>&gt; If you make all structure nodes e.g. c++ classes high-level nodes just like
<br>&gt; files, you get an issue with node classes which cannot be resolved by<br>&gt; introducing node type property due to lack of inheritance.<br><br>the struct type is a resource in rdf terminology not a literal so it
<br>should not have any additional limitations as such. The Child metadata<br>can be optional (just as in an rdf schema)&nbsp;&nbsp;and theres no reason to not<br>make it extensible.<br><br>We can easily add an Extensible property to the desktop file like :
<br><br>[Email:Address]<br>DisplayName=Email:Address<br>Type=struct<br>Children=Contact:Name;Contact:Email;<br>Extensible=true<br><br>where Children are the required members of a struct (this is same as<br>having an rdf schema with property minOccurs=1 against them)
<br><br>I dont see any limitations here - its more a question of nailing down<br>what properties of a metadata type are needed to satisfy application<br>needs.<br><br><br>&gt;<br>&gt; and the reason we experience these thoubles is...
<br>&gt;<br>&gt; 3) This approach departs from RDF in the sense that RDF is<br>&gt; property-centric(not class defines its properties, but properties define<br>&gt; their class) and omits class type information which is quite essential.
<br>&gt; This quite expectably backfires.<br><br>There is class info - the metadata types themselves are classes and you<br>can subclass them.<br><br><br>&gt; As you can see, implementing e.g. a generic source code browser is
<br>&gt; problemmatic with this approach.<br><br>I dont think so - by supporting struct metadata we can support any<br>deeply nested structure just like RDF.</blockquote><div><br>As I just said in another mail - do we really need structs/classes? Won&#39;t the areas needing complex metadata be special cases anyway? Yes they are cool from a technical standpoint, but what do they bring the end user? 
<br></div><br></div><br>Cheers,<br>Mikkel<br>