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

Select SHACL Compact Syntax editors #187

Closed
HolgerKnublauch opened this issue Feb 19, 2024 · 24 comments
Closed

Select SHACL Compact Syntax editors #187

HolgerKnublauch opened this issue Feb 19, 2024 · 24 comments
Assignees
Labels
Compact For SHACL 1.2 Compact Syntax

Comments

@HolgerKnublauch
Copy link
Contributor

Moving towards a potential 1.2 release, the SHACL Compact Syntax needs new editors.

@jeswr
Copy link
Member

jeswr commented Feb 19, 2024

I would be open to taking on an editing role for this spec.

Note that my current academic affiliation is not currently a paying W3C member - so I suspect I would only be able to do so as an invited expert (https://www.w3.org/invited-experts/).

@VladimirAlexiev
Copy link

I'd be happy to help @jeswr since I think that SHACLC is a crucial feature to compete with SHEX's dedicated syntax.
Some examples (with shots) in https://github.com/VladimirAlexiev/shaclc-mode.

@VladimirAlexiev
Copy link

VladimirAlexiev commented Mar 6, 2024

  • @jeswr Do you want to start a "scope" document with the info from the previous comment?
    And of course, add your considerations to it.
  • @tw-osthus do you want to participate? You're the author of 1 of only 3 SHACLC implementations known to me

@jeswr
Copy link
Member

jeswr commented Mar 6, 2024

Do you want to start a "scope" document with the info from the previous comment?

Is this something that should be Respec'd (in which case I'm guess it should be on this repo and I would need to be given the permissions to do that); or something that is sufficient to be thrown together in a HackMD/google doc/etc. for now?

@VladimirAlexiev
Copy link

I think it should be on github: for now as a markdown doc.

@HolgerKnublauch
Copy link
Contributor Author

Please open a PR when ready. Once the process has started we can set up write permissions for the editors. (We do have two volunteers for the role of co-chairs, hopefully more on that this week).

@mielvds
Copy link

mielvds commented Mar 7, 2024

I'm interested in participating, but not sure in what way. I love the idea of SHACLC and it should be part of the spec (like @VladimirAlexiev points out: inherit the advantages of shex). I always wanted to use it, but I currently don't because of the unclear status and the minimal spec (e.g., it's unclear whether you can add comments, but you probably can?).

I was not involved in the development of SHACL whatsoever, so I'm in the dark wrt this WG/CG, but I can review, give input, provide use cases, or be editor, whatever makes the most sense and leads to a reaslistic workload.

@tw-osthus
Copy link

I really liked SHACLC and would have preferred using it to write shapes.
So I made some advertising within the Allotrope Foundation to adopt it for the data models 5 years ago. Mainly this was the reason, I wrote the SHACLC editor at that time, but because it was "unofficial" it was not accepted by the community, which I can understand as a decision in a standardization body.

SHACL in turtle is not too bad, and I have got used to it, so I have dropped my work on SHACLC.

@VladimirAlexiev
Copy link

@tw-osthus Never give up! :-)

  • Assembler is much better than Machine language.
    But that's not enough reason to avoid high-level languages.
  • Turtle is much better than eg RDF/XML.
    But using it to write shapes or SPIN's SPARQL representation in triples, feels like writing in Assembler.

In any case, I'm sure we can ask you questions about your xtext grammar?
I'm not familiar with xtext, is there a tool to convert it to EBNF?

@afs
Copy link
Contributor

afs commented Mar 7, 2024

JavaCC: https://github.com/apache/jena/blob/main/jena-shacl/shaclc/shaclc.jj (there are a few extensions and they are marked e.g. in propertyParam). The grammar is LL(1), that is, quite simple parser technology.

There is elsewhere some scripts to translate the SPARQL javacc-checked grammar to EBNF and HTML and should be adaptable.

There is comprehensive tooling that Gregg Kellogg provides for W3C-favour BNF, including producing ReSpec-friendly HTML.

@VladimirAlexiev
Copy link

OK, so we got some grammar resources to reconcile:

As for grammar visualization, I really like http://bottlecaps.de/rr/ui.
I've applied it to SPARQL, SPARQL-Star, XSPARQL (you can't use it without such diagrams!) and Holger's SHACLC:
https://github.com/VladimirAlexiev/grammar-diagrams#shaclc
image

@jeswr
Copy link
Member

jeswr commented Mar 14, 2024

Jison: https://github.com/jeswr/shaclcjs/blob/main/lib/shaclc.jison by @jeswr (is this the closest you have to a grammar?)

Yes it is

As for grammar visualization, I really like http://bottlecaps.de/rr/ui.

That link is broken for me

@VladimirAlexiev
Copy link

VladimirAlexiev commented Mar 18, 2024

Thanks for notifying me!

@HolgerKnublauch should shaclc have its own repo, or should I make a folder in here?

@HolgerKnublauch
Copy link
Contributor Author

A folder here should be fine but isn't the shacl-compact-syntax folder already a suitable place? It does contain a .g4 file.

@VladimirAlexiev
Copy link

@HolgerKnublauch thanks for the quick reply! See w3c/shacl#49
(also @jeswr: maybe you can let Jesse merge PRs to reduce your load?)

@HolgerKnublauch
Copy link
Contributor Author

Yeah, I cannot look after the Compact Syntax anymore and would prefer if someone else can own this.

@jeswr
Copy link
Member

jeswr commented Mar 19, 2024

Happy to take care of reviewing / approving PRs for SHACLC of given permission to do so.

@VladimirAlexiev did you mean to ping me instead of the user JesseW in your latest PR?

@VladimirAlexiev
Copy link

VladimirAlexiev commented Mar 19, 2024

Yep: sorry: fixed.

Posted #193

@VladimirAlexiev
Copy link

hi @jeswr are you in the new WG? We missed you at the meeting today.
And are you still volunteering to be the main Compact editor?

@jeswr
Copy link
Member

jeswr commented Jan 20, 2025

Yes, I'm in the WG - I had a meeting conflict today, which meant I couldn't turn up.

I have a large number of commitments at present, so right now I can commit no more than ~2 hours per week. If that is sufficient for primary editor for SHACL-C then I am happy to take on the role.

@VladimirAlexiev
Copy link

@nicholascar what do you say?

@HolgerKnublauch
Copy link
Contributor Author

Will be handled as part of #217. For now I'd like to close this ticket although there has been some other discussion that doesn't seem to be about selecting the editor. Maybe those who remember can raise them as separate tickets?

@VladimirAlexiev
Copy link

Yeah, there's a gazillion comments here, but I think all the important ones (about various grammars and issues related to grammars) are captured in other issues and PRs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Compact For SHACL 1.2 Compact Syntax
Projects
None yet
Development

No branches or pull requests

7 participants