DTDDetailed explanation
##Basic overview
(Document Type Definition) is a set of grammatical rules about tags established for data exchange between programs. It is part of the Standard Generalized Markup Language (SGML) and Extensible Markup Language (XML) version 1.0, and is documented under Some DTD syntax rule verifies that the format conforms to this rule. Document type definitions can also be used to ensure the legality of standard universal markup language and extensible markup language document formats. You can compare documents with document type definition files to check whether the document conforms to the specification and whether the elements and tags are used correctly. File instances provide applications with a format for exchanging data.
PS: In short, DTD is used to constrain XML document, so that it can be used under certain specifications. In addition to DTD technology, there is also Schema technology, which is also used For constrained XML documents.
Reference document:DTD http://www.php.cn/
Reference document:Schema http://www.php.cn/
DTDSchematic
PS: Constrained by DTD, XML can be customized under the constraints of DTD, but DTD has A disadvantage is that it cannot impose range constraints such as numerical constraints on the data.
DTDDeclaration and reference of document
InternalDTDDocumentation
##span style="white-space:pre">Root element [Definition content]>External
DTDDocument
span style="white-space:pre">Root element SYSTEM "DTD File path">Internal and external
DTDDocument combination
span style="white-space:pre">Root element SYSTEM "DTDFile path" [
Definition content
]>Note:
1
, definition keywords must be capitalized, for example:DOCTYPE, ELEMENT, ATTLIST. 2
,When the referenced file is local, the following method is used:
span style="font-family:宋体">Document root node SYSTEM "URL of the DTD file">
For example: /span>Bookshelf SYSTEM “book. dtd”>
When the referenced file is a public file, the following method is used:
span style="font-family:宋体">Document root node PUBLIC "DTDname" "DTDfileURL">
##For example: span style="font-family:Calibri"> "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
DTDElement
Basic GrammarExplanation: ELEMENT: Keyword
(must be capitalized).
NAME: Element name.
CONTENT: There are four element types, all of which must be capitalized.
1、EMPTY-This element cannot contain sub-elements and text, but it can have attributes (empty elements)
## 2、ANY-This element can contain anything in DTD## Element content defined in # 3
、#PCDATA-can contain any character data, but cannot It contains any sub-elements## 4, other types
(combination), can be a sub-element, a combination of sub-element and modifier, a combination of basic element, sub-element and modifier. Case:
Class
(Student+,Author)>Student
(Name,Age,Introduction)>< ;!ELEMENT Author
(#PCDATA)>Name
(#PCDATA)>Age
(#PCDATA)>Introduction
(#PCDATA)>Modifier
Use |
Example |
Example description |
|
( ) |
Used to group elements |
(古龙|Jin Yong|Liang Yusheng),(Wang Shuo|Yu Jie) |
Divided into two groups |
| | Select one of the listed objects |
(Men|Women) |
means that a man or a woman must appear, and you can only choose one |
##+ | The object appears at least once and can appear multiple times (1 or multiple times) |
(Member +) |
indicates that the member must appear, and multiple members can appear Member |
* | ##This object is allowed to appear zero to any number of times (0 to many times) | (Hobby* ) | Hobby can appear zero to multiple times|
This object can appear, But it can only appear once | (0 to 1 times) | (Rookie? ) ##The rookie can appear or not. If it appears, Can only appear once at most | |
Objects must appear in the specified order |
(Watermelon | ,
Apple,banana) ## means watermelon, apple, banana must appear, and appear in this order |
# # ##DTD AttributesBasic Syntax##Attribute name Type Attribute attribute Attribute name Type Attribute characteristics......> Explanation: ATTLIST : attribute list, (must be capitalized ).Element name: The name of the corresponding element. Attribute: There can be multiple attributes, and the format is name type attribute property Type: ##PS : Commonly used ones areCDATA(Character type), enumeration (The enumeration format is (value1| Value2|Value3...)),ID(ID cannot be repeated and cannot start with a number ), IDREF( refers to another IDValue),IDREFS(can reference multiple ID Values, separated by spaces ) Attribute characteristics are:
Case: <!ELEMENT 班级 (学生+,作者)> <!ATTLIST 班级 班次 CDATA "1班" 编号 ID #REQUIRED > <!ELEMENT 学生 (名字,年龄,介绍)> <!ELEMENT 作者 (#PCDATA)> <!ATTLIST 学生 地址 CDATA #IMPLIED 授课方式 CDATA #FIXED "面授" 学号 ID #REQUIRED 班级编号 IDREF #REQUIRED 朋友 IDREFS #IMPLIED > <!ELEMENT 名字 (#PCDATA)> <!ELEMENT 年龄 (#PCDATA)> <!ELEMENT 介绍 (#PCDATA)> Entity XML, and parameter entities are generally used in DTD. Basic syntax ##Entity name"Entity content"> // Reference entity##Entity name "Entity content" > // Parameter entityExplanation: 1, the reference entity can be referenced DTD XML file, use &entity name; to use entity content. 2. I don’t know if it’s because of my computer. You can’t use reference entities in external DTD . If you use it, put the reference entity definition in In the internal DTD, it can be used. 3, parameter entity is used in DTD , use %entity name;use 4、可以将那些重复使用的值定义成实体,这样能减少代码的冗余度。 5、在外部DTD中,引用实体最好放在DTD底部,参数实体最好放在DTD顶部。
案例: <!ENTITY % sex "男|女"> <!ELEMENT 班级 (学生+,作者)> <!ELEMENT 学生 (名字,年龄,介绍)> <!ELEMENT 作者 (#PCDATA)> <!ATTLIST 学生 性别 (%sex;) #REQUIRED > <!ELEMENT 名字 (#PCDATA)> <!ELEMENT 年龄 (#PCDATA)> <!ELEMENT 介绍 (#PCDATA)> <!ENTITY writer "Switch"> 综合案例1: XML3.dtd <!ENTITY % sex "男|女"> <!ELEMENT 班级 (学生+,作者)> <!ATTLIST 班级 班次 CDATA "1班" 编号 ID #REQUIRED > <!ELEMENT 学生 (名字,年龄,介绍)> <!ELEMENT 作者 (#PCDATA)> <!ATTLIST 学生 地址 CDATA #IMPLIED 授课方式 CDATA #FIXED "面授" 学号 ID #REQUIRED 班级编号 IDREF #REQUIRED 朋友 IDREFS #IMPLIED 性别 (%sex;) #REQUIRED > <!ELEMENT 名字 (#PCDATA)> <!ELEMENT 年龄 (#PCDATA)> <!ELEMENT 介绍 (#PCDATA)> XML3.xml <?xml version="1.0" encoding="UTF-8"?> <!-- 引入DTD --> <!DOCTYPE 班级 SYSTEM "XML3.dtd" [<!ENTITY writer "Switch">]> <班级 编号="C1" 班次="1班"> <学生 地址="湖南" 授课方式="面授" 学号="n1" 班级编号="C1" 朋友="n2" 性别="男"> <名字>张三</名字> <年龄>20</年龄> <介绍>不错</介绍> </学生> <学生 授课方式="面授" 学号="n2" 班级编号="C1" 朋友="n1 n3" 性别="女"> <名字>李四</名字> <年龄>18</年龄> <介绍>很好</介绍> </学生> <学生 授课方式="面授" 学号="n3" 班级编号="C1" 朋友="n2" 性别="男"> <名字>王五</名字> <年龄>22</年龄> <介绍>非常好</介绍> </学生> <作者>&writer;</作者> </班级> 综合案例2: XML4.dtd <!ENTITY AUTHOR "John Doe"> <!ENTITY COMPANY "JD Power Tools, Inc."> <!ENTITY EMAIL "jd@jd-tools.com"> <!ELEMENT CATALOG (PRODUCT+)> <!ELEMENT PRODUCT (SPECIFICATIONS+,OPTIONS?,PRICE+,NOTES?)> <!ATTLIST PRODUCT NAME CDATA #IMPLIED CATEGORY (HandTool|Table|Shop-Professional) "HandTool" PARTNUM CDATA #IMPLIED PLANT (Pittsburgh|Milwaukee|Chicago) "Chicago" INVENTORY (InStock|Backordered|Discontinued) "InStock"> <!ELEMENT SPECIFICATIONS (#PCDATA)> <!ATTLIST SPECIFICATIONS WEIGHT CDATA #IMPLIED POWER CDATA #IMPLIED> <!ELEMENT OPTIONS (#PCDATA)> <!ATTLIST OPTIONS FINISH (Metal|Polished|Matte) "Matte" ADAPTER (Included|Optional|NotApplicable) "Included" CASE (HardShell|Soft|NotApplicable) "HardShell"> <!ELEMENT PRICE (#PCDATA)> <!ATTLIST PRICE MSRP CDATA #IMPLIED WHOLESALE CDATA #IMPLIED STREET CDATA #IMPLIED SHIPPING CDATA #IMPLIED> <!ELEMENT NOTES (#PCDATA)> XML4.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE CATALOG SYSTEM "XML4.dtd"> <CATALOG> <PRODUCT NAME="C'estbon" CATEGORY="Shop-Professional" INVENTORY="Backordered" PARTNUM="10" PLANT="Chicago"> <SPECIFICATIONS POWER="0" WEIGHT="555ml">SPECIFICATIONS</SPECIFICATIONS> <OPTIONS>OPTIONS</OPTIONS> <PRICE>2</PRICE> <NOTES>NOTES</NOTES> </PRODUCT> </CATALOG> 以上就是DTD详解的内容,更多相关内容请关注PHP中文网(www.php.cn)! |

The implementation of RSS in XML is to organize content through a structured XML format. 1) RSS uses XML as the data exchange format, including elements such as channel information and project list. 2) When generating RSS files, content must be organized according to specifications and published to the server for subscription. 3) RSS files can be subscribed through a reader or plug-in to automatically update the content.

Advanced features of RSS include content namespaces, extension modules, and conditional subscriptions. 1) Content namespace extends RSS functionality, 2) Extended modules such as DublinCore or iTunes to add metadata, 3) Conditional subscription filters entries based on specific conditions. These functions are implemented by adding XML elements and attributes to improve information acquisition efficiency.

RSSfeedsuseXMLtostructurecontentupdates.1)XMLprovidesahierarchicalstructurefordata.2)Theelementdefinesthefeed'sidentityandcontainselements.3)elementsrepresentindividualcontentpieces.4)RSSisextensible,allowingcustomelements.5)Bestpracticesincludeusing

RSS and XML are tools for web content management. RSS is used to publish and subscribe to content, and XML is used to store and transfer data. They work with content publishing, subscriptions, and update push. Examples of usage include RSS publishing blog posts and XML storing book information.

RSS documents are XML-based structured files used to publish and subscribe to frequently updated content. Its main functions include: 1) automated content updates, 2) content aggregation, and 3) improving browsing efficiency. Through RSSfeed, users can subscribe and get the latest information from different sources in a timely manner.

The XML structure of RSS includes: 1. XML declaration and RSS version, 2. Channel (Channel), 3. Item. These parts form the basis of RSS files, allowing users to obtain and process content information by parsing XML data.

RSSfeedsuseXMLtosyndicatecontent;parsingtheminvolvesloadingXML,navigatingitsstructure,andextractingdata.Applicationsincludebuildingnewsaggregatorsandtrackingpodcastepisodes.

RSS documents work by publishing content updates through XML files, and users subscribe and receive notifications through RSS readers. 1. Content publisher creates and updates RSS documents. 2. The RSS reader regularly accesses and parses XML files. 3. Users browse and read updated content. Example of usage: Subscribe to TechCrunch's RSS feed, just copy the link to the RSS reader.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver Mac version
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version
Useful JavaScript development tools