Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在LAN上解析XML架构(xsd),同时能够在我的PC上验证XML_Xml_Validation_Xsd_Xml Parsing_Notepad++ - Fatal编程技术网

无法在LAN上解析XML架构(xsd),同时能够在我的PC上验证XML

无法在LAN上解析XML架构(xsd),同时能够在我的PC上验证XML,xml,validation,xsd,xml-parsing,notepad++,Xml,Validation,Xsd,Xml Parsing,Notepad++,如果我将所有文件和shema存储在本地,我就可以使用Notepad++的xml扩展名根据模式(xd-files)完美地验证xml,但是当我将它们存储在公司局域网上时,我会在解析模式时出错 是什么导致了这种差异 我的文件Empty.xml包含 <?xml version="1.0" encoding="UTF-8"?> <aeoi_lux_fatca:AEOI_LUX version="2.0" xmlns:aeoi="urn:lu:etat:acd:aeoi_lux:v

如果我将所有文件和shema存储在本地,我就可以使用Notepad++的xml扩展名根据模式(
xd
-files)完美地验证
xml
,但是当我将它们存储在公司局域网上时,我会在解析模式时出错

是什么导致了这种差异

我的文件
Empty.xml
包含

<?xml version="1.0" encoding="UTF-8"?>
<aeoi_lux_fatca:AEOI_LUX version="2.0"
    xmlns:aeoi="urn:lu:etat:acd:aeoi_lux:v2.0"
    xmlns:aeoi_fatca="urn:lu:etat:acd:fatca:v2.0"
    xmlns:sfa="urn:oecd:ties:stffatcatypes:v2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:stf="urn:oecd:ties:stf:v4"
    xmlns:iso="urn:oecd:ties:isofatcatypes:v1"
    xmlns:aeoi_lux_fatca="urn:lu:etat:acd:aeoi_fatca:v2.0"
    xsi:schemaLocation="AEOI_FATCA_v2.0.xsd">
    <aeoi_lux_fatca:AEOI_FATCA> 

    </aeoi_lux_fatca:AEOI_FATCA>
</aeoi_lux_fatca:AEOI_LUX>
将其从记事本++保存到
\\\lan\\
中,复制架构文件后,将导致解析架构文件时出错:

XML模式是最适合的模式

显然,
AEOI_LUX_V2.0.xsd
中的以下引用:

<xsd:element name="CountryPostal" type="iso:CountryCode_Type" minOccurs="0" maxOccurs="1"/>
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited  by CTIE (CENTRE DES TECHNOLOGIES DE L'INFORMATION DE L'ETAT) -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
targetNamespace="urn:lu:etat:acd:aeoi:iso_cntry:v1" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.1">
    <!--  ISO 3166 alpha 2 Country Code extended -->
    <xsd:simpleType name="CountryCode_Type">
        <xsd:annotation>
            <xsd:documentation xml:lang="en">ISO-3166 Alpha 2 country codes</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="AF">
                <xsd:annotation>
                    <xsd:documentation>AFGHANISTAN</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
            ...
            <xsd:enumeration value="ZWL">
                <xsd:annotation>
                    <xsd:documentation>Zimbabwe Dollar: ZIMBABWE</xsd:documentation>
                </xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:schema>
还定义了
isocrstypesv1.0.xsd
,这可能与此相关

  • 在带有
    targetNamespace=“urn:oecd:ties:isocrstypes:v1”的
    isocrstypes\u v1.0.xsd中
  • 在带有
    targetNamespace=“urn:oecd:ties:isofatcatypes:v1”的
    isofatcatypes_v1.1.xsd

对于比利时CA的FACTA声明,使用类似的模式,我在lan文件夹上没有相同的问题。

我认为原因是没有导入ISO_COUNTRY_CODES_V1.1.xsd,因为找不到它的位置

<xsd:import namespace="urn:lu:etat:acd:aeoi:iso_cntry:v1" schemaLocation="ISO_COUNTRY_CODES_V1.1.xsd" />


应使用正确的schemaLocation进行更改。

是否应将完整URL指定为schemaLocation?在我的电脑或我们的局域网上指定一个位置是没有选择的:XML是要传递给外部方的。
<xsd:import namespace="urn:lu:etat:acd:aeoi:iso_cntry:v1" schemaLocation="ISO_COUNTRY_CODES_V1.1.xsd" />