为什么DTD不可扩展?

时间:2017-12-06 11:11:52

标签: xml xsd dtd xsd-validation xml-validation

我知道如果一种语言允许用户创建所需的任何标签,然后描述这些标签及其允许的用途,那么该语言是可扩展的。

如果我没错,在这个例子中

<!ELEMENT people_list (person)*>
<!ELEMENT person (name, birthdate?, gender?, socialsecuritynumber?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT birthdate (#PCDATA)>
<!ELEMENT gender (#PCDATA)>
<!ELEMENT socialsecuritynumber (#PCDATA)>

DTD定义了一个名为person的元素(tag),另一个名为name etc的元素......

那么,为什么这不能作为XSD扩展?

1 个答案:

答案 0 :(得分:0)

后台:DTD的存在是为了支持XML的扩展性。代替    XML是一种固定的标记语言,允许您定义自己的词汇表    和语法通过DTD等模式。

  

为什么DTD不可扩展?

DTD 可扩展的。

  • 可以通过各种技术扩展DTD。示例包括重复df.Name.apply(lambda x: "".join([y[0] for y in (x.split())])) executed in 581ms df.Name.str.split(expand=True).apply(lambda x : x.str[0]).fillna('').sum(1) executed in 2.81s 以添加属性和重新定义参数ENTITIES。
  • 应用于大型项目的巧妙DTD可扩展性的悠久历史。例子:

  

那么,为什么这不能作为XSD扩展?

因为DTD早于XSD,并且进展

另见

相关问题