XMLTemplate

XMLTemplate["string"]

TemplateApply等の関数を用いて適用される,XMLテンプレートを表すTemplateObjectオブジェクトを与える.

XMLTemplate[src]

File[]URL[]あるいはCloudObject[]を文字列テンプレートのソースとして使う.

XMLTemplate[form,args]

クラウド配備あるいは他の評価に適した引数のあるTemplateObjectを返す.

詳細とオプション

  • XMLでは,次の基本タグを使うことができる.
  • <wolfram:slot>TemplateSlot
    <wolfram:expr>TemplateExpression
    <wolfram:if>TemplateIf
    <wolfram:which>複数のTemplateIf
    <wolfram:sequence>TemplateSequence
    <wolfram:with>TemplateWith
    <wolfram:template>TemplateObject
    <wolfram:get>Get
    <wolfram:comment>無視されるべきコメント
    <wolfram:verbatim>逐語的なXML
  • <wolfram:slot inserter=f>は,TemplateSlotにおけるオプション設定のInsertionFunction->f を指定する.
  • <wolfram:expr inserter=f>は,TemplateExpressionにおけるオプション設定InsertionFunction->f を指定する.
  • <wolfram:slot/>TemplateSlot[1]に等しい.
  • <wolfram:if test=test>body</wolfram:if>は,test を評価した結果がTrueのときは body を描画するように指定する.
  • <wolfram:which> ... </wolfram:which>は,任意の数の<wolfram:if ...> ... </wolfram:if>と,追加的な単一の<wolfram:else> ... </wolfram:else>を包み込むことができる.「if」検定は連続的に評価される.最初にTrueになったものが「which」の最終的な形になる.
  • <wolfram:sequence attr>body</wolfram:sequence>は,次の属性をサポートする.
  • values(必須)それについて body を繰り返すリストあるいは連想
    slot1body に渡されるテンプレートスロットの名前
    index2body に渡される位置指標の名前
    delimitersSequence[]繰り返された body の間に挿入されるデリミタ
    defaultSequence[]値がない場合に使用する形式
    inserter InheritedInsertionFunctionオプションの設定値
  • <wolfram:with key1=val1 key2=val2 ...>body</wolfram:with>は,テンプレートが適用された場合に,bodykeyivaliで置換するように指定する.
  • <wolfram:template attr>body</wolfram:template>は,body とともに使用されるTemplateObjectについてのオプションを定義する,次の属性をサポートする.
  • inserterInheritedInsertionFunctionオプションの設定
    combinerInheritedCombinerFunctionオプションの設定
  • <wolfram:get attr/> は次の属性をサポートする.
  • path(必須)ファイルまたはURLパス
    inserterInheritedInsertionFunctionオプションの設定
    combinerInheritedCombinerFunctionオプションの設定
  • XMLTemplateのオプション
  • InsertionFunction"HTMLFragment"式を挿入する前に適用する関数あるいは形式
    CombinerFunctionStringJoin結果を返す前に断片を繋ぐために適用する関数
  • XMLTemplate[File[]]およびXMLTemplate[URL[]]では,ソースファイル等のコンテンツは文字列としてインポートされる.

例題

すべて開くすべて閉じる

  (2)

aおよびbという名前のスロットがあるXMLテンプレートを適用する:

TemplateApplyを使った同等の形式:

XMLTemplateStringTemplateと同じシンタックスをサポートする.<**>内の式はテンプレートが適用されたときに評価される:

テンプレートのスロットをテンプレート文字列内の式と同様に含める:

XMLタグを使った同等のシンタックス:

文字列テンプレートのシンタックスは,XML属性の中にデータを入れたい場合に便利である:

スコープ  (4)

Fileが完全にサポートされている:

テンプレートはWolfram Cloudに置くことができる:

XMLTemplateの第2引数を使ってデータとテンプレートを関連付けることができる:

URLを使ってテンプレートを取り出すことができる:

オプション  (2)

InsertionFunction  (1)

挿入子の属性は,関数あるいは$ExportFormats間で選ばれた文字列でよい:

上記のコードは以下に等しい:

InsertionFunctionは何でもよい:

CombinerFunction  (1)

結合関数もまた形式を取ることができる:

結合関数は何でもよい:

アプリケーション  (9)

<wolfram:slot id='...' inserter='...'>...</wolfram:slot>

簡単な用法:

デフォルトおよび挿入子を使う:

<wolfram:expr inserter='...'>...</wolfram:expr>

簡単な用法:

データおよび挿入子を使う:

<wolfram:if test='...'>...</wolfram:if>

検定は任意の式でよい:

<wolfram:which><wolfram:if test='...'>...</wolfram:if></wolfram:which>

「which」を使って複数の「else if」節をネストさせる:

<wolfram:sequence values='...' ...>...</wolfram:sequence>

基本的な用法:

名前付きの変数を使う:

挿入関数を使う:

デフォルト値(StringTemplate)を使う:

デリミタを使う:

<wolfram:with key$1='val$1' ...>...</wolfram:with>

<wolfram:get path='...'><wolfram:slot id='...'/>...</wolfram:get>

「パス」からのテンプレートを含める.「パス」はStringTemplateである:

出力のために挿入関数と結合関数を変える:

テンプレートを拡張する.HTMLページのためのテンプレートの例:

「get」を使ってスロットを無効にする:

<wolfram:template ...>...</wolfram:template>

「テンプレート」を使って挿入関数と結合関数を無効にする断片を作る:

テンプレートを結合し,外部テンプレートを編集する:

<wolfram:comment>...</wolfram:comment>

<wolfram:verbatim>...</wolfram:verbatim>

「verbatim」を使って構文解析を避ける.追加的な挿入関数を使うことができる:

特性と関係  (1)

XMLTemplateを評価するとTemplateObjectになる:

考えられる問題  (1)

XMLTemplateの第2引数中のデータはTemplateApply内の引数よりも優先される:

おもしろい例題  (1)

XMLTemplateをクラウドに配備することができる.URLを開くと,毎回TemplateApplyがテンプレートを描画する:

Wolfram Research (2014), XMLTemplate, Wolfram言語関数, https://reference.wolfram.com/language/ref/XMLTemplate.html.

テキスト

Wolfram Research (2014), XMLTemplate, Wolfram言語関数, https://reference.wolfram.com/language/ref/XMLTemplate.html.

CMS

Wolfram Language. 2014. "XMLTemplate." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/XMLTemplate.html.

APA

Wolfram Language. (2014). XMLTemplate. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/XMLTemplate.html

BibTeX

@misc{reference.wolfram_2024_xmltemplate, author="Wolfram Research", title="{XMLTemplate}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/XMLTemplate.html}", note=[Accessed: 15-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_xmltemplate, organization={Wolfram Research}, title={XMLTemplate}, year={2014}, url={https://reference.wolfram.com/language/ref/XMLTemplate.html}, note=[Accessed: 15-November-2024 ]}