menampilkan file owl di website

membuat contoh frontend-nya, yaitu web sederhana yang:

  1. Menyambung ke Fuseki SPARQL endpoint (menggunakan data dari library.owl).

  2. Mengambil dan menampilkan data buku dan penulisnya.

  3. Menggunakan HTML + JavaScript (Fetch API), jadi bisa langsung dibuka di browser.

Contoh Frontend: index.html

  • Kode Web (HTML + JS)

Simpan file ini sebagai index.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Library Ontology Viewer</title>
  <style>
    body {
      font-family: Arial, sans-serif;
      padding: 2rem;
      background: #f4f4f4;
    }
    h1 {
      color: #333;
    }
    table {
      border-collapse: collapse;
      width: 100%;
      margin-top: 1rem;
    }
    th, td {
      padding: 10px;
      border: 1px solid #ccc;
      background: #fff;
    }
    th {
      background-color: #eee;
    }
  </style>
</head>
<body>
  <h1>???? Daftar Buku dan Penulis (Dari Ontologi)</h1>
  <table id="books-table">
    <thead>
      <tr>
        <th>Judul Buku</th>
        <th>Nama Penulis</th>
      </tr>
    </thead>
    <tbody></tbody>
  </table>

  <script>
    async function getBooks() {
      const query = `
        PREFIX lib: <http://www.semanticweb.org/ontologies/library#>
        SELECT ?title ?author WHERE {
          ?book a lib:Book .
          ?book lib:title ?title .
          ?book lib:hasAuthor ?auth .
          ?auth lib:name ?author .
        }
      `;

      const response = await fetch("http://localhost:3030/library/query", {
        method: "POST",
        headers: {
          "Content-Type": "application/sparql-query",
          "Accept": "application/sparql-results+json"
        },
        body: query
      });

      const result = await response.json();
      const tbody = document.querySelector("#books-table tbody");
      tbody.innerHTML = ""; // Clear previous content

      result.results.bindings.forEach(item => {
        const row = document.createElement("tr");
        const titleCell = document.createElement("td");
        const authorCell = document.createElement("td");

        titleCell.textContent = item.title.value;
        authorCell.textContent = item.author.value;

        row.appendChild(titleCell);
        row.appendChild(authorCell);
        tbody.appendChild(row);
      });
    }

    getBooks();
  </script>
</body>
</html>

 

  • Cara Menjalankan 

 

  1. Jalankan Fuseki dan Upload Ontologi:

    • Upload library.owl ke dataset bernama library.

    • Akses SPARQL endpoint di http://localhost:3030/library/query.

  2. Buka index.html di Browser.

    • Akan muncul tabel dengan data judul buku dan penulis berdasarkan ontologi.

 

Selamat hari raya idul fitri

0 Comments