Each term definition should end with a period / full stop, i.e. ".". #294

danbri opened this Issue Jan 28, 2015 · 2 comments
danbri commented Jan 28, 2015

We have been consistently inconsistent with this, historically. The ideal that was agreed a while back was that labels are simple strings with no ".", matching the portion of the term URI after 'schema.org/', while the description (i.e. rdfs:comment) would most properly end with a period / full stop.

This can be checked, roughly, with a SPARQL query. See: http://dydra.com/danbri/schema-org/query#comments-not-ending

SELECT * WHERE { ?p rdfs:comment ?c FILTER regex(str(?c), "[^.]\\s*$") } 

There are some corner cases and details:

  • descriptions ending in markup
  • descriptions ending with a raw list of URLs (i.e. those from Good Relations where we enumerate external values)

Apart from those, e4a6b88 addresses about 100 easier cases.

@danbri danbri self-assigned this Jan 28, 2015
@danbri danbri added this to the sdo-stantz release milestone Jan 28, 2015
@danbri danbri referenced this issue Jan 28, 2015
@danbri danbri Periods (.) added to ~ 100 term descriptions.
Also removed redundant supercededBy text from partOfTVSeries,
contentUrl and embedUrl, and redundant domain/range text from
danbri commented Jan 28, 2015

After today's changes, the following terms match the SPARQL FILTER regex(str(?c), "[^.]\s*$":

GoodRelations-based terms that end with a list of URLs:

A next step could be to create a unit test to discourage the addition of term definitions that end without a final '.' - tracked as #250.

It would also be useful to improve the SPARQL filter to accept newlines and escaped '>' chars.

danbri commented Jan 29, 2015

Closing this as addressed in all reasonable cases. Leaving #250 open to get a unit test in place to police the situation better in future.

@danbri danbri closed this Jan 29, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment