On Dec 12, 2006, at 4:52 PM, Mike Schinkel wrote:

<div class="region-data vcard">
 <div class="region street" title="child-of-city">
  <div class="street-address">665 3rd St.</div>
  <div class="extended-address">Suite 207</div>
 </div>
 <span class="region city locality" title="child-of-state">San
Francisco</span>,
 <span class="region state region"  title="child-of-country">CA</span>

 <span class="post-code postal-code">94107</span>
 <div class="region country country-name"
title="child-of-continent">U.S.A.</div>
</div>

How to disambiguate with Profile URI? (Please make the assumption that the
developer of region-data knew nothing of vcard when region-data was
published.)

As I've said before, I don't think this kind of same name, same document, different meaning conflict is solved by profile URIs (because they don't have namespaces). But I also think it's both a rare and a bad practice to use one symbol to communicate two different ideas in a single context.

Nonetheless, in the interest of ending this discussion, here's what you can do to solve this problem whenever you encounter it:

1) add profiles for both vcard and region-data, e.g.:

<head profile="http://www.w3.org/2006/03/hcard http://yourdomain.com/ region-data-profile">

2) add prefixes to all your region-data tags when you decide to add the conflicting hCard names, e.g.:

<span class="my-prefix-region my-prefix-city locality" title="child-of-state">San

3) designate that prefix in a meta tag, e.g.:

        <meta name="profile-prefixes" content="* my-prefix-" />

        (where * indicates no prefix for hcard)

4) convince developers of region-data parsers to look for prefixes

Note this won't require any changes to hCard. Now you can go crazy with your double entendre markup and this list can move on with developing microformats to solve specific problems. Sound good?

Peace,
Scott

_______________________________________________
microformats-discuss mailing list
[email protected]
http://microformats.org/mailman/listinfo/microformats-discuss

Reply via email to