From 5912a3e5e3a58a00cafa60621a5a47561a83a360 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Sun, 22 Sep 2019 20:10:48 +1000 Subject: [PATCH 1/7] added "data profile" as per WG deliberations --- conneg-by-ap/index.html | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index d6638f253..7b302a9ab 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -212,11 +212,21 @@

Definitions

A specification that constrains, extends, combines, or provides guidance or explanation about the usage of other specifications.

+

+ If the specification profiled is a specialized type of specification, for example a data or a functional + specification, the profile will be of the same sort - a data or functional profile. + In this document, these are all referred to as just "profiles" and no distinction, in wording, is made + between profiles of different types. +

+ +
data profile
+
+

+ A data specification that constrains, extends, combines, or provides guidance or explanation about the usage of other data specifications. +

This definition includes what are sometimes called "application profiles", "metadata application profiles", "data profiles" (when applied to data specifications) or "metadata profiles". - In this document, these are all referred to as just "profiles" and no distinction, in wording, is made - between profiles of different types of specification: data, functional etc.

Source: deliberations of the DXWG.

@@ -843,8 +853,8 @@

Alternate Representations Data Model

Order of Precedence for Implementation Profiles

- It is possible that multiple functional profiles MAY be implemented by a service, including HTTP, QSA and possibly other approaches. In such clases a client MAY specify conflicting choices via different mechanisms. The order of precedence determines which mechanism MUST be used. -

+ It is possible that multiple functional profiles MAY be implemented by a service, including HTTP, QSA and possibly other approaches. In such clases a client MAY specify conflicting choices via different mechanisms. The order of precedence determines which mechanism MUST be used. +

The order of precedence is QSA over HTTP - on the basis that the more exactly a URI points to a resource, the more likely it is that the agent intends to request that precise resource irrespective of which HTTP headers are sent with that request.

@@ -1766,7 +1776,7 @@

Token

The ABNF for the profile attribute's value is token / quoted-string, - where "token" and "quoted-string" are defined as in + where "token" and "quoted-string" are defined as in section 3.2.6 of [[RFC7230]]. The rules for link-param values defined in section 3 of [[RFC8288]] apply. From 1bdd205fb0a706c6f5075e50bb5aa1a12ebc38a8 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Sun, 22 Sep 2019 21:03:33 +1000 Subject: [PATCH 2/7] Rob's edits --- conneg-by-ap/index.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 7b302a9ab..23eae87d8 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -218,6 +218,9 @@

Definitions

In this document, these are all referred to as just "profiles" and no distinction, in wording, is made between profiles of different types.

+

+ This Content Negotiation by Profile specification concerns negotiation for data profiles, and specifies functional profiles for different ways of achieving this. +

data profile
@@ -225,8 +228,7 @@

Definitions

A data specification that constrains, extends, combines, or provides guidance or explanation about the usage of other data specifications.

- This definition includes what are sometimes called "application profiles", "metadata application - profiles", "data profiles" (when applied to data specifications) or "metadata profiles". + This definition includes what are sometimes called "application profiles", "metadata profiles" or "metadata application profiles".

Source: deliberations of the DXWG.

From a56acc954d1e8e199096a3e50668cd28843e544c Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 25 Sep 2019 06:42:45 +1000 Subject: [PATCH 3/7] removing closed Issue 1041 --- conneg-by-ap/index.html | 1 - 1 file changed, 1 deletion(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 23eae87d8..306cb6956 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -2114,7 +2114,6 @@

Alternate Representations Data Model - Details

Implementations

-

A Web Ontology Language [[OWL2-OVERVIEW]] implementation of the data model in is given below in Code Listing 3. It is also available in the file From 0c7f5a3640a8e792d96ee3788bc975611f7b9bc4 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 25 Sep 2019 06:48:18 +1000 Subject: [PATCH 4/7] removing redundant note bout an issue now closed and removed --- conneg-by-ap/index.html | 4 ---- 1 file changed, 4 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 306cb6956..3a1fc44d1 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -2224,10 +2224,6 @@

Implementations

Extensions

-
- See the reference to Issue #1041 in the previous subsection for discussion of work needed to relate the - Alternative Profiles Data Model to the Profiles Vocabulary. -

The Alternate Profiles Data Model may be extended to include additional information of use in content negotiation by profile situations. One obviously useful extension is the inclusion of information about From 3c817d2f8db42141ead172f8a8b1c03306fc7d31 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 25 Sep 2019 22:35:44 +1000 Subject: [PATCH 5/7] added functional profile defn --- conneg-by-ap/index.html | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 3a1fc44d1..14e57402e 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -215,8 +215,6 @@

Definitions

If the specification profiled is a specialized type of specification, for example a data or a functional specification, the profile will be of the same sort - a data or functional profile. - In this document, these are all referred to as just "profiles" and no distinction, in wording, is made - between profiles of different types.

This Content Negotiation by Profile specification concerns negotiation for data profiles, and specifies functional profiles for different ways of achieving this. @@ -232,6 +230,13 @@

Definitions

Source: deliberations of the DXWG.

+
functional profile
+
+

+ A functional specification that constrains, extends, combines, or provides guidance or explanation about the usage of other functional specifications. +

+

Source: deliberations of the DXWG.

+
client
A program that establishes a connection to a server for the purpose of sending one or more HTTP requests. [[RFC7230]] From 8ffdfe1d4ba887606c4d16485d1dee53e9330af2 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 25 Sep 2019 22:42:02 +1000 Subject: [PATCH 6/7] all refs to functional profile called out as functional profiles specifically --- conneg-by-ap/index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 14e57402e..19f4bc7bd 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -481,7 +481,7 @@

Abstract Model

implementation it within specific environments.

- Implementations of this Abstract Model for different environments are called Functional Profiles and to be a valid functional profile they MUST implement these Abstract Model functions. How they do this will be + Implementations of this Abstract Model for different environments are called Functional Profiles and to be a valid functional profile they MUST implement these Abstract Model functions. How they do this will be environment-specific.

@@ -872,8 +872,8 @@

Order of Precedence for Implementation Profiles

Functional Profiles

- This section describes profiles of this specification's Abstract Model which are implementations of it - in different environments; they are profiles and may be referred to as "functional profiles". These profiles are + This section describes functional profiles of this specification's Abstract Model which are implementations of it + in different environments. These functional profiles are formally identified in and are to be used as conformance targets for specific implementations of systems within different environments wishing to conform to this specification.

@@ -1964,8 +1964,8 @@

Appendices

Profiles of this specification

- This specification contains a number of distinct profiles that are identified and described in words in - . This appendix presents descriptions of these profiles, and the relations + This specification contains a number of distinct functional profiles that are identified and described in words in + . This appendix presents descriptions of these functional profiles, and the relations between them, according to the Profiles Vocabulary [[PROF]].

From 5f6ff5ff21d0e96dd88c530a1d5b1d75ff1ffa4d Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 25 Sep 2019 22:53:53 +1000 Subject: [PATCH 7/7] moved conformance profiles subsection to Functional Profiles section --- conneg-by-ap/index.html | 177 +++++++++++++++++++--------------------- 1 file changed, 85 insertions(+), 92 deletions(-) diff --git a/conneg-by-ap/index.html b/conneg-by-ap/index.html index 19f4bc7bd..fe287120f 100644 --- a/conneg-by-ap/index.html +++ b/conneg-by-ap/index.html @@ -105,88 +105,6 @@

Introduction

Section 8.

Specifications and Profiles to which the content of resource representations may conform embody their own notions of conformance, which are out of scope for this specification.

-
-

Profiles for Conformance

-

- This specification includes several functional profiles of it that may be conformed to by systems claiming to implement a form of this specification. - These profiles, given in the table below, are identified by URIs and conformance to them by Internet resources should be indicated as per this document (use of - Content-Profile HTTP header). -

-
- The profiles identified and described in this section are of a functional specification - since Content Negotiation by Profile describes how systems should behave and it follows that these profiles - are functional profiles. This specification offers test suites (see ) for - assessing the conformance of systems to this functional specification and these functional profiles but does not - address the conformance of resources to the data specifications and data profiles that Content Negotiation by - Profile supplies methods to negotiate about. Such testing is left to the implementers of those data - specifications and data profiles that resources are indicated to conform to. -
-

- The namespace prefix for the functional profiles used in , the table below, is: -

-
    -
  • cnprhttp://www.w3.org/ns/dx/conneg/profile/
  • -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
URINameDescriptionUsage Note
cnpr:httpHTTP Headers Functional ProfileFor conformance with the functional profile presented in .To be used if a resource conforms to the HTTP Headers Functional Profile
cnpr:qsaQSA Functional ProfileFor conformance with the functional profile presented in . - To be used if a resource conforms to the QSA Functional Profile using the Query String Arguments _profile and _mediatype as per the recommendations - in . -
cnpr:qsa-altQSA Alternate Keywords Functional ProfileFor conformance with the functional profile presented in . - To be used if a resource conforms to the QSA Functional Profile but uses alternate keywords for the Query String Arguments _profile and - _mediatype, as allowed by the recommendations in . -
cp:rrdResource Representation DescriptionFor conformance with . - To be used if a resource representation is able to indicate which profile(s) it conforms to, in its appropriate functional profile, as per the abstract specification in - . -
-
- Profiles of this Content Negotiation by Profile specification to be used by resources and systems to indicate conformance to one or more forms - of it. -
-
-

- If a system wishes to show conformance to this specification, conformance to at least one of the profiles listed in MUST be indicated. -

-

- The namespace used for the above profiles, http://www.w3.org/ns/dx/conneg/profile/, is part of the Dataset Exchange Working Group's reserved W3C namespace, - http://www.w3.org/ns/dx/, which is provisioned for all namespace requirements to do with issues addressed by that Working Group. The /profile/ path segment - indicates a register of profile objects which currently contains just the 4 instances above from . -

-

Definitions

@@ -871,26 +789,101 @@

Order of Precedence for Implementation Profiles

Functional Profiles

-

+

+

Functional Profiles of this specification

+

This section describes functional profiles of this specification's Abstract Model which are implementations of it in different environments. These functional profiles are formally identified in and are to be used as conformance targets for specific implementations of systems within different environments wishing to conform to this specification. -

-

- This document provides functional profiles for two environments - HTTP & human browser (Query String - Argument functionality) only. For the human browser environment, two functional profiles are presented. - Further functional profiles of this specification MAY be implemented either for other environments and or even for - constrained scenarios within these environments and implementers are encouraged to do this by further profiling this - specification. -

-

+

+

+ This document provides functional profiles for two environments - HTTP & human browser (Query String + Argument functionality) only. For the human browser environment, two functional profiles are presented. + Further functional profiles of this specification MAY be implemented either for other environments and or even for + constrained scenarios within these environments and implementers are encouraged to do this by further profiling this + specification. +

+

Implementers of Content Negotiation by Profile need not ensure systems conform to multiple functional profiles of this specification. They need only conform to the functional profile(s) relevant to their environment. In some cases, for example the Query String Argument-relevant human browser environment, there is a choice of more than one functional profile. Since all functional profiles of this specification themselves must conform to this specification, by design, conformance to any functional profile guarantees conformance to the specification.

+
+
+

Conformance to Functional Profiles

+

+ This specification defines several functional profiles that may be conformed to by systems. + These functional profiles are identified by URIs and given in the table below. +

+

+ The namespace prefix for the functional profiles used in , the table below, is: +

+
    +
  • cnprhttp://www.w3.org/ns/dx/conneg/profile/
  • +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
URINameDescriptionUsage Note
cnpr:httpHTTP Headers Functional ProfileFor conformance with the functional profile presented in .To be used if a resource conforms to the HTTP Headers Functional Profile
cnpr:qsaQSA Functional ProfileFor conformance with the functional profile presented in . + To be used if a resource conforms to the QSA Functional Profile using the Query String Arguments _profile and _mediatype as per the recommendations + in . +
cnpr:qsa-altQSA Alternate Keywords Functional ProfileFor conformance with the functional profile presented in . + To be used if a resource conforms to the QSA Functional Profile but uses alternate keywords for the Query String Arguments _profile and + _mediatype, as allowed by the recommendations in . +
cp:rrdResource Representation DescriptionFor conformance with . + To be used if a resource representation is able to indicate which profile(s) it conforms to, in its appropriate functional profile, as per the abstract specification in + . +
+
+ Profiles of this Content Negotiation by Profile specification to be used by resources and systems to indicate conformance to one or more forms + of it. +
+
+

+ If a system wishes to show conformance to this specification, conformance to at least one of the functional profiles listed in MUST be indicated. +

+

+ The namespace used for the above functional profiles, http://www.w3.org/ns/dx/conneg/profile/, is part of the Dataset Exchange Working Group's reserved W3C namespace, + http://www.w3.org/ns/dx/, which is provisioned for all namespace requirements to do with issues addressed by that Working Group. The /profile/ path segment + indicates a register of profile objects which currently contains just the 4 instances above from . +

+

Hypertext Transfer Protocol Headers