mf2-spec-template-brainstorming: Difference between revisions
(→Examples: Added fleshed out example) |
(→Examples: Added example JSON representation of example, notes on design) |
||
Line 32: | Line 32: | ||
Meatier example: | Meatier example: | ||
* (perhaps marked up as a test case so the spec page becomes a test suite too) | |||
* actually, side by side doesn’t work so well, perhaps one after the other or switch between them or just have an external parser provide the JSON repr? | |||
<div style="width: 60%; float: left;"> | |||
<source lang=html4strict> | <source lang=html4strict> | ||
<div class="h-example"> | <div class="h-example"> | ||
Line 45: | Line 49: | ||
</div> | </div> | ||
</source> | </source> | ||
</div> | |||
<div style="width: 40%; float: left;"> | |||
<source lang=javascript> | |||
{ | |||
"type": ["h-example"], | |||
"properties": { | |||
"name": ["An Example Example"], | |||
"published": ["2013-05-02 12:00:00"], | |||
"author": [{ | |||
"type": ["h-card"], | |||
"properties": { | |||
"name": ["Mr. Author"] | |||
}, | |||
"value": "Mr. Author" | |||
}], | |||
"photo": ["http://cdn.memegenerator.net/instances/400x/38481344.jpg"], | |||
"summary": ["An example example showing you how to example"] | |||
} | |||
} | |||
</source> | |||
</div> |
Revision as of 16:29, 6 June 2013
h-example is a microformats-2 schema (?) for representing Examples. It builds upon the classic hExample microformat.
Translations: link to each translation as hCard does
TODO: properties first or examples first? returning viewers are most likely to want quick reference to properties, first time viewers are most likely to want an example. Perhaps do as hCard does with the property list => markup 1:1 thing, unless that ends up looking too noisy?
Properties
For each property, give:
- classname e.g.
p-name
- legacy BC classname
- meaning e.g. The name of the example
- example value e.g. “An example of an artisanal banana-peeling pattern”
- full element
Example:
- p-name (was
fn
): The name of the example- E.G.
<span class="p-name">Banana #1</span>
- E.G.
TODO: how to handle properties which probably should be a nested microformat but can also be a plain value? E.G. author:
- p-author (was
author
): The author of the example. Optionally an h-card
Examples
Ideally all examples will be shown 1:1 with their JSON representation, OR editable with JS to submit it to a parser and show the JSON — this would encourage people to experiment and greater understand the relationship between markup and parsed structure.
Minimal sane example (if applicable e.g. implied h-card):
Meatier example:
- (perhaps marked up as a test case so the spec page becomes a test suite too)
- actually, side by side doesn’t work so well, perhaps one after the other or switch between them or just have an external parser provide the JSON repr?
<div class="h-example">
<span class="p-name">An Example Example</span>
<p>Published <time class="dt-published" datetime="2013-05-02 12:00:00">two days ago</time></p>
<p class="p-author h-card">Mr. Author</p>
<img class="u-photo" src="http://cdn.memegenerator.net/instances/400x/38481344.jpg" alt="" />
<p class="p-summary">An example example showing you how to example</p>
</div>
{
"type": ["h-example"],
"properties": {
"name": ["An Example Example"],
"published": ["2013-05-02 12:00:00"],
"author": [{
"type": ["h-card"],
"properties": {
"name": ["Mr. Author"]
},
"value": "Mr. Author"
}],
"photo": ["http://cdn.memegenerator.net/instances/400x/38481344.jpg"],
"summary": ["An example example showing you how to example"]
}
}