Closed nickevansuk closed 6 years ago
I've revalidated, and got the following output:
$.leader[0].id
- Required field is missing.$.leader[0].identifier
- Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer'$.location.identifier
- Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer'
(x2) identifier should always allow both
these are both correct according to the spreadsheet - have raised as comments on there
$.eventSchedule.byDay
- This value supplied is not in the allowed values for this field
This is a bug - it's not validating arrays properly when they have a set list of options (#88)
$.subEvent[0].id
- Required field is missing.$.offers[0].name
- Required field is missing.$.organizer[0].id
- Required field is missing.$.image[0].thumbnail
- Invalid type, expected '#ImageObject' but found 'ArrayOf#ImageObject'
Should be array
this actually isn't even in the OA spec - @ldodds - should it be?
$.ext:specialRequirements
- The validator does not currently check experimental fields$.eventStatus
- Recommended field is missing.
Is present on subEvent so this should not be a warning
can an event really inherit from its child?! It's not clear this is the case in the current specification - @ldodds ?
$.activity
- Could not check activities are in activity list - could not find activity list file
This is a valid activity
This is a bug! (#89)
$.leader[0].gender
- This field is not defined in the specification$.location.id
- Recommended field is missing.$.location.url
- Recommended field is missing.$.location.description
- Recommended field is missing.$.location.image
- Recommended field is missing.
(x4) Unusual to have this data (last 4) (should it not be recommended? or can I dismiss this message? or?)
It's recommended currently in the spec. I'm unsure what you want by dismissing?
$.location.telephone
- Recommended field is missing.$.location.openingHoursSpecification
- Recommended field is missing.
Unusual to have this data (should it not be recommended? or can I dismiss this message? or?)
It's recommended currently in the spec. I'm unsure what you want by dismissing?
$.offers[0].acceptedPaymentMethod
- This field is not defined in the specification$.offers[0].eligibleCustomerType
- This field is not defined in the specification
(x2) Should be allowed as per schema.org
See #5 - @ldodds has asked that fields not explicitly in the OA spec still raise a warning. We'll make the message nicer for those in schema.org
$.offers[0].id
- Recommended field is missing.$.offers[0].ageRange
- Recommended field is missing.$.organizer[0].telephone
- This field is not defined in the specification
Should be allowed as per schema.org
See #5 - @ldodds has asked that fields not explicitly in the OA spec still raise a warning. We'll make the message nicer for those in schema.org
$.organizer[0].url
- Recommended field is missing.$.organizer[0].description
- Recommended field is missing.$.organizer[0].logo
- Recommended field is missing.$.eventStatus
- Data consumers will assume the event status is scheduled if not specified or invalidResponses below:
ERROR: $.leader[0].id - Required field is missing. ERROR: $.leader[0].identifier - Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer' ERROR: $.location.identifier - Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer' (x2) identifier should always allow both
these are both correct according to the spreadsheet - have raised as comments on there
I saw @ldodds has allowed both for some already, this should just be applied to all identifiers
ERROR: $.eventSchedule.byDay - This value supplied is not in the allowed values for this field This is a bug - it's not validating arrays properly when they have a set list of options (#88)
ERROR: $.subEvent[0].id - Required field is missing. ERROR: $.offers[0].name - Required field is missing. ERROR: $.organizer[0].id - Required field is missing. ERROR: $.image[0].thumbnail - Invalid type, expected '#ImageObject' but found 'ArrayOf#ImageObject' Should be array
this actually isn't even in the OA spec - @ldodds - should it be?
This is a debate am currently having with @ldodds, whether Props in common use make it into our profile. The criteria seems a little subjective at the moment. I’m keen to see us recognise these.
WARNING: $.ext:specialRequirements - The validator does not currently check experimental fields WARNING: $.eventStatus - Recommended field is missing. Is present on subEvent so this should not be a warning
can an event really inherit from its child?! It's not clear this is the case in the current specification - @ldodds ?
What I mean is that the eventStatus is only relevant at the subEvent level, or if this event doesn’t have subEvents then is on the parent. You likely wouldn’t cancel the parent, you’d just delete it, you’d cancel individual occurrences. (Ref: issue to mandate subEvent in all cases)
WARNING: $.activity - Could not check activities are in activity list - could not find activity list file This is a valid activity
This is a bug! (#89)
WARNING: $.leader[0].gender - This field is not defined in the specification WARNING: $.location.id - Recommended field is missing. WARNING: $.location.url - Recommended field is missing. WARNING: $.location.description - Recommended field is missing. WARNING: $.location.image - Recommended field is missing. (x4) Unusual to have this data (last 4) (should it not be recommended? or can I dismiss this message? or?)
It's recommended currently in the spec. I'm unsure what you want by dismissing?
Ideally if i’ve been told about a warning that’s not relevant to me (as some warnings are asking for data I just don’t have, or flagging issues that aren’t relevant), I could hide that specific warning (even just temporarily for that browser session) and focus on the messages I can do something about
WARNING: $.location.telephone - Recommended field is missing. WARNING: $.location.openingHoursSpecification - Recommended field is missing. Unusual to have this data (should it not be recommended? or can I dismiss this message? or?)
It's recommended currently in the spec. I'm unsure what you want by dismissing?
WARNING: $.offers[0].acceptedPaymentMethod - This field is not defined in the specification WARNING: $.offers[0].eligibleCustomerType - This field is not defined in the specification (x2) Should be allowed as per schema.org
See #5 - @ldodds has asked that fields not explicitly in the OA spec still raise a warning. We'll make the message nicer for those in schema.org
Depending on the outcome of our discussion about the objective criteria used to included commonly used props in our profile, i we are being mega parsimonious with which props get in, suggest this is a Tip rather than a warning. Otherwise it sends the wrong message to publishers.
WARNING: $.offers[0].id - Recommended field is missing. WARNING: $.offers[0].ageRange - Recommended field is missing. WARNING: $.organizer[0].telephone - This field is not defined in the specification Should be allowed as per schema.org
See #5 - @ldodds has asked that fields not explicitly in the OA spec still raise a warning. We'll make the message nicer for those in schema.org
WARNING: $.organizer[0].url - Recommended field is missing. WARNING: $.organizer[0].description - Recommended field is missing. WARNING: $.organizer[0].logo - Recommended field is missing. TIP: $.eventStatus - Data consumers will assume the event status is scheduled if not specified or invalid
@nickevansuk I've rerun this code in the latest staging version and it now has 8 errors (up from 2 on the latest released version of the validator) and 19 warnings - are there still changes to be made?
Still issues here, have re-raised with an updated sample to reflect recent spec changes: https://github.com/openactive/data-model-validator/issues/217
Just validating the following feed (which should pass), and found 16 errors and 17 warnings. As far as I can see it should result in 0 errors and 5 warnings.
JSON as follows:
Breakdown as follows:
identifier Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer' ERROR
identifier Required field is missing. ERROR
identifier Required field is missing. ERROR
identifier Required field is missing. ERROR
identifier Required field is missing. ERROR
identifier Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer' ERROR
url Required field is missing. ERROR
identifier Invalid type, expected 'http://schema.org/Text' but found 'http://schema.org/Integer' ERROR
amenityFeature Invalid type, expected 'ArrayOf#LocationFeatureSpecification' but found 'ArrayOf#{ChangingRooms,Showers,Lockers,Towels,Creche,Parking}' ERROR
byDay This value supplied is not in the allowed values for this field ERROR
id Required field is missing. ERROR
id Required field is missing. ERROR
name Required field is missing. ERROR
thumbnail Invalid type, expected '#ImageObject' but found 'ArrayOf#ImageObject' ERROR
ext:specialRequirements The validator does not currently check experimental fields WARNING
eventStatus Recommended field is missing. WARNING
activity Could not check activities are in activity list - could not find activity list file WARNING
gender This field is not defined in the specification WARNING
description (on Person) Recommended field is missing. WARNING
id Recommended field is missing. WARNING
description Recommended field is missing. WARNING
image Recommended field is missing. WARNING
telephone Recommended field is missing. WARNING
openingHoursSpecification Recommended field is missing. WARNING
acceptedPaymentMethod This field is not defined in the specification WARNING
eligibleCustomerType This field is not defined in the specification WARNING
url This field is not defined in the specification WARNING
ageRange Recommended field is missing. WARNING
telephone This field is not defined in the specification WARNING
description Recommended field is missing. WARNING
logo Recommended field is missing. WARNING