XML構文の詳細な説明

XML構文の詳細な説明
1. 文書化ルール

1. 大文字と小文字が区別されます。

2. 属性値は引用符(一重引用符または二重引用符)で囲む必要があります。通常は二重引用符が推奨されます。

3. すべてのタグには終了記号が必要です。

4. 空のタグはすべて閉じる必要があります。

5. 要素は 1 つだけ存在する必要があります。

6. 空白文字を解析する場合、省略せずに実際の内容が出力されます。

7. 特殊文字の処理:
文字の置換文字
< &lt;
> >
& &amp;
「」
' &apos;

8. タグ名の規則:
a. 文字、数字、その他の文字を含めることができます。
b. 数字またはアンダースコアで始まることはできません。
c. xml や Xml などの文字で始まることはできません。
d. スペースを含めることはできません


2. XML宣言

XML 宣言標準ステートメント: <?xml version="1.0" encoding="GB2312" standalone="yes"?>
強調する:
1. 「<?xml」の「<?」と「xml」の間にはスペースを入れないでください。
2. 「?>」の前にスペースがあってもなくてもかまいません。
3. encoding と standalone はオプションの属性です。encoding のデフォルト値は「UTF-8」、standalone のデフォルト値は「no」です。
4. 一般的なエンコード方法は次のとおりです。
中国語(簡体字):GB2312
繁体字中国語: BIG5
西ヨーロッパ文字: UTF-8、UTF-16
5.standalone は、ドキュメントに DTD ファイルが付属しているかどうかを示します。

3. XML属性

データはサブ要素と属性の両方に保存できるため、属性をいつ使用し、サブ要素をいつ使用するかについては決まったルールはありませんが、メタデータは属性として保存し、データ自体は要素として保存することをお勧めします。
属性を使用すると、次の疑問が生じます。
1. 属性には複数の値を含めることはできません(サブ要素には含めることができます)。
2. 属性を拡張するのは簡単ではありません。
3. 属性は構造を記述できません(サブ要素は記述できます)。
4. 属性は DTD 経由ではテストが困難です。

4. 名前空間

名前空間を宣言する方法は 2 つあります。
1. デフォルトでは、すべての要素にプレフィックスを指定する必要はありません。例:
<スキーマ xmlns="http://www.w3.org/2001/XMLschema">
<要素名="diguonianzhu" タイプ="文字列"/>

</スキーマ>
2. xmlns キーワードが名前空間 URI プレフィックスに関連付けられていること、およびすべての要素がプレフィックスを指定する必要があることを明確に宣言します。例:
<xsd:スキーマ xmlns:xsd="http://www.w3.org/2001/XMLschema">
<xsd:element name="diguonianzhu" type="string"/>

<xsd:/スキーマ>
強調: 名前空間を表すために使用される URI は、XML パーサーによって呼び出されず、URI は実際にはアクセスされません。これは識別名を表すだけです。

5. XML固有のタグ: CDATA

CDATA の正式名称は Character DATA で、文字データです。主に「<」などの特殊文字を表示するために使用されます。
CDATA の構文は次のとおりです。
<![CDATA[表示する文字]]> 例:
<?xml バージョン="1.0"?>
<データ>
<![CDATA[
<ok alma!> a&b より!

]]>
</データ>
強調: CDATA はネストできません。表示される文字に「]]>」を含めることはできません。

<<:  Webデザイン講座(4):素材と表現について

>>:  幅と高さが可変の要素を中央に配置するための CSS ソリューション

推薦する

MySQL マスタースレーブレプリケーションの原理と注意点

前面に書かれた最近、Mycat で特別なトピックを書いています。最近、多くの友人が面接に出かけている...

1つの記事でNavicat for MySQLの基本を理解する

目次1. データベース操作2. データ型3. バックアップとリカバリ3. 操作4. 上級5. 知識補...

純粋な CSS で実装された 3 つの通知バーのスクロール効果

序文通知バー コンポーネントは、比較的一般的なコンポーネントです。基本的に、すべてのサイトにこのよう...

別の種類の「キャンセル」ボタン

「キャンセル」ボタンは必要な操作プロセスの一部ではなく、デザイン上の主要な要素として表示されません...

CentOS7 64でのMySQL5.6.40の詳細なインストール手順

CentOS7 64でのMySQL5.6.40のインストール手順1) 以前にインストールしたMySQ...

Vueはタブナビゲーションバーを実装し、左右のスライド機能をサポートしています

この記事では主に、Vue を使用してタブ ナビゲーション バーを実装し、flex レイアウトを使用し...

Hyper-v仮想マシンを使用してCentos7をインストールする

目次導入準備するシステムイメージをダウンロードHyper-Vを有効にする新しい仮想ネットワークスイッ...

要素内の TimePicker は時間の一部を無効にします (分単位で無効)

プロジェクトの要件は、日付と時刻を選択し、現在の時刻以降の時刻のみを選択し、最小レベルを分単位で無効...

Element UI で自動サイズ調整テキストエリアの高さを設定する方法

Element UIのtextarea input自動サイズに設定すると、テキストボックスのデフォル...

Vue テンプレート構成と Webstorm コード形式仕様設定

目次1. コンパイラコードフォーマット仕様設定2. Vueテンプレートの設定1. コンパイラコードフ...

互換性を維持しながら他のウェブページのデータを適用する iframe の使い方

以下は、Shiji Tiancheng が Tencent KartRider ページを呼び出すため...

Docker を使用して Redis マスター スレーブ レプリケーション クラスターを構築する

マスタースレーブレプリケーションモードのクラスターでは、通常、1 つのマスターノードと 2 つ以上の...

Vue3 (III) ウェブサイトホームページレイアウト開発

目次1. はじめに2. 実際の事例1. App.vueを変更する2. レイアウトを調整する3. ジャ...

MySQL マスタースレーブ同期、トランザクションロールバックの実装原理

ビンログBinLog は、データベース テーブル構造の変更 (テーブルの作成、変更など) とテーブル...

MySQL 5.7.20 圧縮版のダウンロードとインストールの簡単なチュートリアル

1. ダウンロードアドレス:参考: http://dev.mysql.com/downloads/m...