feat(vocab): setup yml2vocab for managing the LWS vocabulary and json-ld context#112
Conversation
Generated by yml2vocab from vocabulary.yml and template.html: vocabulary.html, vocabulary.ttl, vocabulary.jsonld, vocabulary.context.jsonld
|
Thanks @laurensdeb this looks great, overall. One concern, though: I'm generally reluctant to include generated files in the main branch. I would find it cleaner if the provided github action was restricted to GH pages generations. Eitherway, I think we should have a README in the lws10-vocab folder, listing all the generated files (whether they are commited or not), and providing instructions on how to generate/update them (people will want to see locally the effect of the changes they make to the YAML file or the template). |
Added company and companyURL fields for editors and authors.
Added new properties for 'updated' and 'size' in vocabulary.
There was a problem hiding this comment.
I added
'''
-
id: as:updated
label: modified
domain: lws:DataResource
range: xsd:dateTime
comment: The date and time the resource was last modified. -
id: schema:size
label: size
domain: lws:DataResource
range: xsd:long
comment: The size of the resource in bytes.
'''
to the vocabulary.yaml file. The generated files will need an update.
Added README.md with information about LWS Vocabulary.
ebremer
left a comment
There was a problem hiding this comment.
I added two missing terms and the README.md for which files are auto-generated
|
Nipicking: my understanding is that, in yml2vocab, "imported" terms are expected to be described by |
|
pchampin
left a comment
There was a problem hiding this comment.
good to go, keeping in mind that eventually, the generated files should be kept out of the repo
| editors: [{ | ||
| name: "Jesse Wright" | ||
| }, { | ||
| name: "Erich Bremer" | ||
| }], | ||
| authors: [{ | ||
| name: "Laurens Debackere" | ||
| }], |
There was a problem hiding this comment.
Affiliation information needs to be added - similar to https://github.com/w3c/lws-protocol/pull/111/changes
- Deploy entire repo to GitHub Pages instead of committing generated files - Remove generated vocab artifacts from git tracking - Update lws10-vocab/.gitignore to exclude generated files
This pull request introduces a build system and documentation for the Linked Web Storage Vocabulary, automating the generation of vocabulary artifacts from a YAML source and providing a standards-compliant HTML specification. It includes configuration for GitHub Actions, project dependencies, and initial vocabulary files in multiple formats.
Build automation and workflow setup:
.github/workflows/build-vocab.yml) to automatically build and commit vocabulary artifacts (index.html,vocabulary.ttl,vocabulary.jsonld,vocabulary.context.jsonld) when relevant source files change.package.jsonwith a build script usingyml2vocaband listedyml2vocabas a development dependency..gitignoreto excludenode_modules/from version control.Vocabulary documentation and specification:
template.htmlas the ReSpec-based HTML template for generating the vocabulary specification, supporting reserved and deprecated terms, namespaces, and context files.index.htmlproviding a human-readable, standards-compliant specification for the Linked Web Storage Vocabulary, including property and class definitions, namespace documentation, and context references.Vocabulary data formats:
vocabulary.context.jsonld) defining the mapping of vocabulary terms to IRIs and their structure for use with JSON-LD consumers.Attribution
This PR relies on the yml2vocab tooling which enables this workflow.