Hi Paul, Storage - that is a different matter entirely. And that is why I store content in WPCML http://www.activeinterface.com/thincmsPaperSummary.html and then use XSLT to generate the HTML
I've attached one of the WPCML templates I use for a news page. Chris > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Paul Bryson > Sent: Tuesday, December 13, 2005 4:49 PM > To: [email protected] > Subject: RE: [WSG CMS] Proper semantics of a news posting > > I think I just worded that poorly. I probably should have said, > "I need to display the following information, and store it > semantically." > > I am not looking to pass the information to machines per se, > but I know that > it will be read my machines such as search engines and screen > readers. I am > seeking the most ideal way for the information to be stored, > then I will > worry about displaying it with CSS. So while I could simply > place each > piece of information in it's own DIV, that would be a step > back from where I > want to go. A DIV does not convey any meaning, other to > indicate that there > is a division of some sort, often in display. A dt/dd will > at least convey > that you have some specific idea that you are defining. In > this case, a > machine knows that the "posted by" is "Chris Harrington", in > much the same > way that an email client can tell me the date, sender, and > subject of an > email. > > > Paul > > -----Original Message----- > Chris Harrington > Tue, 13 Dec 2005 12:51:43 -0800 > > Hi Paul, > What do you mean by "display semantics". Do you need a > non-human to consume > the information? If that is the case, then I'd use RSS. If > your display > semantics are for a web brower, then use markup which is CSS friendly. > Something like > > > <div class="post"> > <a id="a1234"></a> > <h2 class="postTitle">Title of post</h2> > <div class="postMetaInfo"> > <div class="postCategory"><span>Posted > category:</span> > Alert</div> > <div class="postTopic">Weather</div> > <div class="postDate"><span>Posted date:</span> > 12/13/2005</div> > <div class="postAuthor"><span>Posted by:</span> <a > title="About This Author" href="http://www.activeinterface.com";>Chris > Harrington</a></div> > </div> > <div class="postBody"> > <p>Locals were shocked today when..</p> > </div> > </div> > > With the DIVs you can decide (in CSS) how it gets layed out > With the SPANs you can decide (in CSS) what annotation text > you (don't) want > to display: > > DIV.postMetaInfo DIV.postCategory SPAN {display: none;} > ********************************************************* > The CMS discussion list for http://webstandardsgroup.org/ > ********************************************************* > >
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="[EMAIL PROTECTED]'page']"> <div class="mainCopy"> <xsl:call-template name="layerTags" /> <h1><xsl:value-of select="//[EMAIL PROTECTED]'page_header']" /></h1> <p><xsl:value-of select="//[EMAIL PROTECTED]'header_color']" /></p> <p><xsl:value-of select="//[EMAIL PROTECTED]'header_logo']" /></p> <p><xsl:value-of select="//[EMAIL PROTECTED]'my_date']" /></p> <xsl:apply-templates select="//[EMAIL PROTECTED]'header_html']" mode="htmlcopy"/> <div class="blog"> <xsl:apply-templates select="//[EMAIL PROTECTED]'big_list']" mode="complex_list_mode"/> </div> <xsl:apply-templates select="//[EMAIL PROTECTED]'page_footer']" mode="htmlcopy"/> </div> </xsl:template> <xsl:template match="contents" mode="complex_list_mode"> <xsl:for-each select="entity"> <div class="post"> <a id="[EMAIL PROTECTED]'Number']}"></a> <h2 class="postTitle"><xsl:value-of select="[EMAIL PROTECTED]'Title']" /></h2> <p>date: <xsl:value-of select="[EMAIL PROTECTED]'Date']" /></p> <p>title color: <xsl:value-of select="[EMAIL PROTECTED]'Title_Color']" /></p> <xsl:if test="[EMAIL PROTECTED]'Author']"> <xsl:text>Posted by </xsl:text> <xsl:choose> <xsl:when test="[EMAIL PROTECTED]'Author_Page']"> <a title="About This Author"> <xsl:attribute name="href"> <xsl:apply-templates select="[EMAIL PROTECTED]'Author_Page']" mode="link"/> </xsl:attribute> <xsl:value-of select="[EMAIL PROTECTED]'Author']" /> </a> </xsl:when> <xsl:otherwise> <xsl:value-of select="[EMAIL PROTECTED]'Author']" /> </xsl:otherwise> </xsl:choose> </xsl:if> <xsl:if test="[EMAIL PROTECTED]'Archive']"> <a title="PermaLink For This Post"> <xsl:attribute name="href"> <xsl:apply-templates select="[EMAIL PROTECTED]'Archive']" mode="link"/> </xsl:attribute> </a> </xsl:if> <xsl:apply-templates select="[EMAIL PROTECTED]'Html']" mode="htmlcopy" /> </div> </xsl:for-each> </xsl:template> </xsl:stylesheet>
<?xml version="1.0" encoding="utf-8"?> <entity type="page" xsl="full_list.xsl" section="no_callout" template="shared"> <Title>Template to test entity types</Title> <Caption></Caption> <Target></Target> <Display></Display> <PublishState></PublishState> <StartDate></StartDate> <EndDate></EndDate> <Notes></Notes> <Description></Description> <contents> <entity type="text" id="page_header">Recent Buzz</entity> <entity type="color" id="header_color">white</entity> <entity type="asset" id="header_logo"></entity> <entity type="date" id="my_date">10/21/2005</entity> <entity type="html" id="header_html"> <h2>blorch</h2> <p>some html for page</p> <p>no whitespace should be added to this</p> </entity> <entity type="list" id="big_list"> <contents> <entity type="listitem"> <entity type="text" id="Title">Article 1 Title</entity> <entity type="color" id="Title_Color">green</entity> <entity type="text" id="Author">author name</entity> <entity type="link" id="Author_Page">author</entity> <entity type="date" id="Date">May 20, 2003</entity> <entity type="link" id="Archive">2003_05</entity> <entity type="text" id="Number">157</entity> <entity type="html" id="Html"> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p> </entity> </entity> </contents> </entity> <entity type="html" id="page_footer"> <div class="buzzArchives"> <p> <a href="archive" title="Link to the Buzz Archives">Past Buzzings...</a> </p> <p>Click <a href="contact" title="Buzz RSS Feed">here</a> to contact us</p> </div> </entity> </contents> </entity>
