* [CODE(HTMLa)@en[repeat]] 属性 (HTML)

[1] [[HTML]] の [DFN[[CODE(HTMLa)@en[repeat]] [[属性]]]]は、
その[[要素]]が[[反復雛形]]や[[反復ブロック]]であることを示します。

[2]
:状態:[[WHATWG]] [[WD]]
:[[要素型]]:任意
:[[属性名]]:[CODE(HTMLa)@en[[[repeat]]]]
([Q@en[repeat]] ([Q[反復]]) より)
:[[属性値]]:[CODE(HTML)@en[template]] または[[整数]] (>>4)
:[[既定値]]:(反復なし) (>>5)

[3] 仕様書:
- [[Web Forms 2.0]]
-- [CSECTION@en[3.2. Definitions]]
<IW:WF2:"#definitions">
-- <http://www.whatwg.org/specs/web-forms/current-work/#repetitiontype>

** 名前空間

[6] [[HTML]] [[名前空間]]に属する[[要素]]では、
[[名前空間URI]] は [CODE(XML)@en[[[null]]]]
と[['''しなければなりません''']]。
それ以外の[[要素]]では、
[[名前空間URI]] は
[CODE(URI)@en[[[http://www.w3.org/1999/xhtml]]]]
と[['''しなければなりません''']]。
[SRC@en[WF2 3.2]]

[[#comment]]


** 属性値

[4] '''属性値'''
- [7] '''[CODE(HTML)@en[[[template]]]]''':
その[[要素]]は[[反復雛形]]です。
[SRC@en[WF2 3.2.1]]
- [8] '''[[整数]]''':
その[[要素]]は[[反復ブロック]]です。
([[属性値]]は省略可能な [CODE(charname)@en[[[HYPHEN-MINUS]]]]
と、1つ以上の[[数字]]です。)
[SRC@en[WF2 3.2.2]]
- [13] [[利用者エージェント]]は、
[[認識]]できない[[属性値]]を[[無視]][['''しなければなりません''']]。
[SRC@en[WF2 3.2.1]]

[5] '''既定値'''

この[[属性]]は省略可能です。省略された[[要素]]は、
[[反復雛形]]でも[[反復ブロック]]でも''ありません''。


* 歴史


[9] この[[属性]]は [[Web Forms 2.0]]
で導入されました。

[19] [[WF2]] 案には一時 [CODE[repeat]] 要素もありました。 [SRC[>>20]]
両者は深く関連していますが、異なるものです。

[REFS[

-
[20] [CITE@en-GB-hixie[Web Forms 2.0]], [TIME[2004-02-04T14:03:53.000Z]], [TIME[2024-09-01T03:59:27.538Z]] <http://www.hixie.ch/specs/html/forms/web-forms-2#repeat0>

]REFS]


[FIG(data)[ [216] [[HTML要素概説]]

:[F[要素名]]:[CODE[repeat]]
:日付:[TIME[2004-02-05]]
:説明:
[TIME[2004-02-05]]、
[CITE[Web Forms 2.0]]
に
[CODE[repeat]]
が追加された。
[[反復雛形]]機能の一部を構成する。
:出典:
[REFS[

-
[CITE@en-GB-hixie[Web Forms 2.0]], 
[DATA(.author)[[[Opera Software]]]],
[[Ian Hickson]],
[DATA(.status)[[[Working Draft]]]],
[TIME(.published)[5 February 2004][2004-02-05]],
[TIME[2004-02-04T14:03:53.000Z]], [TIME[2024-09-01T03:57:55.828Z]] <http://www.hixie.ch/specs/html/forms/web-forms-2>

]REFS]

]FIG]


** 例

[10] '''反復雛形の例''' [SRC@en[WF2 3.2.1]]
[PRE(HTML example code)[
<div repeat="template"/>
]PRE]

[11] '''正しくない例''' [SRC@en[WF2 3.2.1]]
[PRE(HTML invalid example code)[
<div repeat="template 3"/>
]PRE]

[CODE(HTMLa)@en[[[repeat]]]]
[[属性値]]の構文が正しくありません。

[12] '''正しくない例''' [SRC@en[WF2 3.2.1]]
[PRE(HTML invalid example code)[
<div repeat=" template"/>
]PRE]

[CODE(HTMLa)@en[[[repeat]]]]
[[属性値]]の構文が正しくありません。
[[空白]]は無視''されません''。

[14] '''名前空間が正しくない例'''
[PRE(XML invalid example code)[
<p xmlns="http://www.w3.org/1999/xhtml"
   xmlns:html="http://www.w3.org/1999/xhtml"
   html:repeat="template"/>
]PRE]

[CODE(HTMLe)@en[[QN[[[p]]] [http://www.w3.org/1999/xhtml]]]]
は [[HTML]] の[[名前空間]]に属する[[要素]]なので、
[[大域属性]]としての 
[CODE(XMLa)@en[[QN[html:[[repeat]]] [http://www.w3.org/1999/xhtml]]]]
[[属性]]ではなく、[[名前空間]]に属しない
[CODE(HTMLa)@en[[[repeat]]]]
[[属性]]を使用しなければなりません。

[15] '''名前空間が正しくない例'''
[PRE(XML invalid example code)[
<circle xmlns="http://www.w3.org/2000/svg"
    repeat="template"/>
]PRE]

[[HTML]] ''以外''の[[名前空間]]に属する[[要素]]では、
[[名前空間]]に属しない [CODE(HTMLa)@en[[[repeat]]]]
[[属性]]ではなく、
[[大域属性]]としての
[CODE(XMLa)@en[[QN[html:[[repeat]]] [http://www.w3.org/1999/xhtml]]]]
[[属性]]を使用しなければなりません。

[[#comment]]


** メモ

[16]
[[OSML]] で[[雛形]]として埋め込む [[HTML]] 片の [[HTML]] [[要素]]には
[CODE(HTMLa)@en[[[repeat]]]] [[属性]]を指定できるようです。
[[Web Forms 2.0]] とは互換性がなさそうです ([[鯖]]側で処理されます)。

;; 同様の[[属性]]として [CODE(HTMLa)@en[[[if]]]] というのもあるみたいです。

([[名無しさん]])


[[#comment]]


* メモ

[17] [CITE[Data binding overview - Polymer]]
( ([TIME[2014-08-05 02:00:57 +09:00]] 版))
<http://www.polymer-project.org/docs/polymer/databinding.html>

[18] [CITE[IRC logs: freenode / #whatwg / 20140804]]
( ([TIME[2014-08-05 10:54:10 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20140804#l-746>