UserPreferences

KenMacLeod


All of my comments are RefactorOk unless specified otherwise.

Praise:


CategoryHomePage, CategoryWeblog


  1. CarrotVsOrangeDiscuss . . . . 17 matches
  2. ContentDiscussion . . . . 14 matches
  3. EscapedHtmlDiscussion . . . . 9 matches
  4. ContentProblems . . . . 6 matches
  5. PaceReformedContent . . . . 5 matches
  6. EchoInDublinCore . . . . 4 matches
  7. ElementsVsAttributes . . . . 4 matches
  8. PermaLinks . . . . 4 matches
  9. RestAspNetExample . . . . 4 matches
  10. SuperSimpleFeedFormat . . . . 4 matches
  11. XmlRpcDiscussion . . . . 4 matches
  12. WebDav . . . . 3 matches
  13. ContentAsElements . . . . 2 matches
  14. DublinCore . . . . 2 matches
  15. EchoExampleProcess . . . . 2 matches
  16. IsaCommentAnEntryDiscussion . . . . 2 matches
  17. MultipleContentDiscussion . . . . 2 matches
  18. PaceExtendedResourcePosting . . . . 2 matches
  19. PaceMinimalEntryVersioning . . . . 2 matches
  20. PaceSimplifiedFeedFormat . . . . 2 matches
  21. ProjectLegal . . . . 2 matches
  22. RelatedDiscussion . . . . 2 matches
  23. UseCases . . . . 2 matches
  24. VersionNo . . . . 2 matches
  25. AggregatorApi . . . . 1 match
  26. AggregatorApiArchived . . . . 1 match
  27. AlternativeRepresentation . . . . 1 match
  28. ApiFacets . . . . 1 match
  29. AtomArtwork . . . . 1 match
  30. AtomPubIssuesList . . . . 1 match
  31. AuthorElementDiscussion . . . . 1 match
  32. BloggerProposals . . . . 1 match
  33. CarrotVsOrange . . . . 1 match
  34. CommentAuthentication . . . . 1 match
  35. ComponentBlog . . . . 1 match
  36. ConceptualModel . . . . 1 match
  37. ContentNegotiation . . . . 1 match
  38. ContributorsList . . . . 1 match
  39. DateSurvey . . . . 1 match
  40. EchoApiContentOwnership . . . . 1 match
  41. EntryAccountability . . . . 1 match
  42. EntryIdentifier . . . . 1 match
  43. HelpOnLinking . . . . 1 match
  44. HowToFindAnEntry . . . . 1 match
  45. IDSurvey . . . . 1 match
  46. IetfVersusW3cVote . . . . 1 match
  47. IrcChannel . . . . 1 match
  48. License . . . . 1 match
  49. LinkingStyles . . . . 1 match
  50. MultipleSyntaxDiscussion . . . . 1 match
  51. NameFinalVote . . . . 1 match
  52. NameFinalVoteArchive . . . . 1 match
  53. NameItProposals . . . . 1 match
  54. NamespaceDiscussion . . . . 1 match
  55. NoToRdf . . . . 1 match
  56. NoneOfTheAboveDiscuss . . . . 1 match
  57. NumberOfAuthorsDiscussion . . . . 1 match
  58. PaSS . . . . 1 match
  59. PaceEntryTopLevel . . . . 1 match
  60. PaceEquivalents . . . . 1 match
  61. PaceItemLang . . . . 1 match
  62. PaceLinkParent . . . . 1 match
  63. PaceNoInfoSet . . . . 1 match
  64. PaceReduceMustMay . . . . 1 match
  65. PaceReformedContent3 . . . . 1 match
  66. PaceReformedContentRedux . . . . 1 match
  67. PaceSimpleContentType . . . . 1 match
  68. ParticipantsWeblogs . . . . 1 match
  69. PostIdAndPermaLinkRequired . . . . 1 match
  70. PropertiesVsRoles . . . . 1 match
  71. RestAndRpc . . . . 1 match
  72. RestEchoApiDiscuss . . . . 1 match
  73. RssHistory . . . . 1 match
  74. SchemaPatterns . . . . 1 match
  75. Security . . . . 1 match
  76. SiteAndSyndication . . . . 1 match
  77. SoapInOnePointAfter . . . . 1 match
  78. TimestampVsCreationDateTime . . . . 1 match
  79. WeblogLifeCycleApi . . . . 1 match
  80. WhatIsAnEntry . . . . 1 match
  81. XmlAndRdf . . . . 1 match

Content

Edit

<content>

    Definition: Content is the body of an entry.

    Comments: Content may be empty. Content can be of any media type, including multipart content. Content may be empty when other metadata elements provide the definition of the entry.

    Examples:

<content type="application/xhtml+xml" xml:lang="en-us" rel="fragment"> 
  <p xmlns="...">Hello, <em>weblog</em> world! 2 &lt; 4!</p> 
</content>
<content type="audio/mpeg" src="http://example.org/blog/commentary.mp3" />
<content type="multipart/alternative">
  <content type="image/jpeg" encoding="base64">
    xo+Hello0AFWeblogh5FWorldh1mImagedsTbrVbF3
  </content>
  <content type="text/html" xml:lang="en-us" mode="escaped" rel="fragment">
    <![CDATA[<p>Hello, <em>weblog</em> world! 2 &lt; 4!</p>]]>
  </content>
  <content type="application/xhtml+xml" xml:lang="en-us" rel="fragment">
    <p xmlns="http://www.w3.org/1999/xhtml">
      Hello, <em>weblog</em> world! 2 &lt; 4!</p>
  </content>
</content>

content, ContentDiscussion, ContentAndPermalink, MultipleContentDiscussion, MimeContent, EscapedHtmlDiscussion, ContentProblems, ComponentBlog, AdaptiveBlogosphere


CategoryMetadata, CategoryElementSpec


In a syndicated feed, "content" is the body of an entry a publisher chooses to share, for readers and aggregators to present to the user within the reader/aggregator. In a PieApi, "content" is the body being posted or retrieved. An entry may contain all sorts of content: text, images, audio, video, etc. [WWW]Media types (ne้ MIME types) can be used to distinguish between these various types of content.

Some content types are XML fragments from other XML formats, some developed for weblogging, groupware, or social software, some developed for other purposes. XML fragments are placed in <content>.


'content' has the following attributes:

type

language

mode

rel

KevinMarks - there is a key distinction missing here that needs specifying. A machine generated excerpt is very different from a human summary or abstract. A parser should be able to know the difference - this is a key flaw in current RSS. Similarly, knowing whether the content is an abstract or the full post is very important for human readers (who can usually tell machine truncated pieces). See ContentMustHaveRel for more.

value

src

length


The default mode of encoding is parsed-XML content and may consist of arbitrary XML elements and character data. escaped means the value consists of only XML character data, no special processing beyond that expected from that the content type, using either entity escaping or CDATA sections. base64 indicates that the value is encoded using Base64, [WWW]RFC2045, section 6.8.

'src' is a URI location reference to the content of this entry; it is not a reference to another resource that is the subject of or related to this entry. A reader may retrieve the value of the reference and later pass it embedded to another reader.

There is only one <content> element in an entry. Multipart media types ([WWW]RFC2046 section 5.1) can be used to represent alternatives (pick the best, with the publisher's best at the end), related (one or more are primary, the rest are used by reference), mixed (don't know which is primary or the publisher's best), and parallel (try to present all simultaneously, like an image and audio). Unknown multipart media types should be treated as mixed.

Entry <content> elements do not contain other feeds, entries, or comments. See Related for creating relationships between entries and other resources.

Content always refers to complete resource entities unless a 'rel' attribute is provided to indicate otherwise. It is common in syndicated feeds to only include an (X)HTML fragment as the content that forms the body of an entry. In that case, feed providers should use rel="fragment".

Examples

This is an example of using XHTML as a content value, parsed as XML (no 'mode' attribute).

<content type="application/xhtml+xml" xml:lang="en-us" rel="fragment">
  <p xmlns="...">Hello, <em>weblog</em> world! 2 &lt; 4!</p>
</content>

In the following, the content is escaped. The value is a sequence of characters that the reader processes according to it's type.

<content type="text/html" xml:lang="en-us" mode="escaped" rel="fragment">
  <![CDATA[<p>Hello, <em>weblog</em> world! 2 &lt; 4!</p>]]>
</content> 

And is equivalent to:

<content type="text/html" xml:lang="en-us" mode="escaped" rel="fragment">
  &lt;p&gt;Hello, &lt;em&gt;weblog&lt/em&gt; world! 2 &amp;lt; 4!&lt;/p&gt;
</content> 

What a reader does with "HTML in content" is based on the content type of the entry, there is no concept of "embedded markup". The value of content is a sequence of characters that the reader chooses to display according to the content type. See EscapedHtmlDiscussion.

A text/plain content:

<content type="text/plain" xml:lang="en-us">
  <![CDATA[ Hello, _weblog_ world! 2 < 4! ]]>
</content>

A image/jpeg content (not real data):

<content type="image/jpeg" encoding="base64">
  xo+0AFh5Fh1mdsTbTRt781hrVbF3
</content>

An MPEG video included by reference:

<content type="video/mpeg" src="http://example.com/funny.mpeg" />

multipart/alternative

<content type="multipart/alternative">
  <content type="image/jpeg" encoding="base64">
    xo+Hello0AFWeblogh5FWorldh1mImagedsTbrVbF3
  </content>
  <content type="text/html" xml:lang="en-us" mode="escaped" rel="fragment">
    <![CDATA[<p>Hello, <em>weblog</em> world! 2 &lt; 4!</p>]]>
  </content>
  <content type="application/xhtml+xml" xml:lang="en-us" rel="fragment">
    <p xmlns="http://www.w3.org/1999/xhtml">
      Hello, <em>weblog</em> world! 2 &lt; 4!</p>
  </content>
</content>

CategoryModel, CategoryRss