[1] [[SGML]] [[一般体系]]の[[要素データ属性]] ([CODE(SGML)[[[dafe]]]]) [[属性形式]]の[DFN[[RUBYB[要素データ属性改名子][data attributes for elements renamer]] ([CODE(SGMLa)[[[NotNames]]]]) 属性]]は、 [[体系記法属性]]名から[[クライアント属性]]名 [WEAK[(または要素の[[内容]])]] の写像を定義します。 [2] 仕様書: - [[ISO/IEC 10744]]:1997 --[CSECTION[A.5.3.1 Data control attributes]] [3] :所属[[体系形式]]:[[要素データ属性]] ([CODE(SGMLa)[[[dafe]]]]) :[[規格参照具象構文名]]:[CODE(SGMLa)[[[NotNames]]]] :[[完全名]]:[RUBYB[要素データ属性改名子][data attributes for elements renamer]] :[[属性型]]:[CODE(SGML)[[[CDATA]]]] :[[字句型]]:[CODE(SGML)[(([[NAME]], ([[ATTORCON]] | "#[[DEFAULT]]"), ("#[[MAPTOKEN]]", [[NMTOKEN]], NMTOKEN)*) | ("#[[NOTCONT]]", [[ATTNAME]]))*]] (ある [CODE(SGML)[ATTNAME]], [CODE(SGML)[NAME]], [CODE(SGML)[#CONTENT]], [CODE(SGML)[#NOTCONT]] は1回のみ使用可, 前はデータ属性名, 後は要素属性名) :[[既定値]]:改名なし [5] 属性値は基本的に体系記法属性名とクライアント属性名の組です。 後者が [CODE(SGML)[#DEFAULT]] の場合、体系的属性は[[体系的属性値]]固定となり、 クライアント要素側で指定することはできなくなります。 前者を [CODE(SGML)[#NOTCONT]] にした場合、指定した記法のデータをクライアント文書側で要素の内容としてではなく、 属性値として記述できます。 後者を [CODE(SGML)[#CONTENT]] にすると、体系のデータ属性をクライアント文書の要素の内容として記述できます。 [CODE(SGML)[#CONTENT]] への写像が指定された場合はこちらも指定しなければなりません。 [CODE(SGML)[#CONTENT]] への写像が指定されていない場合は、 要素の内容は記法の対象外になります。 [CODE(SGML)[#MAPTOKEN]] の後に[[字句]]を2つ続けることができます。 前者は体系定義の字句で、後者はそれの別の名前です。 2番目の字句がクライアント文書に使われていれば、 体系側の1番目の字句とみなされます。 なお、適用される体系側の属性が [CODE(SGML)[[[CDATA]]]] の場合は、置換の前に[[字句化]]が行われます。 [4] この属性は、[[体系属性改名子]]属性と似ています。 構文的にも意味的にもほとんど同じで、対象が体系とクライアント文書ではなく、 記法データ属性と要素属性であることが違うだけです。