问题描述
沃尔玛引入了新版本的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","children": [
[
"Request Batch ID","requestBatchId"
]
],"rank": 2000,"deFinitions": "Represents external generated batchId",64 characters - Represents external generated batchId"
},"FeedDate": {
"key": "Feed_date","name": "Feed Date","xmlName": "FeedDate",...
解决方法
该站点上的实际模式文件包含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的原因。
自从这篇文章发布以来,该架构已针对v4.0进行了重大更改
最新架构在这里https://developer.walmart.com/image/asdp/us/mp/item/spec/4.0/MP_ITEM_SPEC_4.0.json