찾다
백엔드 개발XML/RSS 튜토리얼XML DTD 및 XML 스키마 샘플 코드(그림 및 텍스트)에 대한 자세한 소개

 XML(eXtensible Markup Language) 확장 가능한 마크업 언어입니다. xml은 웹 서비스 프로그래밍에서 특히 중요합니다. 네트워크 전송에서 데이터를 전송하는 캐리어로 사용할 수 있습니다. xml은 메타언어로서 데이터를 표시하고 데이터 유형을 정의하는 데 사용할 수 있습니다. 사용자가 자신의 마크업 언어를 정의할 수 있는 메타언어입니다. 이는 네트워크 전송에 이상적으로 적합하며 애플리케이션이나 공급업체에 관계없이 구조화된 데이터를 설명하고 교환하는 통합된 접근 방식을 제공합니다. 이기종 언어와 이기종 플랫폼 간의 상호작용을 실현할 수 있습니다. XML 문서 정의 방법에는 DTD(문서 유형 정의) 및 XML 스키마가 포함됩니다. DTD(문서 유형 정의)는 문서의 전체 구조와 문서의 구문을 정의합니다(이해를 위해 아래에 해당 예가 있음). 널리 사용되며 풍부한 도구 지원을 제공합니다. XML 스키마는 더욱 강력하며 관리 정보와 같은 더욱 강력하고 풍부한 기능을 정의하는 데 사용됩니다. XML은 보다 세분화된 방식으로 콘텐츠를 선언하고 제약 조건을 정의하며 여러 플랫폼에서 보다 의미 있는 콘텐츠 전송을 촉진할 수 있습니다. 구조화된 데이터를 설명하기 위한 형식을 제공하고, 네트워크에서의 데이터 교환 및 표현을 단순화하며, 코드, 데이터 및 표현을 분리하고, 데이터 교환을 위한 표준 형식으로 사용되므로 지능형 데이터 문서라고도 합니다. DTD는 삽에 비유될 수 있는 반면, XML 스키마는 굴착기라고 할 수 있어 더욱 강력합니다. XML을 마크업 언어라고 부르기는 하지만 형식이 더 엄격하고 태그를 닫아야 하며 표시와 내용이 분리된다는 점에서 HTML(Hypertext Markup Language)과 다릅니다. XML은 문서의 내용과 의미를 설명하는 방식이 아닙니다. 문서가 표시되어야 합니다. HTML은 고정된 태그가 있고 표시와 내용이 함께 있어 자체 태그를 만들 수 없는 반면, XML은 확장 가능하고 내용과 표시가 분리되어 있으며 각 요소가 쌍으로 나타나며 XML 요소의 시작과 끝이 포함됩니다. 중첩 관계는 올바르게 유지되어야 합니다(중첩에서 나중에 시작하는 태그는 먼저 끝나야 하고, 먼저 시작하는 태그는 마지막에 끝나야 합니다). 각 XML 문서에는 루트 요소(루트 요소)가 하나만 있고 루트 요소가 있습니다. 다른 모든 요소를 ​​포함합니다. XML 구문을 준수하는 XML 문서는 DTD 또는 XML 스키마로 확인되지 않은 경우 Well-formed라고 합니다. Well-formed XML 문서가 DTD 또는 XML Schema로 확인되면 이러한 종류의 XML 문서를 유효하다고 합니다. (유효).

다음은 학생 명단의 xml을 예시로 보여줍니다

<?xml version="1.0" encoding="utf-8"?>
<学生名册>
    <学生 学号="A1">
        <姓名>CIACs</姓名>
        <性别>男</性别>
        <年龄>22</年龄>
    </学生>

    <学生 学号="A2">
        <姓名>zhihao</姓名>
        <性别>男</性别>
        <年龄>23</年龄>
    </学生>
</学生名册>

잘 구성된 xml 문서, XMLSpy의 출력 창에는 다음과 같은 결과가 출력됩니다

xml의 첫 번째 줄은 처리 명령이어야 하며, " 사이에는 공백이 있어서는 안 됩니다. xml", xml 요소는 엄격합니다. 대소문자를 구분합니다 . 문서 인코딩 형식은 기본적으로 "UTF-8"이며 버전은 1.0입니다. 위의 xml 문서는 유효한(Vaild) xml 문서가 아닌 잘 구성된 xml 문서라고 할 수 있습니다. 아래에서는 두 가지 방법을 사용하여 이를 확인합니다.

먼저 DTD를 통해 검증

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE 学生名册 [
<!ELEMENT 学生名册 (学生+)>
<!ELEMENT 学生 (名字,性别,年龄)>
<!ELEMENT 名字 (#PCDATA)>
<!ELEMENT 性别 (#PCDATA)>
<!ELEMENT 年龄 (#PCDATA)>
<!ATTLIST 学生 学号 ID #REQUIRED>
<!ENTITY  sex "男">
]>

<学生名册>
    <学生 学号="A1">
        <名字>CIACs</名字>
        <性别>&sex;</性别>
        <年龄>22</年龄>
    </学生>
    
    <学生 学号="A2">
        <名字>zhihao</名字>
        <性别>&sex;</性别>
        <年龄>23</年龄>
    </学生>
</学生名册>

검증에 성공하면 XMLSpy 출력 창에 다음과 같은 결과가 표시됩니다

그렇지 않으면, 한 칸 더 있어도 검증을 통과하지 못합니다. 여기서는 DTD 확인을 XML로 작성합니다. 물론 다른 파일에 작성할 수도 있습니다. 파일의 접미사는 ​​".dtd"이며 이를 확인하려는 XML 문서와 연결합니다.

1 DOCTYPE 루트 요소 이름 SYSTEM "*.dtd">

여기의 ID 값은 숫자로 시작하는 것 같습니다.

학생 정보의 성별은 엔터티로 정의한 후 엔터티를 통해 해당 값을 참조합니다. 엔터티 참조 구문은 "&엔터티 이름; ".

다음은 XML Schema 방식을 검증하는 데 사용됩니다

검증할 xml 문서

<?xml version="1.0" encoding="utf-8"?>
<学生名册 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="学生名册.xsd">
    <学生 学号="A1">
        <姓名>CIACs</姓名>
        <性别>男</性别>
        <年龄>22</年龄>
    </学生>

    <学生 学号="A2">
        <姓名>zhihao</姓名>
        <性别>男</性别>
        <年龄>23</年龄>
    </学生>
</学生名册>

XML Schema 검증 문서

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="学生名册">
        <xs:complexType>
            <xs:sequence minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="学生"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <xs:element name="学生">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="姓名" type="xs:string"/>
                <xs:element name="性别">
                    <xs:simpleType>
                        <xs:restriction base="xs:string">
                            <xs:enumeration value="男"/>
                            <xs:enumeration value="女"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:element>
                <xs:element name="年龄">
                    <xs:simpleType>
                        <xs:restriction base="xs:integer">
                            <xs:minExclusive value="0"/>
                            <xs:maxExclusive value="120"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:element>
            </xs:sequence>
            <xs:attribute name="学号" type="xs:string" use="required"/>
        </xs:complexType>
    </xs:element>
</xs:schema>

의 출력 결과 XMLSpy 출력 창

확인할 xml 문서는 루트 요소 시작 태그
 1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="学生名册.xsd"

위 문서는 모두 같은 경로에 있으므로 파일명을 직접 인용하시면 됩니다.


위의 두 가지 확인 방법에서 DTD와 XML 스키마 확인의 차이점을 명확하게 알 수 있습니다. 둘 다 XML 스키마는 DTD보다 더 강력한 기능을 제공합니다. >더 세분화된 데이터 유형

, 스키마는 데이터 유형을 사용자 정의할 수도 있습니다. xml 파일이지만 dtd의 구문은 xml의 구문과 다릅니다. 스키마는 코드 크기 측면에서 DTD보다 크지만 일단 스키마를 배우면 스키마를 사용하는 것이 더 좋습니다.

나중에 웹 서비스 프로그래밍을 배우려면 XML과 그 검증 방법을 잘 배우는 것이 매우 중요합니다.

위 내용은 XML DTD 및 XML 스키마 샘플 코드(그림 및 텍스트)에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
RSS에서 XML의 장점 : 기술 깊은 다이빙RSS에서 XML의 장점 : 기술 깊은 다이빙Apr 23, 2025 am 12:02 AM

XML은 RSS에서 구조화 된 데이터, 확장 성, 크로스 플랫폼 호환성 및 구문 분석 검증의 장점을 가지고 있습니다. 1) 구조화 된 데이터는 컨텐츠의 일관성과 신뢰성을 보장합니다. 2) 확장 성은 콘텐츠 요구에 맞게 맞춤형 태그를 추가 할 수 있습니다. 3) 크로스 플랫폼 호환성은 다른 장치에서 원활하게 작동합니다. 4) 분석 및 검증 도구는 피드의 품질과 무결성을 보장합니다.

XML의 RSS : 컨텐츠 신디케이션의 핵심을 공개합니다XML의 RSS : 컨텐츠 신디케이션의 핵심을 공개합니다Apr 22, 2025 am 12:08 AM

XML에서 RSS 구현은 구조화 된 XML 형식을 통해 컨텐츠를 구성하는 것입니다. 1) RSS는 채널 정보 및 프로젝트 목록과 같은 요소를 포함하여 XML을 데이터 교환 형식으로 사용합니다. 2) RSS 파일을 생성 할 때는 사양에 따라 컨텐츠를 구성하고 구독을 위해 서버에 게시해야합니다. 3) RSS 파일은 리더 또는 플러그인을 통해 구독하여 컨텐츠를 자동으로 업데이트 할 수 있습니다.

기본 사항을 넘어서 : 고급 RSS 문서 기능기본 사항을 넘어서 : 고급 RSS 문서 기능Apr 21, 2025 am 12:03 AM

RSS의 고급 기능에는 컨텐츠 네임 스페이스, 확장 모듈 및 조건부 구독이 포함됩니다. 1) 컨텐츠 네임 스페이스는 RSS 기능을 확장합니다. 2) 메타 데이터를 추가하기 위해 Dublincore 또는 iTunes와 같은 확장 된 모듈, 3) 특정 조건에 따라 조건부 구독 필터 항목. 이러한 기능은 XML 요소 및 속성을 추가하여 정보 수집 효율성을 향상시켜 구현됩니다.

XML 백본 : RSS 피드가 구조화되는 방법XML 백본 : RSS 피드가 구조화되는 방법Apr 20, 2025 am 12:02 AM

rssfeedsusexmltostructurecontentupdates.1) xmlprovideahierarchicalstructurefordata.2) the ElementDefinesThefeed 'sidentityandContainsElements.3) elementsreent indindividualcontentpieces.4) rssisextensible, 허용 Bestpracticesin

RSS & XML : 웹 컨텐츠의 동적 듀오 이해RSS & XML : 웹 컨텐츠의 동적 듀오 이해Apr 19, 2025 am 12:03 AM

RSS 및 XML은 웹 컨텐츠 관리를위한 도구입니다. RSS는 컨텐츠를 게시하고 구독하는 데 사용되며 XML은 데이터를 저장하고 전송하는 데 사용됩니다. 컨텐츠 게시, 구독 및 업데이트 푸시와 함께 작동합니다. 사용의 예로는 RSS 게시 블로그 게시물 및 XML 저장 도서 정보가 있습니다.

RSS 문서 : 웹 신디케이션의 기초RSS 문서 : 웹 신디케이션의 기초Apr 18, 2025 am 12:04 AM

RSS 문서는 자주 업데이트되는 콘텐츠를 게시하고 구독하는 데 사용되는 XML 기반 구조 파일입니다. 주요 기능에는 1) 자동화 된 컨텐츠 업데이트, 2) 컨텐츠 집계 및 3) 브라우징 효율 향상이 포함됩니다. RSSFEED를 통해 사용자는 적시에 다른 소스에서 최신 정보를 구독하고 얻을 수 있습니다.

RSS 디코딩 : 컨텐츠 피드의 XML 구조RSS 디코딩 : 컨텐츠 피드의 XML 구조Apr 17, 2025 am 12:09 AM

RSS의 XML 구조에는 다음이 포함됩니다. 1. XML 선언 및 RSS 버전, 2. 채널 (채널), 3. 항목. 이러한 부분은 RSS 파일의 기초를 형성하여 사용자가 XML 데이터를 구문 분석하여 컨텐츠 정보를 얻고 처리 할 수 ​​있도록합니다.

XML 기반 RSS 피드를 구문 분석하고 활용하는 방법XML 기반 RSS 피드를 구문 분석하고 활용하는 방법Apr 16, 2025 am 12:05 AM

rssfeedsUsexMlTOSYNDICATECONTENT; parsingTheMinVolvesRoadingXML, NavigatingItsStructure 및 extractingData.ApplicationSaggregatorsAngAggeratsAndTrackingPodCastePisOdes.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!