1 of 24

Schemata Follow-up

W3C Breakout Day

March 12, 2024

Ege Korkan, Mahda Noura

2 of 24

Logistics

  • W3C Calendar Entry
  • Please all join IRC at https://irc.w3.org/?channels=%23schemata-discussion
    • Then type present+ to check in.
    • Type q+ to raise hand
  • We will take minutes there manually.
    • Scribe will be Jan
  • Quickly introduce yourself before speaking (now if there are not too many people)
  • These slides are public. Link.

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

3 of 24

Participation Policies

  • Antitrust and competition policy
    • W3C acts in a pro-competitive way that is ensured by this document.
  • Positive Work Environment at W3C: Code of Ethics and Professional Conduct
    • Promote high standards of professional practice to ensure a positive work environment

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

4 of 24

Bringing some Context

Nature of this session:

  • Brief presentation
  • Discussion

Goal:

  • Share experience
  • Find a place within W3C for this type of discussion

Required background:

  • Basic understanding of JSON-LD, Ontologies, Schema languages

4

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

5 of 24

Have we met before?

Were you in the previous session of this?

If not, please write "new" in IRC :)

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

6 of 24

In case you haven't been there

Slides from last time:

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

7 of 24

Quick Summary

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

8 of 24

Quick Summary

Web of Things TD Task Force needs to manage the following:

  • Spec document, which contains vocabulary terms and information model
  • Ontology documents
  • SHACL shapes
  • JSON Schema
  • Type and Class Definitions (for now only TypeScript)
  • Test cases
  • Examples

All of them need publication procedure.

Soon, each binding will need the same and anyone should be able to do it…

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

9 of 24

Two Presentations

We knew that there are existing approaches to solve this and we have invited them for presentations:

  • LinkML by Chris Mungall
  • TreeLDR by Timothée Haudebourg

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

10 of 24

What is in the Follow-up though?

  • Results of the analysis of approaches/tools by the WoT WG
  • Versioning, packaging and serving resources
  • Continuation of the work
    1. We should reserve the last 10 mins, please remind me if forgotten

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

11 of 24

Analysis by WoT WG (mostly Mahda Noura)

Two-fold procedure:

  1. What we were doing so far
  2. What can we adopt to make our lives easier

All information is contained at https://github.com/w3c/wot-thing-description/tree/main/toolchain for now.

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

12 of 24

What we were doing so far

Not proud but it sort of works :)

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

13 of 24

What can we adopt to make our lives easier

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

14 of 24

Any Feedback is Appreciated via Issues

Anyone can do so at https://github.com/w3c/wot-thing-description/issues

We already got one from Vladimir Alexiev, thank you!

For the WoT TD purposes, LinkML seems like a good fit at the moment but we haven’t decided yet.

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

15 of 24

Ok, let’s say we picked one, what is next?

You have generated all those resources.

Now how do you version, package, serve all of them?

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

16 of 24

Manual Way

Create a GitHub repo, enables Pages but only serve resources:

https://github.com/w3c/wot-resources is used at the moment by WoT WG. We push resources there, team contact adapts redirection settings. No versioning at the moment.

It is similar to uploading software to a web server,

like we did before package managers were a common thing,

20 years ago…

Too slow for prerelease cycle (before REC) and ambiguous for post REC.

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

17 of 24

Can we do it better?

We are discussing versioning rules. Draft PR

How about tooling?

  • OS/Distribution-specific Package Managers
  • Programming Language Package Managers
  • Container Registries
  • Custom-built Tooling

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

18 of 24

Any Ideas?

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

19 of 24

Where should the discussion continue?

In TPAC23, there was interest to form a CG:

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

20 of 24

Where should the discussion continue?

Personal opinion: there is not necessarily need for standardization but there is at least need for discussion and exchange, finding best practices.

Other opinions?

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

21 of 24

Discussion Points

Tooling:

  • Vladimir: Mix and match solutions that are not optimal.
  • AB and VA: Not losing data or meaning when translating one representation to another is very important

Versioning, Serving, Packaging:

Where to continue:

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

22 of 24

Relevant Communities

Trade Transparency group

Discussion in YAML-LD: https://github.com/json-ld/yaml-ld/issues/19

https://github.com/w3c-ccg/traceability-vocab/issues/295

VA: SHACL to UI (in rdfjs) will be using the most common subset of SHACL.

VA: Existing GraphQL implementations that use RDF -> Link

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

23 of 24

Other Comments

Netflix ontology service (Alexandre B):

  • uses SHACL. How will authoring work?
  • SHACL is way too powerful -> steep learning curve
  • How to get meaningful ontologies out of SHACL
  • Discoverability is an open topic
  • The turtle users don’t know that they write ttl

Ivan:

  • Common problem
  • SHACL and shex cannot model datasets
  • RDF usage is quite different between implementations. RDF 1.2 will intensify that
  • JSON-LD has a double nature that creates the root of the issue
  • Where is the discrepancy between these formats -> needs to be clarified first

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura

24 of 24

Check-out (to be extended in the end of the meeting)

A summary before the discussion ends:

    • Main points of discussion, consensus, or disagreement?
      1. Consensus on the annoyance of the problem and relevance to different communities (not just WoT)
    • What are the next steps?
      • Creating a more clear picture of the problem. Catalog.
      • Dissemination
      • (proposal) focus CGs to work out specific issues: a) SHEX-SHACL mapping, b) RDF-GraphQL best practices, c) maybe YAML/YAML-LD syntax for mixing schemata
    • Who is responsible for carrying them out? (Could be a person from the session, or a group where work is ongoing, a new community group, the staff, etc.)
      • Each person here -> Noting these problems and dissemination.

W3C Breakout Day | March 12, 2024 | Schemata | Ege Korkan & Mahda Noura