Refactoring in progress
Previous discussion moved to RelatedDiscussion.
Please organize your thoughts by Issue and Position.
Source pages:
-
Content-by-reference discussion: ContentDiscussion, EntryContentDiscussion
Requirement
A WellFormedEntry relates to other resources in its environment:
-
Web Pages
-
Weblogs
-
other Entries
-
Channels
-
Threads
-
etc.
A WellFormedEntry has various types of relation to those resources:
-
Cites: an entry cites other entries or web pages (rss link and guid?)
-
Comments: an Entry has Comments (see IsaCommentAnEntry)
-
Threads: relation among a group of entries (See ThreadsML.)
-
etc.
Related proposes one element to handle all these cases.
-
Each Related (0+) is implemented with a typed link ie relationRole+relationLocator.
-
relationRole is identified by a URI, pointing to a relation namespace.
-
relationLocator is a URI
-
The related resource may hold the reciprocal relation, making Related two-way.
That is the minimal data model; more is probably needed. See Issues
Issue: What is an "extension"?
Positions
-
An extension is any element within <content> from a non-necho namespace
-
An extension is <extension xmlns:exex='http://example.org/extenspace/'> within <content>
-
Extension namespace is required 'http://example.org/extenspace/'
-
An extension is <extension ...> within <entry>
DefinedDataModel + SyntaxExtensionMechanism + ComponentBlog are all calling for something like this.
An extension is
-
a wrapper included somewhere in a entry
-
containing well-formed XML, which may include RDF
-
with a required default namespace designating the extension
-
perhaps described by RDDL, e.g., pointers to schemas, CSS, ...
Issue: How general should the related mechanism be?
Positions
-
Related is a basic case of a more general mechanism
-
<extension extentionDataModel= "URI identifying Related data model"> <relationRole>URI</relationRole> <relationHref>URI</relationHref > </extension >
-
see DefinedDataModel, SyntaxExtensionMechanism, ComponentBlog, RdfAndEcho
-
comments by PhilWolff Semantic blogging
-
Related is a simple labelled linking mechanism
-
<related> <relationRole>URI</relationRole> <relationHref>URI</relationHref > </related>
-
or
<link rel="string">URI</link>
-
Is the relationRole namespace defined by Echo? How is it extended?
-
Related is a variety of elements with similar syntax
-
eg <cites> and <parent> and ...
-
Don't worry; several mechanisms are OK.
-
eg sometimes elements, sometimes attributes, sometimes content
Issue: Is Related really an extension, or just XML content?
Positions
-
Show relations by adding elements to both entry and content
-
Relations added to <content> represent content-by-reference. Relations added to <entry> represent peer content eg other entries. These are two fundamentally different types of reference and should be separate.
-
Show relations by adding elements only to content
-
Let all related resources be referred to in <content> and marked with the "rel=" attribute.
-
Show relations by adding elements only to entry
-
Entry <content> should be purely inline. All references should be in other <entry> elements.
Issue: What data is in the Related data model?
Positions
-
Related should just include a role+link
-
All access to related resources should be dynamic
-
Related should include role+link+author+date
-
author and date are needed for validation
-
Related includes role+link and may include any other elements
-
eg <related> in a feed can contain a full comment entry
Issue: What syntax to refer to related resources?
Positions
-
Use XLink or a subset
-
Use HTML-style <link> tag
-
Use RDF
-
ĄJust kidding! Seriously though, Related will implement the essence of RDF: entry + predicate/relation-type + related-resource. So why not use the RDF infrastructure?
-
Use relation types defined by strings
-
Use relation types defined by URIs
-
Represent the related resource with a URI
-
Represent the related "resource" with a URI or a string