元素类型的内容必须匹配元素 - XML 和 DTD

发布于 2025-01-11 11:36:18 字数 2122 浏览 3 评论 0原文

我是 XML 新手,我尝试制作 DTD 文件,但收到此错误,但没有找到错误。

“元素类型“persoane”的内容必须匹配“(persoana)”

XML代码

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE persoane SYSTEM "persoane.dtd">
<persoane>
    <persoana id="1">
        <nume>Popescu</nume>
        <prenume>Ion</prenume>
        <varsta>23</varsta>
        <adresa>
            <strada>Ioan Ciurea</strada>
            <numar>2</numar>
            <localitate>Falticeni</localitate>
            <judet>Suceava</judet>
            <tara>Romania</tara>
        </adresa>
        
    </persoana>
    <persoana id="2">
        <nume>Popescu</nume>
        <prenume>Vasile</prenume>
        <varsta>26</varsta>
        <adresa>
            <strada>Ioan Ciurea 2</strada>
            <numar>2</numar>
            <localitate>Suceava</localitate>
            <judet>Suceava</judet>
            <tara>Romania</tara>
        </adresa>
        <experienta>
            <domeniu>Tech</domeniu>
            <ani>2</ani>
            <limbaj>C#</limbaj>
        </experienta>
    </persoana>
</persoane>

DTD代码

<!ELEMENT persoane (persoana)>
<!ELEMENT persoana (nume, prenume, varsta, adresa, experienta?)>
<!ATTLIST persoana id CDATA #REQUIRED>
<!ELEMENT nume (#PCDATA)>
<!ELEMENT prenume (#PCDATA)>
<!ELEMENT varsta (#PCDATA)>
<!ELEMENT adresa (strada, numar, localitate, judet, tara)>
<!ELEMENT strada (#PCDATA)>
<!ELEMENT numar (#PCDATA)>
<!ELEMENT localitate (#PCDATA)>
<!ELEMENT judet (#PCDATA)>
<!ELEMENT tara (#PCDATA)>
<!ELEMENT experienta (domeniu, ani, limbaj)>
<!ELEMENT domeniu (#PCDATA)>
<!ELEMENT ani (#PCDATA)>
<!ELEMENT limbaj (#PCDATA)>

我试图照顾元素的顺序,但顺序对我来说似乎很好。有人能给我一个吗提示什么的?

I am new to XML and I try to make a DTD file but I get this error and I don't find the mistake.

"The content of element type "persoane" must match "(persoana)"

XML Code

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE persoane SYSTEM "persoane.dtd">
<persoane>
    <persoana id="1">
        <nume>Popescu</nume>
        <prenume>Ion</prenume>
        <varsta>23</varsta>
        <adresa>
            <strada>Ioan Ciurea</strada>
            <numar>2</numar>
            <localitate>Falticeni</localitate>
            <judet>Suceava</judet>
            <tara>Romania</tara>
        </adresa>
        
    </persoana>
    <persoana id="2">
        <nume>Popescu</nume>
        <prenume>Vasile</prenume>
        <varsta>26</varsta>
        <adresa>
            <strada>Ioan Ciurea 2</strada>
            <numar>2</numar>
            <localitate>Suceava</localitate>
            <judet>Suceava</judet>
            <tara>Romania</tara>
        </adresa>
        <experienta>
            <domeniu>Tech</domeniu>
            <ani>2</ani>
            <limbaj>C#</limbaj>
        </experienta>
    </persoana>
</persoane>

DTD Code

<!ELEMENT persoane (persoana)>
<!ELEMENT persoana (nume, prenume, varsta, adresa, experienta?)>
<!ATTLIST persoana id CDATA #REQUIRED>
<!ELEMENT nume (#PCDATA)>
<!ELEMENT prenume (#PCDATA)>
<!ELEMENT varsta (#PCDATA)>
<!ELEMENT adresa (strada, numar, localitate, judet, tara)>
<!ELEMENT strada (#PCDATA)>
<!ELEMENT numar (#PCDATA)>
<!ELEMENT localitate (#PCDATA)>
<!ELEMENT judet (#PCDATA)>
<!ELEMENT tara (#PCDATA)>
<!ELEMENT experienta (domeniu, ani, limbaj)>
<!ELEMENT domeniu (#PCDATA)>
<!ELEMENT ani (#PCDATA)>
<!ELEMENT limbaj (#PCDATA)>

I tried to look after the order of elements but the order seems good to me. Can someone give a me a hint or something?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文