- From: simon via GitHub <sysbot+gh@w3.org>
- Date: Thu, 11 May 2017 06:56:14 +0000
- To: public-poe-archives@w3.org
> It means "IF you implement X, then you MUST do it this way" Which is not what [4.2 Requirements](http://w3c.github.io/poe/model/#profile-requirements) says though: > The profile property in a Policy is used to indicate the identifier (IRI) of the ODRL Profile for which the Policy expression conforms to. **This property is OPTIONAL, but if the property appears, then _any_ consuming system _MUST_ understand the identified ODRL Profile and _all_ the constraints in the ODRL Profile _MUST_ apply to the Policy expression.** _"any consuming system"_ != _"any consuming system that supports/implements given profile"_ Actually, it's even contradicting itself as it continues on with stating that: > **If a consuming system _does not understand_ the ODRL Profile, then _it MAY continue processing_ the Policy expression,** but it SHOULD NOT assume it has interpreted the Policy expression correctly. Since it's required that **any** consuming system **MUST** understand the identified Profile, any system that doesn't, doesn't conform to the spec. see https://www.ietf.org/rfc/rfc2119.txt: >1.) **MUST** This word, or the terms "REQUIRED" or "SHALL", mean that the definition is **an absolute requirement of the specification**. > >3.) **SHOULD** This word, or the adjective "RECOMMENDED", mean that **there may exist valid reasons in particular circumstances to ignore a particular item,** but the full implications must be understood and carefully weighed before choosing a different course. > >5.) **MAY** This word, or the adjective "OPTIONAL", mean that **an item is truly optional.** [..] An implementation which does not include a particular option **MUST be prepared to interoperate** with another implementation which does include the option, **though perhaps with reduced functionality**. In the same vein an implementation which does include a particular option **MUST be prepared to interoperate** with another implementation which does not include the option **(except, of course, for the feature the option provides.)** renato: > Other recent specs use RFC2119 terms in non-normative sections: Unfortunately, yes.. But they make it very clear to whom those requirements apply to and/or don't use MUST: https://www.w3.org/TR/2017/PR-activitystreams-vocabulary-20170413/#places: > While **publishers are not required to use these specific properties** and MAY make use of other mechanisms for describing locations, consuming **implementations that support the Place object MUST support the use of these properties.** - publishers are not required to use these specific properties - only implementations that support the Place object MUST support the use --------------------- https://www.w3.org/TR/annotation-model/#additional-media-types-selector-combination: > The table below contains some other, possible combinations of media types and selector types, **which MAY be implemented but are not mandated by this specification**. - MAY be implemented but not mandated by the spec --------------------- https://www.w3.org/TR/activitystreams-core/#activitystreams-1.0: > The terms displayName, verb, title and objectType should be treated as reserved terms that **SHOULD NOT be used** within Activity Streams 2.0 documents. When encountered in an Activity Streams 2.0 document, **they SHOULD be processed** in accordance to the guidelines listed in .. - SHOULD NOT be used - if encountered they SHOULD be processed according to the guidelines --------------------- > @simonstey What should be updated in that paragraph? 1. don't require **any** implementation to be able to understand/process profiles 2. s/MUST/SHOULD/ 3. (move the whole section on ODRL Profiles into their own WG Note :) ) -- GitHub Notification of comment by simonstey Please view or discuss this issue at https://github.com/w3c/poe/issues/172#issuecomment-300699908 using your GitHub account
Received on Thursday, 11 May 2017 06:56:21 UTC