The Echo wiki has been nothing short of amazing and the result good so far, but I'm not terribly thrilled with the Echo Example syntax proposals that have been posted recently. They seem a bit unfocused. I think what's that consensus is missing on the principle the syntax will be built on and would provide better clarity and focus to the discussion if established. The proposals are up though and I can deal with that – even if following it makes my head hurt.
My concern is that the primary proposal seem like a reinvention of the wheel in many ways. Conceptually the elements of an entry can be expressed in RSS. The elements also have near perfect alignment with the those in the Dublin Core Metadata Element Set. (Which is good in that it validates the analysis the group thus far.) Granted expressing Echo in Dubline Core doesn't mean we're all done, but I don't know why we would leverage this type of prior art more extensively. Dublin Core is in use by a lot of other systems and formats then RSS. I find it puzzling that it has been passed over or abandoned so quickly.
Wikis are not for the meek so I've posted my rough examples there. I also thought I post a copy here also. (Who knows what may happen to it once the wiki way gets to it). Feedback is welcome. Just use the wiki.
UPDATE: Ken McLeod points out that there is a complimentary DublinCore page on the wiki that provides background information and links on its use in Echo. (Let the Refactoring begin!)
Originally posted to EchoExampleInDublinCore
The propsal contains some examples and discussion to how Echo could leverage this Dublin Core Metadata Element Set in its syntax.
NOTE: This proposal would fold the Dublin Core semantics/labels into the core Echo namespace not create a seperate modulized namesapce. The use of dc: in the text below is meant to clarify what is coming from Dublin Core and what is not.
Dublin Core elements are already in common used within RSS feeds to supplement the core item elements of title, description and link. The Dublin Core has corresponding elements for rss:title and rss:description, but a specific tag for (perma)link is not explictedly defined. The dc:source tag can reasonable be considered the links counterpart in the Dublin Core. So with the Dublin Core you can assemble what almost looks like an RSS feed item.
Looking at the Echo ConceptualModel, all of the required elements and many of the highly-recommended optional elements have corresponding elements to the Dublin Core. Further clarifications and restraints are likely needed in the context of Echo's use For example, accordingly to the Dublin Core documentation, dc:source is said to be A Reference to a resource from which the present resource is derived. The present resource may be derived from the Source resource in whole or in part. Recommended best practice is to identify the referenced resource by means of a string or number conforming to a formal identification system.
In Echo the formal identification system would be a URL/permalink.
Another example is the dc:creator and dc:publisher elements. Currently these elements are just strings. Echo may further defined their format and content, optionally allowing for additional meta rich extensions such as FOAF to be substituted.
Echo would also benefit from defining maximum lengths and element optionality.
PROS
* Leverages prior art * Leverages an international standard * Is not a radical departure from RSS today
CONS
Tag naming my not always be ideal
Additional clarification and restraints are needed
* Elements may not be as meta rich as preferred
These examples illustrate what such an approach for Echo may look like. It assumes that the Dublin Core namespace (http://purl.org/dc/elements/1.1/) is part of the default namespace. These elements are wrapped in a container tag of entry. Content is embedded using the root or container tag of the native format (assuming it can be expressed in well formed XML). Alternatively a content:encoded with CDATA encoding could be used to embed non-well formed textual content. Binary sources should not be embedded, but reference via a dc:related link.
Core ConceptualModel Entry
<entry>
<source>http://www.example.org/archives/000000.html</source>
<creator>Paul Harrison (http://www.example.org)</creator>
<date>2003-06-25T10:42:00-04:00</date>
<body xmlns="http://www.w3.org/1999/xhtml">
<p>A do try alone, my your you with get on friends. a my my, out from
get. And i i your you're my do high. Think not from it you lend going
a friends sang you. Be, lend away love little little. I because, to i
ears, end, from do tune, alone a your help. Friends, i out, out get
little, on if little of with my. Of of do a to key i get a my no sang
is. Think <a href="http://www.foo.com/">help with what you sang</a>
help a by i a how what get tune does because friends. Do do help tune,
sad are when my from, feel own, sing a, you me the what get friends a.</p>
</body>
</entry>
Extended ConceptualModel Entry
<entry>
<title>With a Little Help From My Friends</title>
<description>You a, you're get. Do my with. What with how think, sad
on would how you try own a if by help and a i sang.</description>
<source>http://www.example.org/archives/000000.html</source>
<creator>Paul Harrison (http://www.example.org)</creator>
<date>2003-06-25T10:42:00-04:00</date>
<related>http://www.bar.net/000000.html</related>
<related>http://www.baz.org/hello.html</related>
<body xmlns="http://www.w3.org/1999/xhtml">
<subject>hello world</subject>
<identifier>1056595208</identifier>
<rights>Copyright 2003 Paul Harrison</rights>
<p>A do try alone, my your you with get on friends. a my my, out from
get. And i i your you're my do high. Think not from it you lend going
a friends sang you. Be, lend away love little little. I because, to i
ears, end, from do tune, alone a your help. Friends, i out, out get
little, on if little of with my. Of of do a to key i get a my no sang
is. Think <a href="http://www.foo.com/">help with what you sang</a>
help a by i a how what get tune does because friends. Do do help tune,
sad are when my from, feel own, sing a, you me the what get friends a.</p>
</body>
<p>The Echo wiki has been nothing short of amazing and the result good so far, but I'm not terribly thrilled with the Echo Example syntax proposals that have been posted recently. They seem a bit unfocused. I think what's that consensus is missing on the principle the syntax will be built on and would provide better clarity and focus to the discussion if established. The proposals are up though and I can deal with that – even if <a href="http://www.timaoutloud.org/archives/000301.html">following it makes my head hurt</a>.</p>
<p>My concern is that the primary proposal seem like a reinvention of the wheel in many ways. Conceptually the elements of <a href="http://www.intertwingly.net/wiki/pie/EchoRSSExample">an entry can be expressed in RSS</a>. The elements also have near perfect alignment with the those in the <a href="http://dublincore.org/documents/2003/02/04/dces/">Dublin Core Metadata Element Set</a>. (Which is good in that it validates the analysis the group thus far.) Granted expressing Echo in Dubline Core doesn't mean we're all done, but I don't know why we would leverage this type of prior art more extensively. Dublin Core is in use by a lot of other systems and formats then RSS. I find it puzzling that it has been passed over or abandoned so quickly. </p>
<p>Wikis are not for the meek so I've posted my rough examples there. I also thought I post a copy here also. (Who knows what may happen to it once the wiki way gets to it). Feedback is welcome. Just use the <a href="http://www.intertwingly.net/wiki/pie/">wiki</a>.</p>
<p><strong>UPDATE</strong>: Ken McLeod points out that there is <a href="http://www.intertwingly.net/wiki/pie/DublinCore">a complimentary DublinCore page</a> on the wiki that provides background information and links on its use in Echo. (Let the Refactoring begin!)</p>
<p><em>Originally posted to <a href="http://www.intertwingly.net/wiki/pie/EchoExampleInDublinCore">EchoExampleInDublinCore</a> </em></p>
<p>The propsal contains some examples and discussion to how Echo could leverage this <a href="http://dublincore.org/documents/2003/02/04/dces/">Dublin Core Metadata Element Set</a> in its syntax. </p>
<p><strong>NOTE:</strong> This proposal would fold the Dublin Core semantics/labels into the core Echo namespace not create a seperate modulized namesapce. The use of dc: in the text below is meant to clarify what is coming from Dublin Core and what is not.</p>
<p>Dublin Core elements are already in common used within RSS feeds to supplement the core item elements of title, description and link. The Dublin Core has corresponding elements for rss:title and rss:description, but a specific tag for (perma)link is not explictedly defined. The dc:source tag can reasonable be considered the links counterpart in the Dublin Core. So with the Dublin Core you can assemble what <em>almost</em> looks like an RSS feed item. </p>
<p>Looking at the <a href="http://www.intertwingly.net/wiki/pie/ConceptualModel">Echo ConceptualModel</a>, all of the required elements and many of the highly-recommended optional elements have corresponding elements to the Dublin Core. Further clarifications and restraints are likely needed in the context of Echo's use For example, accordingly to the Dublin Core documentation, dc:source is said to be <q>A Reference to a resource from which the present resource is derived. The present resource may be derived from the Source resource in whole or in part. Recommended best practice is to identify the referenced resource by means of a string or number conforming to a formal identification system.</q> In Echo the formal identification system would be a URL/permalink.</p>
<p>Another example is the dc:creator and dc:publisher elements. Currently these elements are just strings. Echo may further defined their format and content, optionally allowing for additional meta rich extensions such as FOAF to be substituted.</p>
<p>Echo would also benefit from defining maximum lengths and element optionality.</p>
<h4><a id="PROS"></a>PROS</h4>
<pre>
* Leverages prior art
* Leverages an international standard
* Is not a radical departure from RSS today
</pre>
<h4><a id="CONSTagNamingMyNotAlwaysBeIdealAdditionalClarificationAndRestraintsAreNeededElementsMayNotBeAsMetaRichAsPreferred"></a>CONS<br /> <strong> Tag naming my not always be ideal<br /> </strong> Additional clarification and restraints are needed<br /> * Elements may not be as meta rich as preferred </h4>
<p>These examples illustrate what such an approach for Echo may look like. It assumes that the Dublin Core namespace (http://purl.org/dc/elements/1.1/) is part of the default namespace. These elements are wrapped in a container tag of entry. Content is embedded using the root or container tag of the native format (assuming it can be expressed in well formed XML). Alternatively a content:encoded with CDATA encoding could be used to embed non-well formed textual content. Binary sources should not be embedded, but reference via a dc:related link.</p>
<h3><a id="CoreConceptualModelEntry"></a>Core ConceptualModel Entry</h3>
<pre><code>
<entry>
<source>http://www.example.org/archives/000000.html</source>
<creator>Paul Harrison (http://www.example.org)</creator>
<date>2003-06-25T10:42:00-04:00</date>
<body xmlns="http://www.w3.org/1999/xhtml">
<p>A do try alone, my your you with get on friends. a my my, out from
get. And i i your you're my do high. Think not from it you lend going
a friends sang you. Be, lend away love little little. I because, to i
ears, end, from do tune, alone a your help. Friends, i out, out get
little, on if little of with my. Of of do a to key i get a my no sang
is. Think <a href="http://www.foo.com/">help with what you sang</a>
help a by i a how what get tune does because friends. Do do help tune,
sad are when my from, feel own, sing a, you me the what get friends a.</p>
</body>
</entry>
</code></pre>
<h3><a id="ExtendedConceptualModelEntry"></a>Extended ConceptualModel Entry</h3>
<pre><code>
<entry>
<title>With a Little Help From My Friends</title>
<description>You a, you're get. Do my with. What with how think, sad
on would how you try own a if by help and a i sang.</description>
<source>http://www.example.org/archives/000000.html</source>
<creator>Paul Harrison (http://www.example.org)</creator>
<date>2003-06-25T10:42:00-04:00</date>
<related>http://www.bar.net/000000.html</related>
<related>http://www.baz.org/hello.html</related>
<body xmlns="http://www.w3.org/1999/xhtml">
<subject>hello world</subject>
<identifier>1056595208</identifier>
<rights>Copyright 2003 Paul Harrison</rights>
<p>A do try alone, my your you with get on friends. a my my, out from
get. And i i your you're my do high. Think not from it you lend going
a friends sang you. Be, lend away love little little. I because, to i
ears, end, from do tune, alone a your help. Friends, i out, out get
little, on if little of with my. Of of do a to key i get a my no sang
is. Think <a href="http://www.foo.com/">help with what you sang</a>
help a by i a how what get tune does because friends. Do do help tune,
sad are when my from, feel own, sing a, you me the what get friends a.</p>
</body>
</code></pre>

Leave a comment