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

META: Missing fields in schema #40

Closed
51 tasks done
jpmckinney opened this issue Nov 14, 2017 · 12 comments
Closed
51 tasks done

META: Missing fields in schema #40

jpmckinney opened this issue Nov 14, 2017 · 12 comments
Assignees
Labels
bug Community Relates to a regular extension Schema Involves editing the schema

Comments

@jpmckinney
Copy link
Member

jpmckinney commented Nov 14, 2017

Blocking open-contracting/standard-maintenance-scripts#27

50 fields missing in 9 extensions.

Core

ocds_participationFee_extension/release-schema.json

  • /definitions/ParticipationFee/description
  • /definitions/ParticipationFee/properties/value/title
  • /definitions/ParticipationFee/properties/value/description

ocds_location_extension/release-schema.json

  • /definitions/Item/properties/deliveryLocation/description
  • /definitions/Item/properties/deliveryAddress/description
  • /definitions/Location/properties/gazetteer/title
  • /definitions/Location/properties/gazetteer/description

ocds_lots_extension/release-schema.json

  • /definitions/Tender/properties/lotDetails/title
  • /definitions/Tender/properties/lotDetails/description

Community

PPPs

ocds_budget_projects_extension/release-schema.json

  • /definitions/Planning/properties/project/title
  • /definitions/Planning/properties/project/description
  • /definitions/Project/properties/id/title
  • /definitions/Project/properties/totalValue/title

ocds_finance_extension/release-schema.json

  • /definitions/Finance/properties/financingParty/title
  • /definitions/Finance/properties/financingParty/description

ocds_metrics_extension/release-schema.json

  • /definitions/Observation/properties/period/title
  • /definitions/Observation/properties/period/description
  • /definitions/Observation/properties/value/title
  • /definitions/Observation/properties/value/description

ocds_performance_failures/release-schema.json

  • /definitions/Implementation/properties/performanceFailures/description

ocds_requirements_extension/release-schema.json

  • /definitions/Tender/properties/criteria/title
  • /definitions/Award/properties/requirementResponses/title
  • /definitions/Award/properties/requirementResponses/description
  • /definitions/Contract/properties/requirementResponses/title
  • /definitions/Contract/properties/requirementResponses/description
  • /definitions/Criterion/properties/id/title
  • /definitions/Criterion/properties/title/title
  • /definitions/Criterion/properties/description/title
  • /definitions/Criterion/properties/source/title
  • /definitions/Criterion/properties/relatesTo/title
  • /definitions/Criterion/properties/relatedItem/title
  • /definitions/RequirementGroup/properties/id/title
  • /definitions/RequirementGroup/properties/description/title
  • /definitions/Requirement/properties/pattern/title
  • /definitions/Requirement/properties/expectedValue/title
  • /definitions/Requirement/properties/minValue/title
  • /definitions/Requirement/properties/maxValue/title
  • /definitions/Requirement/properties/period/title
  • /definitions/RequirementResponse/properties/id/title
  • /definitions/RequirementResponse/properties/title/title
  • /definitions/RequirementResponse/properties/description/title
  • /definitions/RequirementResponse/properties/value/title
  • /definitions/RequirementResponse/properties/period/title

Other

api_extension/release-schema.json

  • /properties/packageMetadata/title
  • /properties/packageMetadata/description
  • /properties/packageMetadata/properties/publishedDate/title
  • /properties/packageMetadata/properties/publisher/title
  • /properties/packageMetadata/properties/license/title
  • /properties/packageMetadata/properties/publicationPolicy/title

ocds_budget_breakdown_extension/release-schema.json

  • /definitions/BudgetBreakdown/properties/id/title
  • /definitions/BudgetBreakdown/properties/amount/title
@jpmckinney jpmckinney changed the title API: Missing fields in schema META: Missing fields in schema Nov 14, 2017
@jpmckinney
Copy link
Member Author

@timgdavies How should we proceed to fill in these fields (not urgent, just in terms of process)? Or should a field description be optional in an extension?

@jpmckinney jpmckinney added the Schema Involves editing the schema label Jan 1, 2018
@timgdavies
Copy link

These should be required.

Some of these are part of core extensions, so would need to be updated as part of a bug-fix release.

Others we can just update ad-hoc, so I'm putting this on ToDo list for schema work next week.

@jpmckinney jpmckinney added this to the 1.1.3 milestone Jan 3, 2018
@timgdavies
Copy link

timgdavies commented Jan 10, 2018

Location and lots are core extensions, so I'll work on those now as part of 1.1.3 prep:

  • ocds_location_extension/release-schema.json is missing /definitions/Item/properties/deliveryLocation/description
  • ocds_location_extension/release-schema.json is missing /definitions/Item/properties/deliveryAddress/description
  • ocds_location_extension/release-schema.json is missing /definitions/Location/properties/gazetteer/title
  • ocds_location_extension/release-schema.json is missing /definitions/Location/properties/gazetteer/description
  • ocds_lots_extension/release-schema.json is missing /definitions/Tender/properties/lotDetails/title
  • ocds_lots_extension/release-schema.json is missing /definitions/Tender/properties/lotDetails/description

@timgdavies
Copy link

I've added descriptions for location and lots extensions.

This did surface one issue in the lots extension, where /definitions/Tender/properties/lotDetails/ uses a $ref just for layout of the components of the lot (rather than in the case where there is an array, and then objects in that array).

This means the addition descriptions added (for which I duplicated the descriptions from the target) are redundant. It is possible we should refactor the lots extension to remove this reference, unless there are likely to be cases where LotDetails are re-used by some other extension.

This should inform our guidance about how to structure extensions, and when to use $ref

@jpmckinney
Copy link
Member Author

If we don't presently anticipate reuse of LotDetails, then we should avoid the $ref. Shall we do that in open-contracting-extensions/ocds_lots_extension#16 ?

@jpmckinney
Copy link
Member Author

Noting that once this issue is closed, I can uncomment a test.

@jpmckinney
Copy link
Member Author

@timgdavies ocds_participationFee_extension is also a core extension. Could you add its three missing title/description properties? (see issue description)

@jpmckinney jpmckinney added Community Relates to a regular extension Core Relates to a recommended extension labels Jan 23, 2018
timgdavies pushed a commit to open-contracting-extensions/ocds_participationFee_extension that referenced this issue Jan 29, 2018
@jpmckinney
Copy link
Member Author

Removing 1.1.3 milestone, as all core extensions now fixed.

@jpmckinney jpmckinney removed this from the 1.1.3 milestone Jan 29, 2018
@jpmckinney jpmckinney removed the Core Relates to a recommended extension label Feb 1, 2018
@jpmckinney
Copy link
Member Author

Do we want to fix this as part of PPPs cleanup? @duncandewhurst

duncandewhurst added a commit to open-contracting-extensions/ocds_metrics_extension that referenced this issue Apr 26, 2018
duncandewhurst added a commit to open-contracting-extensions/ocds_performance_failures_extension that referenced this issue Apr 26, 2018
duncandewhurst added a commit to open-contracting-extensions/ocds_requirements_extension that referenced this issue Apr 26, 2018
duncandewhurst added a commit to open-contracting-extensions/ocds_budget_breakdown_extension that referenced this issue Apr 26, 2018
@duncandewhurst
Copy link

I've added the missing fields for all the PPP extensions, in one instance (budget and projects extension) I noted the same issue with use of $ref as Tim mentioned above so amended the schema accordingly.

I also noticed we aren't consistent with whether we include the parent object name in the title of fields. The style guide says we shouldn't do that in names of properties and objects but doesn't specify an approach for field titles.

I've used whatever seemed most appropriate, but think that in general we probably should include parent object names in titles, since some users will work with the flattened schema without seeing the full field path.

@jpmckinney
Copy link
Member Author

jpmckinney commented May 1, 2018

I think that may indicate an opportunity to improve the flattened schema (e.g. add a column with the name of the containing object), rather than make all field titles more verbose. There are use cases for which verbosity is undesirable (e.g. the automatic generation of a vertical form will repeat the object name, making tasks like finding the desired field slower, because in general any offset of the target word from the start of the line causes slower task times in user tests).

jpmckinney pushed a commit to open-contracting-extensions/ocds_pagination_extension that referenced this issue May 8, 2018
@jpmckinney
Copy link
Member Author

I have a commit for API extension. This is done now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Community Relates to a regular extension Schema Involves editing the schema
Projects
None yet
Development

No branches or pull requests

3 participants