XML은 태그를 사용하여 사용자 정의할 수 있으므로 각 사람이 정의하는 태그 집합이 다릅니다. 태그 정의 원칙을 규정하는 표준 집합이 없으면 응용 프로그램에서 XML 문서를 처리할 수 없습니다. . 이 문제에 대한 해결책은 XML 문서의 작성 규칙을 정의하는 데 사용되는 DTD, DTD(Document Type Definition, 문서 유형 정의)를 사용하는 것입니다. 문서에 어떤 요소가 나타날 수 있는지, 요소의 콘텐츠 및 속성 요구 사항 등이 있습니다. 애플리케이션은 이 DTD를 사용하여 문서를 확인합니다. DTD 제약 조건 규칙을 준수하는 XML 문서는 유효한 문서라고 하며, 그렇지 않으면 애플리케이션에서 오류가 보고될 수 있습니다. 해당 예외 처리를 수행합니다. 확인 프로세스는 선택 사항이며 특정 애플리케이션에 따라 다릅니다.
문서 유형 선언
유효성 검사에 DTD를 사용하려면 문서 유형 정의 선언을 사용하여 DTD를 지정해야 합니다. 예:
<?xml version="1.0" standalone="no"?> <!DOCTYPE portal SYSTEM > <portal> <name>Jims</name> <email>Jims@163.com</email> <email>Jims@21cn.com</email> </portal>
문서 유형 선언은 XML 선언 뒤, 루트 요소 앞에 위치합니다. dtd 파일이 로컬 시스템에 있는 경우 경로 이름을 사용하여 dtd 파일의 위치를 직접 나타낼 수 있습니다. Portal.dtd의 내용은 다음과 같습니다.
<!ELEMENT portal (name,email*)> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)>
위 내용은 XML 문서에 직접 작성할 수도 있습니다. 이 dtd 선언 방법을 내부 dtd 하위 집합이라고 합니다. 예:
<?xml version="1.0" standalone="no"?> <!DOCTYPE portal [<!ELEMENT portal (name,email*)><!ELEMENT name (#PCDATA)><!ELEMENT email (#PCDATA)>]> <portal> <name>Jims</name> <email>Jims@163.com</email> <email>Jims@21cn.com</email> </portal>
dtd가 XML 문서 외부에 있는 경우 이를 외부 dtd 하위 집합이라고 합니다. 내부 및 외부 DTD를 결합하여 XML 문서를 검증하는 DTD를 형성할 수 있습니다. 예:
<!DOCTYPE portal SYSTEM "external.dtd" [<!ELEMENT portal (name,email*)><!ELEMENT name (#PCDATA)><!ELEMENT email (#PCDATA)>]>
내부 및 외부 dtd를 사용할 때 두 dtd는 서로 호환되어야 하며 충돌할 수 없습니다.
위 내용은 XML 문서 유형 선언의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!