取得 Authority 資料
前言
由於各個專案可能有取得Authority資料的需求,因此這邊提供取得Authority的人名、地名、時間之方法,已方便各專案使用。
程式位置
http://authority.ddbc.edu.tw/getAuthorityData.php
取得人名資料
需要餵給程式的參數
- type:必須指定成「person」。
- id:就是你想要取得人名資料的唯一碼,可接受7碼的Pno(ex-A000004)和5碼的人名PrjNo(ex-B0006)。
- jsoncallback:隨機產生的參數。
執行範例
http://authority.ddbc.edu.tw/getAuthorityData.php?type=person&id=A000004&jsoncallback=abc123
執行結果
abc123({
"data1": {
"Name": "畺良耶舍",
"AuthorityID": "A000004",
"Project_No": "B0004",
"Dynasty": "劉宋 ",
"birthtime": "5375436",
"deadtime": "5416343",
"Class": "譯經",
"Note": "西域人,最後出現在京師道林寺,宋元嘉十九年(442)後卒。(疑年錄:14)卒於江陵。(T50n2059_p0343c22)",
"Names": " 時稱"
}
})
欄位說明
1.AuthorityID:此筆資料於authority資料庫的唯一碼。
2.Project_No:專案碼,即此筆人名資料的專案編號。
3.Class:分類。
4.Note:註解。
5.birthtime:出生日(datecode)。
6.deadtime:死亡日(datecode)。
7.Dynasty:朝代。
8.Names:別名。
取得地名資料
需要餵給程式的參數
- type:必須指定成「place」。
- id:地名資料的唯一碼,可接受13碼以上的地名編碼(ex-CN232723Z01AA)或地名的PrjNo(ex-Z0106105)。
- jsoncallback:隨機產生的參數。
執行範例
http://authority.ddbc.edu.tw/getAuthorityData.php?type=place&id=CN610112Z05AA&jsoncallback=abc123
執行結果
abc123({
"data1": {
"Name": "長安",
"Dynasty": "西漢",
"AuthorityID": "CN610112Z05AA",
"X": "108.8835",
"Y": "34.3194",
"historicalDistrict": "西漢_司隸部",
"District": " 陝西省- 西安市- 未央區"
}
})
欄位說明
1.AuthorityID:地名編碼,地名的唯一碼。
2.District:行政區。
3.X:X座標。
4.Y:Y座標。
5.Dynasty:朝代。
6.historicalDistrict:歷史行政區。
7.Note:註解。
8.Names:別名。
取得時間資料
需要餵給程式的參數
- type:必須指定成「time」。
- from-to、when:時間的參數值為7碼的datecode(如:5314476)。
- 由於標記可能是一個時期或一個時間,因此這邊分成兩種形式,如果標記是「時期」,需要給的參數就是from和to。
- 如果標記是一個「時間」,參數就給when。
- jsoncallback:隨機產生的參數。
執行範例
1.from-to:
http://authority.ddbc.edu.tw/getAuthorityData.php?from=5314240&to=5314476&jsoncallback=abc123&type=time
2.when:
http://authority.ddbc.edu.tw/getAuthorityData.php?when=5314240&jsoncallback=abc123&type=time
執行結果
1.from-to:
abc123({
"F": {
"rows": "3",
"data1": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "孫吳",
"Emperor": "大帝",
"reignYear": "黃武",
"Year": "2",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
},
"data2": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "曹魏",
"Emperor": "文帝",
"reignYear": "黃初",
"Year": "4",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
},
"data3": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "蜀漢",
"Emperor": "後主",
"reignYear": "建興",
"Year": "1",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
}
},
"T": {
"rows": "3",
"data1": {
"dateCode": "5314476",
"adYear": "+0224-02-07",
"Dynasty": "孫吳",
"Emperor": "大帝",
"reignYear": "黃武",
"Year": "3",
"yearGanzhi": "甲辰",
"Month": " 正",
"Day": "1",
"monthGanzhi": "甲申"
},
"data2": {
"dateCode": "5314476",
"adYear": "+0224-02-07",
"Dynasty": "曹魏",
"Emperor": "文帝",
"reignYear": "黃初",
"Year": "4",
"yearGanzhi": "癸卯",
"Month": "十二",
"Day": "30",
"monthGanzhi": "甲申"
},
"data3": {
"dateCode": "5314476",
"adYear": "+0224-02-07",
"Dynasty": "蜀漢",
"Emperor": "後主",
"reignYear": "建興",
"Year": "1",
"yearGanzhi": "癸卯",
"Month": "十二",
"Day": "30",
"monthGanzhi": "甲申"
}
}
})
2.when:
abc123({
"W": {
"rows": "3",
"data1": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "孫吳",
"Emperor": "大帝",
"reignYear": "黃武",
"Year": "2",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
},
"data2": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "曹魏",
"Emperor": "文帝",
"reignYear": "黃初",
"Year": "4",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
},
"data3": {
"dateCode": "5314240",
"adYear": "+0223-06-16",
"Dynasty": "蜀漢",
"Emperor": "後主",
"reignYear": "建興",
"Year": "1",
"yearGanzhi": "癸卯",
"Month": " 五",
"Day": "1",
"monthGanzhi": "戊子"
}
}
})
欄位說明
時間的回傳資料有分成三層陣列,分別說明如下:
第一層
1.F、T:代表from的內容集合和to的內容集合。
2.W:代表when的內容集合。
第二層
1.rows:共有幾個並行年代。
1.data(N):N為數字,代表這是第幾個並行年代,N<=result。
第三層
1.dateCode:時間唯一碼。
2.adYear:西元年。
3.Dynasty:朝代。
4.Emperor:皇帝。
5.reignYear:年號。
6.Year:第幾年。
7.yearGanzhi:年干支。
8.Month:月。
9.Day:日。
10.monthGanzhi:月干支。
11.JD:Julian ID。