模式验证器如何知道在哪里可以找到与xmlns中的名称空间关联的xsd?
我正在调用一个外部(第三方)web服务,该服务返回包含以下名称空间的xml:模式验证器如何知道在哪里可以找到与xmlns中的名称空间关联的xsd?,xml,xsd,xml-namespaces,Xml,Xsd,Xml Namespaces,我正在调用一个外部(第三方)web服务,该服务返回包含以下名称空间的xml: ... xmlns:gml="http://www.opengis.net/gml" xmlns:wrs="http://www.opengis.net/cat/wrs/1.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" ... 我对以urn:oasis开头的最后一个名称空间感兴趣 如果没有指定位置,验证器如何知道如何验证文件 我知道第
...
xmlns:gml="http://www.opengis.net/gml"
xmlns:wrs="http://www.opengis.net/cat/wrs/1.0"
xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"
...
我对以urn:oasis开头的最后一个名称空间感兴趣
如果没有指定位置,验证器如何知道如何验证文件
我知道第一个也没有指定位置,因为它们只是一个名称空间
请你详细说明在下列方面所作的发言:
如果您的组织有办法管理和解决适当类别的URN,请使用URN
这些验证器在没有位置的情况下如何工作?要为验证目的指定架构位置,您有不同的方法: 使用XML模式:
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance“
。在这个名称空间中,您有两个专用于验证的属性:schemaLocation
和noNamespaceSchemaLocation
schemaLocation
:xsi:schemaLocation=“namespaceURI1 linkToTheSchema1 namespaceURI2 linkToTheSchema2…”
。每个模式声明由两部分组成,用空格分隔:名称空间和指向文件的URI好的,所以我的问题不是如何指定模式位置,而是在没有模式位置的情况下如何进行验证(模式位置)。但我相信你可能在第一点回答了我的问题。验证器/解析器是否已经拥有他们所期望的文件的模式?是的,就是这样。要么验证器知道模式(并且可以根据需要加载模式),要么XML文件告诉在哪里可以找到模式。(我更喜欢第一种方法)