PlusMagi's Blog By Pitt Phunsanit

Thesaurus: รูปแบบ SKOS-JSONLD Format มาร์กอัปยุคใหม่สำหรับการเชื่อมต่อ Web API และระบบค้นหาแบบ Real-time

ในปัจจุบัน สถาปัตยกรรมซอฟต์แวร์เน้นการพัฒนาผ่าน Web Application ข้ามแพลตฟอร์ม (เช่น ระบบที่พัฒนาด้วย Nuxt, .NET Core API หรือระบบ Microservices) การใช้ XML จึงสร้างภาระและความหน่วงให้กับเครือข่าย รูปแบบ JSON-LD (JavaScript Object Notation for Linked Data) ที่ทำงานบนมาตรฐาน SKOS จึงกลายเป็นมาร์กอัปที่ได้รับความนิยมสูงสุดสำหรับแอปพลิเคชันยุคใหม่ เพราะมันรวมความสามารถในการระบุความสัมพันธ์เชิงโครงข่ายแบบ Semantic Web เข้ากับความเรียบง่าย สแกนไว และประมวลผลได้อย่างรวดเร็วในหน่วยความจำของภาษาโปรแกรมมิ่งยุคปัจจุบัน


โครงสร้างและไวยากรณ์ (Syntax)

JSON-LD ใช้โครงสร้าง Key-Value Pair ของ JSON ทั่วไป แต่มีการกำหนด “บริบทข้อมูล” ผ่านชุดคำสั่งพิเศษที่ขึ้นต้นด้วยเครื่องหมาย @ (At-sign) ดังนี้


ตัวอย่างมาร์กอัปใช้งานจริง

{
  "@context": {
    "skos": "http://www.w3.org/2004/02/skos/core#",
    "id": "@id",
    "type": "@type",
    "prefLabel": { "@id": "skos:prefLabel" },
    "altLabel": { "@id": "skos:altLabel" },
    "scopeNote": { "@id": "skos:scopeNote" },
    "broader": { "@id": "skos:broader", "@type": "@id" },
    "related": { "@id": "skos:related", "@type": "@id" }
  },
  "@graph": [
    {
      "id": "http://plusmagi.com/thesaurus/spot-deal",
      "type": "skos:Concept",
      "prefLabel": [
        { "@value": "Spot Deal", "@language": "en" }
      ],
      "altLabel": [
        { "@value": "ธุรกรรมซื้อขายทันที", "@language": "th" },
        { "@value": "สัญญารายครั้ง", "@language": "th" },
        { "@value": "Spot Contract", "@language": "en" }
      ],
      "scopeNote": [
        { "@value": "ข้อตกลงในการซื้อขายสินทรัพย์ในราคาตลาดปัจจุบัน ชำระเงินและส่งมอบภายใน 2 วันทำการ", "@language": "th" }
      ],
      "broader": "http://plusmagi.com/thesaurus/deal-type",
      "related": [
        "http://plusmagi.com/thesaurus/fixed-price",
        "http://plusmagi.com/thesaurus/floating-price"
      ]
    }
  ]
}

ข้อดีและข้อจำกัด


อ่านเพิ่มเติม

Exit mobile version