Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Properly maintain OWL or other ontological information in machine-readable format #516

Closed
3 of 5 tasks
tpluscode opened this issue Mar 24, 2021 · 23 comments
Closed
3 of 5 tasks
Assignees
Labels
Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two

Comments

@tpluscode
Copy link

tpluscode commented Mar 24, 2021

Please Indicate One:

  • Editorial
  • Question
  • Feedback
  • Blocking Issue
  • Non-Blocking Issue

Re #416 #504 #514 #515, I think this deserves a general issue to address the issue at hand.

I would like to point to #514 (comment) by @nightpool

Our OWL schema is non-normative and best-effort, and not maintained by the working group

I find this unfortunate and hard to understand. The JSON-LD only provides the minimum term mappings. Does it mean that the only normative reference for the property domains/ranges, class hierarchy, etc is the HTML respec document? If only it had RDFa annotations...

Right now, however, the normative reference is not really machine-readable, with the spec document being predominantly targeted at human readers.

I'd kindly ask the group to actually maintain the OWL, or similar form of accurate semantic representation of the Activity Streams vocabulary.

@tpluscode
Copy link
Author

@jasnell created the initial OWL document. Was it written by hand or exported from some tool like Protege?

@jasnell
Copy link
Collaborator

jasnell commented Mar 24, 2021

By hand :)

@nightpool
Copy link
Collaborator

Does it mean that the only normative reference for the property domains/ranges, class hierarchy, etc is the HTML respec document?

Yes, there is not normative machine readable document. Even if we had a maintained OWL document, it would have to be non-normative—having multiple normative references for the same terms would invite a host of inconsistencies and contradictions.

@nightpool
Copy link
Collaborator

Also, correct me if I'm wrong, but I believe that since the spec has reached TR and the WG is no longer active, there is no longer scope for major normative changes like the one—the CG is only empowered to add narrow extensions to the current spec.

@tpluscode
Copy link
Author

In such case it is good that the owl is not normative. We can apply can apply the necessary changes?

I do not propose anything major though. Only to have the normative text and the turtle actually matching.

It does not serve anyone to have any discrepancies between the two forms

@jasnell
Copy link
Collaborator

jasnell commented Mar 24, 2021

FWIW, The OWL was intentionally non-normative for precisely the reasons discussed here. It should be able to evolve without having to have some kind of official working group stamp every change. I would recommend that if there are changes necessary to keep it up to date, please do so.

@cjslep
Copy link

cjslep commented Apr 26, 2021

FYI go-fed has been maintaining its own documents for ActivityStreams and other ActivityPub related vocabulary, for the express purpose of machine readability. In our case, for code-generating the serialization and deserialization code required to flexibly parse the wide latitude of expected values into a statically typed language. Here is the example for ActivityStreams.

@sebilasse
Copy link

same as @cjslep
redaktor is also “maintaining its own documents for ActivityStreams and other ActivityPub related vocabulary, for the express purpose of machine readability.”
Here is the example for all the terms we found in the fediverse (AS, AS extensions, AP and ideas) …

@evanp
Copy link
Collaborator

evanp commented Aug 16, 2023

@gobengo has created an OWL ontology by scraping the HTML document. It's visible here:

https://github.com/gobengo/activitystreams2-spec-scraped/blob/master/data/activitystreams-vocabulary/1528589057.json

I think it's valuable to everyone to have non-normative descriptions of the specification in different languages.

Given that we have an OWL vocabulary that has been slouching around this repository for 8-9 years, it makes sense to update that clearly.

Changes to that document that don't track the REC would be a problem, but giving implementers an automated way to check their code and data structures seems beneficial.

I'm unlikely to spend time maintaining this, but I'd be happy to merge PRs that bring the OWL ontology closer in line with spec.

@evanp evanp self-assigned this Aug 16, 2023
@steve-bate
Copy link

I've also created an updated ontology at

https://github.com/steve-bate/activitypub-ontology.

My version is in RDF/Turtle and can be loaded into tools like Protégé and used with libraries like OwlReady2 (after converting from turtle to RDF/XML). The ontology is based on the Activity Streams 2.0 JSON-LD context which includes ActivityPub extensions. It looked like the scraped ontology doesn't have the AP extensions (?). I also created an ontology for the Mastodon-specific extensions for applications that need to parse existing Fediverse messages that have Mastodon definitions in the JSON-LD context.

@evanp
Copy link
Collaborator

evanp commented Dec 6, 2023

In issue triage, we decided that the proper way to maintain this document is to move it to its own repository in GitHub, and solicit more volunteer contributions. Consequently, we've set up https://github.com/swicg/activitystreams2-owl as a new repository for this effort. We'll try to merge the history of the file from the AS2 repo, and maintain it there. Ideally, we can have some automation to keep this up to date.

@steve-bate and @gobengo I've added you to the repo. Let's figure out how to best support OWL for AS2!

@evanp evanp added the Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two label Dec 6, 2023
@ThisIsMissEm
Copy link
Contributor

The OWL file has now been moved to this repository, and history of the previous changes has been preserved: https://github.com/swicg/activitystreams2-owl

@csarven
Copy link
Member

csarven commented Dec 7, 2023

Sorry that I wasn't part of the triage discussion. And I also understand that you wanted to reach a decision.

That aside, I fail to understand why maintaining the AS2 OWL in a separate repo would be better or suitable in any way, or in other words a way to actually resolve this issue "properly maintain OWL". The call is not about organisation/management/access but rather specific technical changes that needs to be integrated into the document to meet the community's needs.

There is a huge cost to moving something like this, if anything but breaking links, discovery, and keeping related material further away from each other.

I think this repo (w3c/activitystreams) is still the most sensible place to continue the work on AS2 OWL irrespective to who owns the resource. For instance, the JSON-LD context was updated by other Groups given adequate reference from a Rec and implementation experience. The work on it didn't need to move to another repository. And, that's entirely separate from errata too.

I hope this decision can be reconsidered, and hope that the activitystreams-owl stays put here.

@nightpool
Copy link
Collaborator

nightpool commented Dec 8, 2023 via email

@csarven
Copy link
Member

csarven commented Dec 8, 2023

I was in the SWWG, and am well-aware of the history.


Whether the AS spec editors are interested in maintaining the RDF/OWL or not is irrelevant. The role of an editor is to follow the decisions of the group that has intellectual responsibility of the documents in question. If those particular editors are not interested, it doesn't imply that other people are not or can't take it on, and certainly doesn't entail that moving the work to another repo is an appropriate response. If anything, and evidently, change requests have been made by people besides the editors of completely different documents.

RDF/OWL is clearly being acknowledged as some sort of a "work item" of the SWCG. Have you sought editors/maintainers for the RDF/OWL document? If not, how about the other chairs? (I use the term "work item" liberally here but if you have a specific process on what constitutes a group's "work item" that I may have missed, please refer me to and I'll go with that.) If all we need is someone to explicitly put their hand up to "edit" or "maintain", sure, ✋ . See below for "process" though.

We may have to agree to disagree on what is more costly. I don't believe that moving the RDF/OWL file to another repository has actually addressed the key concerns of the community. The impression of something is being done or resolved is given but in reality files are being move to another location - arguably making it harder for anyone new to discover and get involved.

The actual needs/concerns that are brought forward are still:

  • there are technical changes that should be integrated into this RDF/OWL
  • what's the process / decision policy to get these changes integrated (and published)?

Again, I'm not seeing an actual response to those things.

I've made some effort in getting people to review the work, sought W3C Team's technical opinion on what to do as and getting this published on W3C server once that's in the clear. Last mentioned at #416 (comment)


Again, this repository includes documents that are neither normative or "official" in any way above and beyond the RDF/OWL file. So, perhaps re-visit the reasoning behind what belongs in this repository, and clarify the actual process (or opinions) that's being followed. I mean, link to the actual process / decision policy, so that everyone is on the same page.

@ThisIsMissEm
Copy link
Contributor

@csarven in order to keep the document in this repository, you'd want some sort of CI step to validate that the OWL file is indeed representing the same information as what's in the JSON-LD / vocabulary documents; that to my knowledge isn't something that exists, and means that any updates to one document or the other can quickly become out of sync.

@csarven
Copy link
Member

csarven commented Dec 8, 2023

But that's not in the order or required. That's plumbing. Does the AS2 JSON-LD Context gets automagically updated when AS core/vocabulary or vise versa changes?

It is hard to discuss this further when what we really need to still resolve is documenting decision making on RDF/OWL issues/PRs and having W3C update the ns. See the links I've dropped around.

@tpluscode
Copy link
Author

in order to keep the document in this repository, you'd want some sort of CI step to validate that the OWL file is indeed representing the same information as what's in the JSON-LD / vocabulary documents; that to my knowledge isn't something that exists, and means that any updates to one document or the other can quickly become out of sync.

The proposed solution to move the OWL to another repository would further separate these document, making them fall out of sync even more.

@nightpool
Copy link
Collaborator

nightpool commented Dec 8, 2023 via email

@csarven
Copy link
Member

csarven commented Dec 8, 2023

It is already acknowledged by some - if anyone but those that jumped into the whole moving process - SWCG by the mere fact that there was already a move / attempt to put the RDF/OWL file in the https://github.com/swicg (which is SW(I)CG space). On one hand you're backing the idea to move it to SWCG space but at the same time you don't want to acknowledge it as a "work item"??? Pick another word, I don't care. If some in the SWCG had no opinion on it as far as work is concerned, you wouldn't be touching w3c/activitystream to begin with. Furthermore, you want the SWCG to claim/maintain some kind of ownership of w3c/activitystreams but at the same time dismissing something that is quite literally related and significant to the material, and evidently has people interested in continuing the work.

All that you are repeating about the WG and what RDF/OWL is or isn't, which I am well-aware of, is irrelevant.

Would this from https://www.w3.org/groups/cg/socialcg/ suffice:

It is also a place to incubate new proposals which build on or complement the Social Web WG recommendations.

No? Please go ahead and refer me to charter/process/agreement... a decision policy of any sort that justifies what belongs to the SWCG and not, and how you're going at having any sense of group consensus.


Let me put it this way: If some folks have no interest in working on x, y, z, that's okay. Others are enthusiastic and have already shared their findings, issues/PRs to push things ahead. Supporting them or allowing them to proceed without hindrance would be great. Transitioning to a new repository is unnecessary friction and without resolving the underlying issues. What we need is an actual process to advance work. See the links I've dropped around.

@cristianolongoodhl
Copy link

See also #561

@evanp
Copy link
Collaborator

evanp commented Apr 3, 2024

Based on conversation in the SocialCG meeting, and the fact that this document is referred to in our normative text, we will continue maintaining it in this repository as a deliverable of the WG and the CG.

@evanp evanp closed this as completed Apr 3, 2024
@evanp
Copy link
Collaborator

evanp commented Apr 3, 2024

Noting here that as the current editor of the AS2 documents, I'm taking responsiblity for managing this OWL document, with the help of the SocialCG and the larger AS2 community.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two
Projects
None yet
Development

No branches or pull requests

10 participants