microformats2-brainstorming: Difference between revisions
(cleanup see also) |
(adopt itemref isomorphically for microformats 2 rather than the include-pattern) |
||
Line 64: | Line 64: | ||
to-do: try examples with organizations, events, products | to-do: try examples with organizations, events, products | ||
== adopt itemref == | |||
There many existing real-world use-cases where either: | |||
* several microformats in a page want to share some common data without repeating it, e.g. a page about a product with multiple reviews of that product (very common, products sites, Amazon/CNET et al, review aggregators, Yelp et al) | |||
* a microformat in a page needs to incorporate information spread across different parts of a page, without assigning the entire page to that microformat | |||
The [[include-pattern]] provides the necessary functionality for existing microformats (1.0). | |||
For 2.0 it may be reasonable to simply re-use the nice <code>itemref</code> attribute from microdata, with identical/analogous functionality. | |||
That is, when present on the root element of a microformat, the <code>itemref</code> attribute provides a space separated list of ids of elements in the document which are then incorporated as children of the microformat, before its actual children in the document. This is a simple coarse summary of course, and the actual itemref inclusion algorithm should be followed. | |||
One might say that this raises the issue of requiring [[HTML5]] with the ability to accepted extended attributes like "itemref", but I think that might be ok for the set of use-cases that need "itemref". That is, they *are* a minority of actual use-cases, and thus making them use HTML5 is probably ok. | |||
== rejected ideas == | == rejected ideas == |
Revision as of 10:14, 21 September 2011
This article is a stub. You can help the microformats.org wiki by expanding it.
Brainstorming experimental / undeveloped / rejected ideas for microformats-2.
further simplifications
more on allow root class name only
name default property on all
- pick 'p-name' (per feedback from microformats mailing-lists over the years, Google Rich Snippets renaming, etc. as better to use 'name' instead of 'fn' - benefits outweigh costs) as the single required and thus implied property of *every* microformat. that is, make this part of the syntax - we're marking up proper nouns. Tantek 14:50, 9 June 2011 (UTC)
use-cases: every single proper noun on any web page.
to-do: try examples with organizations, events, products (however note that those are almost always capitalized thus implying proper noun / name semantics)
imply url property from root only a href
- imply 'u-url' property from a root class name only on an <a href>
E.g.
<a class="h-card" href="http://chrismessina.me/">Chris Messina</a>
parses as:
- microformat: h-card
- implied 'name' from root element contents: Chris Messina
- implied 'url' from a href: http://chrismessina.me/
use-cases - nearly every link to a person ever like on blog posts, blog rolls etc. all the same data/use-cases that informed XFN.
to-do: try examples with organizations, events, products
imply name and photo properties from root only img
- imply 'u-photo' property from a root class name only on an <img src alt>
E.g.
<img class="h-card" src="http://example.org/pic.jpg" alt="Chris Messina" />
parses as:
- microformat: h-card
- implied 'p-name' from img alt: Chris Messina
- implied 'u-photo' from img src: http://example.org/pic.jpg
use-cases - nearly every social networking site that shows a grid of people without text already does so with img tags and their names in the alt attribute. most of those are linked too, which brings me to the next imply:
to-do: try examples with organizations, events, products
imply name and photo property from img only child of a href
Combining the above:
<a class="h-card" href="http://chrismessina.me/">
<img src="http://example.org/pic.jpg" alt="Chris Messina" />
</a>
parses as:
- microformat: h-card
- implied 'u-url' from a href: http://chrismessina.me/
- implied 'p-name' from img alt: Chris Messina
- implied 'u-photo' from img src: http://example.org/pic.jpg
use-cases - nearly every social networking site that shows a grid of people without text already does so with hyperlinked img tags and their names in the alt attribute.
to-do: try examples with organizations, events, products
adopt itemref
There many existing real-world use-cases where either:
- several microformats in a page want to share some common data without repeating it, e.g. a page about a product with multiple reviews of that product (very common, products sites, Amazon/CNET et al, review aggregators, Yelp et al)
- a microformat in a page needs to incorporate information spread across different parts of a page, without assigning the entire page to that microformat
The include-pattern provides the necessary functionality for existing microformats (1.0).
For 2.0 it may be reasonable to simply re-use the nice itemref
attribute from microdata, with identical/analogous functionality.
That is, when present on the root element of a microformat, the itemref
attribute provides a space separated list of ids of elements in the document which are then incorporated as children of the microformat, before its actual children in the document. This is a simple coarse summary of course, and the actual itemref inclusion algorithm should be followed.
One might say that this raises the issue of requiring HTML5 with the ability to accepted extended attributes like "itemref", but I think that might be ok for the set of use-cases that need "itemref". That is, they *are* a minority of actual use-cases, and thus making them use HTML5 is probably ok.
rejected ideas
n prefix for multiple numbers
Idea:
- "n-*" for (one or more) numbers, e.g. "n-rating", "n-geo", leaving the semantics of more than one number up to specific format. e.g. for an "n-rating" inside an "h-review", the first number would presumably be the rating value, when only two numbers the second would be the "best" value (e.g. rated
<span class="n-rating">3 out of 4</span>
), when three numbers the second would be the "worst" and the third would be the "best" (e.g.<span class="n-rating">7.5 out of 1 to 10</span>
). similarly "n-geo" would specify the first number to be the latitude and the second to be the longitude.
Rejected because while this *might* work for some properties in *English* it will NOT localize/internationalize well (orders of numbers in phrases change in different languages), and it will also limit the human expressivity of the plain text. Thanks to Ben Ward for this feedback at the 2011-06-02 microformats dinner. Tantek 14:25, 9 June 2011 (UTC)