xml自定义实体

前端之家收集整理的这篇文章主要介绍了xml自定义实体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

自定义实体分为:一般实体和参数实体

1、自定义一般实体

demo8中的代码

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT book (detail+)>
<!ELEMENT detail (name,author,publisher,price,url)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT publisher (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT url (#PCDATA)>

<!ENTITY bj "北京大学出版社">

对应的xml代码

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book SYSTEM "demo8.dtd">
<book>
	<detail>
		<name>XML</name>
		<author>李白</author>
		<publisher>&bj;</publisher>
		<price>22.5</price>
		<url>
			<![CDATA[
				<a href="#">链接1</a>
			]]>
		</url>
	</detail>
	<detail>
		<name>PHP</name>
		<author>杜甫</author>
		<publisher>&bj;</publisher>
		<price>22.5</price>
		<url>
			<![CDATA[
				<a href="#">链接2</a>
			]]>
		</url>
	</detail>
</book>

xml内部定义一般实体:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book SYSTEM "demo8.dtd"[
	<!ENTITY bj "北京大学出版社">
]>
<book>
	<detail>
		<name>XML</name>
		<author>李白</author>
		<publisher>&bj;</publisher>
		<price>22.5</price>
		<url>
			<![CDATA[
				<a href="#">链接1</a>
			]]>
		</url>
	</detail>
	<detail>
		<name>PHP</name>
		<author>杜甫</author>
		<publisher>&bj;</publisher>
		<price>22.5</price>
		<url>
			<![CDATA[
				<a href="#">链接2</a>
			]]>
		</url>
	</detail>
</book>


2、自定义参数实体

参数实体就是在普通实体名字前面加上%”。

dtd中的代码

<?xml version="1.0" encoding="UTF-8"?>
<!ENTITY % p "test"> <!-- 先声明后使用 -->
<!ELEMENT roster ((%p;)+)>
<!ELEMENT %p; (name,sex,birthday,score?,skill+)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ELEMENT birthday (#PCDATA)>
<!ELEMENT score (#PCDATA)>
<!ELEMENT skill (#PCDATA)>
<!ATTLIST %p; id ID #required>

对应的xml代码

demo1.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE roster  SYSTEM "demo11.dtd"[
	<!ENTITY % p "teacher">  <!-- 给参数赋值 -->
]>
<roster>
	<teacher id="s">
		<name></name>
		<sex></sex>
		<birthday></birthday>
		<skill></skill>
	</teacher>
</roster>

demo2.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE roster SYSTEM "demo11.dtd"[
	<!ENTITY % p "student"> <!-- 给参数赋值 -->
]>
<roster>
	<student id="s">
		<name></name>
		<sex></sex>
		<birthday></birthday>
		<skill></skill>
	</student>
</roster>

猜你在找的XML相关文章