XML DTD验证错误

时间:2015-05-02 05:11:53

标签: xml validation dtd

您好我刚刚开始学习XML和DTD,我无法让我的代码验证。我正在使用http://www.validome.org/xml/validate/来验证我的代码。

XML:

<?xml version="1.0"?>
<!DOCTYPE projects [
<!ELEMENT projects (project*)>
<!ELEMENT project (pid, leader+, analyst*)>
<!ATTLIST project pid ID #REQUIRED>
<!ELEMENT leader (name)>
<!ELEMENT analyst (name)>
<!ELEMENT name (#PCDATA)>
]>

DTD:

<div class='child_dob input-group <?php echo $user->parent_type>2 ?'hidden':''?>'>
  <input type='date' class='form-control hidden' name='dob[]' value='<?php echo $dob?>'>
  <div class='form-control datedisplay'>
     <?php echo date('m/d/Y',strtotime($dob))?>
  </div>
  <input type='hidden' value='<?php echo $id?>' name='id[]'>
  <div class='input-group-addon'>
     <span class='cursor glyphicon glyphicon-remove remove_child_dob'></span>
  </div>
</div>

$(function()
{
 $(document).on('click','.datedisplay',function()
 {
    $(this).siblings('[type="date"]').removeClass('hidden').focus().click();
    $(this).remove();
 });
});

我已经停止了XML代码的xml版本部分,因为这个验证器只允许一个xml版本声明。

如果有人能提供一些帮助,我们将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

只需从元素项目中删除pid:

<!ELEMENT project (leader+, analyst*)>

project至少有一个leader,0个或多个analyst。它没有pid个子元素。

项目有一个pid 属性,其定义为:

<!ATTLIST project pid ID #REQUIRED>