Skip to content

05 11 2024 Lab Report #5

Deniz Bilge Akkoç edited this page Nov 5, 2024 · 1 revision

Overview

In this lab we talked about standarts and decided which standart is most suitable for our project.

  • Project Updates:
    We decided to use JSON-LD as our projects standard. JSON-LD is mainly aiming on linked data and in our case, the project will be a forum application which users will search some topics related to gym exercises. Since the project highly depends on semantic search and our endpoints include many context that is linked with each other, we wanted to find a standard that supports semantic search. That's why we chose JSON-LD. We had other options like activity streams, activitypub and wacg but we didnt think they covered our project.
  • Communication Updates:
    We cannot use discord so we switched to google meet.

JSON-LD Documentation

Purpose and Benefits:

  • What it's for: JSON-LD is a lightweight, linked data format that structures data in a way machines can understand, which is really helpful for semantic search and web integration.

Benefits:

  • Better Searchability: With JSON-LD, search engines and external systems can better recognize and index content on fitness topics like exercises, diet programs, and user interactions.
  • Interoperability: JSON-LD makes our forum’s data easy to link and reuse by other apps, which could make future integration with other fitness platforms or search tools smoother.
  • Improved User Experience: JSON-LD should make search results more accurate for users, especially when they’re looking up specific programs, exercises, or nutrition info.
  • SEO Benefits: JSON-LD improves our SEO by enabling rich search results (like snippets and previews), making our posts, programs, and profiles more visible in searches.

Requirements to Use JSON-LD:

  • Define Contexts: Each JSON-LD document should have defined contexts that spell out what each data element means (e.g., “name” refers to the exercise name, “targetMuscle” to targeted muscles).
  • Linking Data Properly: Make sure that related data is linked clearly, like connecting a program to a trainer or a diet to a dietician. JSON-LD helps define these relationships so they’re clear to search engines and other systems.
  • Follow a Consistent Structure: Use schema properties consistently, like starting each JSON-LD file with the “@context” property and following a structured format based on Schema.org terms (e.g., “ExercisePlan” for workouts, “NutritionInformation” for diet details).
  • Embedding JSON-LD in HTML: Since JSON-LD is usually embedded in HTML to be accessible to web crawlers, make sure it’s properly set up on all main pages, including posts, programs, and user profiles.

Enforcing JSON-LD in Practice:

  • Development Integration: JSON-LD tags will be added to all main pages of the forum, like profiles, programs, exercises, and posts. A checklist will ensure each JSON-LD element is correctly added.
  • Testing and Validation: Use tools like Google’s Structured Data Testing Tool or the JSON-LD Playground to check that JSON-LD is properly set up. Run regular audits to make sure updates don’t break the JSON-LD structure.
  • Ongoing Maintenance: Every so often, review and update the JSON-LD schemas as new content types are added or as Schema.org introduces new vocabularies for fitness and wellness. Document any changes in the wiki for consistency.

Infrastructure (if applicable)

Outline the infrastructure plan and tools used for different components of the project. List the team members responsible for each part and related GitHub issues.

Cmpe 352 Archive
Clone this wiki locally