<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PatrickLauke</id>
	<title>Microformats Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PatrickLauke"/>
	<link rel="alternate" type="text/html" href="https://microformats.org/wiki/Special:Contributions/PatrickLauke"/>
	<updated>2026-05-05T14:39:15Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=include-pattern&amp;diff=23200</id>
		<title>include-pattern</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=include-pattern&amp;diff=23200"/>
		<updated>2007-11-06T22:35:08Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: code fixup, and addition of keyboard access problem mention as a caveat to the &amp;quot;no known issues&amp;quot; bit...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Include Pattern&amp;lt;/h1&amp;gt;&lt;br /&gt;
{{TOC-right}}&lt;br /&gt;
Initially developed as part of [[resume-brainstorming]], the include pattern is a mechanism to include a portion of data from one area of a page into another area of the same page. The following is documentation for re-use of the pattern in other microformats, and for publishers working with it.&lt;br /&gt;
&lt;br /&gt;
;Editors: Tantek Çelik&lt;br /&gt;
: Ben Ward&lt;br /&gt;
&lt;br /&gt;
== background ==&lt;br /&gt;
&lt;br /&gt;
[[hresume|hResume]] needed the ability to include a name from one hCard at the top of a resume — the person's contact details — into into the separate hCards used in the same person's employment history. Repeating so much data would be inconvenient to publishers, irritating to consumers and would not have matched the existing publishing techniques used in Resumes and Curriculum Vitæ. The include pattern is a mechanism to reference data from the same page, avoiding repetition.&lt;br /&gt;
&lt;br /&gt;
== scope ==&lt;br /&gt;
&lt;br /&gt;
The include pattern is strictly limited to the scope of the current page. It cannot be used to include content from other URLs.&lt;br /&gt;
&lt;br /&gt;
== quick reference==&lt;br /&gt;
&lt;br /&gt;
The include-pattern is a mechanism to include content from one microformat into another microformat elsewhere in the same document, using hyperlinks (recommended) or OBJECT. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;include&amp;quot; href=&amp;quot;#author&amp;quot;&amp;gt;Ben Ward&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object class=&amp;quot;include&amp;quot; data=&amp;quot;#author&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In specs which cite the include-pattern, either of the above code snippets will cause a microformats parser to replace the A or OBJECT element with class name &amp;quot;include&amp;quot; with the content fragment with ID &amp;quot;author&amp;quot;. Full examples follow.&lt;br /&gt;
&lt;br /&gt;
== in general==&lt;br /&gt;
&lt;br /&gt;
To reference includes, use an include element with class name &amp;quot;include&amp;quot; and a document fragment identifier. The content to be included should have an ID attribute set, and that ID should be referenced from the HREF or DATA attribute at the point of inclusion.&lt;br /&gt;
&lt;br /&gt;
The include element with class name &amp;quot;include&amp;quot; indicates a reference to a sub-tree elsewhere in the document which must be included in-place by microformat parsers. That is, the element with class &amp;quot;include&amp;quot; is _replaced_ in the DOM by the referenced sub-tree.&lt;br /&gt;
&lt;br /&gt;
To prevent infinite loops, if a class=&amp;quot;include&amp;quot; refers to itself or to an ancestor in the parse tree, then it is ignored and has no effect on the parser.&lt;br /&gt;
&lt;br /&gt;
Per the [[include-pattern#Scope|scope]], the OBJECT 'data' attribute and hyperlink 'href' attribute MUST be local ID references when used as include pattern instances. External references (requiring a consuming application to load an external resource) are not supported by this method.&lt;br /&gt;
&lt;br /&gt;
There are two HTML elements available to reference includes, hyperlink/Anchor and OBJECT. They are documented below.&lt;br /&gt;
&lt;br /&gt;
These methods of property indirection via a hyperlink element can apply to any/all properties in class-based microformats, but should only be used where a microformat explicitly states that the include-pattern is a dependency. For example, [[XOXO]] does not reference the include-pattern at this time, so sub-trees cannot be included by reference in XOXO. [[hResume]] and [[hReview]] do reference the include pattern.&lt;br /&gt;
&lt;br /&gt;
=== Hyperlink ===&lt;br /&gt;
&lt;br /&gt;
The recommended way to reference includes within microformats is to use a hyperlink.&lt;br /&gt;
&lt;br /&gt;
==== Hyperlink example====&lt;br /&gt;
&lt;br /&gt;
Here is an [[hcard|hCard]] from the beginning of a resume, shown here as a verbose hCard.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Elsewhere on the page, a second hCard re-uses the &amp;quot;fn n&amp;quot; content from the first hCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a href=&amp;quot;#jl-name&amp;quot; class=&amp;quot;include&amp;quot; title=&amp;quot;James Levine&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
A microformat parser must treat the second hCard as follows, with the hyperlink include element completely replaced (including inner-text) by the sub-tree that was referenced:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== notes and issues ====&lt;br /&gt;
&lt;br /&gt;
Note: The &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; attribute value in the example &amp;quot;jl-name&amp;quot; was chosen for demonstration purposes.  The text of the value has no semantic per the include-pattern other than to connect the source of the include to the destination.  Authors {{should}} use good [[POSH]] techniques to choose &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt; names.&lt;br /&gt;
&lt;br /&gt;
Using the hyperlink include pattern causes no known issues in any web browser, apart from keyboard access problems noted below. &lt;br /&gt;
&lt;br /&gt;
Authors {{should}} supply content text or at least &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; attribute text for the hyperlink itself. This can require repeating a small piece of information (such as a person's name in an hCard), or including generic text suitable for the context of the page. &lt;br /&gt;
&lt;br /&gt;
===== accessibility =====&lt;br /&gt;
There are two points of view on this. &amp;lt;span id=&amp;quot;Accessibility_concerns&amp;quot;&amp;gt;The first is that the user experience of Assistive Technology can(might?) be severely degraded by the presence of hyperlinks which do not contain text ('''citation needed''').&amp;lt;/span&amp;gt;  The second is that the first claim is only a side effect of some Assistive Technologies extracting the hyperlinks in a document and presenting them as a list, and that such technologies / features have no right to do so, and therefore it is not your problem to worry about. See [http://joeclark.org/appearances/atmedia2007/#context Joe Clark: When accessibility is not your problem: Headings and links read out of context], in particular:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;p&amp;gt;As writers, we are not authorizing you or Jaws to pull out our link text and remix it. Why don’t you rearrange the sentences, too?&amp;lt;/p&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, this is current behaviour of current user agents. From the [http://microformats.org/about/ microformats about page]: &amp;lt;blockquote&amp;gt;microformats are: [...] adapted to current behaviors and usage patterns&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As noted in the [http://microformats.org/wiki/include-pattern-feedback include-pattern feedback page], any hyperlink used with an &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attribute ends up in the browser's tab cycle. This affects all keyboard users (both sighted users that can't/don't operate a mouse, or screen reader users in the extreme case). Even empty hyperlinks receive focus. This can be tested by modifying the code of the original [http://allinthehead.com/demo/include.html a@include test page] to visually follow the tabbing from one hyperlink to the next (using CSS or, for test purposes, subtly changing the &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt;, tabbing through the page, and observing the change in the URL displayed in the browser's status bar). &lt;br /&gt;
&lt;br /&gt;
=== Object ===&lt;br /&gt;
&lt;br /&gt;
The Object Include Pattern is semantically superior to the Hyperlink Include; it is being used to embed content into the page. The &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; element based include was the original developed include pattern. However, there are serious browser compatibility issues that can affect some implementation scenarios and thus the above Hyperlink Include Pattern was developed and is now preferred.&lt;br /&gt;
&lt;br /&gt;
==== Object example ====&lt;br /&gt;
&lt;br /&gt;
Here is the same [[hcard|hCard]] from the beginning of the resume in the previous example.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Elsewhere on the page, a second hCard re-uses the &amp;quot;fn n&amp;quot; content from the first hCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;object data=&amp;quot;#jl-name&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
A microformat parser must treat the second hCard as follows, with the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; include element completely replaced by the sub-tree that it referenced:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This method of hCard property indirection via an object element can apply to any/all properties in class-based microformats.&lt;br /&gt;
&lt;br /&gt;
=== notes and issues===&lt;br /&gt;
* Unlike the hyperlink pattern, the Object Include Pattern does not require any textual fallback. This makes it invisible to Assistive Technology with no adverse affect.&lt;br /&gt;
* Apple's Safari (WebKit-based) browser has some rendering issues with this use of &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;: You should set a width and height of &amp;quot;0&amp;quot; for the include elements to resolve this ('''version(s) affected needed''').&lt;br /&gt;
* Bugs have been reported in some web browsers (Internet Explorer, Safari, Firefox) that &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; elements referencing fragments of the same document erroneously cause the browser to make additional HTTP requests ('''version(s) affected needed'''). For scenarios where HTTP requests are a sensitive performance measure, this makes the Object Include Pattern inappropriate.&lt;br /&gt;
* Versions of Microsoft Internet Explorer with ActiveX controls disabled will throw a warning prompt upon finding an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; element ('''version(s) affected needed''').&lt;br /&gt;
&lt;br /&gt;
== acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
Thanks to discussions and brainstorms with a bunch of folks: [http://theryanking.com/ Ryan King], James Levine, the whole crowd at the [http://mashupcamp.com/index.cgi?HAtomFinalization Microformats specifications working session] at MashupCamp, [http://suda.co.uk/ Brian Suda], [http://randomchaos.com/ Scott Reynen], [http://allinthehead.com/ Drew McLellan].&lt;br /&gt;
&lt;br /&gt;
== specifications using ==&lt;br /&gt;
* [[hresume|hResume]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
=== considering ===&lt;br /&gt;
All class-based microformats {{should}} consider using and explicitly normatively stating support for the include pattern.&lt;br /&gt;
* [[hatom|hAtom]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hcard|hCard]]&lt;br /&gt;
&lt;br /&gt;
== implementations ==&lt;br /&gt;
* X2V implements the [[include-pattern]] when parsing [[hcard|hCards]] and [[hcalendar|hCalendars]] for both object.include and a.include.&lt;br /&gt;
&lt;br /&gt;
== references ==&lt;br /&gt;
&lt;br /&gt;
=== normative ===&lt;br /&gt;
* HTML 4.01&lt;br /&gt;
&lt;br /&gt;
=== informative ===&lt;br /&gt;
* [[hcard|hCard]]&lt;br /&gt;
* [[hresume|hResume]]&lt;br /&gt;
* XHTML 1.0&lt;br /&gt;
&lt;br /&gt;
== related pages==&lt;br /&gt;
{{include-pattern-related-pages}}&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page].&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=include-pattern&amp;diff=23197</id>
		<title>include-pattern</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=include-pattern&amp;diff=23197"/>
		<updated>2007-11-06T22:16:12Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: providing the partial second viewpoint on the accessibility issue. keyboard access issue of empty hyperlinks still unresolved.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Include Pattern&amp;lt;/h1&amp;gt;&lt;br /&gt;
{{TOC-right}}&lt;br /&gt;
Initially developed as part of [[resume-brainstorming]], the include pattern is a mechanism to include a portion of data from one area of a page into another area of the same page. The following is documentation for re-use of the pattern in other microformats, and for publishers working with it.&lt;br /&gt;
&lt;br /&gt;
;Editors: Tantek Çelik&lt;br /&gt;
: Ben Ward&lt;br /&gt;
&lt;br /&gt;
== background ==&lt;br /&gt;
&lt;br /&gt;
[[hresume|hResume]] needed the ability to include a name from one hCard at the top of a resume — the person's contact details — into into the separate hCards used in the same person's employment history. Repeating so much data would be inconvenient to publishers, irritating to consumers and would not have matched the existing publishing techniques used in Resumes and Curriculum Vitæ. The include pattern is a mechanism to reference data from the same page, avoiding repetition.&lt;br /&gt;
&lt;br /&gt;
== scope ==&lt;br /&gt;
&lt;br /&gt;
The include pattern is strictly limited to the scope of the current page. It cannot be used to include content from other URLs.&lt;br /&gt;
&lt;br /&gt;
== quick reference==&lt;br /&gt;
&lt;br /&gt;
The include-pattern is a mechanism to include content from one microformat into another microformat elsewhere in the same document, using hyperlinks (recommended) or OBJECT. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;include&amp;quot; href=&amp;quot;#author&amp;quot;&amp;gt;Ben Ward&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object class=&amp;quot;include&amp;quot; data=&amp;quot;#author&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In specs which cite the include-pattern, either of the above code snippets will cause a microformats parser to replace the A or OBJECT element with class name &amp;quot;include&amp;quot; with the content fragment with ID &amp;quot;author&amp;quot;. Full examples follow.&lt;br /&gt;
&lt;br /&gt;
== in general==&lt;br /&gt;
&lt;br /&gt;
To reference includes, use an include element with class name &amp;quot;include&amp;quot; and a document fragment identifier. The content to be included should have an ID attribute set, and that ID should be referenced from the HREF or DATA attribute at the point of inclusion.&lt;br /&gt;
&lt;br /&gt;
The include element with class name &amp;quot;include&amp;quot; indicates a reference to a sub-tree elsewhere in the document which must be included in-place by microformat parsers. That is, the element with class &amp;quot;include&amp;quot; is _replaced_ in the DOM by the referenced sub-tree.&lt;br /&gt;
&lt;br /&gt;
To prevent infinite loops, if a class=&amp;quot;include&amp;quot; refers to itself or to an ancestor in the parse tree, then it is ignored and has no effect on the parser.&lt;br /&gt;
&lt;br /&gt;
Per the [[include-pattern#Scope|scope]], the OBJECT 'data' attribute and hyperlink 'href' attribute MUST be local ID references when used as include pattern instances. External references (requiring a consuming application to load an external resource) are not supported by this method.&lt;br /&gt;
&lt;br /&gt;
There are two HTML elements available to reference includes, hyperlink/Anchor and OBJECT. They are documented below.&lt;br /&gt;
&lt;br /&gt;
These methods of property indirection via a hyperlink element can apply to any/all properties in class-based microformats, but should only be used where a microformat explicitly states that the include-pattern is a dependency. For example, [[XOXO]] does not reference the include-pattern at this time, so sub-trees cannot be included by reference in XOXO. [[hResume]] and [[hReview]] do reference the include pattern.&lt;br /&gt;
&lt;br /&gt;
=== Hyperlink ===&lt;br /&gt;
&lt;br /&gt;
The recommended way to reference includes within microformats is to use a hyperlink.&lt;br /&gt;
&lt;br /&gt;
==== Hyperlink example====&lt;br /&gt;
&lt;br /&gt;
Here is an [[hcard|hCard]] from the beginning of a resume, shown here as a verbose hCard.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Elsewhere on the page, a second hCard re-uses the &amp;quot;fn n&amp;quot; content from the first hCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a href=&amp;quot;#jl-name&amp;quot; class=&amp;quot;include&amp;quot; title=&amp;quot;James Levine&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
A microformat parser must treat the second hCard as follows, with the hyperlink include element completely replaced (including inner-text) by the sub-tree that was referenced:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== notes and issues ====&lt;br /&gt;
&lt;br /&gt;
Note: The &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; attribute value in the example &amp;quot;jl-name&amp;quot; was chosen for demonstration purposes.  The text of the value has no semantic per the include-pattern other than to connect the source of the include to the destination.  Authors {{should}} use good {{POSH}} techniques to choose &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt; names.&lt;br /&gt;
&lt;br /&gt;
Using the hyperlink include pattern causes no known issues in any web browser. &lt;br /&gt;
&lt;br /&gt;
Authors {{should}} supply content text or at least &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt; attribute text for the hyperlink itself. This can require repeating a small piece of information (such as a person's name in an hCard), or including generic text suitable for the context of the page. &lt;br /&gt;
&lt;br /&gt;
===== accessibility =====&lt;br /&gt;
There are two points of view on this. &amp;lt;span id=&amp;quot;Accessibility_concerns&amp;quot;&amp;gt;The first is that the user experience of Assistive Technology can(might?) be severely degraded by the presence of hyperlinks which do not contain text ('''citation needed''').&amp;lt;/span&amp;gt;  The second is that the first claim is only a side effect of some Assistive Technologies extracting the hyperlinks in a document and presenting them as a list, and that such technologies / features have no right to do so, and therefore it is not your problem to worry about. See [http://joeclark.org/appearances/atmedia2007/#context Joe Clark: When accessibility is not your problem: Headings and links read out of context], in particular:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;p&amp;gt;As writers, we are not authorizing you or Jaws to pull out our link text and remix it. Why don’t you rearrange the sentences, too?&amp;lt;/p&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, this is current behaviour of current user agents. From the [http://microformats.org/about/ microformats about page]: &amp;lt;blockquote&amp;gt;microformats are: [...] adapted to current behaviors and usage patterns&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As noted in the [http://microformats.org/wiki/include-pattern-feedback include-pattern feedback page], any hyperlink used with an href attribute ends up in the browser's tab cycle. This affects all keyboard users (both sighted users that can't/don't operate a mouse, or screen reader users in the extreme case). Even empty hyperlinks receive focus. This can be tested by modifying the code of the original [http://allinthehead.com/demo/include.html a@include test page] to visually follow the tabbing from one hyperlink to the next (using CSS or, for test purposes, subtly changing the href, tabbing through the page, and observing the change in the URL displayed in the browser's status bar). &lt;br /&gt;
&lt;br /&gt;
=== Object ===&lt;br /&gt;
&lt;br /&gt;
The Object Include Pattern is semantically superior to the Hyperlink Include; it is being used to embed content into the page. The &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; element based include was the original developed include pattern. However, there are serious browser compatibility issues that can affect some implementation scenarios and thus the above Hyperlink Include Pattern was developed and is now preferred.&lt;br /&gt;
&lt;br /&gt;
==== Object example ====&lt;br /&gt;
&lt;br /&gt;
Here is the same [[hcard|hCard]] from the beginning of the resume in the previous example.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Elsewhere on the page, a second hCard re-uses the &amp;quot;fn n&amp;quot; content from the first hCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;object data=&amp;quot;#jl-name&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
A microformat parser must treat the second hCard as follows, with the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; include element completely replaced by the sub-tree that it referenced:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;fn n&amp;quot; id=&amp;quot;jl-name&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;given-name&amp;quot;&amp;gt;James&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;family-name&amp;quot;&amp;gt;Levine&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;org&amp;quot;&amp;gt;SimplyHired&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;title&amp;quot;&amp;gt;Microformat Brainstormer&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This method of hCard property indirection via an object element can apply to any/all properties in class-based microformats.&lt;br /&gt;
&lt;br /&gt;
=== notes and issues===&lt;br /&gt;
* Unlike the hyperlink pattern, the Object Include Pattern does not require any textual fallback. This makes it invisible to Assistive Technology with no adverse affect.&lt;br /&gt;
* Apple's Safari (WebKit-based) browser has some rendering issues with this use of &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;: You should set a width and height of &amp;quot;0&amp;quot; for the include elements to resolve this ('''version(s) affected needed''').&lt;br /&gt;
* Bugs have been reported in some web browsers (Internet Explorer, Safari, Firefox) that &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; elements referencing fragments of the same document erroneously cause the browser to make additional HTTP requests ('''version(s) affected needed'''). For scenarios where HTTP requests are a sensitive performance measure, this makes the Object Include Pattern inappropriate.&lt;br /&gt;
* Versions of Microsoft Internet Explorer with ActiveX controls disabled will throw a warning prompt upon finding an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; element ('''version(s) affected needed''').&lt;br /&gt;
&lt;br /&gt;
== acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
Thanks to discussions and brainstorms with a bunch of folks: [http://theryanking.com/ Ryan King], James Levine, the whole crowd at the [http://mashupcamp.com/index.cgi?HAtomFinalization Microformats specifications working session] at MashupCamp, [http://suda.co.uk/ Brian Suda], [http://randomchaos.com/ Scott Reynen], [http://allinthehead.com/ Drew McLellan].&lt;br /&gt;
&lt;br /&gt;
== specifications using ==&lt;br /&gt;
* [[hresume|hResume]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
=== considering ===&lt;br /&gt;
All class-based microformats {{should}} consider using and explicitly normatively stating support for the include pattern.&lt;br /&gt;
* [[hatom|hAtom]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hcard|hCard]]&lt;br /&gt;
&lt;br /&gt;
== implementations ==&lt;br /&gt;
* X2V implements the [[include-pattern]] when parsing [[hcard|hCards]] and [[hcalendar|hCalendars]] for both object.include and a.include.&lt;br /&gt;
&lt;br /&gt;
== references ==&lt;br /&gt;
&lt;br /&gt;
=== normative ===&lt;br /&gt;
* HTML 4.01&lt;br /&gt;
&lt;br /&gt;
=== informative ===&lt;br /&gt;
* [[hcard|hCard]]&lt;br /&gt;
* [[hresume|hResume]]&lt;br /&gt;
* XHTML 1.0&lt;br /&gt;
&lt;br /&gt;
== related pages==&lt;br /&gt;
{{include-pattern-related-pages}}&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page].&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=abbr-design-pattern-issues&amp;diff=19721</id>
		<title>abbr-design-pattern-issues</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=abbr-design-pattern-issues&amp;diff=19721"/>
		<updated>2007-06-11T17:55:06Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: i can't understand why, but there's oodles of spam links appearing on the page just before the &amp;quot;open issue&amp;quot;. seeing if this fixes it.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;abbr design pattern issues&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are externally raised issues about [[abbr-design-pattern]] with broadly varying degrees of merit. Thus some issues may be REJECTED for a number of obvious reasons (but still documented here in case they are re-raised), and others contain longer discussions. Some issues may be ACCEPTED and perhaps cause changes or improved explanations in the spec. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- '''IMPORTANT''': Please read the [[abbr-design-pattern-faq|abbr-design-pattern FAQ]] ''before'' giving any feedback or raising any issues as your feedback/issues may already be resolved/answered. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Submitted issues may (and probably will) be edited and rewritten for better terseness, clarity, calmness, rationality, and as neutral a point of view as possible. Write your issues well. — [http://tantek.com/ Tantek]&lt;br /&gt;
&lt;br /&gt;
Please add new issues to the '''top''' of the list. Please follow-up to resolved/rejected issues with new information rather than resubmitting such issues. Duplicate issue additions will be reverted.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
* See [[accessibility-issues#abbr-design-pattern]].&lt;br /&gt;
&lt;br /&gt;
== Template ==&lt;br /&gt;
Please use this format (copy and paste this to the end of the list to add your issues):&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} YYYY-MM-DD raised by [http://yourhomepage.example.com YOURNAME].&lt;br /&gt;
*# ''Issue 1: Here is the first issue I have.''&lt;br /&gt;
*# ''Issue 2: Here is the second issue I have.''&lt;br /&gt;
&lt;br /&gt;
== Resolved Issues ==&lt;br /&gt;
Issues that are resolved but may have outstanding [[to-do]] items.&lt;br /&gt;
&lt;br /&gt;
== Closed Issues ==&lt;br /&gt;
Resolved issues that have no further actions to take.&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[abbr-design-pattern]]&lt;br /&gt;
* [[accessibility-issues]]&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=assistive-technology-abbr-results&amp;diff=16479</id>
		<title>assistive-technology-abbr-results</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=assistive-technology-abbr-results&amp;diff=16479"/>
		<updated>2007-05-03T19:35:08Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: /* Screenreaders */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;assistive technology abbr results&amp;lt;/h1&amp;gt;&lt;br /&gt;
This page is for document the precise results of using [[assistive-technology]] with real world examples in the wild of the abbr design pattern, as nearly always used by [[hcalendar|hCalendar]] (e.g. dtstart, dtend), often by [[hreview|hReview]] (e.g. dtreviewed, rating) and sometimes by [[hcard|hCard]] (e.g. bday, type subproperty).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
Each [[assistive-technology]] listed here MUST link to a precise description of the tool/service on the [[assistive-technology]] page, including version number, when published, etc.&lt;br /&gt;
&lt;br /&gt;
Each test result listed for each assistive technology MUST link to the real world example that was tested.&lt;br /&gt;
&lt;br /&gt;
== Test Cases ==&lt;br /&gt;
The [http://www.webstandards.org/action/atf/ WasP Accessibility Task Force] is working on a set of extended test cases that will cover the following data formats and markup formats. Please add to the list so we can create a comprehensive result set.&lt;br /&gt;
&lt;br /&gt;
===Data Formats===&lt;br /&gt;
Please provide hyperlinks to examples in the wild for each case that is to be tested.  Test cases with example in the wild URLs merit more testing than those without. However, the purpose of these test cases is to find the best solution, whether or not it is currently being used.&lt;br /&gt;
* ISO 8601 date with punctuation (YYYY-MM-DD)&lt;br /&gt;
* ISO 8601 datetime with punctuation (YYYY-MM-DDTHH:MM:SS)&lt;br /&gt;
* ISO 8601 datetime with punctuation and no seconds (YYYY-MM-DDTHH:MM)&lt;br /&gt;
* ISO 8601 UTC datetime with punctuation (YYYY-MM-DDTHH:MM:SSZ)&lt;br /&gt;
* ISO 8601 pre-UTC datetime with punctuation (YYYY-MM-DDTHH:MM:SS+HH:MM)&lt;br /&gt;
* ISO 8601 pre-UTC datetime with punctuation and no timezone minutes (YYYY-MM-DDTHH:MM:SS+HH)&lt;br /&gt;
* ISO 8601 post-UTC datetime with punctuation (YYYY-MM-DDTHH:MM:SS-HH:MM)&lt;br /&gt;
* ISO 8601 post-UTC datetime with punctuation and no timezone minutes (YYYY-MM-DDTHH:MM:SS-HH)&lt;br /&gt;
* ISO 8601 datetime with punctuation but w/o timezone punctuation. ''The hypothesis is that something like &amp;quot;eleven o'clock plus oh seven hundred&amp;quot; may be more understandable than &amp;quot;eleven o'clock plus seven o'clock&amp;quot; (similarly for the hyphen, read as &amp;quot;dash&amp;quot;).''&lt;br /&gt;
** pre-UTC (YYYY-MM-DDTHH:MM:SS+HHMM)&lt;br /&gt;
** post-UTC (YYYY-MM-DDTHH:MM:SS-HHMM)&lt;br /&gt;
* GEO Latitude/Longitude coordinates.&lt;br /&gt;
&lt;br /&gt;
=== Rejected Data formats ===&lt;br /&gt;
Dates without punctuation as they have proved unusable. Proof is premise for [[http://www.webstandards.org/2007/04/27/haccessibility/ hAccessibility]] article on the Web Standards Project Buzz blog. Window Eyes and JAWS read un-punctuated dates as single number. [[http://www.webstandards.org/files/atf_microformats/jaws.mp3 JAWS 8 on IE7 citation (MP3 Audio)]] of &amp;quot;twenty million seventy-thousand three-hundred twelve&amp;quot; is reason enough for rejection.&lt;br /&gt;
* ISO 8601 date without dashes (YYYYMMDD)&lt;br /&gt;
* ISO 8601 datetime without dashes and colons (YYYYMMDDTHHMMSS)&lt;br /&gt;
* ISO 8601 datetime without dashes and colons and no seconds (YYYYMMDDTHHMM)&lt;br /&gt;
* ISO 8601 UTC datetime without dashes and colons (YYYYMMDDTHHMMSSZ)&lt;br /&gt;
* ISO 8601 pre-UTC datetime without dashes and colons (YYYYMMDDTHHMMSSZ+HHMM)&lt;br /&gt;
* ISO 8601 pre-UTC datetime without dashes and colons and no timezone minutes (YYYYMMDDTHHMMSSZ+HH)&lt;br /&gt;
* ISO 8601 post-UTC datetime without dashes and colons (YYYYMMDDTHHMMSSZ-HHMM)&lt;br /&gt;
* ISO 8601 post-UTC datetime without dashes and colons and no timezone minutes (YYYYMMDDTHHMMSSZ-HH)&lt;br /&gt;
&lt;br /&gt;
===Markup Possibilities===&lt;br /&gt;
==== Valid HTML4 ====&lt;br /&gt;
* abbr-design-pattern (as currently recommended)&lt;br /&gt;
* Object with param value.&lt;br /&gt;
* Object with in-page data attribute.&lt;br /&gt;
* Span with title property.&lt;br /&gt;
* Nested spans with child title set to null.&lt;br /&gt;
* Nested abbr with child title set to null.&lt;br /&gt;
* Empty ins element with datetime attr (&amp;lt;code&amp;gt;&amp;amp;lt;span class=&amp;quot;dtstart&amp;quot;&amp;amp;gt;13th&amp;amp;lt;ins datetime=&amp;quot;20070713&amp;quot;&amp;amp;gt;&amp;amp;lt;/ins&amp;amp;gt;&amp;amp;lt;/span&amp;amp;gt;&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Rarely used event handler. e.g. (&amp;lt;code&amp;gt;&amp;amp;lt;span class=&amp;quot;dtstart&amp;quot; onchange=&amp;quot;void(20070713)&amp;quot;&amp;amp;gt;13th&amp;amp;lt;/span&amp;amp;gt;&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
==== Invalid HTML4 ====&lt;br /&gt;
Markup possibilities that are invalid in HTML4/XHTML1 are noted here to be clear that they were considered and rejected.  Since microformats build on [[posh]], any technique that is invalid semantic (X)HTML is unacceptable for a microformats solution. There is no need to bother testing these.&lt;br /&gt;
* Span with RDF dc:date attribute.&lt;br /&gt;
* Span with RDF geo:position attribute.&lt;br /&gt;
&lt;br /&gt;
===Screenreader Language Pronunciations===&lt;br /&gt;
* English&lt;br /&gt;
* Spanish (need volunteer native Spanish speaker screen reader user)&lt;br /&gt;
* ?&lt;br /&gt;
&lt;br /&gt;
===Verbosity settings===&lt;br /&gt;
&lt;br /&gt;
* Punctuation, speak none.&lt;br /&gt;
* Punctuation, speak some.&lt;br /&gt;
* Punctuation, speak all.&lt;br /&gt;
* Title attributes, speak none.&lt;br /&gt;
* Title attributes, speak some (abbr and acronym).&lt;br /&gt;
* Title attributes, speak all.&lt;br /&gt;
&lt;br /&gt;
===Screenreaders===&lt;br /&gt;
* Freedom Scientific JAWS (multiple versions TBD)&lt;br /&gt;
* GW Micro Window Eyes (multiple versions TBD)&lt;br /&gt;
* Apple Voiceover (multiple versions TBD)&lt;br /&gt;
* Dolphin HAL (multiple versions TBD)&lt;br /&gt;
&lt;br /&gt;
== Results ==&lt;br /&gt;
&lt;br /&gt;
To be determined.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[accessibility]]&lt;br /&gt;
* [[assistive-technology]]&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=accessibility-issues&amp;diff=16369</id>
		<title>accessibility-issues</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=accessibility-issues&amp;diff=16369"/>
		<updated>2007-05-01T18:08:24Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: include pattern issues added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;accessibility issues&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are externally raised issues about [[accessibility]] with broadly varying degrees of merit. Thus some issues may be REJECTED for a number of obvious reasons (but still documented here in case they are re-raised), and others contain longer discussions. Some issues may be ACCEPTED and perhaps cause changes or improved explanations in the spec. &lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT''': Please read the [[accessibility-faq|accessibility FAQ]] ''before'' giving any feedback or raising any issues as your feedback/issues may already be resolved/answered.&lt;br /&gt;
&lt;br /&gt;
Submitted issues may (and probably will) be edited and rewritten for better terseness, clarity, calmness, rationality, and as neutral a point of view as possible. Write your issues well. — [http://tantek.com/ Tantek]&lt;br /&gt;
&lt;br /&gt;
Please add new issues to the '''top''' of the list.  Please follow-up to resolved/rejected issues with new information rather than resubmitting such issues.  Duplicate issue additions will be reverted.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
*{{OpenIssue}} [http://lists.w3.org/Archives/Public/w3c-wai-ig/2006OctDec/0022.html 2006-10-06 raised by John Foliot in w3c-wai-ig]&lt;br /&gt;
*# ''&amp;lt;blockquote&amp;gt;&amp;lt;p&amp;gt;What we don't need (IMHO) is a web where everything is simply a &amp;amp;lt;div&amp;amp;gt; with some extraneous Microformats style association added to it. &amp;lt;/p&amp;gt;&amp;lt;/blockquote&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
*{{OpenIssue}} [http://www.accessifyforum.com/viewtopic.php?t=6167&amp;amp;postdays=0&amp;amp;postorder=asc&amp;amp;start=0 2006-09-20 raised by Andy Mabbett in accessifyforum]&lt;br /&gt;
*# ''Use of 'abbr' in microformats''&lt;br /&gt;
&lt;br /&gt;
===hCalendar===&lt;br /&gt;
hCalendar specific accessibility issues.  These are separated from the [[hcalendar-issues|hCalendar issues]] in general so that they are not lost among other non-accessibility related issues.&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2007-01-20 raised by [[User:AndyMabbett|Andy Mabbett]]&lt;br /&gt;
*# ''Where &amp;lt;code&amp;gt;DTEND&amp;lt;/code&amp;gt; is a date, and not a date-time, it is required to be the day after the end of the event, thus: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2007-04-30&amp;quot;&amp;gt;29 April 2007&amp;lt;/abbr&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. However, &amp;quot;29 April 2007&amp;quot; is '''''not''''' an abbreviation of 2007-04-30; it is an abbreviation of 2007-04-29. The markup as shown is semantically incorrect and likely to cause problems for users and user-agents which read the title attribute, and not the text value, of the &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; element.''&lt;br /&gt;
&lt;br /&gt;
*{{OpenIssue}} 2006-12-11 raised by Andy Mabbett&lt;br /&gt;
*# ''The image in [[hcalendar-brainstorming#Photos and other attachments]] has inappropriate alt text, being just the file mname. [[User:AndyMabbett|Andy Mabbett]] 15:23, 6 Mar 2007 (PST)''&lt;br /&gt;
&lt;br /&gt;
=== abbr-design-pattern ===&lt;br /&gt;
*{{OpenIssue}} 2007-04-27 raised by James Craig, Bruce Lawson.&lt;br /&gt;
*# ''Article and discussion about why some instances of the [http://www.webstandards.org/2007/04/27/haccessibility/ abbr-design-pattern may be bad for accessibility].''&lt;br /&gt;
&lt;br /&gt;
=== include-design-pattern ===&lt;br /&gt;
*{{OpenIssue}} 2007-04-28 raised by [[User:PatrickLauke|PatrickLauke]]&lt;br /&gt;
*# although nominally empty, [http://microformats.org/wiki/include-pattern-feedback#Hyperlink_Include_-_issues_for_keyboard_users_.28including_Screen_Reader_users.29 hyperlink includes still present in tab cycle of major browsers], proving to be a problem for keyboard users (including users of screen readers)&lt;br /&gt;
*# [http://microformats.org/wiki/include-pattern-feedback#Test_Results:_JAWS_7.0_with_Firefox_1.5.2FWin JAWS 7.0] testing not conclusive to ascertain compatibility in other major screen readers.&lt;br /&gt;
&lt;br /&gt;
===Accessibility of this wiki===&lt;br /&gt;
*{{OpenIssue}} 2006-11-26 raised by Andy Mabbett&lt;br /&gt;
*# ''Large blocks of italic text are inaccessible to many readers, including people with types of visual impairment, dyslexia, etc. [http://www.intranet.man.ac.uk/accessibility/Disabilities/dyslexia.html], [https://tritonlink.ucsd.edu/portal/site/tritonlink-preview/menuitem.b4448692267a11256ec5e210514b01ca?storyID=20896]. [http://accessites.org/], [http://tlt.psu.edu/suggestions/accessibility/font.html], [http://www.wd4a.co.uk/Guidelines.htm] [[User:AndyMabbett|Andy Mabbett]] 14:33, 26 Nov 2006 (PST)''&lt;br /&gt;
&lt;br /&gt;
*{{OpenIssue}} 2006-12-11 raised by Andy Mabbett&lt;br /&gt;
*# ''[http://microformats.org/wiki?title=page-summary-formats&amp;amp;curid=2572&amp;amp;diff=0&amp;amp;oldid=11214&amp;amp;rcid=20591 Duplicating link text] breaches [http://www.w3.org/TR/WCAG10/wai-pageauth.html#tech-meaningful-links WAI-WCAG 1 guideline 13.1 Clearly identify the target of each link] and is unhelpful to users of assistive technologies and other agents, which provide links in a stand-alone, out-of-context list. [[User:AndyMabbett|Andy Mabbett]] 10:29, 11 Dec 2006 (PST)''&lt;br /&gt;
&lt;br /&gt;
== Template ==&lt;br /&gt;
Please use this format (copy and paste this to the beginning of the list to add your issues):&lt;br /&gt;
* {{OpenIssue}} YYYY-MM-DD raised by [http://yourhomepage.example.com YOURNAME].&lt;br /&gt;
*# ''Issue 1: Here is the first issue I have.''&lt;br /&gt;
*# ''Issue 2: Here is the second issue I have.''&lt;br /&gt;
&lt;br /&gt;
== Resolved Issues ==&lt;br /&gt;
Issues that are resolved but may have outstanding [[to-do]] items.&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== Closed Issues ==&lt;br /&gt;
Resolved issues that have no further actions to take.&lt;br /&gt;
&lt;br /&gt;
*2006-11-26 raised by Andy Mabbett&lt;br /&gt;
*# ''Using emboldening and italics to differentiate types on, e.g. the cheatsheet pages [[hcard-cheatsheet]], is unhelpful to users of assistive technologies, text-only devices, etc. A number, letter or symbol should additionally be used. [[User:AndyMabbett|Andy Mabbett]] 14:33, 26 Nov 2006 (PST)''&lt;br /&gt;
*#*I think the emboldening is fine as it marks up the required properties. The italics are a bit of a problem but keep it simple at the moment. Additional characters can’t be used as they would break the class=&amp;quot;property&amp;quot; template. Colours would be a way but are inaccessible to some users, so there is no real solution to that problem for now. [[User:JulianStahnke|Julian Stahnke]] 22:55, 26 Nov 2006 (GMT)&lt;br /&gt;
*#**&amp;quot;I think the emboldening is fine&amp;quot; - how would you understand emboldening in a text-only browser like Lynx, or in an aural browser? [[User:AndyMabbett|Andy Mabbett]] 15:17, 26 Nov 2006 (PST)&lt;br /&gt;
*#***Ups, I just assumed that it would use strong and em tags. Yeah, well, let’s think about it. [[User:JulianStahnke|Julian Stahnke]] 23:22, 26 Nov 2006 (GMT)&lt;br /&gt;
*#*Of course, one could add that stuff ''after'' the class=&amp;quot;property&amp;quot; thing. That might look a little cluttered though. I’ll consider that for the next revision/next cheat sheet I do. [[User:JulianStahnke|Julian Stahnke]] 22:57, 26 Nov 2006 (GMT)&lt;br /&gt;
*#**All that's needed is:&lt;br /&gt;
::::&amp;lt;nowiki&amp;gt;* class=&amp;quot;vcard&amp;quot; (1)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
::instead of:&lt;br /&gt;
::::&amp;lt;nowiki&amp;gt;* class=&amp;quot;vcard&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
:::[[User:AndyMabbett|Andy Mabbett]] 15:24, 26 Nov 2006 (PST)&lt;br /&gt;
*#*'''Now resolved'''. Thanks to all who helped. [[User:AndyMabbett|Andy Mabbett]] 10:30, 11 Dec 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[accessibility]]&lt;br /&gt;
* [[microformats-issues]]&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16105</id>
		<title>include-pattern-feedback</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16105"/>
		<updated>2007-04-28T18:18:14Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: adding proper attribution to my edits&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Include Pattern Feedback =&lt;br /&gt;
&lt;br /&gt;
Feedback about [[include-pattern]].&lt;br /&gt;
&lt;br /&gt;
== Objects and Browser Behavior ==&lt;br /&gt;
&lt;br /&gt;
Over at Yahoo! Local, we were using the object include pattern for all our [[hreview|hReviews]] on business detail pages and review listings. That is, until we realized that Safari and Internet Explorer both try to embed the entire page with every OBJECT call.  (Firefox correctly recognizes that it's a local object and doesn't reload anything.) &lt;br /&gt;
&lt;br /&gt;
On a page with 20+ reviews, this means a substantial increase in load time and memory consumption. As a result of this (bad) browser behavior, we removed the objects entirely.&lt;br /&gt;
&lt;br /&gt;
Any suggestions for workarounds or modifications to the pattern?&lt;br /&gt;
&lt;br /&gt;
-- AndyBaio 29 Jun 2006&lt;br /&gt;
&lt;br /&gt;
Can you use the hyperlink option with DHMTL/Ajax to perform replacements in advanced browsers? (Simon Willison's &amp;lt;code&amp;gt;[http://simon.incutio.com/archive/2003/03/25/getElementsBySelector getElementsBySelector()]&amp;lt;/code&amp;gt; may be helpful)&lt;br /&gt;
  &amp;lt;a href=&amp;quot;#id&amp;quot; class=&amp;quot;include&amp;quot; title=&amp;quot;&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
with something like:&lt;br /&gt;
  //Works only for linked include-pattern definition at microformats.org&lt;br /&gt;
  //Requires Simon Willison's getElementsBySelector()&lt;br /&gt;
  //  and normal IE workaround for addEventListener()&lt;br /&gt;
  addEventListener( window, 'load', function() {&lt;br /&gt;
    var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;&lt;br /&gt;
    for( var i=0; a=myIncludes[i]; i++ ) if (a.href.charAt(0)=='#') {&lt;br /&gt;
      e = document.getElementsBySelector( a.href )[0].cloneNode( true );&lt;br /&gt;
      a.parentNode.replaceChild( e, a );&lt;br /&gt;
    }&lt;br /&gt;
  })&lt;br /&gt;
--[[User:RichHall|RichHall]] 00:51, 23 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
It seems there is some confusion around this topic. I believe that the included data '''are not supposed to be actually included in the point of inclusion'''. I believe it is only meant to be a hint for the microformats parser; but the inclusion pattern should not affect how the page is rendered. If that is true, let's clear out this page:&lt;br /&gt;
* Remove the DHTML suggestion by Rich Hall.&lt;br /&gt;
* Change the IRC quote between Tantek and Kaply. Replace the quote ''&amp;quot;clone the dom node from the other vcard and replace the object with the corresponding nodes&amp;quot;'' with ''&amp;quot;look for objects in the vcard and check their corresponding nodes in the dom&amp;quot; [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165941|IRC of 2007-01-03]'' or remove the IRC quote completely.&lt;br /&gt;
&lt;br /&gt;
-- [[User:JiriKopsa]] 18 Mar 2007&lt;br /&gt;
&lt;br /&gt;
My hResume page [http://robert.o-rourke.org seen here] caused Safari &amp;lt;ins&amp;gt;2.0&amp;lt;/ins&amp;gt; some major issues. The page was jumping between object elements when a link was hovered eventually causing the browser to crash. You can follow the thread on the [http://www.mail-archive.com/listdad%40webstandardsgroup.org/msg06078.html WSG mail archive].&lt;br /&gt;
&lt;br /&gt;
It seems that while the object element may be more semantically appropriate it &amp;lt;del&amp;gt;is not&amp;lt;/del&amp;gt; &amp;lt;ins&amp;gt;may not be&amp;lt;/ins&amp;gt; usable in lieu of the issues raised in Safari.&lt;br /&gt;
&lt;br /&gt;
--[[User:SanchoTheFat|Robert O'Rourke]] 12:08, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
Which version of Safari?  Please be specific as many Safari OBJECT bugs were fixed in Safari 2.x.&lt;br /&gt;
&lt;br /&gt;
-- [[User:Tantek|Tantek]] 13:39, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
The issues with OBJECT in Internet Explorer &amp;amp; Safari and the lack of a good workaround example are a show stopper for me using this. I am now commenting it out. Hope someone can think of a workaround!&lt;br /&gt;
&lt;br /&gt;
--[[User:WizardIsHungry|Jon Williams]] 10:21, 7 Feb 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - issues for keyboard users (including Screen Reader users) ==&lt;br /&gt;
&lt;br /&gt;
Although invisible in visual user agents, and (according to the JAWS 7.0 test below) not spoken by screen readers (at least not by JAWS 7.0), empty links are still contained in the normal tab cycle. Users navigating via keyboard (or equivalent, e.g. switch access, puff/blow devices, etc) will still need to tab through the empty links (tested in Firefox 2.0, IE 6, IE 7; Opera 9.2 seems to remove empty links from tab cycle).&lt;br /&gt;
&lt;br /&gt;
This can be verified by modifying the test page below, adding a regular link at the end of the 5 variations of empty links. It takes a user 6 tabs to arrive at the &amp;quot;real&amp;quot; link. It would therefore be advisable to rethink the approach, or scrap it completely.&lt;br /&gt;
&lt;br /&gt;
-- [[User:PatrickLauke|Patrick H. Lauke]] 28 Apr 2007&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - Screen Reader Testing ==&lt;br /&gt;
&lt;br /&gt;
Some [http://microformats.org/discuss/mail/microformats-discuss/2006-July/004693.html concerns have been raised] over the implications using empty hyperlinks may have on assistive devices such as screen readers. One concern is that an empty link may be read out, partially read out or result in some other confusing scenario for the user.&lt;br /&gt;
&lt;br /&gt;
In response, a [http://allinthehead.com/demo/include.html test page] consisting of a number of empty hyperlinks in the style suggested by the pattern has been created. A 'good' result is that none of the links be read out.&lt;br /&gt;
&lt;br /&gt;
=== Test Results: JAWS 7.0 with Firefox 1.5/Win ===&lt;br /&gt;
&lt;br /&gt;
Tested by [[User:Phae|Frances Berriman]] 2006-07-21.&lt;br /&gt;
&lt;br /&gt;
* 31 dash include dash Mozilla Firefox&lt;br /&gt;
* Page has no links&lt;br /&gt;
* 31 dash include&lt;br /&gt;
&lt;br /&gt;
Conclusion: the hyperlink include pattern presented no usability issues for this screen reader.&lt;br /&gt;
&lt;br /&gt;
Was keyboard access fully tested (see above)? This test is not conclusive, as JAWS 7.0's behaviour may well differ from other access technology. Further testing with a wider range of readers is strongly recommended. -- [[User:PatrickLauke|Patrick H. Lauke]] 28 Apr 2007&lt;br /&gt;
&lt;br /&gt;
=== Proprietary attribute ===&lt;br /&gt;
HTML tidy on the [http://allinthehead.com/demo/include.html test page] gives:&lt;br /&gt;
:Warning: &amp;lt;a&amp;gt; proprietary attribute &amp;quot;data&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The [http://validator.w3.org/check?verbose=1&amp;amp;uri=http%3A%2F%2Fallinthehead.com%2Fdemo%2Finclude.html W3C validator is similarly unimpressed].&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|AndyMabbett]] 14:22, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==== Use href ====&lt;br /&gt;
To clarify, links on the [http://allinthehead.com/demo/include.html test page] should be changed to use the &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attribute as described at [[include-pattern]] (without &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attributes, the elements probably won't register as hyperlinks, but anchors). Set &amp;lt;code&amp;gt;title=&amp;quot;&amp;quot;&amp;lt;/code&amp;gt; to fix empty link behavior for many assistive devices.  --[[User:RichHall|RichHall]] 23:31, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Test page corrected ====&lt;br /&gt;
2006-10-25: This error has been corrected on the [http://allinthehead.com/demo/include.html test page]. Any tests should probably be re-run in light of this.&lt;br /&gt;
&lt;br /&gt;
== Unclear status ==&lt;br /&gt;
&lt;br /&gt;
It's not clear, either from the main Wiki page or [[include-pattern]], whether this is an agreed standard, a draft, or just a proposal. [[User:AndyMabbett|AndyMabbett]] 03:14, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
* [[include-pattern]] is not its own proposal, draft, or spec.  It is a design pattern, as listed on the [[Main_Page|wiki home page]] that is included in other proposals, drafts. and specs.  ''Recommend for adding to the [[include-pattern-faq]].&lt;br /&gt;
**And that is not clear, either from the main Wiki page or [[include-pattern]]. [[User:AndyMabbett|AndyMabbett]] 16:40, 18 Oct 2006 (PDT)&lt;br /&gt;
***ACCEPTED.  Will further clarify relationship between patterns and formats. [[User:Tantek|Tantek]] 16:48, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==Parsing for include-pattern==&lt;br /&gt;
&lt;br /&gt;
''Note: this issue is obsolete.  On a [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165528 IRC conversation 2007-01-03], Mike Kaply admitted that he figured this out, which is to apply all includes first into the parse tree before looking for any properties. -Tantek''&lt;br /&gt;
&lt;br /&gt;
''To be more specific, what finally occurred to me is that the object pattern is simply about grabbing nodes from another vcard and using them in this vcard. So the implementor responsibility is just to clone the dom node from the other vcard and replace the object with the corresponding nodes. Works great. (of course I also had to clone the entire vcard since I can't manipulate the DOM like that without changing the page) -mkaply''&lt;br /&gt;
&lt;br /&gt;
In an [http://rbach.priv.at/Microformats-IRC/2007-01-02#T205847 IRC discussion] with [http://www.kaply.com/weblog/ Mike Kaply] (author of the [https://addons.mozilla.org/firefox/4106/ Operator] extension for Firefox) we discussed the difficulty of parsing for an [[include-pattern]] in [[hresume|hResume]].  Mike asks:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;I'm really wondering why the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; stuff doesn't point back to the entire vCard. I don't understand why the spec has it point to individual items.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
The problem was thought to be a weakness in the specification, which doesn't specify what part of the data is in the content that is pointed to by the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Currently, to overcome this a parser needs to follow this logic: &lt;br /&gt;
::IF I don't find an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;, look for an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. IF there is an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;, do a &amp;lt;code&amp;gt;getelementbyid&amp;lt;/code&amp;gt; on that &amp;lt;code&amp;gt;ID&amp;lt;/code&amp;gt;, but yet there was nothing about that &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; that said that the content I was looking for in the other card was an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Two things may help in overcoming this difficulty:&lt;br /&gt;
&lt;br /&gt;
# Change the spec to have the include-pattern reference the entire vCard, with the intent that any data not found in this vCard use the other vCard&lt;br /&gt;
# Include the element of the reference, where the class attribute on &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; has &amp;quot;include&amp;quot; plus the element that needs to be included. For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object&lt;br /&gt;
class=&amp;quot;include fn&amp;quot; data=&amp;quot;#vcard-name&amp;quot;&amp;gt;myname&amp;lt;/object&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, I pointed out that using the &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; element to contain the reference makes Microsoft's Internet Explorer throw an error &amp;quot;Your current security settings prohibit ActiveX controls on this page. As a result, the page may not display correctly.&amp;quot; Of course, there is no ActiveX content on an include-pattern. &lt;br /&gt;
&lt;br /&gt;
[[User:Bob Jonkman|Bob Jonkman]] 21:15, 2 Jan 2007 (PST)#&lt;br /&gt;
&lt;br /&gt;
==Concatenating values==&lt;br /&gt;
&lt;br /&gt;
I feel that there should be a way to &amp;quot;include&amp;quot; data from two places, in one microformat property. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryA&amp;quot; class=&amp;quot;summary&amp;quot;&amp;gt;Kidderminster Branch Indoor Meeting&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryB&amp;gt;Janaury&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and later&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryB+#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
would give a summary of:&lt;br /&gt;
&lt;br /&gt;
:'''January Kidderminster Branch Indoor Meeting'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It may even be possible to include extra data:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryC&amp;gt;Fred Smith&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryA+ with +#summaryC&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to give:&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|Andy Mabbett]] 14:33, 8 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Why not use&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;&amp;lt;object data=&amp;quot;#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt; with &amp;lt;object data=&amp;quot;#summaryB&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to build&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:DerrickPallas|Derrick Pallas]] 11:15, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Neat solution! Can anyone say whether current parsers accept this? [[User:AndyMabbett|Andy Mabbett]] 12:18, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Fully disclosure: My XSLT transformer supports this implicitly because it does include-pattern first, then pulls values. My only question would be what to do with nested @class=&amp;quot;value&amp;quot; elements that could result from this.  [[User:DerrickPallas|Derrick Pallas]] 12:35, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
==Related Pages==&lt;br /&gt;
{{include-pattern-related-pages}}&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=User:PatrickLauke&amp;diff=33055</id>
		<title>User:PatrickLauke</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=User:PatrickLauke&amp;diff=33055"/>
		<updated>2007-04-28T18:16:25Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* I feel right at home at http://www.splintered.co.uk&lt;br /&gt;
* My [[Special:Contributions/PatrickLauke|Contributions]]&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16097</id>
		<title>include-pattern-feedback</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16097"/>
		<updated>2007-04-28T18:15:09Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Include Pattern Feedback =&lt;br /&gt;
&lt;br /&gt;
Feedback about [[include-pattern]].&lt;br /&gt;
&lt;br /&gt;
== Objects and Browser Behavior ==&lt;br /&gt;
&lt;br /&gt;
Over at Yahoo! Local, we were using the object include pattern for all our [[hreview|hReviews]] on business detail pages and review listings. That is, until we realized that Safari and Internet Explorer both try to embed the entire page with every OBJECT call.  (Firefox correctly recognizes that it's a local object and doesn't reload anything.) &lt;br /&gt;
&lt;br /&gt;
On a page with 20+ reviews, this means a substantial increase in load time and memory consumption. As a result of this (bad) browser behavior, we removed the objects entirely.&lt;br /&gt;
&lt;br /&gt;
Any suggestions for workarounds or modifications to the pattern?&lt;br /&gt;
&lt;br /&gt;
-- AndyBaio 29 Jun 2006&lt;br /&gt;
&lt;br /&gt;
Can you use the hyperlink option with DHMTL/Ajax to perform replacements in advanced browsers? (Simon Willison's &amp;lt;code&amp;gt;[http://simon.incutio.com/archive/2003/03/25/getElementsBySelector getElementsBySelector()]&amp;lt;/code&amp;gt; may be helpful)&lt;br /&gt;
  &amp;lt;a href=&amp;quot;#id&amp;quot; class=&amp;quot;include&amp;quot; title=&amp;quot;&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
with something like:&lt;br /&gt;
  //Works only for linked include-pattern definition at microformats.org&lt;br /&gt;
  //Requires Simon Willison's getElementsBySelector()&lt;br /&gt;
  //  and normal IE workaround for addEventListener()&lt;br /&gt;
  addEventListener( window, 'load', function() {&lt;br /&gt;
    var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;&lt;br /&gt;
    for( var i=0; a=myIncludes[i]; i++ ) if (a.href.charAt(0)=='#') {&lt;br /&gt;
      e = document.getElementsBySelector( a.href )[0].cloneNode( true );&lt;br /&gt;
      a.parentNode.replaceChild( e, a );&lt;br /&gt;
    }&lt;br /&gt;
  })&lt;br /&gt;
--[[User:RichHall|RichHall]] 00:51, 23 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
It seems there is some confusion around this topic. I believe that the included data '''are not supposed to be actually included in the point of inclusion'''. I believe it is only meant to be a hint for the microformats parser; but the inclusion pattern should not affect how the page is rendered. If that is true, let's clear out this page:&lt;br /&gt;
* Remove the DHTML suggestion by Rich Hall.&lt;br /&gt;
* Change the IRC quote between Tantek and Kaply. Replace the quote ''&amp;quot;clone the dom node from the other vcard and replace the object with the corresponding nodes&amp;quot;'' with ''&amp;quot;look for objects in the vcard and check their corresponding nodes in the dom&amp;quot; [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165941|IRC of 2007-01-03]'' or remove the IRC quote completely.&lt;br /&gt;
&lt;br /&gt;
-- [[User:JiriKopsa]] 18 Mar 2007&lt;br /&gt;
&lt;br /&gt;
My hResume page [http://robert.o-rourke.org seen here] caused Safari &amp;lt;ins&amp;gt;2.0&amp;lt;/ins&amp;gt; some major issues. The page was jumping between object elements when a link was hovered eventually causing the browser to crash. You can follow the thread on the [http://www.mail-archive.com/listdad%40webstandardsgroup.org/msg06078.html WSG mail archive].&lt;br /&gt;
&lt;br /&gt;
It seems that while the object element may be more semantically appropriate it &amp;lt;del&amp;gt;is not&amp;lt;/del&amp;gt; &amp;lt;ins&amp;gt;may not be&amp;lt;/ins&amp;gt; usable in lieu of the issues raised in Safari.&lt;br /&gt;
&lt;br /&gt;
--[[User:SanchoTheFat|Robert O'Rourke]] 12:08, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
Which version of Safari?  Please be specific as many Safari OBJECT bugs were fixed in Safari 2.x.&lt;br /&gt;
&lt;br /&gt;
-- [[User:Tantek|Tantek]] 13:39, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
The issues with OBJECT in Internet Explorer &amp;amp; Safari and the lack of a good workaround example are a show stopper for me using this. I am now commenting it out. Hope someone can think of a workaround!&lt;br /&gt;
&lt;br /&gt;
--[[User:WizardIsHungry|Jon Williams]] 10:21, 7 Feb 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - issues for keyboard users (including Screen Reader users) ==&lt;br /&gt;
&lt;br /&gt;
Although invisible in visual user agents, and (according to the JAWS 7.0 test below) not spoken by screen readers (at least not by JAWS 7.0), empty links are still contained in the normal tab cycle. Users navigating via keyboard (or equivalent, e.g. switch access, puff/blow devices, etc) will still need to tab through the empty links (tested in Firefox 2.0, IE 6, IE 7; Opera 9.2 seems to remove empty links from tab cycle).&lt;br /&gt;
&lt;br /&gt;
This can be verified by modifying the test page below, adding a regular link at the end of the 5 variations of empty links. It takes a user 6 tabs to arrive at the &amp;quot;real&amp;quot; link. It would therefore be advisable to rethink the approach, or scrap it completely.&lt;br /&gt;
&lt;br /&gt;
-- [[User:PatrickLauke]] 28 Apr 2007&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - Screen Reader Testing ==&lt;br /&gt;
&lt;br /&gt;
Some [http://microformats.org/discuss/mail/microformats-discuss/2006-July/004693.html concerns have been raised] over the implications using empty hyperlinks may have on assistive devices such as screen readers. One concern is that an empty link may be read out, partially read out or result in some other confusing scenario for the user.&lt;br /&gt;
&lt;br /&gt;
In response, a [http://allinthehead.com/demo/include.html test page] consisting of a number of empty hyperlinks in the style suggested by the pattern has been created. A 'good' result is that none of the links be read out.&lt;br /&gt;
&lt;br /&gt;
=== Test Results: JAWS 7.0 with Firefox 1.5/Win ===&lt;br /&gt;
&lt;br /&gt;
Tested by [[User:Phae|Frances Berriman]] 2006-07-21.&lt;br /&gt;
&lt;br /&gt;
* 31 dash include dash Mozilla Firefox&lt;br /&gt;
* Page has no links&lt;br /&gt;
* 31 dash include&lt;br /&gt;
&lt;br /&gt;
Conclusion: the hyperlink include pattern presented no usability issues for this screen reader.&lt;br /&gt;
&lt;br /&gt;
Was keyboard access fully tested (see above)? This test is not conclusive, as JAWS 7.0's behaviour may well differ from other access technology. Further testing with a wider range of readers is strongly recommended. -- [[User:PatrickLauke]] 28 Apr 2007&lt;br /&gt;
&lt;br /&gt;
=== Proprietary attribute ===&lt;br /&gt;
HTML tidy on the [http://allinthehead.com/demo/include.html test page] gives:&lt;br /&gt;
:Warning: &amp;lt;a&amp;gt; proprietary attribute &amp;quot;data&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The [http://validator.w3.org/check?verbose=1&amp;amp;uri=http%3A%2F%2Fallinthehead.com%2Fdemo%2Finclude.html W3C validator is similarly unimpressed].&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|AndyMabbett]] 14:22, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==== Use href ====&lt;br /&gt;
To clarify, links on the [http://allinthehead.com/demo/include.html test page] should be changed to use the &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attribute as described at [[include-pattern]] (without &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attributes, the elements probably won't register as hyperlinks, but anchors). Set &amp;lt;code&amp;gt;title=&amp;quot;&amp;quot;&amp;lt;/code&amp;gt; to fix empty link behavior for many assistive devices.  --[[User:RichHall|RichHall]] 23:31, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Test page corrected ====&lt;br /&gt;
2006-10-25: This error has been corrected on the [http://allinthehead.com/demo/include.html test page]. Any tests should probably be re-run in light of this.&lt;br /&gt;
&lt;br /&gt;
== Unclear status ==&lt;br /&gt;
&lt;br /&gt;
It's not clear, either from the main Wiki page or [[include-pattern]], whether this is an agreed standard, a draft, or just a proposal. [[User:AndyMabbett|AndyMabbett]] 03:14, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
* [[include-pattern]] is not its own proposal, draft, or spec.  It is a design pattern, as listed on the [[Main_Page|wiki home page]] that is included in other proposals, drafts. and specs.  ''Recommend for adding to the [[include-pattern-faq]].&lt;br /&gt;
**And that is not clear, either from the main Wiki page or [[include-pattern]]. [[User:AndyMabbett|AndyMabbett]] 16:40, 18 Oct 2006 (PDT)&lt;br /&gt;
***ACCEPTED.  Will further clarify relationship between patterns and formats. [[User:Tantek|Tantek]] 16:48, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==Parsing for include-pattern==&lt;br /&gt;
&lt;br /&gt;
''Note: this issue is obsolete.  On a [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165528 IRC conversation 2007-01-03], Mike Kaply admitted that he figured this out, which is to apply all includes first into the parse tree before looking for any properties. -Tantek''&lt;br /&gt;
&lt;br /&gt;
''To be more specific, what finally occurred to me is that the object pattern is simply about grabbing nodes from another vcard and using them in this vcard. So the implementor responsibility is just to clone the dom node from the other vcard and replace the object with the corresponding nodes. Works great. (of course I also had to clone the entire vcard since I can't manipulate the DOM like that without changing the page) -mkaply''&lt;br /&gt;
&lt;br /&gt;
In an [http://rbach.priv.at/Microformats-IRC/2007-01-02#T205847 IRC discussion] with [http://www.kaply.com/weblog/ Mike Kaply] (author of the [https://addons.mozilla.org/firefox/4106/ Operator] extension for Firefox) we discussed the difficulty of parsing for an [[include-pattern]] in [[hresume|hResume]].  Mike asks:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;I'm really wondering why the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; stuff doesn't point back to the entire vCard. I don't understand why the spec has it point to individual items.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
The problem was thought to be a weakness in the specification, which doesn't specify what part of the data is in the content that is pointed to by the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Currently, to overcome this a parser needs to follow this logic: &lt;br /&gt;
::IF I don't find an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;, look for an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. IF there is an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;, do a &amp;lt;code&amp;gt;getelementbyid&amp;lt;/code&amp;gt; on that &amp;lt;code&amp;gt;ID&amp;lt;/code&amp;gt;, but yet there was nothing about that &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; that said that the content I was looking for in the other card was an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Two things may help in overcoming this difficulty:&lt;br /&gt;
&lt;br /&gt;
# Change the spec to have the include-pattern reference the entire vCard, with the intent that any data not found in this vCard use the other vCard&lt;br /&gt;
# Include the element of the reference, where the class attribute on &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; has &amp;quot;include&amp;quot; plus the element that needs to be included. For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object&lt;br /&gt;
class=&amp;quot;include fn&amp;quot; data=&amp;quot;#vcard-name&amp;quot;&amp;gt;myname&amp;lt;/object&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, I pointed out that using the &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; element to contain the reference makes Microsoft's Internet Explorer throw an error &amp;quot;Your current security settings prohibit ActiveX controls on this page. As a result, the page may not display correctly.&amp;quot; Of course, there is no ActiveX content on an include-pattern. &lt;br /&gt;
&lt;br /&gt;
[[User:Bob Jonkman|Bob Jonkman]] 21:15, 2 Jan 2007 (PST)#&lt;br /&gt;
&lt;br /&gt;
==Concatenating values==&lt;br /&gt;
&lt;br /&gt;
I feel that there should be a way to &amp;quot;include&amp;quot; data from two places, in one microformat property. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryA&amp;quot; class=&amp;quot;summary&amp;quot;&amp;gt;Kidderminster Branch Indoor Meeting&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryB&amp;gt;Janaury&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and later&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryB+#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
would give a summary of:&lt;br /&gt;
&lt;br /&gt;
:'''January Kidderminster Branch Indoor Meeting'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It may even be possible to include extra data:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryC&amp;gt;Fred Smith&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryA+ with +#summaryC&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to give:&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|Andy Mabbett]] 14:33, 8 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Why not use&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;&amp;lt;object data=&amp;quot;#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt; with &amp;lt;object data=&amp;quot;#summaryB&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to build&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:DerrickPallas|Derrick Pallas]] 11:15, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Neat solution! Can anyone say whether current parsers accept this? [[User:AndyMabbett|Andy Mabbett]] 12:18, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Fully disclosure: My XSLT transformer supports this implicitly because it does include-pattern first, then pulls values. My only question would be what to do with nested @class=&amp;quot;value&amp;quot; elements that could result from this.  [[User:DerrickPallas|Derrick Pallas]] 12:35, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
==Related Pages==&lt;br /&gt;
{{include-pattern-related-pages}}&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16096</id>
		<title>include-pattern-feedback</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=include-pattern-feedback&amp;diff=16096"/>
		<updated>2007-04-28T16:07:27Z</updated>

		<summary type="html">&lt;p&gt;PatrickLauke: hyperlink include - keyboard problems&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Include Pattern Feedback =&lt;br /&gt;
&lt;br /&gt;
Feedback about [[include-pattern]].&lt;br /&gt;
&lt;br /&gt;
== Objects and Browser Behavior ==&lt;br /&gt;
&lt;br /&gt;
Over at Yahoo! Local, we were using the object include pattern for all our [[hreview|hReviews]] on business detail pages and review listings. That is, until we realized that Safari and Internet Explorer both try to embed the entire page with every OBJECT call.  (Firefox correctly recognizes that it's a local object and doesn't reload anything.) &lt;br /&gt;
&lt;br /&gt;
On a page with 20+ reviews, this means a substantial increase in load time and memory consumption. As a result of this (bad) browser behavior, we removed the objects entirely.&lt;br /&gt;
&lt;br /&gt;
Any suggestions for workarounds or modifications to the pattern?&lt;br /&gt;
&lt;br /&gt;
-- AndyBaio 29 Jun 2006&lt;br /&gt;
&lt;br /&gt;
Can you use the hyperlink option with DHMTL/Ajax to perform replacements in advanced browsers? (Simon Willison's &amp;lt;code&amp;gt;[http://simon.incutio.com/archive/2003/03/25/getElementsBySelector getElementsBySelector()]&amp;lt;/code&amp;gt; may be helpful)&lt;br /&gt;
  &amp;lt;a href=&amp;quot;#id&amp;quot; class=&amp;quot;include&amp;quot; title=&amp;quot;&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
with something like:&lt;br /&gt;
  //Works only for linked include-pattern definition at microformats.org&lt;br /&gt;
  //Requires Simon Willison's getElementsBySelector()&lt;br /&gt;
  //  and normal IE workaround for addEventListener()&lt;br /&gt;
  addEventListener( window, 'load', function() {&lt;br /&gt;
    var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;&lt;br /&gt;
    for( var i=0; a=myIncludes[i]; i++ ) if (a.href.charAt(0)=='#') {&lt;br /&gt;
      e = document.getElementsBySelector( a.href )[0].cloneNode( true );&lt;br /&gt;
      a.parentNode.replaceChild( e, a );&lt;br /&gt;
    }&lt;br /&gt;
  })&lt;br /&gt;
--[[User:RichHall|RichHall]] 00:51, 23 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
It seems there is some confusion around this topic. I believe that the included data '''are not supposed to be actually included in the point of inclusion'''. I believe it is only meant to be a hint for the microformats parser; but the inclusion pattern should not affect how the page is rendered. If that is true, let's clear out this page:&lt;br /&gt;
* Remove the DHTML suggestion by Rich Hall.&lt;br /&gt;
* Change the IRC quote between Tantek and Kaply. Replace the quote ''&amp;quot;clone the dom node from the other vcard and replace the object with the corresponding nodes&amp;quot;'' with ''&amp;quot;look for objects in the vcard and check their corresponding nodes in the dom&amp;quot; [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165941|IRC of 2007-01-03]'' or remove the IRC quote completely.&lt;br /&gt;
&lt;br /&gt;
-- [[User:JiriKopsa]] 18 Mar 2007&lt;br /&gt;
&lt;br /&gt;
My hResume page [http://robert.o-rourke.org seen here] caused Safari &amp;lt;ins&amp;gt;2.0&amp;lt;/ins&amp;gt; some major issues. The page was jumping between object elements when a link was hovered eventually causing the browser to crash. You can follow the thread on the [http://www.mail-archive.com/listdad%40webstandardsgroup.org/msg06078.html WSG mail archive].&lt;br /&gt;
&lt;br /&gt;
It seems that while the object element may be more semantically appropriate it &amp;lt;del&amp;gt;is not&amp;lt;/del&amp;gt; &amp;lt;ins&amp;gt;may not be&amp;lt;/ins&amp;gt; usable in lieu of the issues raised in Safari.&lt;br /&gt;
&lt;br /&gt;
--[[User:SanchoTheFat|Robert O'Rourke]] 12:08, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
Which version of Safari?  Please be specific as many Safari OBJECT bugs were fixed in Safari 2.x.&lt;br /&gt;
&lt;br /&gt;
-- [[User:Tantek|Tantek]] 13:39, 3 Nov 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
The issues with OBJECT in Internet Explorer &amp;amp; Safari and the lack of a good workaround example are a show stopper for me using this. I am now commenting it out. Hope someone can think of a workaround!&lt;br /&gt;
&lt;br /&gt;
--[[User:WizardIsHungry|Jon Williams]] 10:21, 7 Feb 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - issues for keyboard users (including Screen Reader users) ==&lt;br /&gt;
&lt;br /&gt;
Although invisible in visual user agents, and (according to the JAWS 7.0 test below) not spoken by screen readers (at least not by JAWS 7.0), empty links are still contained in the normal tab cycle. Users navigating via keyboard (or equivalent, e.g. switch access, puff/blow devices, etc) will still need to tab through the empty links (tested in Firefox 2.0, IE 6, IE 7; Opera 9.2 seems to remove empty links from tab cycle).&lt;br /&gt;
&lt;br /&gt;
This can be verified by modifying the test page below, adding a regular link at the end of the 5 variations of empty links. It takes a user 6 tabs to arrive at the &amp;quot;real&amp;quot; link. It would therefore be advisable to rethink the approach, or scrap it completely.&lt;br /&gt;
&lt;br /&gt;
== Hyperlink Include - Screen Reader Testing ==&lt;br /&gt;
&lt;br /&gt;
Some [http://microformats.org/discuss/mail/microformats-discuss/2006-July/004693.html concerns have been raised] over the implications using empty hyperlinks may have on assistive devices such as screen readers. One concern is that an empty link may be read out, partially read out or result in some other confusing scenario for the user.&lt;br /&gt;
&lt;br /&gt;
In response, a [http://allinthehead.com/demo/include.html test page] consisting of a number of empty hyperlinks in the style suggested by the pattern has been created. A 'good' result is that none of the links be read out.&lt;br /&gt;
&lt;br /&gt;
=== Test Results: JAWS 7.0 with Firefox 1.5/Win ===&lt;br /&gt;
&lt;br /&gt;
Tested by [[User:Phae|Frances Berriman]] 2006-07-21.&lt;br /&gt;
&lt;br /&gt;
* 31 dash include dash Mozilla Firefox&lt;br /&gt;
* Page has no links&lt;br /&gt;
* 31 dash include&lt;br /&gt;
&lt;br /&gt;
Conclusion: the hyperlink include pattern presented no usability issues for this screen reader.&lt;br /&gt;
&lt;br /&gt;
Further testing with a wider range of readers is strongly recommended.&lt;br /&gt;
&lt;br /&gt;
=== Proprietary attribute ===&lt;br /&gt;
HTML tidy on the [http://allinthehead.com/demo/include.html test page] gives:&lt;br /&gt;
:Warning: &amp;lt;a&amp;gt; proprietary attribute &amp;quot;data&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The [http://validator.w3.org/check?verbose=1&amp;amp;uri=http%3A%2F%2Fallinthehead.com%2Fdemo%2Finclude.html W3C validator is similarly unimpressed].&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|AndyMabbett]] 14:22, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==== Use href ====&lt;br /&gt;
To clarify, links on the [http://allinthehead.com/demo/include.html test page] should be changed to use the &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attribute as described at [[include-pattern]] (without &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; attributes, the elements probably won't register as hyperlinks, but anchors). Set &amp;lt;code&amp;gt;title=&amp;quot;&amp;quot;&amp;lt;/code&amp;gt; to fix empty link behavior for many assistive devices.  --[[User:RichHall|RichHall]] 23:31, 22 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Test page corrected ====&lt;br /&gt;
2006-10-25: This error has been corrected on the [http://allinthehead.com/demo/include.html test page]. Any tests should probably be re-run in light of this.&lt;br /&gt;
&lt;br /&gt;
== Unclear status ==&lt;br /&gt;
&lt;br /&gt;
It's not clear, either from the main Wiki page or [[include-pattern]], whether this is an agreed standard, a draft, or just a proposal. [[User:AndyMabbett|AndyMabbett]] 03:14, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
* [[include-pattern]] is not its own proposal, draft, or spec.  It is a design pattern, as listed on the [[Main_Page|wiki home page]] that is included in other proposals, drafts. and specs.  ''Recommend for adding to the [[include-pattern-faq]].&lt;br /&gt;
**And that is not clear, either from the main Wiki page or [[include-pattern]]. [[User:AndyMabbett|AndyMabbett]] 16:40, 18 Oct 2006 (PDT)&lt;br /&gt;
***ACCEPTED.  Will further clarify relationship between patterns and formats. [[User:Tantek|Tantek]] 16:48, 18 Oct 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
==Parsing for include-pattern==&lt;br /&gt;
&lt;br /&gt;
''Note: this issue is obsolete.  On a [http://rbach.priv.at/Microformats-IRC/2007-01-03#T165528 IRC conversation 2007-01-03], Mike Kaply admitted that he figured this out, which is to apply all includes first into the parse tree before looking for any properties. -Tantek''&lt;br /&gt;
&lt;br /&gt;
''To be more specific, what finally occurred to me is that the object pattern is simply about grabbing nodes from another vcard and using them in this vcard. So the implementor responsibility is just to clone the dom node from the other vcard and replace the object with the corresponding nodes. Works great. (of course I also had to clone the entire vcard since I can't manipulate the DOM like that without changing the page) -mkaply''&lt;br /&gt;
&lt;br /&gt;
In an [http://rbach.priv.at/Microformats-IRC/2007-01-02#T205847 IRC discussion] with [http://www.kaply.com/weblog/ Mike Kaply] (author of the [https://addons.mozilla.org/firefox/4106/ Operator] extension for Firefox) we discussed the difficulty of parsing for an [[include-pattern]] in [[hresume|hResume]].  Mike asks:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;I'm really wondering why the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; stuff doesn't point back to the entire vCard. I don't understand why the spec has it point to individual items.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
The problem was thought to be a weakness in the specification, which doesn't specify what part of the data is in the content that is pointed to by the &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Currently, to overcome this a parser needs to follow this logic: &lt;br /&gt;
::IF I don't find an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;, look for an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;. IF there is an &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;, do a &amp;lt;code&amp;gt;getelementbyid&amp;lt;/code&amp;gt; on that &amp;lt;code&amp;gt;ID&amp;lt;/code&amp;gt;, but yet there was nothing about that &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; that said that the content I was looking for in the other card was an &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Two things may help in overcoming this difficulty:&lt;br /&gt;
&lt;br /&gt;
# Change the spec to have the include-pattern reference the entire vCard, with the intent that any data not found in this vCard use the other vCard&lt;br /&gt;
# Include the element of the reference, where the class attribute on &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; has &amp;quot;include&amp;quot; plus the element that needs to be included. For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object&lt;br /&gt;
class=&amp;quot;include fn&amp;quot; data=&amp;quot;#vcard-name&amp;quot;&amp;gt;myname&amp;lt;/object&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additionally, I pointed out that using the &amp;lt;code&amp;gt;&amp;lt;object&amp;gt;&amp;lt;/code&amp;gt; element to contain the reference makes Microsoft's Internet Explorer throw an error &amp;quot;Your current security settings prohibit ActiveX controls on this page. As a result, the page may not display correctly.&amp;quot; Of course, there is no ActiveX content on an include-pattern. &lt;br /&gt;
&lt;br /&gt;
[[User:Bob Jonkman|Bob Jonkman]] 21:15, 2 Jan 2007 (PST)#&lt;br /&gt;
&lt;br /&gt;
==Concatenating values==&lt;br /&gt;
&lt;br /&gt;
I feel that there should be a way to &amp;quot;include&amp;quot; data from two places, in one microformat property. For instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryA&amp;quot; class=&amp;quot;summary&amp;quot;&amp;gt;Kidderminster Branch Indoor Meeting&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryB&amp;gt;Janaury&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and later&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryB+#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
would give a summary of:&lt;br /&gt;
&lt;br /&gt;
:'''January Kidderminster Branch Indoor Meeting'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It may even be possible to include extra data:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span id=&amp;quot;summaryC&amp;gt;Fred Smith&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;object data=&amp;quot;#summaryA+ with +#summaryC&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to give:&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:AndyMabbett|Andy Mabbett]] 14:33, 8 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Why not use&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;&amp;lt;object data=&amp;quot;#summaryA&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt; with &amp;lt;object data=&amp;quot;#summaryB&amp;quot; class=&amp;quot;include&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
to build&lt;br /&gt;
&lt;br /&gt;
:'''Kidderminster Branch Indoor Meeting with Fred Smith'''&lt;br /&gt;
&lt;br /&gt;
[[User:DerrickPallas|Derrick Pallas]] 11:15, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Neat solution! Can anyone say whether current parsers accept this? [[User:AndyMabbett|Andy Mabbett]] 12:18, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Fully disclosure: My XSLT transformer supports this implicitly because it does include-pattern first, then pulls values. My only question would be what to do with nested @class=&amp;quot;value&amp;quot; elements that could result from this.  [[User:DerrickPallas|Derrick Pallas]] 12:35, 31 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
==Related Pages==&lt;br /&gt;
{{include-pattern-related-pages}}&lt;/div&gt;</summary>
		<author><name>PatrickLauke</name></author>
	</entry>
</feed>