Registry: GrSciColl ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ์กฐํšŒ ์„œ๋น„์Šค ๊ตฌํ˜„

์— ๋งŒ๋“  2020๋…„ 06์›” 17์ผ  ยท  11์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: gbif/registry

์ด ์กฐํšŒ ์„œ๋น„์Šค๋Š” ๋ฐœ์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ปฌ๋ ‰์…˜๊ณผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์กฐํšŒ๋ฅผ ์œ„ํ•ด ์ปฌ๋ ‰์…˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์ด ๋™์ž‘์€ ๋ฐ์ดํ„ฐ์„ธํŠธ ๋จธ์‹  ํƒœ๊ทธ๋กœ ๋ฎ์–ด์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์„œ๋น„์Šค๋Š” ๋‹ค์Œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ˆ˜์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ธฐ๊ด€ ์ฝ”๋“œ
  • ๊ธฐ๊ด€ ID
  • ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ
  • ์ปฌ๋ ‰์…˜ ID
  • ๋ฐ์ดํ„ฐ์„ธํŠธ ํ‚ค
  • ์†Œ์œ ์ž ๊ธฐ๊ด€ ์ฝ”๋“œ ??

๋ฐ์ดํ„ฐ์„ธํŠธ์— ๋จธ์‹  ํƒœ๊ทธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์กฐํšŒ๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค.

์„œ๋น„์Šค๋Š” ์ผ์น˜๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ข‹์€์ง€(์ •ํ™•ํ•œ์ง€, ํ๋ฆฟํ•œ์ง€ ๋“ฑ) ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ ์ผ์น˜๋Š” ์ฝ”๋“œ๊ฐ€ ์ผ์น˜ํ•˜๊ณ  ID๊ฐ€ ์ผ์น˜ํ•˜๊ฑฐ๋‚˜ ๋ชจ์ˆœ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: ํ•œ์ชฝ์—๋งŒ ์กด์žฌ).

๋‹ค๋ฅธ ๊ฑด ์—†๋‚˜์š”? ๊ณ ๋ คํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

question GRSciColl

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฐฉ๊ธˆ ์ „์— ๊ฐ€์ง€๊ณ  ์žˆ๋˜ csv ์ถ”์ถœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ผ์น˜๋ฅผ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.
csv๋Š” ๊ฐ๊ฐ์— ๋Œ€ํ•œ ๋ฐœ์ƒ ํšŸ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ณ ์œ ํ•œ institutionId, institutionCode, datasetKey, publisherKey ์ž…๋‹ˆ๋‹ค.

2500๋ฒˆ์ด ๋„˜๋Š” ํ•ญ๋ชฉ์„ ๊ฐ€์ ธ์™€์„œ ์„œ๋น„์Šค์™€ ์ผ์น˜์‹œํ‚ค๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค.

105,871,241 occurrences had a single match
 24,553,278 with an exact singular match
 27,113,941 occurrences had multiple matches
 34,998,066 occurrences had no match

2,374 combinations was tested against the service (multiple can be the same since it included dataset and publisher)

๋‚˜์˜์ง€ ์•Š์€ ์‹œ์ž‘์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฒฝ๊ธฐ์˜ ์งˆ์„ ํ‰๊ฐ€ํ•˜์ง€ ์•Š์•˜๋‹ค.

๋ชจ๋“  11 ๋Œ“๊ธ€

DEV์— ์ปฌ๋ ‰์…˜ ์กฐํšŒ ์„œ๋น„์Šค์˜ ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์„ ๋„ฃ์—ˆ์Šต๋‹ˆ๋‹ค(์—ฌ์ „ํžˆ ๋จธ์‹  ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ). ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ๊ธฐ๋Œ€ํ•œ ๊ฒƒ์ธ์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค.

๊ธฐ๊ด€ ์ผ์น˜ ๋ชฉ๋ก๊ณผ ์ปฌ๋ ‰์…˜ ์ผ์น˜ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๊ฐ€ ๊ณ ์œ ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋ชฉ๋ก์ด๋ฏ€๋กœ ์—ฌ๋Ÿฌ ์˜ต์…˜์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๊ณ  ๋‹ค๋ฅธ ํ•„๋“œ๋กœ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ ๊ฒฝ๊ธฐ์— ๋Œ€ํ•ด ๋‹ค์Œ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  • ์œ ํ˜•: exact ๋˜๋Š” fuzzy ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. exact ๋Š” ์ฝ”๋“œ์™€ ์‹๋ณ„์ž๊ฐ€ ๋ชจ๋‘ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด fuzzy ์ž…๋‹ˆ๋‹ค.
  • ๋น„๊ณ : ๊ฒฝ๊ธฐ๊ฐ€ ์–ด๋–ป๊ฒŒ ์ง„ํ–‰๋˜์—ˆ๋Š”์ง€ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•œ ๊ด€์ฐฐ์ž…๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

    • CODE_MATCH : ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ

    • IDENTIFIER_MATCH : ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ

    • ALTERNATIVE_CODE_MATCH : ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜์ง€ ์•Š์Œ

    • NAME_MATCH : ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ์•…์„ผํŠธ์™€ ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•˜์ง€๋งŒ ์ ‘๋‘์‚ฌ ๋˜๋Š” ์ ‘๋ฏธ์‚ฌ ์ผ์น˜๋ฅผ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    • PROBABLY_ON_LOAN : ์†Œ์œ ์ž ๊ธฐ๊ด€๊ณผ ๊ธฐ๊ด€์ด ๋™์ผํ•˜์ง€ ์•Š์„ ๋•Œ ๋ฐœ์ƒ

    • INST_COLL_MISMATCH : ๋งค์นญ๋œ ๊ธฐ๊ด€์— ์†Œ์žฅ๊ธฐ๊ด€์ด ์—†์„ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๊ด€ ์ผ์น˜ ํ•ญ๋ชฉ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ผ์น˜ํ•˜๋Š” ๊ธฐ๊ด€ ์ค‘ ํ•˜๋‚˜์— ์†ํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ์ปฌ๋ ‰์…˜์ด ํฌ๋ฏธํ•˜๊ฒŒ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ์ปฌ๋ ‰์…˜์ด ํ•ญ์ƒ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ์˜ˆ๋ฅผ ํ™•์ธํ•˜์—ฌ ์„œ๋น„์Šค๊ฐ€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@MortenHofft @timrobertson100 ์ œ๊ฐ€ ๋ญ”๊ฐ€ ๋†“์น˜๊ณ  ์žˆ๋Š” ๊ฑด๊ฐ€์š”?

ํ˜„์žฌ ํŒŒ์ดํ”„๋ผ์ธ ์—์„œ ์ด๋ฏธ ์‚ฌ์šฉ๋œ ํ˜•์‹์— ๋”ฐ๋ผ ๋จธ์‹  ํƒœ๊ทธ ๊ฒ€์‚ฌ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ๋„ค์ž„์ŠคํŽ˜์ด์Šค: processing.gbif.org
  • ์ด๋ฆ„:

    • institutionCode : ๊ธฐ๊ด€ ์ฝ”๋“œ๋ฅผ GrSciColl ๊ธฐ๊ด€์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

    • collectionCode : ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ๋ฅผ GrSciColl ์ปฌ๋ ‰์…˜์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

    • collectionToInstitutionCode : ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ๋ฅผ GrSciColl ๊ธฐ๊ด€์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์„ collectionCodeToInstitution (๋ฏธ์ •)๋กœ ๋ฐ”๊พธ๊ฒ ์Šต๋‹ˆ๋‹ค.

    • institutionToCollectionCode : ๊ธฐ๊ด€ ์ฝ”๋“œ๋ฅผ GrSciColl ์ปฌ๋ ‰์…˜์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์„ institutionCodeToCollection (๋ฏธ์ •)์œผ๋กœ ๋ฐ”๊พธ๊ฒ ์Šต๋‹ˆ๋‹ค.

ํƒœ๊ทธ ๊ฐ’์€ {key}:{code} ํŒจํ„ด์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ข‹์•„๋ณด์ด๋„ค์š” - ์‹ค์ œ ๋ฐ์ดํ„ฐ์— ์ ์šฉ๋˜๋Š” ๋ชจ์Šต์ด ๋„ˆ๋ฌด ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์žฅํ™ฉํ•˜๊ฑฐ๋‚˜ ๋ง๊ฑฐ๋‚˜
์ข… ์ผ์น˜์—์„œ์™€ ๊ฐ™์ด "์ƒ์„ธํ•œ" ์˜ต์…˜์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

์ง์› ์ด์™ธ์˜ ์‚ฌ๋žŒ์ด ์ด๊ฒƒ์„ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•œ๋‹ค๋ฉด match or none ์˜ต์…˜๋งŒ ์žˆ์œผ๋ฉด ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Plazi๊ฐ€ ๊ธฐ์‚ฌ์˜ ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ์—์„œ ๋งํฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

// plain lookup - not verbose - will at most return one institution and one collection.
{
  institutionMatch: {
    matchType: 'NONE'
  },
  {
    collectionMatch: {
      matchType: 'FUZZY',
      reasons: ['SAME_NAME', 'SAME_CODE', 'SAME_COUNTRY'],
      entity: {
        ...
      }
    }
  }
}

// verbose option
// could be like the one running in dev
{
  "institutionMatches": [],
  "collectionMatches": [
    ...
  ]
}

๋ช…๋ช…์—
์ข… ์ผ์น˜ API๋Š” $#$ type matchType ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ๋Š” $# remarks reasons ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ๋ฐ์ดํ„ฐ
์‹ค์ œ ๋ฐ์ดํ„ฐ์—์„œ ์‹คํ–‰ํ•˜๊ธฐ ์ „์— ๊ธฐ๊ด€ ์ฝ”๋“œ/ID colelctionCode/ID์˜ ์ƒ์œ„ 500๊ฐœ ์กฐํ•ฉ์„ ํ™•์ธํ•˜๊ณ  ๊ทธ ์ค‘ ์ผ๋ถ€๋ฅผ ์ˆ˜๋™์œผ๋กœ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ญ”๊ฐ€๋ฅผ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์˜ˆ๋ฅผ ๋“ค์–ด ID์™€ ์ฝ”๋“œ๋ฅผ ๋’ค์ง‘์„ ํ•„์š”๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •)

๋งค์น˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
์ด๊ฒƒ์ด ์–ธ์ œ ๊ฒฝ๊ธฐ๋ฅผ ์ด‰๋ฐœํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

  • ์ •ํ™•ํžˆ๋งŒ?
  • ํ๋ฆฟํ•˜์ง€๋งŒ ๋‹จ ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ
  • ์ •ํ™•ํ•œ ๊ธฐ๊ด€์ด์ง€๋งŒ ํ•˜๋‚˜์˜ ํผ์ง€ ์ปฌ๋ ‰์…˜๋งŒ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ช…ํ™•์„ฑ์œผ๋กœ์„œ์˜ ๊ตญ๊ฐ€
๊ตญ๊ฐ€๋ฅผ ๊ฒ€์ƒ‰ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ํ•ญ๋ชฉ์„ ์ธ๋ฑ์‹ฑํ•  ๋•Œ ์˜ˆ๋ฅผ ๋“ค์–ด 2๊ฐœ์˜ ์ปฌ๋ ‰์…˜ ์ผ์น˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ช…ํ™•ํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ๊ฒŒ์‹œ์ž์˜ ๊ตญ๊ฐ€๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์†Œ๋น„์ž๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ์Šต๋‹ˆ๊นŒ?

๋ฐฉ๊ธˆ ์ „์— ๊ฐ€์ง€๊ณ  ์žˆ๋˜ csv ์ถ”์ถœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ผ์น˜๋ฅผ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.
csv๋Š” ๊ฐ๊ฐ์— ๋Œ€ํ•œ ๋ฐœ์ƒ ํšŸ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ณ ์œ ํ•œ institutionId, institutionCode, datasetKey, publisherKey ์ž…๋‹ˆ๋‹ค.

2500๋ฒˆ์ด ๋„˜๋Š” ํ•ญ๋ชฉ์„ ๊ฐ€์ ธ์™€์„œ ์„œ๋น„์Šค์™€ ์ผ์น˜์‹œํ‚ค๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค.

105,871,241 occurrences had a single match
 24,553,278 with an exact singular match
 27,113,941 occurrences had multiple matches
 34,998,066 occurrences had no match

2,374 combinations was tested against the service (multiple can be the same since it included dataset and publisher)

๋‚˜์˜์ง€ ์•Š์€ ์‹œ์ž‘์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฒฝ๊ธฐ์˜ ์งˆ์„ ํ‰๊ฐ€ํ•˜์ง€ ์•Š์•˜๋‹ค.

_๋ฌด์—‡์ด ๋งค์น˜๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๊นŒ?_
์ด๊ฒƒ์ด ์–ธ์ œ ๊ฒฝ๊ธฐ๋ฅผ ์ด‰๋ฐœํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

  • ์ •ํ™•ํžˆ๋งŒ?
  • ํ๋ฆฟํ•˜์ง€๋งŒ ๋‹จ ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ
  • ์ •ํ™•ํ•œ ๊ธฐ๊ด€์ด์ง€๋งŒ ํ•˜๋‚˜์˜ ํผ์ง€ ์ปฌ๋ ‰์…˜๋งŒ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด๊ฒƒ์€ 1๊ฐœ์˜ ์ผ์น˜๋งŒ ํ‘œ์‹œํ•˜๋Š” ์žฅํ™ฉํ•˜์ง€ ์•Š์€ ๋ฒ„์ „์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ?

๋‹ค์Œ๊ณผ ๊ฐ™์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ธฐ๊ด€์šฉ

    • ์ •ํ™•ํžˆ ํ•˜๋‚˜์˜ ์ผ์น˜๋งŒ

    • ๋‹จ ํ•˜๋‚˜์˜ ํผ์ง€ ์ผ์น˜

  • ์ปฌ๋ ‰์…˜์šฉ

    • ์ •ํ™•ํžˆ ํ•˜๋‚˜์˜ ์ผ์น˜๋งŒ

    • ๊ธฐ๊ด€ ์ผ์น˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ธฐ๊ด€์ด ์ผ์น˜ํ•˜๋Š” ๊ธฐ๊ด€๊ณผ ๋™์ผํ•œ ํผ์ง€ ์ผ์น˜ ํ•˜๋‚˜๋งŒ

    • ๊ธฐ๊ด€ ์ผ์น˜๊ฐ€ ์—†์œผ๋ฉด ํ•˜๋‚˜์˜ ํผ์ง€ ์ผ์น˜๋งŒ

์ „์ฒด ๊ฒฝ๊ธฐ ์ƒํƒœ๋„ ์ œ๊ณตํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

_๋ฌด์—‡์ด ๋งค์น˜๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๊นŒ?_
์ด๊ฒƒ์ด ์–ธ์ œ ๊ฒฝ๊ธฐ๋ฅผ ์ด‰๋ฐœํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

  • ์ •ํ™•ํžˆ๋งŒ?
  • ํ๋ฆฟํ•˜์ง€๋งŒ ๊ฒฐ๊ณผ๋Š” ํ•˜๋‚˜๋ฟ์ž…๋‹ˆ๋‹ค.
  • ์ •ํ™•ํ•œ ๊ธฐ๊ด€์ด์ง€๋งŒ ํ•˜๋‚˜์˜ ํผ์ง€ ์ปฌ๋ ‰์…˜๋งŒ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ๋‹จ 1๊ฐœ์˜ ์ผ์น˜๋งŒ ํ‘œ์‹œํ•˜๋Š” ์žฅํ™ฉํ•˜์ง€ ์•Š์€ ๋ฒ„์ „์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ?

๋ฐœ์ƒ์— GrSciColl ID๋ฅผ ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•ด ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•  ๋•Œ๋ฅผ ์˜๋ฏธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ์„œ๋น„์Šค๊ฐ€ ๊ฒฐ์ •๊ณผ ๋ชจ๋“  ๋…ผ๋ฆฌ๋ฅผ ํฌํ•จํ•œ๋‹ค๊ณ  ์ƒ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์กฐํšŒ ์„œ๋น„์Šค์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ?


๊ทธ๊ฒƒ์€ ๋‹น์‹ ์ด ์ผ์น˜ํ•˜๋Š” ๋ชจ๋“  ID๋ฅผ ๋ฐœ์ƒ ์ƒ‰์ธ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ–ˆ๋‹ค๊ณ  ์ด์ „์— ์–ธ๊ธ‰ํ–ˆ๋˜ ๊ฒƒ์„ ์ƒ๊ธฐ์‹œํ‚ต๋‹ˆ๋‹ค.
2๊ฐ€์ง€ ๊ฐ€๋Šฅํ•œ ๋ฒ„์ „์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

  • ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ํ›„๋ณด๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” UI๋‚˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ํšจ๊ณผ์ ์œผ๋กœ ๋ถ€๋‹ด์„ ์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋™์ผํ•œ ํ‘œ๋ณธ์ด ์—ฌ๋Ÿฌ ์ปฌ๋ ‰์…˜์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
  • ํ•˜๋‚˜์˜ ํ™•์‹คํ•œ ๊ฒฝ๊ธฐ๊ฐ€ ์žˆ์„ ๋•Œ๋งŒ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜์‹ญ์‹œ์˜ค. ์„œ๋น„์Šค๋Š” ์ง„์ˆ ์— ๋Œ€ํ•œ ์ฑ…์ž„์„ ์ง‘๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋” ์ ์€ ์ˆ˜๋ฅผ ๋งž์ถœ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ €๋Š” ๋ฒ„์ „ 2๋ฅผ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. 1๊ฐœ์˜ ์ผ์น˜ํ•˜๋Š” ์ผ์น˜ ํ•ญ๋ชฉ์ด ์žˆ์„ ๋•Œ๋งŒ ๋ฐœ์ƒ์— GrSciColl ID๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ผ์น˜ํ•˜๋Š” ํ›„๋ณด์˜ ๋ฐฐ์—ด์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์ผ์น˜ ํ•ญ๋ชฉ์„ ์›ํ•˜๋ฉด ๊ฒŒ์‹œ์ž์—๊ฒŒ GrSciColl ๋˜๋Š” ๋ฐœ์ƒ ํ•ญ๋ชฉ์— ๋” ๋‚˜์€ ์‹๋ณ„์ž๋ฅผ ์ถ”๊ฐ€ํ•˜๋„๋ก ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ๋˜๋Š” ๊ฒฝ์šฐ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ๊ธฐ๊ณ„ ํƒœ๊ทธ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ํ›„๋ณด๋ฅผ ์ธ๋ฑ์‹ฑํ•˜๋Š” ๊ฒƒ์ด ์œ ์šฉํ•œ ๊ฒฝ์šฐ ๋ณ„๋„์˜ ํ•„๋“œ๋ฅผ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์„œ๋น„์Šค๊ฐ€ ํ”Œ๋ž˜๊ทธ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํผ์ง€ ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ ์ผ์น˜. ์ปฌ๋ ‰์…˜ ์ฝ”๋“œ๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ข… ๋งค์นญ ์„œ๋น„์Šค์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ํ”Œ๋ž˜๊ทธ๋ฅผ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • AMBIGUOUS_INSTITUTION : 1๊ฐœ ์ด์ƒ์˜ ๊ธฐ๊ด€์ด ๋ฐœ๊ฒฌ๋˜์—ˆ์œผ๋ฉฐ ๋™์ ์„ ๊นฐ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • AMBIGUOUS_COLLECTION : ์œ„์™€ ๋™์ผํ•˜์ง€๋งŒ ์ปฌ๋ ‰์…˜์šฉ
  • FUZZY_INSTITUTION_MATCH : 1๊ฐœ ๊ธฐ๊ด€์ด ์ผ์น˜ํ•˜์ง€๋งŒ ํ๋ฆฟํ•จ
  • FUZZY_COLLECTION_MATCH : ์œ„์™€ ๋™์ผํ•˜์ง€๋งŒ ์ปฌ๋ ‰์…˜์šฉ
  • INSTITUTION_NAME_USED : institutionCode ํ•„๋“œ์—๋Š” ์ฝ”๋“œ ๋Œ€์‹  ๊ธฐ๊ด€ ์ด๋ฆ„์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
  • OWNER_INSTITUTION_NAME_USED : ์œ„์™€ ๊ฐ™์ง€๋งŒ ์†Œ์œ ์ž ๊ธฐ๊ด€์šฉ
  • COLLECTION_NAME_USED : ์œ„์™€ ๋™์ผํ•˜์ง€๋งŒ ์ปฌ๋ ‰์…˜์šฉ
  • NO_COLLECTION_CODE_MATCH : ์ œ๊ณต๋œ ์ฝ”๋“œ๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์Œ
  • NO_INSTITUTION_CODE_MATCH : ์œ„์™€ ๋™์ผ
  • NO_COLLECTION_ID_MATCH : ์ œ๊ณต๋œ ID๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • NO_INSTITUTION_ID_MATCH : ์œ„์™€ ๋™์ผ
  • INSTITUTION_COLLECTION_MISMATCH : ์ฐพ์€ ์ปฌ๋ ‰์…˜์ด ์ผ์น˜ํ•˜๋Š” ๊ธฐ๊ด€์— ์†ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํŽธ์ง‘: INSTITUTION_NAME_USED ํ•ญ๋ชฉ์€ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ์—๋Š” FUZZY_INSTITUTION_MATCH ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์‹œ์ž์—๊ฒŒ ๋” ์œ ์šฉํ•œ ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

์ €๋Š” ๊ทธ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ํผ๋ธ”๋ฆฌ์…”๋“ค์ด ์ด๋Ÿฌํ•œ ํ”Œ๋ž˜๊ทธ๋ฅผ ๋†’์ด ํ‰๊ฐ€ํ•˜๊ณ  ๊ทธ์— ๋”ฐ๋ผ ํ–‰๋™ํ•˜๋Š” ๊ฒƒ์ด ์ œ ์ธ์ƒ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์ผ์น˜๋ฅผ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์ฐฐ๋ ฅ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ ์„œ๋น„์Šค๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

{
  "institutionMatch": {
    ...
  },
  "collectionMatch": {
    ...
  },
  alternativeMatches { 
    institutionMatches: []
    collectionMatches: []
  }
}

๋Œ€์ฒด ์ผ์น˜ ํ•ญ๋ชฉ์€ verbose ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ true๋กœ ์„ค์ •๋œ ๊ฒฝ์šฐ์—๋งŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ํผ์ง€ ์ผ์น˜๋Š” ์„ฑ๋Šฅ์ƒ์˜ ์ด์œ ๋กœ 20๊ฐœ์˜ ๊ฒฐ๊ณผ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค.

๊ด€๊ณ„๋ฅผ ๋Š๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” Country ๋งค๊ฐœ๋ณ€์ˆ˜๋„ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. http://api.gbif-dev.org/v1/grscicoll/lookup?institutionCode=BR&country=BE&verbose=true

๋‹ค์Œ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋ผ๋„ ์ถฉ์กฑ๋˜๋ฉด ์ผ์น˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

  • ๊ธฐ๊ณ„ ํƒœ๊ทธ ์ผ์น˜๊ฐ€ 1๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
  • ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์ด 1๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
  • ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์ง€๋งŒ ์ˆ˜์‹ ๋œ ๊ตญ๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์€ ํ•˜๋‚˜๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํผ์ง€ ์ผ์น˜๊ฐ€ 1๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
  • ํผ์ง€ ์ผ์น˜ ํ•ญ๋ชฉ์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์ง€๋งŒ ์ตœ์†Œํ•œ ์ฝ”๋“œ ๋˜๋Š” ID์™€ ํ•˜๋‚˜ ์ด์ƒ์˜ ํ•„๋“œ(์ด๋ฆ„ ๋˜๋Š” ๋Œ€์ฒด ์ฝ”๋“œ)์™€ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์ด ํ•˜๋‚˜๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํผ์ง€ ์ผ์น˜ ํ•ญ๋ชฉ์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์ง€๋งŒ ์ˆ˜์‹ ๋œ ๊ตญ๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์€ ํ•˜๋‚˜๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์†Œ์œ ์ž ๊ธฐ๊ด€์ด ๊ธฐ๊ด€๊ณผ ๋‹ค๋ฅธ ๊ธฐ๊ด€์€ ์ผ์น˜ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ธฐ๊ด€์ด ๊ธฐ๊ด€์—์„œ ์Šน์ธํ•œ ์ผ์น˜ ํ•ญ๋ชฉ๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์ปฌ๋ ‰์…˜๋„ ์ผ์น˜ ํ•ญ๋ชฉ์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ”Œ๋ž˜๊ทธ๋ฅผ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•˜์ง€๋งŒ ๋Œ€์‹  ์ƒํƒœ ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ACCEPTED : ์ˆ˜๋ฝ๋œ ์ผ์น˜
  • AMBIGUOUS : 1๊ฐœ ์ด์ƒ์˜ ๊ฒฐ๊ณผ๊ฐ€ ๋ฐœ๊ฒฌ๋˜์—ˆ์œผ๋ฉฐ ๋™์ ์„ ๊นฐ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • AMBIGUOUS_MACHINE_TAGS : ์œ„์™€ ๊ฐ™์ง€๋งŒ ๊ธฐ๊ณ„ ํƒœ๊ทธ๊ฐ€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.
  • AMBIGUOUS_OWNER : ๊ฒฐ๊ณผ๊ฐ€ ์žˆ์ง€๋งŒ ๊ธฐ๊ด€ ์†Œ์œ ์ž์™€ ์ผ์น˜ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋Œ€์ถœ ์ˆ˜์ง‘์— ์—ฐ๊ฒฐํ•˜์ง€ ์•Š๋„๋ก ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.
  • AMBIGUOUS_INSTITUTION_MISMATCH : ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์ผ์น˜ ํ•ญ๋ชฉ์ด ์žˆ์ง€๋งŒ ์ผ์น˜ํ•˜๋Š” ๊ธฐ๊ด€์— ์†ํ•˜์ง€ ์•Š์Œ
  • DOUBTFUL : ์ฐพ์€ ์ผ์น˜ ํ•ญ๋ชฉ์ด ํ๋ฆผ

๋‚˜๋จธ์ง€ ํ”Œ๋ž˜๊ทธ๋Š” ์ผ์น˜์˜ reasons ํ•„๋“œ์—์„œ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ดํ”„๋ผ์ธ์˜ ์ด ํ•„๋“œ์—์„œ ๋ฌธ์ œ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1000๊ฐœ ์ด์ƒ์˜ ๋ ˆ์ฝ”๋“œ์— ์žˆ๋Š” ๋‹ค์Œ ํ•„๋“œ์˜ PROD ์กฐํ•ฉ ๋ฐ์ดํ„ฐ์—์„œ ์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.

  • v_institutionid
  • v_institutioncode
  • v_ownerinstitutioncode
  • v_collectioncode
  • v_collectionid
  • datasetkey

๋˜ํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ๋ฐœํ–‰ ๊ธฐ๊ด€์—์„œ ๊ตญ๊ฐ€๋ฅผ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ UAT์˜ ์กฐํšŒ ์„œ๋น„์Šค์— ์ „๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ๋Š” ์ด ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ ์— ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰