【发布时间】:2020-03-08 19:03:15
【问题描述】:
我目前正在编写各种 XML 模式。就自己编写模式而言,我很好。我已经对此进行了广泛的研究,但是在查找 IT 方面的相关信息时遇到了一些困难。也许我只是使用了错误的关键字,所以如果这是重复的,我很抱歉。我自己确实付出了很大的努力来找到这些信息。提前感谢您抽出时间来帮助我。
如果存储在服务器端,我希望这些架构位于 http://schemas.mycompany.com/SchemaName。似乎根本不需要为模式子域设置单独的域控制器或类似的东西。如果我没记错的话,主域 DC 上的 OU 应该是令人满意的。然后我只需将它们放在单独的 Web 服务器上用于模式。
我在个人研究中也注意到它们也可以存储在本地。 How to reference a local XML Schema File Correctly.
既然我已经充分介绍了背景信息,那么就来回答这个问题。哪个更好,在什么情况下?什么时候将模式存储在服务器上而不是将它们存储在本地?更明确地说,这里每个场景的最佳实践和优缺点是什么?
【问题讨论】:
-
命名空间不必是 URL,如果是,它们也不必是可取消引用的。
-
是的,我知道类似:file:///C:/environment/workspace/maven-ws/ProjextXmlSchema/email.xsd 可以在本地工作。我想知道什么时候将这些存储在本地和服务器上比较合适。模式已经在 .dll 中,因此将它们保留在那里似乎是有意义的,但我想对此更加确定。 “它们不必是可取消引用的”是什么意思?
-
您不需要将架构托管在
http://schemas.mycompany.com/SchemaName。该 URL 不需要存在,它只是一个(不透明的)标识符。 -
啊,我明白你现在的意思了,谢谢你的澄清。因此,将其存储在本地 Project.Core.IO.dll 似乎不太可能导致任何问题。我是这么认为的,因为只要我使用 file:/// 方法在本地适当地引用它,它就会有带有架构的库。我认为像 W3 这样的场景将更适合托管它。如果我错了,我的意思是纠正我,但这看起来确实很合理。我现在对此感觉好多了,再次感谢您。
标签: xml xsd xml-namespaces xsd-validation xml-validation