- clickable tree of resource types with number of records in each
- on each record
- bi-directional links (e.g. provider <-> product, service <-> serviceBackend)
- links to off-site (repos,services,etc)
- links from keyword on a record to other records with same keyword
- keyword index
- full text search
- edit records directly from viewer
- forms to add records for each major resource type
- can go direct to a record search from location bar ?search=term
- catalog-data.ttl - the main data file aggregated from ./data/*
- catalog-shacl.ttl - the main SHACL file aggregated from ./shacl/*
- catalog-skos.ttl - the main SKOS controlled vocabulary concept scheme
Edited records stored one file per record. Eventually we will patch to the main data file.
An X indicates the file for that class is fully migrated to v2 format. A ~ indicates the file is partially migrated to the v2 format. Only portions that have been migrated are used by the form generator.
| CLASS | SHACL | DATA |
|---|---|---|
| Service | X | X |
| Product | X | X |
| Organization | X | X |
| Person | X | X |
| LearningResource | X | X |
| Event | X | X |
| Ontology | X | X |
| Specification | X | X |
- Terms are currently in the
ex:namespace. When we have decided on the actual namespaces & predicates we can swap them in. - Fields like
domainKeywordare currently strings but will be swapped for URLs when we have a better idea of what we want.
- the subject, predicates, and datatypes for a record are stored in form field HTML attributes
- the
sh:pathof each property (minus its namespace) is used as the form field label - the
sh:descriptionof each property that has one is used as the form field instructions prompt - a property with
sh:oris treated as an HTMLselectdropdown generated from the skos:prefabel in ./catalog-skos.ttl - a proprty with
sh:maxLengthgreater than 80 is treated as a textarea - a property with
sh:datatype xsd:anyURIis treated as a URL input field ; - all other properties are treated as text input fields
- a property with both
sh:minCount 1andsh:maxCount 1is treated as a required field - other than checking that required fields are filled in, no validation is done