1

注文フルフィルメントのために Amazon マーケットプレイス Web サービス SubmitFeed を検証しようとすると、次のエラーが表示されます。

xmllint.exe --schema OrderFulfillment.xsd OrderFulfillment.xml

OrderFulfillment.xml:2: 要素 AmazonEnvelope: スキーマの有効性エラー: 要素 'AmazonEnvelope': 検証ルートに使用できる一致するグローバル宣言がありません。OrderFulfillment.xml が検証に失敗する

OrderFulfillment.xml

<?xml version="1.0" encoding="UTF-8"?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
    <Header>
        <DocumentVersion>1.01</DocumentVersion>
        <MerchantIdentifier>AXGZ4X5NTV6SN</MerchantIdentifier>
    </Header>
    <MessageType>OrderFulfillment</MessageType>
    <Message>
        <MessageID>1</MessageID>
        <OrderFulfillment>
            <AmazonOrderID>104-5894782-1841713</AmazonOrderID>
            <FulfillmentDate>2012-04-07T15:54:40.154Z</FulfillmentDate>
            <FulfillmentData>
                <CarrierCode>USPS</CarrierCode>
                <ShippingMethod>Priority</ShippingMethod>
                <ShipperTrackingNumber>9109901000372243321450</ShipperTrackingNumber>
            </FulfillmentData>
        </OrderFulfillment>
    </Message>
</AmazonEnvelope>

私は何を間違っていますか?

4

1 に答える 1

1

解決策が見つかりました。親スキーマで検証する必要があります。この場合は amzn-envelope.xsd

インライン スキーマもロードしながら、XSD ファイルに対して XML を検証するにはどうすればよいですか? を参照してください。

于 2012-04-13T01:08:10.857 に答える