学位论文标识注册接口
用于学位论文标识注册,可调用该接口完成标识包括元数据的注册。
请求地址
公共请求参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
clientId |
String |
是 |
32 |
分配给开发者的应用ID |
12位长度字符串 |
secret |
String |
是 |
32 |
秘钥 |
32位长度字符串 |
参数详情
请求数据格式为xml或JSON
参数 |
描述 |
长度 |
字段类型 |
必填 |
可选值与限定条件 |
titleCN |
标题(中文) |
500 |
String |
是 |
中文标题长度不能大于500 |
titleEN |
标题(英文) |
500 |
String |
是 |
英文标题长度不能大于500 , 如无请填写"none" |
keywordsCN |
关键词(中文) |
|
List<String> |
是 |
无 |
keywordsEN |
关键词(英文) |
|
List<String> |
是 |
如无请填写"none" |
abstractCN |
摘要(中文) |
5000 |
String |
是 |
中文摘要长度不能大于5000 |
abstractEN |
摘要(英文) |
5000 |
String |
是 |
英文摘要长度不能大于5000 , 如无请填写"none" |
type |
学位论文类型 |
2 |
String |
是 |
请使用 学位论文类型 中key值 |
identifier |
CSTR标识 |
255 |
String |
是 |
编码符合CSTR要求,不得包含【!】、【?】 |
doi |
DOI标识 |
255 |
String |
是 |
标题不少于3个英文文字符,不多于1024个英文文字符 |
identificationStatus |
标识状态 |
10 |
Int |
是 |
请使用 状态数据字典 中key值 |
url |
资源链接 |
500 |
String |
是 |
学位论文链接地址长度不能大于500 |
author |
作者 |
|
DissertationAuthor |
是 |
|
-name |
作者姓名 |
200 |
String |
是 |
作者姓名长度不能超过200,且不能为空 |
-email |
作者邮箱 |
50 |
String |
是 |
如无请填写"none" |
-organizations |
作者机构 |
|
List<String> |
是 |
作者机构信息不能为空 |
supervisors |
导师 |
|
List<DissertationSupervisor; |
否 |
|
-sequence |
导师顺序 |
|
Int |
否 |
|
-name |
导师姓名 |
200 |
String |
否 |
|
-affiliation |
导师机构 |
500 |
List<String> |
否 |
|
org |
机构信息 |
|
List<DissertationOrg> |
是 |
|
-grantCN |
授予机构名称(中文) |
200 |
String |
是 |
作者姓名长度不能超过200,且不能为空 |
-grantEN |
授予机构名称(英文) |
50 |
String |
是 |
|
-trainingCN |
培养单位名称(中文) |
|
String |
是 |
作者机构信息不能为空 |
-trainingEN |
培养单位名称(英文) |
|
String |
是 |
作者机构信息不能为空 |
year |
年 |
5 |
String |
是 |
中文标题长度不能大于500 |
month |
月 |
2 |
String |
是 |
选择项07或12 |
day |
日 |
500 |
String |
否 |
默认1号 |
projects |
资助项目 |
|
List<DissertationProjectgt; |
否 |
|
-projectId |
资助项目编号 |
100 |
String |
否 |
|
-projectType |
资助项目类型 |
5 |
String |
否 |
请使用 项目类型数据字典 中key值 |
-projectName |
资助项目名称 |
20 |
String |
否 |
|
数据字典
学位论文类型数据字典
key |
value |
01 |
博士学位论文 |
02 |
硕士学位论文 |
03 |
本科学位论文 |
项目类型数据字典
key |
value |
100 |
科技部-国家科技重大专项 |
101 |
科技部-国家重点研发计划 |
102 |
科技部-技术创新引导专项 |
103 |
科技部-基地和人才专项 |
104 |
科技部-973计划 |
105 |
科技部-863计划 |
106 |
科技部-国家科技支撑计划 |
107 |
科技部-科技基础性工作专项 |
108 |
科技部-国际科技合作专项 |
109 |
科技部-政策引导类科技计划及专项 |
199 |
科技部-其他 |
200 |
基金委-面上项目 |
201 |
基金委-重点项目 |
202 |
基金委-重大研究计划项目 |
203 |
基金委-青年科学基金项目 |
204 |
基金委-地区科学基金项目 |
205 |
基金委-优秀青年科学基金项目 |
206 |
基金委-国家杰出青年基金项目 |
207 |
基金委-创新研究群体项目 |
208 |
基金委-海外及港澳学者合作研究基金项目 |
209 |
基金委-国际(地区)合作研究与交流项目 |
210 |
基金委-联合基金项目 |
211 |
基金委-国家重大科研仪器研制项目 |
299 |
基金委-其他 |
300 |
发改委-国家高技术产业化项目 |
399 |
发改委-其他 |
400 |
中科院-院战略性先导科技专项 |
401 |
中科院-院重大项目 |
402 |
中科院-院重要方向性项目 |
403 |
中科院-院“百人计划” |
404 |
中科院-研究所创新性项目 |
405 |
中科院-院创新人才项目 |
406 |
中科院-院外国专家特聘研究员 |
407 |
中科院-院信息化专项 |
408 |
中科院-网络安全和信息化专项 |
499 |
中科院-其他 |
500 |
国际合作-国家国际合作项目 |
501 |
国际合作-院级国际合作项目 |
502 |
国际合作-所级国际合作项目 |
599 |
国际合作-其他 |
600 |
地方-财政科技计划项目 |
601 |
地方-自然科学基金 |
602 |
地方-社会科学基金 |
699 |
地方-其他 |
状态数据字典
key |
value |
0 |
草稿 |
1 |
注册 |
2 |
可发现 |
公共响应参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
code |
int |
是 |
- |
网关返回状态码 |
200 |
message |
String |
是 |
- |
网关返回码描述信息 |
success |
timestamp |
String |
是 |
- |
时间戳,参见具体的API接口文档 |
2019-09-06 10:06:35 |
data |
Map |
否 |
- |
业务返回数据,参见响应参数 |
字符串,对象 |
请求参数示例
<?xml version='1.0' encoding='UTF-8'?>
<metadata_wrapper>
<metadatas>
<metadata>
<day>01</day>
<org>
<grantCN>中国科学院大学</grantCN>
<grantEN>University of Chinese Academy of Sciences</grantEN>
<trainingCN>中国科学院计算机网络信息中心</trainingCN>
<trainingEN>Computer Network Information Center,Chinese Academy of Science</trainingEN>
</org>
<type>01</type>
<month>07</month>
<year>2020</year>
<titleCN>中国积雪特性时空分布电子地图集</titleCN>
<titleEN>Computer Network Information Center,Chinese Academy of Science</titleEN>
<url>https://nmdc.cn/metadata/detail?id=5f508efd3b634971273f7da2</url>
<abstract_cn>积雪作为冰冻圈的重要组成部分,对气候变化、水资源..</abstract_cn>
<abstract_en>As an important part of the cryosphere, snow cover...</abstract_en>
<identifier>CSTR:32002.14.TESTDATA</identifier>
<doi>10.11922/11-6035.ncdc.2021.0030.zh</doi>
<keywords_cns>
<keywords_cn>中国</keywords_cn>
<keywords_cn>积雪物候</keywords_cn>
<keywords_cn>积雪深度</keywords_cn>
</keywords_cns>
<keywords_ens>
<keywords_en>China</keywords_en>
<keywords_en>snow phenology</keywords_en>
<keywords_en>snow depth</keywords_en>
</keywords_ens>
<author>
<name>张学良</name>
<organizations>
<organization>安徽师范大学地理与旅游学院</organization>
<organization>xxxxx学院</organization>
</organizations>
<email>zxl@nju.edu.cn</email>
</author>
<projects>
<project>
<projectId>2017FY100500</projectId>
<projectType>107</projectType>
<projectName>科技部国家科技基础资源调查专项</projectName>
</project>
<project>
<projectId>42171307</projectId>
<projectType>107</projectType>
<projectName>国家自然科学基金</projectName>
</project>
</projects>
<supervisors>
<supervisor>
<sequence>1</sequence>
<name>张文旭</name>
<affiliation>
<affiliation>中国科学院大学</affiliation>
</affiliation>
</supervisor>
</supervisors>
<identification_status>2</identification_status>
</metadata>
</metadatas>
</metadata_wrapper>
{
"metadatas" : [ {
"org" : {
"grantCN" : "中国科学院大学",
"grantEN" : "University of Chinese Academy of Sciences",
"trainingCN" : "中国科学院计算机网络信息中心",
"trainingEN" : "Computer Network Information Center,Chinese Academy of Science"
},
"type" : "01",
"day" : "01",
"month" : "07",
"year" : "2020",
"titleCN" : "中国积雪特性时空分布电子地图集",
"titleEN" : "Computer Network Information Center,Chinese Academy of Science",
"url" : "https://nmdc.cn/metadata/detail?id=5f508efd3b634971273f7da2",
"abstractCN" : "积雪作为冰冻圈的重要组成部分,对气候变化、水资源..",
"abstractEN" : "As an important part of the cryosphere, snow cover...",
"identifier" : "CSTR:32002.14.TESTDATA",
"doi" : "10.11922/11-6035.ncdc.2021.0030.zh",
"keywordsCN" : [ "中国", "积雪物候", "积雪深度" ],
"keywordsEN" : [ "China", "snow phenology", "snow depth" ],
"author" : {
"name" : "张学良",
"organizations" : [ "安徽师范大学地理与旅游学院", "xxxxx学院" ],
"email" : "zxl@nju.edu.cn"
},
"projects" : [ {
"projectId" : "2017FY100500",
"projectType" : "107",
"projectName" : "科技部国家科技基础资源调查专项"
}, {
"projectId" : "42171307",
"projectType" : "107",
"projectName" : "国家自然科学基金"
} ],
"supervisors" : [ {
"sequence" : 1,
"name" : "张文旭",
"affiliation" : [ "中国科学院大学" ]
} ],
"identificationStatus" : 2
} ]
}
测试代码
public void testRegister() throws IOException {
//是否使用沙盒环境,将下一行代码放开,则会使用沙盒环境
//System.setProperty(PidRequest.ACTIVE,PidRequest.SANDBOX);
String getIdentifier = PidClient.create("clientId", "secret").request(DissertationGetIdentifierRequest.builder().text("授予机构","培养单位", "学位论文类型", 2020)).execute();// year 为发稿年份
JSONObject object = JSON.parseObject(getIdentifier);
Integer code = Integer.valueOf(object.getString("code"));
String identifier = "";
if (code == 200){
identifier = object.getJSONObject("data").getString("content");
DissertationOrg dissertationOrg = new DissertationOrg();
dissertationOrg.setGrantCN("中国科学院大学");
dissertationOrg.setGrantEN("University of Chinese Academy of Sciences");
dissertationOrg.setTrainingCN("中国科学院计算机网络信息中心");
dissertationOrg.setTrainingEN("Computer Network Information Center,Chinese Academy of Science");
DissertationAuthor dissertationAuthor = new DissertationAuthor();
dissertationAuthor.setName("张学良");
dissertationAuthor.setOrganizations(Arrays.asList("安徽师范大学地理与旅游学院","xxxxx学院"));
dissertationAuthor.setEmail("zxl@nju.edu.cn");
DissertationProject dissertationProject = new DissertationProject();
dissertationProject.setProjectId("2017FY100500");
dissertationProject.setProjectType("107");
dissertationProject.setProjectName("科技部国家科技基础资源调查专项");
DissertationProject dissertationProject2 = new DissertationProject();
dissertationProject2.setProjectId("42171307");
dissertationProject2.setProjectType("107");
dissertationProject2.setProjectName("国家自然科学基金");
// 导师相关
DissertationSupervisor supervisor = new DissertationSupervisor();
supervisor.setSequence(1);
supervisor.setName("张文旭");
supervisor.setAffiliation(Arrays.asList("中国科学院大学"));
DissertationMetadata metadata = DissertationMetadata.builder()
.org(dissertationOrg)// 机构信息
.type("01")//类型
.day("01")//发布日
.month("07")//发布月
.year("2020")
.titleCN("中国积雪特性时空分布电子地图集") //中文标题
.titleEN("Computer Network Information Center,Chinese Academy of Science") // 英文标题
.url("https://nmdc.cn/metadata/detail?id=5f508efd3b634971273f7da2")
.abstractCN("积雪作为冰冻圈的重要组成部分,对气候变化、水资源..") // 中文摘要
.abstractEN("As an important part of the cryosphere, snow cover...") //英文摘要 没有英文可不填写
.identifier(identifier) // CSTR:xxxxx.xx.xxx
.doi("10.11922/11-6035.ncdc.2021.0030.zh")// doi 好
.keywordsCN(Arrays.asList("中国","积雪物候","积雪深度"))//中文关键词
.keywordsEN(Arrays.asList("China","snow phenology","snow depth"))//英文关键词
.author(dissertationAuthor)//文章作者
.projects(Arrays.asList(dissertationProject,dissertationProject2))//论文资助项目
.supervisors(Arrays.asList(supervisor)) // 导师相关信息
.identificationStatus(2)//标识状态 0:草稿1:可注册 2:可发现
.build();
//单条或多条标识信息
List<DissertationMetadata> metadataList = Lists.newArrayList();
//可放入多条元数据进行批量注册 - list.size() < 200
metadataList.add(bulidMetadata(identifier));
//设置批量注册 学位论文 元数据及前缀信息
DissertationDataWrapper wrapper = new DissertationDataWrapper();
wrapper.setMetadatas(metadataList);
//生成数据格式可选 json/xml
String xml = JacksonUtils.create("xml").convert(wrapper);
log.debug("XML metadata list is : {}",xml);
System.out.println(xml);
//执行标识注册并返回结果
String result =
PidClient.create("clientId", "secret")
.request(DissertationRegisterRequest.builder().paramType(ParamType.XML).params(xml))
.execute();
log.debug("response is : {}",result);
System.out.println(result);
}else{
log.error("标识号生成失败");
}
}
响应实例
JSON实例
{
"code": 200,
"message": "success",
"timestamp": "2019-07-25 11:29:21",
"data": null
}
异常实例
JSON实例
{
"code": 501,
"message": "数据注册错误",
"timestamp": "2019-07-25 11:29:21",
"data": null
}
业务错误码
错误码 |
错误描述 |
解决方案 |
SYSTEM_ERROR |
系统异常 |
重新发起请求 |
CSTR_REGISTER_ERROR |
标识注册异常 |
检查请求参数,修改后重新发起请求 |
学位论文标识详情接口
请求地址
公共请求参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
clientId |
String |
是 |
32 |
分配给开发者的应用ID |
12位长度字符串 |
secret |
String |
是 |
32 |
秘钥 |
32位长度字符串 |
请求参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
identifier |
String |
是 |
128 |
标识 |
CSTR:32002.14.TESTDATA |
公共响应参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
code |
int |
是 |
- |
网关返回状态码 |
200 |
message |
String |
是 |
- |
网关返回码描述信息 |
标识查询失败 |
timestamp |
String |
是 |
- |
时间戳,参见具体的API接口文档 |
2019-09-06 10:06:35 |
data |
Map |
否 |
- |
业务返回数据,参见响应参数 |
字符串,对象 |
响应参数
请参考注册接口参数详情
响应实例
{
"code": 200,
"message": "success",
"timestamp": "2022-06-14 17:50:30",
"data": {
"content": {
"org" : {
"grantCN" : "中国科学院大学",
"grantEN" : "University of Chinese Academy of Sciences",
"trainingCN" : "中国科学院计算机网络信息中心",
"trainingEN" : "Computer Network Information Center,Chinese Academy of Science"
},
"type" : "01",
"day" : "01",
"month" : "07",
"year" : "2020",
"titleCN" : "中国积雪特性时空分布电子地图集",
"titleEN" : "Computer Network Information Center,Chinese Academy of Science",
"url" : "https://nmdc.cn/metadata/detail?id=5f508efd3b634971273f7da2",
"abstractCN" : "积雪作为冰冻圈的重要组成部分,对气候变化、水资源..",
"abstractEN" : "As an important part of the cryosphere, snow cover...",
"identifier" : "CSTR:32002.14.TESTDATA",
"doi" : "10.11922/11-6035.ncdc.2021.0030.zh",
"keywordsCN" : [ "中国", "积雪物候", "积雪深度" ],
"keywordsEN" : [ "China", "snow phenology", "snow depth" ],
"author" : {
"name" : "张学良",
"organizations" : [ "安徽师范大学地理与旅游学院", "xxxxx学院" ],
"email" : "zxl@nju.edu.cn"
},
"projects" : [ {
"projectId" : "2017FY100500",
"projectType" : "107",
"projectName" : "科技部国家科技基础资源调查专项"
}, {
"projectId" : "42171307",
"projectType" : "107",
"projectName" : "国家自然科学基金"
} ],
"supervisors" : [ {
"sequence" : 1,
"name" : "张文旭",
"affiliation" : [ "中国科学院大学" ]
} ],
"identificationStatus" : 2
}
}
}
测试代码
public void testQuery() throws IOException {
String execute = PidClient.create("clientId", "secret").request(DissertationQueryRequest.builder().text("标识号")).execute();
System.out.println(execute);
}
异常实例
JSON实例
{
"code": 501,
"message": "数据错误",
"timestamp": "2019-07-25 11:29:21",
"data": null
}
业务错误码
错误码 |
错误描述 |
解决方案 |
SYSTEM_ERROR |
系统异常 |
重新发起请求 |
CSTR_QUERY_ERROR |
标识详情查询异常 |
检查请求参数,修改后重新发起请求 |
学位论文标识修改url接口
请求地址
公共请求参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
clientId |
String |
是 |
32 |
分配给开发者的应用ID |
12位长度字符串 |
secret |
String |
是 |
32 |
秘钥 |
32位长度字符串 |
请求参数
{
"identifier": "注册标识号",
"url": "新的解析地址"
}
公共响应参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
code |
int |
是 |
- |
网关返回状态码 |
200 |
message |
String |
是 |
- |
网关返回码描述信息 |
标识查询失败 |
timestamp |
String |
是 |
- |
时间戳,参见具体的API接口文档 |
2019-09-06 10:06:35 |
data |
Map |
否 |
- |
业务返回数据,参见响应参数 |
字符串,对象 |
异常实例
JSON实例
{
"code": 500,
"message": "url不能为空",
"timestamp": "2019-07-25 11:29:21",
"data": null
}
业务错误码
错误码 |
错误描述 |
解决方案 |
SYSTEM_ERROR |
系统异常 |
重新发起请求 |
CSTR_QUERY_ERROR |
标识详情查询异常 |
检查请求参数,修改后重新发起请求 |
学位论文标识生成接口
请求地址
公共请求参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
clientId |
String |
是 |
32 |
分配给开发者的应用ID |
12位长度字符串 |
secret |
String |
是 |
32 |
秘钥 |
32位长度字符串 |
请求参数 RequestParam传参
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
grant |
String |
是 |
128 |
授予机构中文名称 |
需在cstr平台进行注册并且分配前缀的机构名称才可以 |
training |
String |
是 |
128 |
培养单位中文名称 |
需在cstr平台进行注册并且分配前缀的机构名称才可以 |
type |
String |
是 |
2 |
学位论文类型 |
请使用 学位论文类型 中key值 |
year |
int |
是 |
4 |
发稿年份 |
2022 |
公共响应参数
参数 |
类型 |
是否必填 |
最大长度 |
描述 |
示例值 |
code |
int |
是 |
- |
网关返回状态码 |
200 |
message |
String |
是 |
- |
网关返回码描述信息 |
标识查询失败 |
timestamp |
String |
是 |
- |
时间戳,参见具体的API接口文档 |
2019-09-06 10:06:35 |
data |
Map |
否 |
- |
业务返回数据,参见响应参数 |
字符串,对象 |
响应参数
请参考注册接口参数详情
响应实例
{"code":200,"message":"success","timestamp":"2022-09-05 17:17:31","data":{"content":"32117.37.01.32002.20200001"}}
测试代码
public void testQuery() throws IOException {
String getIdentifier = PidClient.create("clientId", "secret").request(DissertationGetIdentifierRequest.builder().text("授予机构","培养单位", "学位论文类型", 2020)).execute();// year 为发稿年份
System.out.println(getIdentifier);
}
异常实例
JSON实例
{
"code": 501,
"message": "数据错误",
"timestamp": "2019-07-25 11:29:21",
"data": null
}
业务错误码
错误码 |
错误描述 |
解决方案 |
SYSTEM_ERROR |
系统异常 |
重新发起请求 |
CSTR_QUERY_ERROR |
标识详情查询异常 |
检查请求参数,修改后重新发起请求 |