我有这样的DTD:http://fast-code.sourceforge.net/template.dtd 但是当我包括在XML我得到警告:该文档没有检测到语法约束(DTD或XML模式).xml是:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE templates PUBLIC "//UNKNOWN/" "http://fast-code.sourceforge.net/template.dtd">
<templates>
<template type="INSTANCE_OF_CLASS">
<description>Used to Create instance of class</description>
<variation>asasa</variation>
<variation-field>asasa</variation-field>
<class-pattern>asasa</class-pattern>
<getter-setter>setter</getter-setter>
<allowed-file-extensions>java</allowed-file-extensions>
<number-required-classes>1</number-required-classes>
<allow-multiple-variation>false</allow-multiple-variation>
<template-body>
<![CDATA[
// Creating new instance of ${class_name}
final ${class_name} ${instance} = new ${class_name}();
#foreach ($field in ${fields})
${instance}.${field.setter}(${field.value});
#end
]]>
</template-body>
</template>
</templates>
Run Code Online (Sandbox Code Playgroud)
编辑:我更改了xml,我现在收到此错误:
元素类型的内容"模板"必须描述?,变异场匹配"(,变化?,允许 - 多变化?,类图案?,消气部件设置器?,允许文件的扩展?,数须─班?,模板型)".
我们正在开发一个涉及大量XML转换的应用程序.我们本身没有任何适当的输入测试数据,只有DTD或XSD文件.我们想从这些文件中自己生成测试数据.有一种简单/自由的方式吗?
编辑
显然没有免费的工具,我同意OxygenXML是最好的工具之一.
最后,我应该使用什么样的DOCTYPE?
我搜索了这个问题,但我不清楚什么是XML模式和DTD(文档类型定义),以及为什么XML模式比DTD更强大.
任何指导都将受到高度赞赏.
我在网上看到过几个关于如何使用XML架构或DTD for logback.xml文件至少在IDEA或Eclipse等IDE中进行非常基本的验证和自动完成的讨论,但我从未见过任何解决方案
你是否?
当我在这个方法中解析我的xml文件(变量f)时,我收到一个错误
C:\ Documents and Settings\joe\Desktop\aicpcudev\OnlineModule\map.dtd(系统找不到指定的路径)
我知道我没有dtd,也不需要它.如何在忽略DTD引用错误的同时将此File对象解析为Document对象?
private static Document getDoc(File f, String docId) throws Exception{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(f);
return doc;
}
Run Code Online (Sandbox Code Playgroud) 我并不知道有什么区别,但是一位同事说有,尽管他无法支持.有什么区别?
我正在使用Eclipse Ganymede.一切都很好,但我对无警告问题标签有一种肛门保持的渴望.现在它(正确地)抱怨我的Ant脚本:"没有检测到文档的语法约束(DTD或XML模式)." 有没有办法为这些文件关闭它?理想情况下,如果我的其他模式约束文件缺少模式声明,我还是希望它仍然警告我.
"旧"HTML/XHTML标准具有为其定义的DTD(文档类型定义):
HTML 4.01 http://www.w3.org/TR/html401/sgml/dtd.html
XHTML 1.0 http://www.w3.org/TR/xhtml1/dtds.html#a_dtd_XHTML-1.0-Strict
此DTD指定嵌套元素的规则 - "哪些类型的元素可能出现在哪些类型的元素中".我在这里为XHTML 1.0制作了一个图表(抱歉,我不再拥有该资源)
我想用新版本更新该图表,该版本还包括新的HTML5元素.但是,似乎没有HTML5 DTD.似乎嵌套规则是由HTML5中定义的各种内容模型定义的.
所以没有DTD,对吗?
后续问题: HTML5中是否有没有DTD的原因?DTD是为所有不同类型的元素定义嵌套规则的一种很好的方法.他们为什么不包括这样的东西?
更新:我发现了这个: http: //www.w3.org/TR/html5/dom.html#kinds-of-content我猜,这是最接近DTD的.
更新: Visual Studio团队为XHTML5制作了XML Schema.我想这回答了我的问题: http: //blogs.msdn.com/b/webdevtools/archive/2009/11/18/html-5-intellisense-and-validation-schema-for-visual-studio-2008-and -视觉,网络developer.aspx