有人可以解释以下 TR9401 目录格式中的 SYSTEM 和 PUBLIC 条目之间的区别(我将其与 Java jax-wsxjc
等工具一起使用wsimport
)。相同的概念(SYSTEM 和 PUBLIC)也出现在其他 XML 目录格式中。
换句话说,我将目录文件视为一个映射:命名空间(键)到位置(值)。该映射中的键值对是 "SYSTEM" 而不是 "PUBLIC" 是什么意思?
SYSTEM "http://www.w3.org/2001/xml.xsd" "xml.xsd"
SYSTEM "http://www.ivoa.net/xml/STC/STCregion/v1.10" "STCregion-v1.10.xsd"
PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd"
PUBLIC "http://www.ivoa.net/xml/STC/STCcoords/v1.10" "STCcoords-v1.10-mod.xsd"
我进行了一些实验,发现我可以将某些条目从 PUBLIC 更改为 SYSTEM 并且它仍然有效,而其他行上的相同更改会破坏构建。