沃尔玛市场API JSON架构

时间:2020-10-20 16:34:25

标签: jsonschema walmart-api

沃尔玛引入了新版本的Marketplace API模式(v4):https://developer.walmart.com/#/apicenter/marketPlace/latest#theItemObject 并且,与以前的版本不同,它仅提供JSON格式(以前的版本具有XSD模式)。 我想将模式转换为实体,但事实证明文件实际上不是经典的JSON Schema。 有人知道它是什么格式,是否有任何用于解析和转换它的工具?

模式示例: https://developer.walmart.com/xsd/marketplace/items/Spec-4.0/MP_ITEM_SPEC_4.0.json

{
    "Headers": {
        "key": "headers",
        "name": "Headers",
        "attributes": {
            "requestId": {
                "key": "request_id",
                "name": "Request ID",
                "xmlName": "requestId",
                "requirementLevel": "Recommended",
                "closedList": "N",
                "multiSelect": "N",
                "minDataLength": 1,
                "maxDataLength": 64,
                "isComplex": false,
                "isChild": false,
                "children": [
                    [
                        "Request ID",
                        "requestId"
                    ]
                ],
                "rank": 1000,
                "dataType": "String",
                "definitions": "Partner's ID of the feed, partner's ID to correlate feed and feed response.",
                "dataDefinitions": "Alphanumeric, 64 characters - Partner's ID of the feed, partner's ID to correlate feed and feed response."
            },
            "requestBatchId": {
                "key": "request_batch_id",
                "name": "Request Batch ID",
                "xmlName": "requestBatchId",
                "requirementLevel": "Recommended",
                "closedList": "N",
                "multiSelect": "N",
                "minDataLength": 1,
                "maxDataLength": 64,
                "isComplex": false,
                "isChild": false,
                "children": [
                    [
                        "Request Batch ID",
                        "requestBatchId"
                    ]
                ],
                "rank": 2000,
                "dataType": "String",
                "definitions": "Represents external generated batchId",
                "dataDefinitions": "Alphanumeric, 64 characters - Represents external generated batchId"
            },
            "feedDate": {
                "key": "feed_date",
                "name": "Feed Date",
                "xmlName": "feedDate",
                "requirementLevel": "Recommended",
...

2 个答案:

答案 0 :(得分:0)

该站点上的实际模式文件包含private ProgressFragment getProgressFragment() { progressFragment = (ProgressFragment) fragmentManager.findFragmentByTag(ProgressFragment.TAG); if (progressFragment == null) { progressFragment = new ProgressFragment(); } return progressFragment; } private void showProgress(String text) { progressFragment = getProgressFragment(); if (!progressFragment.isAdded()) { fragmentManager.beginTransaction().replace(R.id.container, progressFragment, ProgressFragment.T TAG).commit(); } if (progressViewModel == null) { progressViewModel = new ViewModelProvider(this).get(ProgressViewModel.class); } progressViewModel.setText(text); } ,指示正在使用的JSON模式版本。您粘贴的是一个示例有效负载,这就是为什么它看起来不像JSON Schema的原因。

答案 1 :(得分:0)

自从这篇文章发布以来,该架构已针对v4.0进行了重大更改

最新架构在这里https://developer.walmart.com/image/asdp/us/mp/item/spec/4.0/MP_ITEM_SPEC_4.0.json