Specified to support reports from both probe devices and browser plugins:
{ date: 2017-07-14T02:26:46.681Z, creator: [tool name, string], version: [tool version, string], reporter [opt]: [uuid, generated and persisted by crawler instance], url: 'https://example.com', status: 451, statusText: 'Unavailable For Legal Reasons', blockedBy: 'https://example.com', clientIP [opt]: '192.0.2.4', clientLocation [opt]: {FIXME:locality/state/country?}, originIP [opt]: '192.0.2.207' } who are the parties involved? * origin -- server that returns 451 * observer -- HTTP client that receives 451 * submitter -- party submitting observation to the collector(may be the same party as the observer, may be some mixing proxy, etc) * collector -- aggregator/republisher of observations
Specified for e.g. WordPress HTTP 451 plugin:
Format for DECLARING RESTRICTIONS (Wordpress CMS etc. self-reporting): { date: 2017-07-14T02:26:46.681Z, creator: [tool name, string], version: [tool version, string], reporter:, property: 'https://example.com', resources: [resource-array], } Resource: { url: "", status: 451 OR 200, startDate:, endDate:[opt? meaningful?], description: "free-form text description of scope, eg. country, region, authority, until policy group decides on structured fields for this" }