Looping back here, we’re still iterating on the validator stories – aiming to get more precise, because we observed a lot of ambiguity lingering in there.
See the spreadsheet that @sasha has helped iterate on, including these top-level items:
Action (I want to [take an action]… | Goal (In order to… [receive a benefit]) |
---|---|
validate a sample subset of my dataset | quickly check that my feed is compliant, without having to load my whole dataset |
perform a minimal validation of all required fields in my schema | confirm that my data’s schema is minimally compliant with HSDS |
perform a complete validation of all HSDS fields in my schema | confirm that my schema complies with the entire HSDS specification |
validate my entire entire dataset for formatting compliance | confirm that my dataset complies with the entire HSDS schema and formatting conventions |
validate my dataset for compliance with an HSDS profile | confirm that my dataset meets the precise specifications for my subdomain / context. |
Test my endpoint for valid parameters | confirm that my API enables filters as specified in HSDS |
perform a full validation of my API endpoint | ensure my API feed is publishing data that is compliant with the HSDS API. |
to receive a JSON schema that specifies pass/fail per-field | be alerted to fields that need to be reformatted in order to be compliant |
to receive machine-readable feedback that includes details about which fields have failed and why | understand what i need to fix in my schema (or dataset?) in order to be compliant. |
receive human-readable feedback that includes details about which fields have failed and why | understand – without being a code person – what i need to fix in my schema (or dataset?) in order to be compliant. |
(Note that the spreadsheet is a bit awkward in that some stories are duplicated across the different types of users – we’ll clean it up, would welcome suggestions.)
Our next steps will be to 1) confirm the wording for all of the above, then 2) confirm which of these are done by already-existing or in-development tools, then 3) rank the features that have yet to be built according to a) value and b) difficulty.
Please review and give feedback!