Skip to content

Field Reference & Validation

FieldTypeDescription
@contextstringAlways https://w3id.org/ro/crate/1.1/context. Ensures downstream tooling can interpret nodes correctly.
@grapharrayContainer for every node. The dataset (./) plus all linked entities live here.
namestringUsed across the UI anywhere the service name appears. Prefer Title Case.
descriptionstringPlain text. Avoid Markdown or HTML.
serviceTypestringLowercase. Extend the UI options before adding new values.
URLstring/URLDestination for more information or the actual service entrypoint.
keywordsarrayOptional list of tags. Helps search filters and external catalogues.
licenseobject/refInline object or @id referencing a CreativeWork node.
authorobject/refInline object or @id referencing a Person/Organization node.
memoryRequirementsstringMention GPU models, RAM, storage, or accelerator requirements.
processorRequirementsarrayList multiple CPU/GPU profiles when useful.
softwareRequirementsarrayReference nodes that describe frameworks, models, or utilities.
datePublishedstringISO date. Keeps change history transparent.
versionstringSemantic version or release tag. Optional but highly encouraged.
logoobject/refPoints to icon.png or alternative asset.
  1. Schema linting: Use ajv or another JSON schema validator against the RO-Crate 1.1 profile if you introduce new sections.
  2. Build script warnings: npm run build will surface missing dataset nodes, icons, or empty fields.
  3. Visual QA: Inspect dist/index.html and confirm your service card looks correct. Use the search/filter UI to verify metadata filters behave.
  4. roc-validator check: Install the CLI once (pip install roc-validator) and run rocrate-validator validate -p ro-crate-1.1 --verbose --no-paging ./crates/<service> before opening a PR. This mirrors the GitHub Action enforced on every pull request.
  5. Documentation parity: Whenever you add a new required field, update the relevant doc page within this guide so future contributors stay aligned.

Sticking to this validation flow keeps the catalog trustworthy and limits regressions when new contributors join.