Skip Navigation
Expand
Oracle B2C ServiceでのドキュメントのHTMLソースへの変更
Answer ID 7660   |   Last Review Date 03/11/2019

ドキュメントのHTMLソースが、保存したり、ソース・モードとデザイン・モードで切り替えたりした場合に、再フォーマットされるのはなぜですか。

環境:

HTML Document Editor
Answers, Mailings, Documents, All versions

解決策:

HTMLの書式設定が変更されることがある理由は、Tidyというユーティリティの使用のためです。Oracle B2C Serviceアプリケーションで、Tidyを無効にすることはできません。

Oracle B2C Serviceのドキュメントは、HTML/XML(「拡張マークアップ言語」)ハイブリッドであるXHTMLとして保存されます。XHTMLドキュメントのHTML機能により、標準マークアップ・タグを使用して、エンドユーザー・ブラウザにドキュメントをどのように表示するかを指定できます。そのXML機能により、Oracle B2C Service Outreach and Feedbackがそれらのほとんどの機能とユーティリティを抽出できるカスタム・タグを定義できます。これらのドキュメントを高い信頼性で保存し、処理することは、プレーンHTMLを使用することとは対照的に、XHTMLの方がはるかに効率的です。

XHTMLドキュメントは、XMLドキュメントとして、HTMLドキュメントより厳格な一連の要件を満たす必要があります。ドキュメントを確実にXML準拠にする方法は、HTMLをクリーン・アップし、XHTMLへの変換を提供する事実上の業界標準ソフトウェア・ツールであるTidyユーティリティ経由で、それらを実行することです。HTMLからXHTMLへの変換処理でTidyが行う変更の一部のリストは、次のようになります。

1.DOCTYPE宣言を追加します。これは、ドキュメントが使用するXHTML仕様を示します。Strict、Transitional、Framesetの3つのXHTML仕様を使用できます。Oracle B2C ServiceのHTMLエディタから新しいドキュメントを作成した場合、DOCTYPEのデフォルトは、XHTML Strictに設定されます。HTMLがHTMLエディタのソース・モードにコピーされて、貼り付けられた場合、DOCTYPEのデフォルトは、XHTML Transitionalに設定されます。Oracle B2C Serviceでは、Frameset DOCTYPEは使われません。

2.必要に応じて、タグが正しく閉じられていることを確認します。たとえば、新しい段落が<p>で開始している場合、</p>で閉じられている必要があります。Webブラウザは終了タグの省略を許可し、ドキュメントの作成者の意図に関して、最も適切な推測をします。一方、XMLでは、すべてのタグが閉じられていることを必要とすることによって、より厳格です。

3.すべてのタグを強制的に小文字にします。HTMLでは、大文字と小文字の区別がされず、<p>と<P>が同じタグとして扱われます。また、XMLでは、大文字と小文字が区別され、<p>タグと</P>を一緒に使用できません。

Oracle B2C Serviceがドキュメントに対して、Tidyを実行するときは3回あります。ユーザーがデザイン・モードからソース・モードに切り替えたとき(またはその逆)、ドキュメントが保存されたとき、解析エラーが検出されたときです。解析エラーの場合、エディタは、問題を強調表示したダイアログ・ウィンドウを起動します。

単に「閉じる」ボタンをクリックすると、ダイアログが消去されます。解析が成功するように、「修正」ボタンをクリックすると、XHTMLソース・コードに対してTidyが実行されます。この場合、ドキュメントを修正すると、開始の<p>を正しく閉じるように、エラーのある</P>タグが</p>に変更されます。

Tidyがドキュメントを修正できない場合があります。たとえば、Tidyは、一般にカスタム・タグをサポートする名前空間宣言を挿入できません。Oracle B2C Serviceカスタム・タグの名前には「rn:」のプレフィックスが付けられ、次の名前空間宣言によってサポートされます。
xmlns:rn="http://schemas.rightnow.com/crm/document”
この宣言は、<html>要素の属性で、「rn」プレフィックスの付いたタグは、http://schemas.rightnow.com/crm/documentにある要件を満たす必要があることをパーサーに伝えます。それがない場合は、XMLパーサー・エラーが発生します。

この場合、Tidyは「rn」プレフィックスの付いたタグを解決する方法を知らないため、Tidyにドキュメントを修復するように求めても無効です。名前空間宣言がない場合は、手動で修正する必要があり、この例では、<html>宣言を次のように変更します。

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:rn="http://schemas.rightnow.com/crm/document">

関連環境設定

HTML_TIDY_BLOCK_TAGS - 新しいブロックレベル・タグを指定します。このオプションは、タグ名のスペースまたはカンマ区切りリストを取ります。新しいタグが宣言されていないと、Tidyは入力に未知のタグが含まれている場合に、整形されたファイルの生成を拒否します。注意:<TABLE>、<UL>、<OL>、および<DL>などの要素のコンテンツ・モデルは変更できません。デフォルトは空白です。


HTML_TIDY_EMPTY_TAGS - 新しい空のインライン・タグを指定します。このオプションは、タグ名のスペースまたはカンマ区切りリストを取ります。新しいタグが宣言されていないと、Tidyは入力に未知のタグが含まれている場合に、整形されたファイルの生成を拒否します。空のタグは、インラインまたはブロックレベルとして、宣言する必要もあります。デフォルトは空白です。


HTML_TIDY_ENFORCE_XHTML - HTMLエディタのコンテンツがXHTML準拠を満たす必要があるかどうかを指定します。有効にすると、エディタはHTMLコードをクリーン・アップして仕様を満たします。また、これによって結果のドキュメントにXHTML doctype宣言が追加されます。無効にすると、有効なXMLであるコンテンツは保存時にクリーン・アップされません。デフォルトは有効(はい)です。


HTML_TIDY_INLINE_TAGS - 新しい空でないインライン・タグを指定します。このオプションは、タグ名のスペースまたはカンマ区切りリストを取ります。新しいタグが宣言されていないと、Tidyは入力に未知のタグが含まれている場合に、整形されたファイルの生成を拒否します。デフォルトは空白です。

設定へのパス: ナビゲーション・エリアから構成設定を選択 > サイト構成 > 構成設定 > キー検索

構成エディタと設定の編集についての詳細情報は、こちらアンサーID7316:環境設定の編集

Available Languages for this Answer:

Notify Me
The page will refresh upon submission. Any pending input will be lost.