This document describes all the changes made to the Architecture and Common Datatypes document, starting from its first released version.
- Extended description of statistics.
- Added chapter about statistics endpoints.
- Added admin-provider element to common types.
- Added chapter on identifying callers and receivers.
- Imposed 1 to 1 communication in EWP.
- Added info about EQL level code for short cycle mobilities.
- Fixed #30 - clients are required to send CNRs for every API.
- Allowed unofficial "NS" code for "native speaker" language level.
- Added more details on CNR implementation and error handling.
- Added preference for HTTP 401 when client is not authenticated.
- New
simpleType
added tocommon-types.xsd
:Sha256Hex
.
-
Added details on error handling:
- Described when to use the
user-message
field (on possible edit conflicts). - Described when to encrypt error responses (when the client requests the responses to be encrypted).
- Described when to use the
-
Described the index-pulling practice.
-
Spelling fixes (efq->eqf), formatting fixes, updated links.
-
Removed the Security and Authentication section. The contents of this section were moved to separate documents (details).
- As a result, renamed the document to Architecture and Common Datatypes (previous name was Architecture and Security).
-
Added a detailed explanation of the master-slave model in context of CNRs.
-
Explained how to handle deleted entities via CNR.
- Introduced
<success-user-message>
element tocommon-types.xsd
. (Currently it is used in Outgoing Mobilities API only, but we believe that more APIs might want to reuse it.)
-
Updated structure of the document (changed names and indentation of some chapters).
-
Added a detailed chapter explaining identifiers and codes (surrogate and natural keys). It defines how they should be compared with each other (in particular, comparison should be case-sensitive), what is the recommended type for the values (UUIDs) and what restrictions these values must meet (discuss here).
-
Added recommendations in regard to referential integrity and explaining how "old data" should be kept (discuss here).
-
Expanded the chapter about broadcasting changes and CNR APIs. Among other things, it now contains separate recommendations for both the server and the client (discuss here).
-
Expanded XSD annotations in regard to a possible uses of
xml:lang
's script subtag. -
minOccurs
andmaxOccurs
are now provided explicitly (why?). -
Typos and other minor fixes.
- Added
<user-message>
element to<error-response>
.
- More simple data types added to
common-types.xsd
:UUID
,EqfLevel
,CefrLevel
,Gender
. - Added a note in
common-types.xsd
explaining why we keep it in the Architecture and Security document (this was the name of this document at that point).
- New features: Common-types added:
HTTP
,HTTPWithOptionalLang
,CountryCode
. - Added a warning for about complexities of
xml:lang
(see here). - Clarified that some of the guidelines are only recommendations, not strict requirements.
- Added the description of the development environment.
- Only some minor changes in formatting and vocabulary.
-
Fixed some inconsistencies in the vocabulary.
-
A more appropriate definition of EWP Host was introduced, along with some more complex examples of EWP Network topologies. Images were updated to describe the example better.
-
Described some of the complexities of the A1 architecture in detail (as discussed in this thread).
-
Removed an (obsolete) paragraph saying that once an API is deployed, no new major version of this API should be released. This has been allowed for a while now.
-
Updated links and references. Fixed some issues with formatting.
<error-response>
element has been moved to the common-types.xsd schema. There seemed to be no reason to keep it in a separate namespace.
- Changes in common-types.xsd.
- Error handling rules and
error-response.xsd
schema were introduced (details).
-
Fixed links and XML namespaces (details).
-
Got rid of the misleading "request signing" term (details).
-
Added further clarification on server and client certificates.
Initial release. Reviewed here and initially accepted during the meeting on the 5th of February 2016.