Discusion of the ConceptualModel itself seems to have mostly fallen off, with most conceptual discussions being part of the syntax discussion. See SyntaxDiscuss.
See also WellFormedEntryModel, Atom in OWL
Overview
Structure of an entry (exactly one of each required unless otherwise noted):
-
name
-
homepage URI (optional)
-
permalink, the persistent URL of the entry on the Web in the context of the publisher's website
-
one or more content items (all of which are semantically equivalent)
-
media type
-
language (optional) (not optional - see below, [MaciejCeglowski, RefactorOk])
-
content link OR data
Optional extension modules (status in parentheses):
-
BiblioGraphy: title, summary, timestamps, version, contributors (planning)
-
Related: related resources and how they're related (proposal)
-
Categorization: topics and categorization systems (planning)
-
Identity: pgp keys, detached signatures (planning)
-
Security: encryption (consensus to defer)
-
License: licensing terms (proposal)
-
GeoLocation: the geographic location the entry was posted from or describes (planning)
-
SponsoredLinks: advertisements that people want, and are clearly labeled as such (planning)
-
BlogRoll: an external list of feeds the site's author(s) subscribe to (planning)
-
Icon: [StevenGarrity] - proposed - feedback please
-
Source: proposed - in short, a "via"- or "hat tip"- type credit link - feedback?
Discussion elsewhere
From discussion in WhatIsAnEntry, see also ComponentBlog and AdaptiveBlogosphere for the use-case for a generalized definition of an Entry.
entry
-
Definition: An entry is a metadata record of a published item, including an author, a link to the item in the context of the publisher's site, a publication date, and potentially the content of the item.
online journal, weblog
-
Definition: A collection of resources created or selected by a person day-to-day and appearing in chronological order.
Comment: Multiple people may participate in an online journal or weblog. The person selecting a resource may not be the creator of that resource.
-
Entry issues: WhatIsAnEntry, IsaCommentAnEntry, IsaTrackbackAnEntry, WellFormedEntryIssues, WellFormedEntryModel, DublinCoreEntryStrawman, GeneralizingEntry
-
Conceptual model alternatives: ConceptualModelRevisited, RevisedConceptualModel
-
More: Motivation
TrackBack URL: http://www.mplode.com/cgi/moinmoin-tbp.cgi/MoinMoinQuickyTrackBackProxy
Discussion with SamRuby: Road map, linkage, only what is required.
Discussion in thread mode
[DavidJanes, RefactorOk, DeleteOk] Not to be overly pedantic, but shouldn't it be "poster" or "creator" (in DublinCore-speak) rather than "author". That's really the concept you're talking about here. [Identity] gives the deeper concept of Author.
-
[AsbjornUlsberg] I totally agree, as my "Authors versus persons and roles" discussion in [EchoExample] shows. We should define one element for persons that have been in touch with the entry, and rather give these persons some pre-defined "roles". What the name of this element should be; "poster", "creator" or "person" isn't of much interest to me, my key point is that we don't use specific and non-extensible names like "author".
[AdamRice, RefactorOk] I'd like to introduce a few other concepts to the model:
-
Have explicit origination and modification timestamps.
-
Feeds could be used for event schedules. These would need a separate indicator of time/duration, analogous to a geolocation. Something to leave up to extensions?
-
Comments, trackbacks, and other such externally generated data should have some kind of representation.
[JimRoepcke, RefactorOk] I agree with adam that there should be creation/modification timestamps (or whatever labels you want to give them). If this is to be an archive format (to be used to migrate a weblog to a different software platform, for example) as well as for syndication, as the home page says, then this kind of information is crucial. Also, having a modification timestamps aids aggregators in knowing how to deal with entries that the user has already read, but have since changed.
[JimRoepcke, RefactorOk] I am hoping it will be possible to describe a weblog that has posts that are not in chronological order. The weblogging system I use lets me order the items on a given day arbitrarily. Perhaps making the order of the entries in a file significant (rather than assuming that sorting the list by posting date should represent the order the items are to be displayed) is enough? I might have posted an item at noon, but then at 2pm i moved it down to the bottom of the day's entries. Or, I posted an item at noon, then another at 1pm, and then moved the noon-item back to the top after that.
-
[AllenFirstenberg, RefactorOk] To expand on this, I'm hoping it will be possible to have entries that are not necessarily time critical, and to (possibly) have some way to specify the order (default ordering would be fine). There are current RSS feeds where the list ordering is what is important, but the publication date should definitely NOT be the determination for the ordering. (See my note at UseCases)
-
[AdamRice] That's really up to your CMS tool, not the feed format. Right now, with RSS, it's quite easy to, say, build a feed with posts in alphabetical order if you use MovableType. !Echo (Atom) will not change that. Most people present their feeds in reverse-chrono order because that is the blogging custom, but it would be perfectly possible to hard-code a "read-me-first" entry into your feed. In short, don't worry about it.
[MaciejCeglowski, RefactorOk] Language should not be optional, except with non-text posts (photoblogs). Otherwise we will have a repeat of the current situation, where English speakers don't use the language attribute, nor do half of non-English speakers, and it becomes essentially useless from neglect. Language is a basic attribute of a post, and hard enough to identify from content that it deserves required status.
-
[DavidJanes, RefactorOk] why wouldn't making 'language' be required at the <blog> level and then having it assumed/inherited at the entry level be sufficient?
[MaciejCeglowski, RefactorOk, ColinBrayton] Because there are many blogs that post in multiple languages. A trilingual example in Polish, French, English. Also, some blogs have multilingual entries, for example Emmanuelle Richard who writes in French and English in each post. And multilingual communication is public policy and common practice in the EU and Canada, for example, and in other parts of the world as well.
[KarlDubost, RefactorOk] I encourage also to have a language attribute, it's absolutely necessary for many reasons. One of the reasons is that most of the people in the world do not talk english and write in another languages. Many people in the world talk and write two languages or more. Many webloggers are writing in more than two languages and that's cool. For example, I have recently discovered AvenueCarnot She's writing in french, english and indonesian. It has also benefits for the Web agents: Search engines will be able to index with regards to the language more effectively, Automatic Translator can translate only the parts which have to be translated (right now if you take an automatic translator, with a page in french and english and try to translate it in French, it will try to translate both parts making the text completely silly...). Don't make something for english people only the attribute could be xml:lang at the level of the entry and could be cascading until you redefine locally another value in your elements.
[ColinBrayton] The very idea of an open standard is to accommodate everyone, not just "most people." The feature is not technically challenging: Why the resistance?
[LarryLansing, RefactorOk] What about non-text content items, such as photos in a photoblog? Movies without words or text? Music without lyrics? For a minority of content entries, such as these, specifying a language would be inappropriate. If echo is going to support such entries, either language should be optional, or there should be some way of specifying that an item can be read in any language. language="any"? language="none"? language="universal"? Do any language standards allow this?
[MaciejCeglowski, RefactorOk] The closest ISO 639 comes is MUL, for multiple languages. I think a "null" tag for language would be a useful extension for the kinds of cases Larry cites. I would propose using ISO 639 with that single extension, unless people know of a more appropriate standard.
[LeonardoHerrera] Let's not make a big deal of this. A simple way to get out of this and move out is to make a mandatory "lang" attribute at root level. Adds "mul" and "none" (to ease indexing) to the list of possible values. Individual entries can have an optional lang attribute. See? No big deal.
[MaciejCeglowski] Leonardo says it best! Simple and effective.
[AsbjornUlsberg] I don't understand this debate. The "xml:lang" attribute is defined by W3C to be inherited from one element to all it's descendants, so specifying it on the root element is quite enough. I'm pro maiking it required on the root element, but having it on every element that may contain textual content is just plain silly. This may lead to having 500 'xml:lang="en-us"' in english feeds, which is a big bloat. Specify it at root, and override on sub-elements.
What's important is that the tools that produces Echo feeds requires the authors to specify language for their content. Yes, all content. And then, when the feed is assembeled, the language of the current content node is compared to the language of a parent node (typically the root element). If these languages diverse, you set it on the current content node, if not, you don't set it. This is the mechanism of "xml:lang" and this is also how we should use it, imho.
[MartinAtkins] LiveJournal doesn't (currently) store language per-account or per-entry, although both are planned in future. If language were required LiveJournal would be forced to lie. Lying is more harmful than saying nothing, right? Do we have the concept of "Strongy Recommended" here? As in, "if you can do this accurately, you really should, but don't just guess." I'm sure LiveJournal isn't the only software with this problem, although others can just have the language hardcoded into their template, I suppose.
-
[MarcAntoineParent] But that is the point of making the attribute mandatory: Software that does not allow setting the language could be called non-compliant, giving them an incentive to actually putting in the effort of setting the language correctly. I understand that some misinformation is harmful, but I am also sure that misinformation is inevitable anyway due to user's mistakes, bad UI etc. But at least we could tell the tool authors that accomodating language is, well, not an option.
[KenMacLeod, RefactorOk] A required but allowed to be empty element/attribute is a solution that benefits ViewSource.
[AsbjornUlsberg] Or, we could allow xml:lang="unknown" which could be set on every entry where it's not known. When xml:lang is not present (or null?), the language is inherited from the parent (most likely the <feed>).
[HaroldGilchrist, RefactorOk] The scope of entry needs to support the basic idea that the main message of the entry can and will be communicated by various multi-media file types (ie. photos, audio, video, etc.). Media messages (such as audio, video. FLASH, Word file and combinations of the above and others) and their metadata must be able to stand on their own (not only embedded into HTML) to enable the ability of these and future multi-media type files to be the central message of the entry.
The question becomes, how do we keep entry's definition and metadata generic and simple to support this basic idea?
-
[AsbjornUlsberg] <meta name=".." value=".." /> could do it.
[MartinAtkins, RefactorOk] (I'm a little confused as to where "what is an entry" discussion should be going on now, so I'm adding this here in the hope that someone will find it and possibly give it a good home) It would be useful to be able to redefine the site which an entry came from at entry level. This is useful for aggregate feeds, which are great for cutting down on the "millions of users pull millions of feeds" problem.
If it were well-supported in the spec, It would facilitate Necho syndication proxies which can pull down and cache content from many feeds and then re-deliver different aggregate feeds to different users reflecting their subscriptions. Moreover currently do something like this with RSS, but it's far from ideal as the description field becomes the "where this came from" field.
However, AggregateFeeds require more than passing consideration since future versions of the spec are an issue.
[DougRansom,RefactorOk] Why is PGP called out? This IMO is a poor choice for PKI, since most of the secure web is based on X.509. I know dozens of people with x.509 certs, and nobody with PGP. X.509 is what businesses use for web site authentication, and they need to sign press releases etc. I feel either the mainstream technology, x.509 should replace PGP, or the generic term PKI used instead, in any spec.
[DougRansom, RefactorOk] BlogRoll. I feek this lingo is kind of sloppy. Syndication is not just about blogs (a lame term itself), its about press releases, marketing communications, etc. It detracts from credibility to have words like "blog" intertwined within a technical standard that has serious commercial applications. NEcho is not a toy.
-
[JonDavis, RefactorOk] "Blog" == "web log" == intent/audience neutral. This project must support blogging and not just marketing communications, or else it will largely defeat its purpose.
[JonDavis, RefactorOk] In PowerBlog I use a Significance header for the articles with values of "High", "Normal", or "Low". I've been thinking of changing this to something numerical (1 to 100 or somesuch). I actually use this Significance header in templates; articles of low significance get truncated, and articles of high significance get a special border and bold print. It would be nice to either have this header, or have an open-ended META header.
-
[PhilWolff, RefactorOk] See the Priority element of NewsML for a working example used in industry.
[wootest, RefactorOk] Hey, guys, last time I checked an article could be co-authored. Why not 1+ authors?
-
[ZhangYining, RefactorOk] The idea was that an entry can one and only one author (the primary co-author, and the others will be contributors), but there is an openpoll on NumberOfAuthorsDiscussion.
-
But this model has its problems...
There are numerous problems with this model, discussed in ConceptualModelRevisited. An alternate model proposal is presented in RevisedConceptualModel.