Atomでは、xhtmlの要素も使える。
それにはまずxhtmlの語彙を指定する。
---
namespace xhtml = "http://www.w3.org/1999/xhtml"
---
これで語彙は使えるようになるが、その語彙が母体たるAtomの中でどのよ
うな構造の一部となるかは、AtomのSchemaの中で指定しなければならない。
それにはまず、xhtml:*の形の要素の定義が必要。
---
# XHTML
anyXHTML = element xhtml:* {
(attribute * { text }
| text
| anyXHTML)*
}
xhtmlDiv = element xhtml:div {
(attribute * { text }
| text
| anyXHTML)*
}
---
それを母体の要素でどのように使えるかは次のように定義。
---
atomXHTMLTextConstruct =
atomCommonAttributes,
attribute type { "xhtml" },
xhtmlDiv
atomTextConstruct = atomPlainTextConstruct | atomXHTMLTextConstruct
atomTitle = element atom:title { atomTextConstruct }
---
これをatom上で利用するには次のよう。
---
...
<title type="xhtml" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<xhtml:div>
Less: <xhtml:em> < </xhtml:em>
</xhtml:div>
</title>
...
<summary type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
This is <b>XHTML</b> content.
</div>
</summary>
...
<summary type="xhtml">
<xh:div xmlns:xh="http://www.w3.org/1999/xhtml">
This is <xh:b>XHTML</xh:b> content.
</xh:div>
</summary>
...
---
ふむ。理解に間違いはなさそうだ。
それにしても、
anyXHTML = element xhtml:* ...
と書けるRelax NGって便利だなぁ。
なかなかCLに辿りつけないが、こつこつ。
0 件のコメント:
コメントを投稿