From Microformats Wiki
Revision as of 17:48, 13 August 2014 by Tantek (talk | contribs) (Reverted edits by MythiliIyer (Talk) to last version by Gidgreen)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Questions and Answers


The "question-answer" microformat proposes to formalize the relationships between questions and answers (including "FAQs") published within a single HTML document (and possibly a set of documents). Such formalization should allow for reuse of questions and answers in new contexts, e.g. search engines, IM bots, etc.

Multi-page FAQs

Based on [1] (extraneous detail omitted)

Current mark-up:

<a href="/england/noappointmentneeded/walkincentres/walkincentreservices.cmsx">What services does a Walk-in Centre 

Possible solution (tentative class-names):

<a href="/england/noappointmentneeded/walkincentres/walkincentreservices.cmsx" class="question answer-at">What services 
does a Walk-in Centre offer?</a>

More about this possible solution:


<ul class="faq-list">
  <li><a class="question answer-at" href="faq1.htm">What are the microformats?</a></li>
  <li><a class="question answer-at" href="faq2.htm">Who can use the microformats? </a></li>
  <li><a class="question answer-at" href="faq3.htm">How can we use the microformats? </a></li>


<div class="faq">
  <h1 class="question">What are the microformats?</h1>
  <p class="answer">Microformats are an implementation...</p>


<ul class="faq-navigation">
  <li><a href="faq1.htm" class="faq-previous question answer-at">What are the microformats?</a> (Previous in 
  <li><a href="faq3.htm" class="faq-next question answer-at">How can we use the microformats?</a> (Next in 

Interview Questions and Answers

A lively discussion on Quirksmode didn't resolve the issue, but the most convincing argument was made by Eric Myers at comment #7. The answer to a question is semantically a blockquote. The question itself is just text, assuming the author asked the question, so a paragraph is what's called for. Combine that with comment #13, which suggest the use of EM to provide a different voice for the question, and you're halfway there. What remains is to work in the names of the speakers. The CITE tag isn't ideal for identifying the speaker (it's not quite a reference to another source), but it's the only tag that makes sense with a blockquote. That just leaves a tag for the identity of the interviewer. But since the interviewer is also the author, the byline at the top of the page should do the trick. So to sum up, here's a proposed solution:

<p><em>What is your quest?</em></p>
<blockquote><p><cite>Sir Launcelot:</cite> To seek the Holy Grail.</p></blockquote>
<p><em>What is your favorite color?</em></p>
<blockquote><p><cite><abbr title="Sir Launcelot">SL:</abbr></cite> Blue.</p></blockquote>

If it is important that the format be portable across sites, then I would also propose adding class="question" in the P tag and class="answer" in the blockquote, although I tend to think the format is cleaner without those classes.

  • The content model for <blockquote> is (%block;|SCRIPT)+. That is, it may only contain the <script> element (I wonder why?) and block level elements such as <p>. Inline elements like <cite>, and CDATA are not allowed directly within a <blockquote>. I've fixed the example to be a valid fragment. TobyInk 02:57, 28 Mar 2008 (PDT)


FAQs could be marked up as, or using a variant of, hAtom, with the question being the entry title and the answer the content. Andy Mabbett

hfeed (hAtom) is a good candidate, however, one thing is lacking...the key concept of a q/a. The value of a q/a format is for agregating questions and answers. If hAtom can indicate that it's contents are q/a it would be perfect. Taylor Cowan

Social Q&A sites

Another area of interest is using microformats in social Question and Answer sites, of which Stack Overflow is a prominent example.

In this context, each question page is analogous to a forum topic, in which the first post is the question, and subsequent posts are the answers. Consequently hAtom appears suitable for this purpose, with certain extensions:

  • Differentiating between questions and answers. This could be implemented by adding an additional class name question or answer alongside hentry.
  • Indicating that a particular answer was selected (by the questioner) as the best. This could use yet another class name answer-selected alongside hentry and answer for this purpose.
  • The net number of up votes minus down votes received by a question or answer. This could reuse the votes property from hreview-aggregate, although in this case it could also be negative.

Gideon Greenspan 10:35, 21 January 2010 (UTC)

See also