Contents
1. Overview
The Evidence Broker is one of the Common Services of the OOTS HLA. It is a service that publishes which types of evidence Member States can provide to prove a particular requirement of a procedure. It provides metadata on the requirements applicable in a procedure and which type of evidence can be used by the User to prove fulfilment. Using the mapping from criteria or information requirements to possible evidence types, the Evidence Requester can find the evidence types that can prove that the User fulfills the requirements of the procedure.
2. Information Model
2.1. Core Criterion and Core Evidence Vocabulary
The EB Information Model is based on the ISA2 SEMIC Core Criterion and Core Evidence Vocabulary (CCCEV) v2.0. The CCCEV is designed to support the exchange of information between organisations defining requirements and organisations responding to these requirements by means of evidence types.
The CCCEV contains two basic and complementary core concepts:
- The Requirement, which is used as the basis for making a judgment or decision, e.g. a requirement set in a public tender or a condition that has to be fulfilled for a public service to be executed;
- The Evidence Type, which proves that something else exists or is true. In particular, an evidence is used to prove that a specific requirement is met by someone or by something.
2.2. Requirement Model
One of the central concepts of the Evidence Broker is the ‘Requirement’. It is a condition or prerequisite that someone requests and someone else has to meet.
The requirement is realised by three concrete types of requirements: The Information Requirement, the Criterion and the Constraint.
- The Information Requirement is to be seen as a request for data that proves one or more facts of the real world, or that leads to the source of such a proof.
The Criterion is to be seen as a condition that will be evaluated.
The Constraint is a limitation imposed on any type of requirement or on an element defined inside a requirement.
2.3. Evidence Type Model
Each requirement is linked with one or more lists of Evidence Types. Each list contains one or more evidence types that can prove the specific requirement. The following behavior is supported by the EB Mechanism:
- The respondent to a Requirement must provide at least one evidence per each type of evidence specified in one list; the respondent can select the list amongst the ones proposed by the requester. This amounts to say that the content of a list is combined via the logic operator ‘AND’, and the lists are combined via the logic operator ‘OR’.
- The types of evidences can be described in detail with respect to their jurisdiction level.
- The class ‘Evidence’ provides the means to support responses to Criteria or in response to a concrete Information Requirements.
The EB keeps a mapping between the requirements and the evidence types, either national or harmonized, that are able to fulfil these requirements.
3. Criterion to Evidence Type Mapping Mechanism
The EB mapping mechanism is a requirement-oriented one. It assumes that each procedure has one or more specific requirements that need to be fulfilled by the User that executes the procedure. Conceptually, the mapping process follows the steps below:
- A Member State implementing a procedure, has identified a requirement that must be fulfilled by the user executing the procedure.
- It initially checks whether this requirement already exists and has been addressed within the scope of this or another procedure, by scanning the list of available requirements.
- If the requirement does not already exist, the Member State requests a requirement addition for the specific procedure. If it exists, then it maps this requirement as part of the implementation of the procedure in the Member State.
- Member States providing evidence need to map the specific new requirement with list of evidence types that prove the requirement added, by adding evidence types. These evidence types MUST be registered in the codelist of evidence type classifications, published by the semantic repository.
For the pivoting mechanism to work, each requirement MUST have a EU-wide scope so that is visible and mappable to evidence types issued by all the MSs.
4. Query Interface Specification
4.1. Evidence Broker Queries
The query interface specification for the Evidence Broker is based on the OASIS ebXML RegRep V4 standard. This standard has multiple protocol bindings that can be used to execute queries. Since the EB queries have only simple, single-value parameters, the REST binding is used to implement the EB query interface. This implies that the query transaction is executed as an HTTP GET request with the URL representing the query to execute and the HTTP response carrying the query response as an XML document. This section further profiles the REST binding as specified in the OASIS RegRep standard for use by the EB.
The interface only supports a subset of the REST binding. In particular, support for the canonical query parameters defined in section 12 of the OASIS RegRep 4 Registry Services specification is NOT REQUIRED.
4.2. Get List of Requirements Query
The initial top-level query returns a list of available requirements. The supported parameters and query filters, are listed in the following table:
Parameter | Requirement | Description |
---|---|---|
queryId | MUST | This parameter MUST have value urn:fdc:oots:eb:ebxml-regrep:queries:requirements-by-procedure-and-jurisdiction. |
procedure-id | OPTIONAL | The identifier of the procedure at the EU level, used to filter only the requirements that are used under the specific procedure |
country-code | OPTIONAL | The jurisdiction of the procedure, expressed as a ISO 3166-2 country code, used to filter only the requirements that are used under the specific member state for procedure implementation |
jurisdiction-admin-l2 | OPTIONAL | The level two administration level code for the jurisdiction of the evidence type, expressed using NUTS code. It MUST be combined with country-code |
jurisdiction-admin-l3 | OPTIONAL | The level three administration level code for the jurisdiction of the evidence type, expressed using LAU code. It MUST be combined with country-code |
4.2.1 Data Model of the Query Response of the EB for the "Requirement Query"
The Query Response of the EB of an Requirement Query returns a RegRep QueryResponse document which MUST either contain an Exception
or RegistryObjectList
element with zero or more RegistryObjects
. Each RegistryObject
in the result MUST include one Slot
element with a SlotValue
of type rim:AnyValueType and a single Requirement
child element, following the SDGR Application Profile of the EB. The SDGR application profile of the EB describes how the SDG-Generic-Metadata Profile (SDG-syntax) is profiled in ebRIM in order to compose a valid QueryResponse. It therefore contains a mapping to the underlying SDG-syntax elements and necessary parameters to compose a QueryResponse. The namespace of the SDG-syntax is http://data.europa.eu/p4s.
The following data model illustrates the RegRep QueryResponse returned by the EB for a Requirements Query. It shows the case of a successful response, therefore the RegistryObjectList
element is present and the Exception
element is not present.
4.2.2 Implementation Guideline of the Query Response of the EB for the "Requirement Query"
The table below defines the elements of the SDG Application Profile for the Query Response of the EB (for Requirements) according to the core ebRIM elements and the Requirement
slot.
Legend
The table below represent the tree structure of the data models illustrated in this section. Light grey rows describe classes and define their properties and attributes. Light green rows soley illustrate the classes that are subordinated or associated to a class and therewith illustrate the tree structure of the data model. Light green rows are thus always repeated as light grey rows to describe the properties and attributes of a class. The hierarchy of the tree structure is also indicated in the first column via the '+' symbol.
Name | Definition | Cardinality | Type | Data Type | Rules | Core Vocabulary / Domain | Element of Core Vocabulary | |
---|---|---|---|---|---|---|---|---|
query:QueryResponse | root element | ComplexType | Structure: R-EB-REQ-S001, R-EB-REQ-S002, R-EB-REQ-S012 | ebRIM | ||||
+ | status | This attribute contains the status of the response. If the EB provides at least one RegistryObject, the value "urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success" is used. | 1..1 | Attribute | Identifier | Structure: R-EB-REQ-S005, R-EB-REQ-S006, R-EB-REQ-S008 | ebRIM | - |
++ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | ComplexType | Structure: R-EB-REQ-S007 | ebRIM | - | |
++ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | ComplexType | Structure: R-EB-REQ-S007 | ebRIM | - | |
+++ | rim:RegistryObject | Element to control the type and structure of Registry Object within the QueryResponse. | 1..n | ExtrinsicObjectType | Structure: R-EB-REQ-S018 | ebRIM | - | |
+++ | rim:RegistryObject | Element to control the type and structure of Registry Object within the QueryResponse. | 1..n | ExtrinsicObjectType | Structure: R-EB-REQ-S018 | ebRIM | - | |
++++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-REQ-S019 | ebRIM | - |
++++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement | 1..1 | SlotType | AnyValueType | Structure: R-EB-REQ-S011, R-EB-REQ-S013 | ebRIM | - |
++++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement | 1..1 | SlotType | AnyValueType | Structure: R-EB-REQ-S011, R-EB-REQ-S013 | ebRIM | - |
+++++ | Requirement | The element describes specific aspects and metadata of the Requirement | 1..1 | RequirementType | Structure: R-EB-REQ-S014, R-EB-REQ-S016 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
+++++ | Requirement | The element describes specific aspects and metadata of the Requirement | 1..1 | RequirementType | Structure: R-EB-REQ-S014, R-EB-REQ-S016 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
++++++ | Identifier | The unique identifier of the Requirement | 1..1 | Attribute | Identifier | Content: R-EB-REQ-C001 | CCCEV | cccev:identifier |
++++++ | Name | A name to identify in common language the Requirement | 1..1 | Attribute | Text | CCCEV | cccev:name | |
+++++++ | Name/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C002, R-EB-REQ-C003 | CCCEV | cccev:name |
++++++ | ReferenceFramework | The Reference Framework that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-REQ-S017 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
++++++ | ReferenceFramework | The Reference Framework that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-REQ-S017 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
+++++++ | Identifier | The Identifier of the Procedure | 1..1 | Attribute | Identfier | Content: R-EB-REQ-C004 | CCCEV | cccev:identifier |
+++++++ | Title | The title of the Procedure | 1..n | Attribute | Text | - | - | |
++++++ | Title/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C005, R-EB-REQ-C006 | - | - |
+++++++ | Description | The description of the Procedure | 0..n | Attribute | Text | - | - | |
++++++ | Description/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C007, R-EB-REQ-C008 | - | - |
+++++++ | RelatedTo | The Identifier of the SDGR Procedure which this procedure relates to | 1..n | ReferenceFrameworkType | Structure: R-EB-REQ-S015, R-EB-REQ-S020 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
+++++++ | Jurisdiction | The administrative level in which this reference framework applies. It can apply to multiple jurisdictions | 1..n | JurisdictionType | Structure: R-EB-REQ-S021 | Core Location Vocabulary (CLV) | locn:Address | |
++++++++ | RelatedTo | The Identifier of the SDGR Procedure which this procedure relates to | 1..n | ReferenceFrameworkType | Structure: R-EB-REQ-S015, R-EB-REQ-S020 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
++++++++ | Identifier | The Identifier of the Procedure | 1..1 | Attribute | Identfier | Content: R-EB-REQ-C012 | CCCEV | cccev:identifier |
+++++++ | Jurisdiction | The Jurisdiction to which this Data Service Evidence Type applies. | 1..n | JurisdictionType | Structure: R-EB-REQ-S021 | Core Location Vocabulary (CLV) | locn:Address | |
+++++++++ | AdminUnitLevel1 | The name of the uppermost level of the address, almost always a country. | 1..1 | Attribute | Code | Content: R-EB-REQ-C009 | Core Location Vocabulary | locn:adminUnitL1 |
+++++++++ | AdminUnitLevel2 | The name of a secondary level/region of the address, usually a county, state or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C010 | Core Location Vocabulary (CLV) | locn:adminUnitL2 |
+++++++++ | AdminUnitLevel3 | The name of a secondary level/region of the address, usually a municipality or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C011 | Core Location Vocabulary (CLV) | locn:adminUnitL3 |
4.2.3 Example of the Query Response of the EB for the "Requirement Query"
The query response contains the list of requirements, with each requirement correlated to one or more procedure national implementations. The following example shows a response using the SDG Application Profile XML Representation.
<?xml version="1.0" encoding="UTF-8"?> <query:QueryResponse xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:sdg="http://data.europa.eu/p4s" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" totalResultCount="1" startIndex="0" status="urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success"> <rim:RegistryObjectList> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Slot name="Requirement"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:Requirement> <sdg:Identifier>315cfd75-6605-49c4-b0fe-799833b41099</sdg:Identifier> <sdg:Name lang="en">Proof of Birth</sdg:Name> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>118fd444-6443-42be-a084-c9fbfd1f674d</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in the Spanish Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- Requirement is used in the implementation of Procedure 5 in Spain --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>ES</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>03b82e6a-3227-4751-a815-b570a9c0aeb4</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in Belgian Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- Requirement is used in the implementation of Procedure 5 in Belgium --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>BE</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> </sdg:Requirement> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </query:QueryResponse>
4.2.4. Business Rules associated to the Query Response of the EB for the "Requirement Query"
In order to facilitate interoperability of the successful Query Response of the EB (for the Requirements Query), a set of business rules is defined to guarantee the correct structure, use and format of information objects when receiving query responses from the EB. The rule ID references to the EB transaction "EB get Requirements Query Response" (EB-REQ).
Business Rule
The Rule ID is used to identify the rule and to have an error code next to the rule description. The Element and Location points to the correct information object that is affected by the rule. Each business rule is associated with an error level (flag) that expresses a validation result when an XML instance is proven against the rules through schematron validation:
- information: a hint that an additional object is mandatory in some cases;
- warning: offering recommendations to improve the quality of the instance or regain full validity;
- fatal: the rule point to a major issue of consistency or data correctness.
Rule descriptions containing "MUST" correspond to an error level that is flagged as fatal, while "SHOULD" rules correspond to an error level that is flagged as a warning. "MAY" rules point to error level note. For each business rule, a corresponding schematron rule is defined that references the same rule ID. Schematrons are used to prove the correctness of instances.
4.2.4.1 Business rules of the EB to prove the correct structure of a Get Evidence Types for Requirement Query
The table below lists the business rules to prove the structure of a "EB get Requirements Query Response" (EB-REQ) such as namespace, root elements, slots, data types including "multidimensional" checks crossing the barrier between the different XSD schemes (XSD-Binding and XSD-Restriction).
Rule Type | Rule ID | Element | Location | Rule | Flag |
RootElement | R-EB-REQ-S001 | query:QueryResponse | query:QueryResponse | The root element of a query response document MUST be 'query:QueryResponse' | Fatal |
Namespace | R-EB-REQ-S002 | query:QueryResponse | query:QueryResponse/@xmlns:query | The namespace of root element of a query response document MUST be 'urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0' | Fatal |
RootAttribute | R-EB-REQ-S005 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of a 'QueryResponse' MUST be present. | Fatal |
RootAttribute | R-EB-REQ-S006 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of a successfull 'QueryResponse' MUST be encoded as as 'urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success'. | Fatal |
Structure | R-EB-REQ-S007 | rim:RegistryObjectList | query:QueryResponse/rim:RegistryObjectList/ | A successful QueryResponse MUST include a RegistryObjectList | Fatal |
Structure | R-EB-REQ-S008 | query:QueryResponse | query:QueryResponse/@status | A successful QueryResponse MUST not include an Exception | Fatal |
Slot | R-EB-REQ-S011 | rim:Slot(Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement'] | The rim:Slot name="Requirement" MUST be present in the QueryResponse. | Fatal |
Slot | R-EB-REQ-S012 | query:QueryResponse | query:QueryResponse | A 'query:QueryResponse' MUST not contain any other rim:Slots. | Fatal |
Datatype | R-EB-REQ-S013 | rim:SlotValue (Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue | The rim:SlotValue of rim:Slot name="Requirement" MUST be of "rim:AnyValueType" | Fatal |
XSD-Binding | R-EB-REQ-S014 | sdg:Requirement (Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/ | A 'rim:Slot[@name='Requirement'/rim:SlotValue' MUST contain one sdg:Requirement of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Restriction | R-EB-REQ-S015 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType"/ MUST only contain the 'sdg:Identifier' | Fatal |
XSD-Restriction | R-EB-REQ-S016 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement | The xs:element name="Requirement" type="sdg:RequirementType" / MUST not contain the EvidenceTypeList. | Fatal |
Cardinality | R-EB-REQ-S017 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework | The xs:element name="ReferenceFramework" type="sdg:ReferenceFrameworkType" MUST be present. | Fatal |
Structure | R-EB-REQ-S018 | rim:RegistryObject | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject | A successful QueryResponse MUST include a 'rim:RegistryObject'. | Fatal |
Identifier | R-EB-REQ-S019 | rim:RegistryObject | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/@id | The 'id' of a 'RegistryObject' MUST be unique UUID (RFC 4122) starting with prefix "urn:uuid:". | Fatal |
Cardinality | R-EB-REQ-S020 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType" MUST be present. | Fatal |
Cardinality | R-EB-REQ-S021 | sdg:Jurisdiction | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction | The xs:element name="sdg:Jurisdiction" type="sdg:JurisdictionType" MUST be present. | Fatal |
4.3.4.2 Business rules of the EB to prove the content format of information objects of a Get Evidence Types for Requirement Query
The table below lists the business rules to prove the structure of a "EB get Requirements Query Response" (EB-REQ) such as identifiers, formats, fixed values, mandatory set of values on specific fields (code lists) and dependencies between fields.
Rule Type | Rule ID | Element | Location | Rule | Flag |
Identifier | R-EB-REQ-C001 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Identifier | The value of 'Identifier' of a 'Requirement' MUST be unique UUID (RFC 4122) provided by the EvidenceBroker. | Fatal |
Codelist | R-EB-REQ-C002 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C003 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Identifier | R-EB-REQ-C004 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Identifier | The 'Identifier' of a 'ReferenceFramework' MUST be unique UUID (RFC 4122). | Fatal |
Codelist | R-EB-REQ-C005 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Title/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C006 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Title/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-REQ-C007 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Description/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C008 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Description/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-REQ-C009 | sdg:Jurisdiction | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel1 | The value of the 'AdminUnitLevel1' MUST be part of the code list 'CountryIdentificationCode' (ISO 3166-1 alpha-2 codes). | Fatal |
Codelist | R-EB-REQ-C010 | sdg:Jurisdiction | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel2 | The value of the 'AdminUnitLevel2' MUST be coded using the code list 'Nuts' (Nomenclature of Territorial Units for Statistics). | Fatal |
Codelist | R-EB-REQ-C011 | sdg:Jurisdiction | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel3 | The value of the 'AdminUnitLevel3' MUST be coded using the code list 'LAU' (Local Administrative Units). | Fatal |
Identifier | R-EB-REQ-C012 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo/sdg:Identifier | The value of the 'Identifier' of 'RelatedTo' MUST be a persistent URL with the following format 'http:://……' pointing to the SDGR Procedures which this requirement relates to (Semantic Respository). | Fatal |
4.3. Get Evidence Types for Requirement Query
This query returns the list of evidence types that prove a specific requirement. It must contain the Identifier of the requirement, that can be extracted using the "Get List of Requirements" query if not known. The supported parameters and query filters, are listed in the following table:
Parameter | Requirement | Description |
---|---|---|
queryId | MANDATORY | urn:fdc:oots:eb:ebxml-regrep:queries:evidence-types-by-requirement-and-jurisdiction |
requirement-id | MANDATORY | The id of the requirement we request the evidence types for |
country-code | OPTIONAL | The country code of the mapped evidence under request |
jurisdiction-admin-l2 | OPTIONAL | The level two administration level code for the jurisdiction of the evidence type, expressed using NUTS code. It MUST be combined with country-code |
jurisdiction-admin-l3 | OPTIONAL | The level three administration level code for the jurisdiction of the evidence type, expressed using LAU code. It MUST be combined with country-code |
4.3.1 Data Model of the Query Response of the EB for the "Get Evidence Types for Requirement Query"
The Query Response of the EB for Evidence Types that prove a specific requirement returns a RegRep QueryResponse document which MUST either contain an Exception
or RegistryObjectList
element with zero or more RegistryObjects
. Each RegistryObject
in the result MUST include one Slot
element with a SlotValue
of type rim:AnyValueType and a single Requirement
child element, following the SDGR Application Profile of the EB. The SDGR application profile of the EB describes how the SDG-Generic-Metadata Profile (SDG-syntax) is profiled in ebRIM in order to compose a valid QueryResponse. It therefore contains a mapping to the underlying SDG-syntax elements and necessary parameters to compose a QueryResponse. The namespace of the SDG-syntax is http://data.europa.eu/p4s.
The following data model illustrates the RegRep QueryResponse returned by the EB when requesting Evidence Types that prove a specific requirement. It shows the case of a successful response, therefore the RegistryObjectList
element is present and the Exception
element is not present.
4.3.2 Implementation Guideline of the Query Response of the EB for the "Get Evidence Types for Requirement Query"
The table below defines the elements of the SDG Application Profile for the Query Response of the EB (for Evidence Types) according to the core ebRIM elements and the Requirement
slot including among other element the Evidence Types.
Legend
The table below represent the tree structure of the data models illustrated in this section. Light grey rows describe classes and define their properties and attributes. Light green rows soley illustrate the classes that are subordinated or associated to a class and therewith illustrate the tree structure of the data model. Light green rows are thus always repeated as light grey rows to describe the properties and attributes of a class. The hierarchy of the tree structure is also indicated in the first column via the '+' symbol.
Name | Definition | Cardinality | Type | Data Type | Rules | Core Vocabulary / Domain | Element of Core Vocabulary | |
---|---|---|---|---|---|---|---|---|
query:QueryResponse | root element | ComplexType | Structure: R-EB-EVI-S001, R-EB-EVI-S002, R-EB-EVI-S010 | ebRIM | ||||
+ | status | This attribute contains the status of the response. If the EB provides at least one RegistryObject, the value "urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success" is used. | 1..1 | Attribute | Identifier | Structure: R-EB-EVI-S005, R-EB-EVI-S006, EB-EVI-S008 | ebRIM | - |
++ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | ComplexType | Structure: EB-EVI-S007 | ebRIM | - | |
++ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | ComplexType | Structure: EB-EVI-S007 | ebRIM | - | |
+++ | rim:RegistryObject | Element to control the type and structure of Registry Object within the QueryResponse. | 1..n | ExtrinsicObjectType | Structure: R-EB-EVI-S018 | ebRIM | - | |
+++ | rim:RegistryObject | Element to control the type and structure of Registry Object within the QueryResponse. | 1..n | ExtrinsicObjectType | Structure: R-EB-EVI-S018 | ebRIM | - | |
++++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-EVI-S019 | ebRIM | - |
++++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement. | 1..1 | SlotType | AnyValueType | Structure: R-EB-EVI-S009, R-EB-EVI-S011 | ebRIM | - |
++++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement. | 1..1 | SlotType | AnyValueType | Structure: R-EB-EVI-S009, R-EB-EVI-S011 | ebRIM | - |
+++++ | Requirement | The element describes specific aspects and metadata of the Requirement. | 1..1 | RequirementType | Structure: R-EB-EVI-S012 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
+++++ | Requirement | The element describes specific aspects and metadata of the Requirement. | 1..1 | RequirementType | Structure: R-EB-EVI-S012 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
++++++ | Identifier | The unique identifier of the Requirement. | 1..1 | Attribute | Identifier | Content: R-EB-REQ-C001 | CCCEV | cccev:identifier |
++++++ | Name | A name to identify in common language the Requirement. | 1..1 | Attribute | Text | CCCEV | cccev:name | |
+++++++ | Name/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C002, R-EB-REQ-C003 | CCCEV | cccev:name |
++++++ | ReferenceFramework | The Reference Framework or Proceddure that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-EVI-S017 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
++++++ | EvidenceTypeList | A list of Evidence Types, that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeListType | Structure: R-EB-EVI-S016 | Core Criterion and Core Evidence Vocabulary | cccev:EvidenceTypeList | |
++++++ | ReferenceFramework | The Reference Framework or Procedure that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-EVI-S017 | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
+++++++ | Identifier | The Identifier of the ReferenceFramework or Procedure. | 1..1 | Attribute | Identfier | Content: R-EB-REQ-C004 | CCCEV | cccev:identifier |
+++++++ | Title | The title of the ReferenceFramework orProcedure. | 1..n | Attribute | Text | - | - | |
++++++++ | Title/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C005, R-EB-REQ-C006 | - | - |
+++++++ | Description | The description of the ReferenceFramework orProcedure. | 0..n | Attribute | Text | - | - | |
++++++++ | Description/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C007, R-EB-REQ-C008 | - | - |
+++++++ | RelatedTo | The Identifier of the SDGR Procedure which this ReferenceFramework or procedure relates to. | 1..n | ReferenceFrameworkType | Structure: R-EB-EVI-S013, R-EB-EVI-S020 | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
+++++++ | Jurisdiction | The administrative level in which this reference framework applies. It can apply to multiple jurisdictions. | 1..n | JurisdictionType | Structure: EB-EVI-S021 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:evidenceTypeJurisdiction | |
++++++++ | RelatedTo | The Identifier of the SDGR Procedure which this ReferenceFramework relates to. | 1..n | ReferenceFrameworkType | Structure: R-EB-EVI-S013, R-EB-EVI-S020 | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
++++++++ | Identifier | The Identifier of the Procedure. | 1..1 | Attribute | Identfier | Content: R-EB-REQ-C012 | CCCEV | cccev:identifier |
+++++++ | Jurisdiction | The Jurisdiction to which this ReferenceFramework (Procedure) applies. | 1..n | JurisdictionType | Structure: EB-EVI-S021 | Core Location Vocabulary (CLV) | locn:Address | |
+++++++++ | AdminUnitLevel1 | The name of the uppermost level of the address, almost always a country. | 1..1 | Attribute | Code | Content: R-EB-REQ-C009 | Core Location Vocabulary (CLV) | locn:adminUnitL1 |
+++++++++ | AdminUnitLevel2 | The name of a secondary level/region of the address, usually a county, state or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C010 | Core Location Vocabulary (CLV) | locn:adminUnitL2 |
+++++++++ | AdminUnitLevel3 | The name of a secondary level/region of the address, usually a municipality or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C011 | Core Location Vocabulary (CLV) | locn:adminUnitL3 |
++++++ | EvidenceTypeList | A list of Evidence Types, that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeListType | Structure: R-EB-EVI-S016 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceTypeList | |
+++++++ | Identifier | The identifier of the Evidence Type List. | 1..1 | Attribute | Identifier | Content: R-EB-REQ-C013 | CCCEV | cccev:identifier |
+++++++ | Name | The name of the Evidence Type List. Unbounded cardinality to support multiple languages. | 0..n | Attribute | Text | cccev:name | ||
++++++++ | Name/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C014, R-EB-REQ-C015 | CCCEV | cccev:name |
+++++++ | EvidenceType | An Evidence Type is a type of evidence that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeType | Structure: R-EB-EVI-S014, R-EB-EVI-S015 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceType | |
+++++++ | EvidenceType | An Evidence Type is a type of evidence that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeType | Structure: R-EB-EVI-S014, R-EB-EVI-S015 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceType | |
++++++++ | EvidenceTypeClassification | An URI pointing to the Evidence Type. The classification is linking with the Evidence Type of the Semantic Repository (Evidence Broker). | 1..1 | Attribute | Code | Content: R-EB-REQ-C016 | Core Criterion Core Evidence Vocabulary | cccev:evidenceTypeClassification |
++++++++ | Title | A name to identify in common language the Evidence Type. Unbounded cardinality to support multiple languages. | 1..n | Attribute | Text | DCAT-AP | dct:title | |
+++++++++ | Title/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C017, R-EB-REQ-C018 | DCAT-AP | dct:title |
++++++++ | Description | A description of the Evidence Type. Unbounded cardinality to support multiple languages. | 0..n | Attribute | Text | DCAT-AP | dct:description | |
+++++++++ | Description/@lang | The language of the description encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-REQ-C019, R-EB-REQ-C020 | DCAT-AP | dct:description |
++++++++ | Jurisdiction | The administrative level in which this EvidenceType applies. It can apply to multiple jurisdictions. | 1..1 | JurisdictionType | Content: R-EB-REQ-C021 | Core Criterion Core Evidence Vocabulary | cccev:evidenceTypeJurisdiction | |
++++++++ | Jurisdiction | The jurisdictions to which this EvidenceType applies. | 1..1 | JurisdictionType | Content: R-EB-REQ-C021 | Core Location Vocabulary (CLV) | locn:Address | |
+++++++++ | AdminUnitLevel1 | The name of the uppermost level of the address, almost always a country. | 1..1 | Attribute | Code | Content: R-EB-REQ-C022 | Core Location Vocabulary (CLV) | locn:adminUnitL1 |
+++++++++ | AdminUnitLevel2 | The name of a secondary level/region of the address, usually a county, state or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C023 | Core Location Vocabulary (CLV) | locn:adminUnitL2 |
+++++++++ | AdminUnitLevel3 | The name of a secondary level/region of the address, usually a municipality or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-REQ-C024 | Core Location Vocabulary (CLV) | locn:adminUnitL3 |
4.3.3 Example of the Query Response of the EB for the "Get Evidence Types for Requirement Query"
The query response contains the list of evidence types that fulfil the specific requirement of the query, filtered by the jurisdiction level code. The following example shows a response using the SDG Application Profile XML Representation
<?xml version="1.0" encoding="UTF-8"?> <query:QueryResponse xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:sdg="http://data.europa.eu/p4s" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success"> <rim:RegistryObjectList> <!-- One registry object per dataset --> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Slot name="Requirement"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:Requirement > <sdg:Identifier>315cfd75-6605-49c4-b0fe-799833b41099</sdg:Identifier> <sdg:Name lang="en">Proof of Birth</sdg:Name> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>118fd444-6443-42be-a084-c9fbfd1f674d</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in the Spanish Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- Requirement is used in the implementation of Procedure 5 in Spain --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>ES</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>03b82e6a-3227-4751-a815-b570a9c0aeb4</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in Belgian Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- Requirement is used in the implementation of Procedure 5 in Belgium --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>BE</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> <sdg:EvidenceTypeList> <!-- Example structure of an evidence type having national coverage area / jurisdiction --> <sdg:Identifier>a1be6e74-e9ba-4d44-b04c-0376f367b8fd</sdg:Identifier> <sdg:EvidenceType> <sdg:EvidenceTypeClassification>CertificateOfBirth</sdg:EvidenceTypeClassification> <sdg:Title lang="en">Certificate of Birth</sdg:Title> <sdg:Title lang="es">certificado de nacimiento</sdg:Title> <sdg:Description lang="en">An official certificate of birth of a person - with first name, surname, sex, date and place of birth, which is obtained from the birth register of the place of birth.</sdg:Description> <sdg:Description lang="en">Un certificado oficial de nacimiento de una persona - con nombre, apellido, sexo, fecha y lugar de nacimiento, que se obtiene del registro de nacimiento del lugar de nacimiento.</sdg:Description> <sdg:Jurisdiction> <!-- ISO code --> <sdg:AdminUnitLevel1>ES</sdg:AdminUnitLevel1> <!-- NUTS Code --> <sdg:AdminUnitLevel2>ES211</sdg:AdminUnitLevel2> <!-- LAU Code --> <sdg:AdminUnitLevel3>01001</sdg:AdminUnitLevel3> </sdg:Jurisdiction> </sdg:EvidenceType> </sdg:EvidenceTypeList> <!-- Example structure of an evidence type having national coverage area / jurisdiction --> <sdg:EvidenceTypeList> <sdg:Identifier>970918e4-1b27-41f0-be20-0a7c5fe4059f</sdg:Identifier> <!-- Classification Information - Provided by the Evidence Broker on the basis of the Semantic Repository --> <sdg:EvidenceType> <sdg:EvidenceTypeClassification>CertificateOfBirth</sdg:EvidenceTypeClassification> <sdg:Title lang="en">Certificate of Birth</sdg:Title> <sdg:Title lang="de">Geburtsurkunde</sdg:Title> <sdg:Description lang="en">An official certificate of birth of a person - with first name, surname, sex, date and place of birth, which is obtained from the birth register of the place of birth.</sdg:Description> <sdg:Description lang="de">Eine amtliche Bescheinigung über die Geburt einer Person – mit Vorname, Familienname, Geschlecht, Datum und Ort der Geburt, welche aus dem Geburtsregister des Geburtsortes erstellt wird.</sdg:Description> <sdg:Jurisdiction> <!-- Country - Mandatory --> <sdg:AdminUnitLevel1>DE</sdg:AdminUnitLevel1> <!-- Regional Code not applicable for DE (Common Evidence for all country) --> </sdg:Jurisdiction> </sdg:EvidenceType> </sdg:EvidenceTypeList> </sdg:Requirement> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </query:QueryResponse>
4.3.4. Business Rules of the EB associated to the "Get Evidence Types for Requirement Query"
In order to facilitate interoperability of the successful Query Response of the EB (for the Get Evidence Types for Requirement Query), a set of business rules is defined to guarantee the correct structure, use and format of information objects when receiving query responses from the EB. The rule IDs reference to the EB transaction "EB get Evidence Types Query Response" (EB-EVI).
Business Rule
The Rule ID is used to identify the rule and to have an error code next to the rule description. The Element and Location points to the correct information object that is affected by the rule. Each business rule is associated with an error level (flag) that expresses a validation result when an XML instance is proven against the rules through schematron validation:
- information: a hint that an additional object is mandatory in some cases;
- warning: offering recommendations to improve the quality of the instance or regain full validity;
- fatal: the rule point to a major issue of consistency or data correctness.
Rule descriptions containing "MUST" correspond to an error level that is flagged as fatal, while "SHOULD" rules correspond to an error level that is flagged as a warning. "MAY" rules point to error level note. For each business rule, a corresponding schematron rule is defined that references the same rule ID. Schematrons are used to prove the correctness of instances.
4.3.4.1 Business rules of the EB to prove the correct structure of a Get Evidence Types for Requirement Query
The table below lists the business rules to prove the structure of a "EB get Evidence Types Query Response" (EB-EVI) such as namespace, root elements, slots, data types including "multidimensional" checks crossing the barrier between the different XSD schemes (XSD-Binding and XSD-Restriction).
Rule Type | Rule ID | Element | Location | Rule | Flag |
RootElement | R-EB-EVI-S001 | query:QueryResponse | query:QueryResponse | The root element of a query response document MUST be 'query:QueryResponse' | Fatal |
Namespace | R-EB-EVI-S002 | query:QueryResponse | query:QueryResponse/@xmlns:query | The namespace of root element of a query response document MUST be 'urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0' | Fatal |
RootAttribute | R-EB-EVI-S005 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of a 'QueryResponse' MUST be present. | Fatal |
RootAttribute | R-EB-EVI-S006 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of a successfull 'QueryResponse' MUST be encoded as as 'urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Success'. | Fatal |
Structure | R-EB-EVI-S007 | rim:RegistryObjectList | query:QueryResponse/rim:RegistryObjectList/ | A successful QueryResponse MUST include a 'rim:RegistryObjectList' | Fatal |
Structure | R-EB-EVI-S008 | query:QueryResponse | query:QueryResponse/@status | A successful QueryResponse MUST not include an Exception | Fatal |
Slot | R-EB-EVI-S009 | rim:Slot (Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement'] | The rim:Slot name="Requirement" MUST be present in the QueryResponse. | Fatal |
Slot | R-EB-EVI-S010 | query:QueryResponse | query:QueryResponse | A 'query:QueryResponse' MUST not contain any other rim:Slots. | Fatal |
Datatype | R-EB-EVI-S011 | rim:SlotValue (Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue | The rim:SlotValue of rim:Slot name="Requirement" MUST be of "rim:AnyValueType" | Fatal |
XSD-Binding | R-EB-EVI-S012 | sdg:Requirement (Requirement) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement | A 'rim:Slot[@name='Requirement']/rim:SlotValue/' MUST contain one sdg:Requirement of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Restriction | R-EB-EVI-S013 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType" MUST only contain the 'sdg:Identifier' | Fatal |
XSD-Restriction | R-EB-EVI-S014 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList/sdg:EvidenceType | The xs:element name="EvidenceType" type="sdg:EvidenceTypeType" MUST not contain the Distribution. | Fatal |
Cardinality | R-EB-EVI-S015 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList/sdg:EvidenceType | The xs:element name="EvidenceType" type="sdg:EvidenceTypeType" MUST be present. | Fatal |
Cardinality | R-EB-EVI-S016 | sdg:EvidenceTypeList | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList | The xs:element name="EvidenceTypeList" type="sdg:EvidenceTypeListType" MUST be present. | Fatal |
Cardinality | R-EB-EVI-S017 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework | The xs:element name="ReferenceFramework" type="sdg:ReferenceFrameworkType" MUST be present. | Fatal |
Structure | R-EB-EVI-S018 | rim:RegistryObject | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject | A successful QueryResponse MUST include a 'rim:RegistryObject'. | Fatal |
Identifier | R-EB-EVI-S019 | rim:RegistryObject | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/@id | The 'id' of a 'RegistryObject' MUST be unique UUID (RFC 4122) starting with prefix "urn:uuid:". | Fatal |
0 | R-EB-EVI-S020 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType" MUST be present. | Fatal |
Cardinality | R-EB-EVI-S021 | sdg:Jurisdiction | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:Slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction | The xs:element name="sdg:Jurisdiction" type="sdg:JurisdictionType" MUST be present. | Fatal |
4.3.4.2 Business rules of the EB to prove the content format of information objects of a Get Evidence Types for Requirement Query
The table below lists the business rules to prove the structure of a "EB get Evidence Types Query Response" (EB-EVI) such as identifiers, formats, fixed values, mandatory set of values on specific fields (code lists) and dependencies between fields.
Rule Type | Rule ID | Element | Location | Rule | Flag |
Identifier | R-EB-REQ-C001 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Identifier | The value of 'Identifier' of a 'Requirement' MUST be unique UUID (RFC 4122) provided by the EvidenceBroker. | Fatal |
Codelist | R-EB-REQ-C002 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C003 | sdg:Requirement | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Identifier | R-EB-REQ-C004 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Identifier | The 'Identifier' of a 'ReferenceFramework' MUST be unique UUID (RFC 4122). | Fatal |
Codelist | R-EB-REQ-C005 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Title@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C006 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Title@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-REQ-C007 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Description/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C008 | sdg:ReferenceFramework | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Description/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-REQ-C009 | sdg:Jurisdiction (ReferenceFramework) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel1 | The value of the 'AdminUnitLevel1' MUST be part of the code list 'CountryIdentificationCode' (ISO 3166-1 alpha-2 codes). | Fatal |
Codelist | R-EB-REQ-C010 | sdg:Jurisdiction (ReferenceFramework) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel2 | The value of the 'AdminUnitLevel2' MUST be coded using the code list 'Nuts' (Nomenclature of Territorial Units for Statistics). | Fatal |
Codelist | R-EB-REQ-C011 | sdg:Jurisdiction (ReferenceFramework) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:Jurisdiction/sdg:AdminUnitLevel3 | The value of the 'AdminUnitLevel3' MUST be coded using the code list 'LAU' (Local Administrative Units). | Fatal |
Identifier | R-EB-REQ-C012 | sdg:RelatedTo | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:ReferenceFramework/sdg:RelatedTo/sdg:Identifier | The value of the 'Identifier' of 'RelatedTo' MUST be a persistent URL with the following format 'http:://……' pointing to the SDGR Procedures which this requirement relates to (Semantic Respository). | Fatal |
Identifier | R-EB-REQ-C013 | sdg:EvidenceTypeList | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList/sdg:Identifier | The identifier of 'EvidenceTypeList' MUST be unique UUID (RFC 4122). | Fatal |
Codelist | R-EB-REQ-C014 | sdg:EvidenceTypeList | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList/sdg:Name/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-REQ-C015 | sdg:EvidenceTypeList | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceTypeList/sdg:Name/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-REQ-C016 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:EvidenceTypeClassification | The value of 'EvidenceTypeClassification' MUST be a URI with the following format 'http:://……' pointing to the Semantic Repository encoded in the EvidenceBroker. | Fatal |
CodeList | R-EB-REQ-C017 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Title/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Cardinality | R-EB-REQ-C018 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Title/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
CodeList | R-EB-REQ-C019 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Description/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Cardinality | R-EB-REQ-C020 | sdg:EvidenceType | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Description/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Cardinality | R-EB-REQ-C021 | sdg:Jurisdiction (EvidenceType) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Jurisdiction | An 'Jurisdiction' MUST be provided. | Fatal |
Codelist | R-EB-REQ-C022 | sdg:Jurisdiction (EvidenceType) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Jurisdiction/sdg:AdminUnitLevel1 | The value of the 'AdminUnitLevel1' MUST be part of the code list 'CountryIdentificationCode' (ISO 3166-1 alpha-2 codes). | Fatal |
Codelist | R-EB-REQ-C023 | sdg:Jurisdiction (EvidenceType) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Jurisdiction/sdg:AdminUnitLevel2 | The value of the 'AdminUnitLevel2' MUST be coded using the code list 'Nuts' (Nomenclature of Territorial Units for Statistics). | Fatal |
Codelist | R-EB-REQ-C024 | sdg:Jurisdiction (EvidenceType) | query:QueryResponse/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/ sdg:EvidenceType/sdg:Jurisdiction/sdg:AdminUnitLevel3 | The value of the 'AdminUnitLevel3' MUST be coded using the code list 'LAU' (Local Administrative Units). | Fatal |
4.4. Query Error Response of the Evidence Broker
4.4.1. Data Model of the Query Error Response of the Evidence Broker
The Query Error Response of the EB is syntactically expressed inside an ebRS QueryResponse using the ebRS RegistryExceptionType as shown in data model below. It shows the case of an usuccessful response, therefore the RegistryObjectList
element is notpresent and the Exception
element is present.
4.4.2. Implementation Guideline of the Query Error Response of the Evidence Broker
The following table below defines the elements of the data model illustrated above according to the core ebRIM elements of the ebRS RegistryExceptionType .
Legend
The table below represent the tree structure of the data models illustrated in this section. Light grey rows describe classes and define their properties and attributes. Light green rows soley illustrate the classes that are subordinated or associated to a class and therewith illustrate the tree structure of the data model. Light green rows are thus always repeated as light grey rows to describe the properties and attributes of a class. The hierarchy of the tree structure is also indicated in the first column via the '+' symbol.
Name | Definition | Cardinality | ebRIM type | Data Type | Rules | Domain | |
---|---|---|---|---|---|---|---|
query:QueryResponse | Query Error Response root element | RegistryResponseType | Structure: R-EB-ERR-001, R-EB-ERR-002, R-EB-ERR-017 | ebRIM | |||
+ | status | Element used to define the status of the Query Request. | 1..1 | Attribute | Identifier | Structure: R-EB-ERR-005, R-EB-ERR-006, R-EB-ERR-007 | ebRIM |
++ | rs:Exception | The rs:exeption describes an error which occurs during the processing of a Query Request. | 1..n | RegistryExceptionType | Structure: R-EB-ERR-008 | ebRIM | |
++ | rs:Exception | The rs:exeption describes an error which occurs during the processing of a Query Request. | 1..n | RegistryExceptionType | Structure: R-EB-ERR-008 | ebRIM | |
+++ | xsi:type | Describes the nature of the error that occurred. | 1..1 | Attribute | string | Structure: R-EB-ERR-009, R-EB-ERR-010 | ebRIM |
+++ | severity | The severity attribute value provides a severity level for the exception. The default value is "urn:oasis:names:tc:ebxml-regrep:ErrorSeverityType:Error" | 1..1 | Attribute | objectReferenceType | Structure: R-EB-ERR-011, R-EB-ERR-012 | ebRIM |
+++ | message | Is used to add an error message that can be shown and understood by the user of the system. | 1..1 | Attribute | string | Structure: R-EB-ERR-013, R-EB-ERR-014 | ebRIM |
+++ | code | A code that corresponds to the status of the system with regard to the processing of a request. If the specific error codes do not cover the reason for failure use the generic error code "other". | 0..1 | Attribute | string | Structure: R-EB-ERR-015, R-EB-ERR-016 | ebRIM |
4.4.3. Example of the Query Error Response of the Evidence Broker
An example of Query Error Responses of the Evidence Broker due to an empty list of requirements is shown in the following XML snippet:
<?xml version="1.0" encoding="UTF-8"?> <query:QueryResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" status="urn:oasis:nammes:tc:ebxml-regrep:ResponseStatusType:Failure"> <rs:Exception xsi:type="rs:ObjectNotFoundExceptionType" severity="urn:oasis:names:tc:ebxml-regrep:ErrorSeverityType:Error" message="List of requirements requested is empty" code="EB:ERR:0001"> </rs:Exception> </query:QueryResponse>
4.4.4. Error Response Codes of the Evidence Broker
The following table provides the list of EBErrorResponseCodes for the expections defined in the Query Error Response:
# | Error Title | Type | code | Message |
---|---|---|---|---|
1 | Resultset is empty | rs:ObjectNotFoundExceptionType | EB:ERR:0001 | The result set is empty |
2 | Requirement not found | rs:ObjectNotFoundExceptionType | EB:ERR:0002 | The requirement requested, represented by the requirement id, does not exist |
3 | Bad Query Parameters | rs:InvalidRequestExceptionType | EB:ERR:0003 | The query parameters do not follow the query specification |
4 | Unknown Jurisdiction Level Code | rs:InvalidRequestExceptionType | EB:ERR:0004 | The jurisdiction level code query parameter is invalid or unknown |
5 | Unknown procedure | rs:InvalidRequestExceptionType | EB:ERR:0005 | The value of the procedure-id query parameter is invalid or unknown |
6 | Unknown procedure implementation country | rs:InvalidRequestExceptionType | EB:ERR:0006 | The value of the procedure implementation country query parameter is invalid or unknown |
7 | Unknown Query | rs:InvalidRequestExceptionType | EB:ERR:0007 | The requested Query does not exist |
4.4.5. Business Rules associated to the Query Error Response of the Evidence Broker
In order to facilitate interoperability of the Query Error Response of the EB, a set of business rules is defined to guarantee the correct structure, use and format of information objects when receiving query responses from the EB. The rule IDs reference to the EB transaction "EB Error Response" (EB-ERR).
Business Rule
The Rule ID is used to identify the rule and to have an error code next to the rule description. The Element and Location points to the correct information object that is affected by the rule. Each business rule is associated with an error level (flag) that expresses a validation result when an XML instance is proven against the rules through schematron validation:
- information: a hint that an additional object is mandatory in some cases;
- warning: offering recommendations to improve the quality of the instance or regain full validity;
- fatal: the rule point to a major issue of consistency or data correctness.
Rule descriptions containing "MUST" correspond to an error level that is flagged as fatal, while "SHOULD" rules correspond to an error level that is flagged as a warning. "MAY" rules point to error level note. For each business rule, a corresponding schematron rule is defined that references the same rule ID. Schematrons are used to prove the correctness of instances.
The table below lists the business rules to prove the structure (e.g. namespace, root elements, slots, data types, XSD-Binding and XSD-Restriction) and content format of information objects (e.g. identifiers, formats, fixed values, mandatory set of values on specific fields (code lists)) of a "EB Error Response" (EB-ERR).
Rule Type | Rule ID | Element | Location | Rule | Flag |
RootElement | R-EB-ERR-001 | query:QueryResponse | query:QueryResponse | The root element of a query response document MUST be 'query:QueryResponse' | Fatal |
Namespace | R-EB-ERR-002 | query:QueryResponse | query:QueryResponse/@xmlns:query | The namespace of root element of a 'query:QueryResponse' MUST be 'urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0' | Fatal |
RootAttribute | R-EB-ERR-005 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of a 'QueryResponse' MUST be present. | Fatal |
RootAttribute | R-EB-ERR-006 | query:QueryResponse | query:QueryResponse/@status | The 'status' attribute of an unsuccessfull 'query:QueryResponse' MUST be encoded as as 'urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Failure'. | Fatal |
Structure | R-EB-ERR-007 | rim:RegistryObjectList | query:QueryResponse | An unsuccessful 'query:QueryResponse' MUST not include a 'rim:RegistryObjectList' | Fatal |
Structure | R-EB-ERR-008 | rs:Exception | query:QueryResponse/rs:Exception | An unsuccessful 'query:QueryResponse' MUST include an Exception | Fatal |
Exception | R-EB-ERR-009 | rs:Exception | query:QueryResponse/rs:Exception/@xsi:type | The 'xsi:type' attribute of a 'rs:Exception' MUST be present. | Fatal |
Exception | R-EB-ERR-010 | rs:Exception | query:QueryResponse/rs:Exception/@xsi:type | The value of 'xsi:type' attribute of a 'rs:Exception' MUST be rs:InvalidRequestExceptionType or rs:ObjectNotFoundExceptionType | Fatal |
Exception | R-EB-ERR-011 | rs:Exception | query:QueryResponse/rs:Exception/@severity | The 'severity' attribute of a 'rs:Exception' MUST be present. | Fatal |
Exception | R-EB-ERR-012 | rs:Exception | query:QueryResponse/rs:Exception/@severity | The value of 'severity' attribute of a 'rs:Exception' MUST be part of the code list 'ErrorSeverity'. | Fatal |
Exception | R-EB-ERR-013 | rs:Exception | query:QueryResponse/rs:Exception/@message | The 'message' attribute of a 'rs:Exception' MUST be present. | Fatal |
Exception | R-EB-ERR-014 | rs:Exception | query:QueryResponse/rs:Exception/@message | The value of 'message' attribute of a 'rs:Exception' MUST be part of the code list 'EBErrorCodes'. | Fatal |
Exception | R-EB-ERR-015 | rs:Exception | query:QueryResponse/rs:Exception/@code | The 'code' attribute of a 'rs:Exception' MUST be present. | Fatal |
Exception | R-EB-ERR-016 | rs:Exception | query:QueryResponse/rs:Exception/@code | The value of 'code' attribute of a 'rs:Exception' MUST be part of the code list 'EBErrorCodes'. | Fatal |
Slot | R-EB-ERR-017 | query:QueryResponse | query:QueryResponse | An unsuccessfull 'query:QueryResponse' MUST not contain any rim:Slots. | Fatal |
4.5. Response Signature
The EB Service signs the query responses using JWS detached signature following the HttpHeaders Mechanism of the ETSI ESI JAdES specification. In accordance with ENISA's Good Practises in Cryptography – Primitives and Schemes, the following algorithms found in [RFC7518] are selected to be used in the following form:
- The EdDSA Algorithm [RFC8032] using one of the curves defined in RFC7748 shall be used. The value "EdDSA" for the "alg" parameter MUST be used and the curve shall be encoded in the "crv" parameter as defined in RFC8037.
The following sets of rules shall apply in the application of the HttpHeaders mechanism ETSI ESI Jades compliant signature:
- The JWS content (Data to be Signed) MUST be detached from the signatures as defined in RFC7515 Appendix F.
- The signed
SigD
parameter object MUST be present in the JWS headers, denoting the use of the JAdES detached header profile. - The value of the
mId
parameter MUST be set to"http://uri.etsi.org/19182/HttpHeaders"
. - The
pars
array of theSigD
MUST contain only the element "digest", denoting that for the calculation of the signature only the digest of the HTTP payload must be taken into account, according to [RFC3230]. - The
alg
parameter is set to"EdDSA"
and thecrv
parameter MUST be set.
The JWS structure shall be carried in the HTTP header field named "oots-response-sig"
.
4.6 Transport Security
EB clients shall connect to an Evidence Broker using secure HTTP (HTTP over Transport Layer Security).
SSL 3.0, TLS 1.0 and 1.1 MUST not be used. EB clients and servers there MUST therefore support TLS 1.2 [RFC5246]. The use of TLS 1.3 [RFC8446] is RECOMMENDED.
Cipher suites supporting Perfect Forward Secrecy SHOULD be used. ChaCha Poly cipher suites MAY be used in addition to the AES cipher suites (e.g., TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256)
5 LCM Interface Specification of the Evidence Broker
5.1 Classification Scheme and Nodes
The EB Service provides a Regrep 4.0 based LCM API, following the RegRep 4.0 LCM Manager Interface Specification. This section defines the Classification Scheme, Classification Nodes, Associations and Registry Objects of the SubmitObjects Request Message. After the introduction of the Classification Scheme, Classification Nodes, Associations a full LCM SubmitObjects transaction to the EB is illustrated as Data Model, Implementation Guideline and Example including its associated business rules. The Lifecycle Management Specification (see Chapter 3: Common Services - Common Services API Specification) provides a principle overview for such bulk update of the information stored in the Common Services of a Member State. It relates to this section as this section illustrates how the API is used to process an update to the EB.
Definition Type | Value | Description |
---|---|---|
Classification Scheme | urn:fdc:oots:classification:eb | The classification scheme under which the specific classification nodes reside for the EBService |
Classification Node | EvidenceType | A Node defining the registry object as an Evidence Provider Entity |
Classification Node | EvidenceTypeList | A classification node defining the registry object as an Evidence Type List |
Classification Node | Requirement | A classification node defining the registry object as a Requirement |
Classification Node | ReferenceFramework | A classification node defining the registry object as a ReferenceFramework (Procedure) |
Association | urn:oasis:names:tc:ebxml-regrep:AssociationType:containsEvidence | The association linking EvidenceTypes with EvidenceTypeLists Registry objects |
Association | urn:oasis:names:tc:ebxml-regrep:AssociationType:fulfillsRequirement | The association linking EvidenceTypeList Registry objects with Requirements |
Association | urn:oasis:names:tc:ebxml-regrep:AssociationType:derivesFromReferenceFramework | The association linking Requirements Registry objects with ReferenceFramework (Procedure) |
5.2 Registry Objects
The EB LCM Interface accepts two different registry objects in the SubmitObjectsRequest Message which are defined in the sections below:
5.2.1 EvidenceType
This Registry Object provides the information of the Evidence Type. The classification node used MUST be EvidenceType
under the EB Classification Scheme urn:fdc:oots:classification:eb.
The following diagram shows the structure of the registry object:
An example EvidenceType Registry Object in XML format is shown below. The example is embedded into a lcm:SubmitObjectsRequest (see Lifecycle Management Specification of Chapter 3: Common Services - 3.6 Common Services API Specification):
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other registry objects are omitted for clarity --> <rim:RegistryObject id="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873"> <rim:Classification id="urn:uuid:a1be6e74-efgh-5678-aaaa-0376f367b8fd" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="EvidenceType"/> <rim:Slot name="EvidenceType"> <rim:SlotValue xsi:type="rim:AnyValueType"> </sdg:EvidenceType> <sdg:EvidenceTypeClassification>CertificateOfBirth</sdg:EvidenceTypeClassification> <sdg:Title lang="en">Certificate of Birth</sdg:Title> <sdg:Title lang="de">Geburtsurkunde</sdg:Title> <sdg:Description lang="en">The birth certificate is an official certificate of birth of a person - with first name, surname, gender, date and place of birth, which is created from the birth register of the place of birth.</sdg:Description> <sdg:Description lang="de">Die Geburtsurkunde ist eine amtliche Bescheinigung über die Geburt einer Person – mit Vorname, Familienname, Geschlecht, Datum und Ort der Geburt, welche aus dem Geburtsregister des Geburtsortes erstellt wird.</sdg:Description> <sdg:Jurisdiction> <!-- ISO code --> <sdg:AdminUnitLevel1>DE</sdg:AdminUnitLevel1> <!-- NUTS Code --> <sdg:AdminUnitLevel2>DE211</sdg:AdminUnitLevel2> <!-- LAU Code --> <sdg:AdminUnitLevel3>01001</sdg:AdminUnitLevel3> </sdg:Jurisdiction> </sdg:EvidenceType> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.2.2 EvidenceTypeList
This Registry Object provides the information of the Evidence Type List. It works as an intermediate class linking multiple evidence types as an atomic proof to requirements and thus it MUST NOT contain any evidence types in its structure. The classification node used MUST be EvidenceTypeList
under the EB Classification Scheme urn:fdc:oots:classification:eb.
The following diagram shows the structure of the registry object:
An example EvidenceTypeList Registry Object in XML format is shown below. The example is embedded into a lcm:SubmitObjectsRequest (see Lifecycle Management Specification of Chapter 3: Common Services - 3.6 Common Services API Specification):
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other registry objects are omitted for clarity --> <rim:RegistryObject id="urn:uuid:a1be6e74-e9ba-4d44-b04c-0376f367b8fd"> <rim:Classification id="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="EvidenceTypeList"/> <rim:Slot name="EvidenceTypeList"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:EvidenceTypeList> <sdg:Identifier>a1be6e74-e9ba-4d44-b04c-0376f367b8fd</sdg:Identifier> <sdg:Name lang="en">List of birth certificates</sdg:Name> </sdg:EvidenceTypeList> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.2.3 Requirement
This Registry Object provides the information of a Requirement in any of its derivative forms (Criterion, Information Requirement). It MUST NOT contain any Evidence Type or Reference Frameworks (Procedures) as this are provided dynamically by the use of associations. The classification node used MUST be Requirement under the EB Classification Scheme urn:fdc:oots:classification:eb.
The following diagram shows the structure of the registry object:
An example Requirement Registry Object in XML format is shown below. The example is embedded into a lcm:SubmitObjectsRequest (see Lifecycle Management Specification of Chapter 3: Common Services - 3.6 Common Services API Specification):
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other registry objects are omitted for clarity --> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Classification id="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="Requirement"/> <rim:Slot name="Requirement"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:Requirement> <sdg:Identifier>315cfd75-6605-49c4-b0fe-799833b41099</sdg:Identifier> <sdg:Name lang="en">Proof of Birth</sdg:Name> </sdg:Requirement> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.2.4 ReferenceFramework
This Registry Object ReferenceFramework provides the information of a Procedure. It MUST NOT contain any relations to other Reference Frameworks (Procedures) as this are provided dynamically by the use of associations. The classification node used MUST be ReferenceFramework
under the EB Classification Scheme urn:fdc:oots:classification:eb.
The following diagram shows the structure of the registry object:
An example ReferenceFramework Registry Object in XML Format is shown below. The example is embedded into a lcm:SubmitObjectsRequest (see Lifecycle Management Specification of Chapter 3: Common Services - 3.6 Common Services API Specification):
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other registry objects are omitted for clarity --> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Classification id="urn:uuid:7778d596-3a85-4786-aa86-3d2c37033724" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="ReferenceFramework"/> <rim:Slot name="ReferenceFramework"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>118fd444-6443-42be-a084-c9fbfd1f674d</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in the German Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- The Reference Framework points to Procedure 5 in Germany --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>DE</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.3 Associations
The EB LCM Interface accepts three distict associations linking the Registry Objects (EvidenceType, EvidenceTypeList, Requirement and ReferenceFramework) within the SubmitObjectsRequest Message. The different associations are defined the sections below.
5.3.1. ContainsEvidence
This Association provides the link between an Evidence Type List and an Evidence Type. The type attribute MUST be urn:oasis:names:tc:ebxml-regrep:AssociationType:ContainsEvidence
, with the source object pointing to an EvidenceTypeList RegistryObject through the use of its rim:Classification id and the targetObject pointing to rim:Classification id of an EvidenceType object.
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other Registry Objects are ommitted for clarity--> <!-- Association between the EvidenceTypeList "List of birth certificates" and EvidenceType "CertificateOfBirth"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:9e0b722c-d16c-414d-bccc-4522b070b500" <!-- The <rim:Classification id of the EvidenceTypeList "List of birth certificates" --> sourceObject="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" <!-- The <rim:Classification id of the EvidenceType "CertificateOfBirth" --> targetObject="urn:uuid:a1be6e74-efgh-5678-aaaa-0376f367b8fd" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList contains an EvidenceType --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:containsEvidence"/> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.3.2 FulfillsRequirement
This Association provides the link between an Evidence Type List and a Requirement. The type attribute MUST be urn:oasis:names:tc:ebxml-regrep:AssociationType:FulfillsRequirement
, with the source object pointing to an EvidenceTypeList RegistryObject through the use of its rim:Classification id and the targetObject pointing to the rim:Classification id of an Requirement object.
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other Registry Objects are ommitted for clarity--> <!-- Association between the EvidenceTypeList "List of birth certificates" and Requirement "Proof of Birth"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:16995e1f-e385-44f3-a26a-28ed6b3ad873" <!-- The <rim:Classification id of the EvidenceTypeList "List of birth certificates" --> sourceObject="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" <!-- The <rim:Classification id of the Requirement "Proof of Birth" --> targetObject="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList fulfill a Requirement --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:fulfillsRequirement"/> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.3.3 DerivesFromReferenceFramework
This Association provides the link between a Requirement and a ReferenceFramework (Procedure). The type attribute MUST be urn:oasis:names:tc:ebxml-regrep:AssociationType:DerivesFromReferenceFramework
, with the source object pointing to a Requirement RegistryObject through the use of its rim:Classification id and the targetObject pointing to the rim:Classification id of a ReferenceFramework object.
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- Other Registry Objects are ommitted for clarity--> <!-- Association between the Requirement "Proof of Birth" and the ReferenceFramework (Procedure) "Procedure 5 - Annex II of SDG as Implemented in the German Portal"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:568434db-1852-4b00-b05c-0b917b92658d" <!-- The <rim:Classification id of the Requirement "Proof of Birth" --> sourceObject="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" <!-- The <rim:Classification id of the ReferenceFramework (Procedure) "Procedure 5 - Annex II of SDG as Implemented in the German Portal" --> targetObject="urn:uuid:7778d596-3a85-4786-aa86-3d2c37033724" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList fulfill a Requirement --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:derivesFromReferenceFramework"/> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.4 LCM Submit Objects to the Evidence Broker
5.4.1. Data Model of the LCM Submit Objects Request to the EB
For the LCM submission, the profile uses the SubmitObjectsRequest message, as defined by the RegRep 4.0 LCM Manager Interface Specification SubmitObjects Protocol. The message MUST contain a unique id and one Registry Object List
containing the Registry Objects
under submission.
The following data model illustrates how a SubmitObjectsRequest to the EB is constructed based on the SDG OOTS LifeCycleManagementSpecification (see Chapter 3: Common Services - Common Services API Specification).
5.4.2. Implementation Guideline of the LCM Submit Objects Request to the EB
The table below defines the elements of the data model illustrated above according to the RegRep 4.0 LCM Manager Interface Specification SubmitObjects Protocol which is adapted by the SubmitObjectsRequest to the EB. The data model contains Registry Objects being of "RegistryObjectType" or registryObjects being of "AssociationType". Registry Objects which are a RegistryObjectType either contain a rim:Slot "EvidenceType" or a rim:Slot "EvidenceTypeList" or a rim:Slot "Requirement" or a rim:Slot "ReferenceFramework" but not both. Registry Objects which are an AssociationType contain a sourceObject pointing to the id of the classification used to identify a Registry Object and a target object pointing to the id of the classification used to identify a Registry Object (see section 5.3 Associations).
Legend
The table below represent the tree structure of the data models illustrated in this section. Light grey rows describe classes and define their properties and attributes. Light green rows soley illustrate the classes that are subordinated or associated to a class and therewith illustrate the tree structure of the data model. Light green rows are thus always repeated as light grey rows to describe the properties and attributes of a class. The hierarchy of the tree structure is also indicated in the first column via the '+' symbol.
Hierarchy | Name | Definition | Cardinality | Type | Data Type | Rules | Core Vocabulary / Domain | Element of Core Vocabulary |
---|---|---|---|---|---|---|---|---|
lcm:SubmitObjectsRequest | root element | Structure: R-EB-SUB-S001, R-EB-SUB-S002, R-EB-SUB-S042, | ebRIM | |||||
+ | id | The unique identifier of the SubmitObjectsRequest. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S003, R-EB-SUB-S004 | ebRIM | - |
+ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | RegistryObjectListType | Structure: R-EB-SUB-S005 | ebRIM | - | |
+ | rim:RegistryObjectList | Element to list the Registry Objects of the QueryResponse. | 1..1 | RegistryObjectListType | Structure: R-EB-SUB-S005 | ebRIM | - | |
++ | rim:RegistryObject <rim:Slot "EvidenceType"> | An Evidence Type is a type of evidence that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | RegistryObjectType | Structure: R-EB-SUB-S044 | ebRIM | - | |
++ | rim:RegistryObject <rim:slot "EvidenceTypeList"> | A list of Evidence Types, that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | RegistryObjectType | Structure: R-EB-SUB-S045 | ebRIM | - | |
++ | rim:RegistryObject <rim:slot "Requirement"> | The element describes specific aspects and metadata of the Requirement. | 0..n | RegistryObjectType | Structure: R-EB-SUB-S046 | ebRIM | - | |
++ | rim:RegistryObject <rim:slot "ReferenceFramework"> | The Reference Framework or Procedure that is responsible for the creation/initiation of the Requirement. | 0..n | RegistryObjectType | Structure: R-EB-SUB-S048 | ebRIM | - | |
++ | rim:RegistryObject <xsi:type="rim:AssociationType"> | An association that links a RegistryObject with another RegistryObject within the SubmitObjectsRequest Message. Valid associations defined for the EB are containsEvidence, fulfillsRequirement and derivesFromReferenceFramework. | 1..n | AssociationType | Structure: R-EB-SUB-S047, R-EB-SUB-S030 | ebRIM | - | |
++ | rim:RegistryObject <rim:Slot "EvidenceType"> | Element to control the type and structure of Registry Object within the SubmitObjectsRequest. | 1..n | RegistryObjectType | Structure: R-EB-SUB-S044 | ebRIM | - | |
+++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S006, R-EB-SUB-S043 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a DataServiceEvidenceType. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007 | ebRIM | ||
+++ | rim:slot "EvidenceType" | The slot is a container to describe the specific aspects and metadata of the Evidence Type. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S014, R-EB-SUB-S018 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a DataServiceEvidenceType. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
++++ | id | The unique identifier used to used for associating this target registry object with a source object (Evidence Type). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S008, R-EB-SUB-S009 | ebRIM | |
++++ | classificationScheme | The classification scheme under which the specific classification nodes reside for the EB Service. FixedValue: urn:fdc:oots:classification:eb | 1..1 | Attribute | URI | Structure: R-EB-SUB-S010, R-EB-SUB-S012 | ebRIM | |
++++ | classificationNode | A classification node defining the registry object as Evidence Type. FixedValue: EvidenceType | 1..1 | Attribute | Code | Structure: R-EB-SUB-S011, R-EB-SUB-S013 | ebRIM | |
+++ | rim:slot "EvidenceType" | The slot is a container to describe the specific aspects and metadata of the Evidence Type. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S014, R-EB-SUB-S018 | ebRIM | - |
++++ | EvidenceType | An Evidence Type is a type of evidence that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeType | Structure: R-EB-SUB-S022 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceType | |
++++ | EvidenceType | An Evidence Type is a type of evidence that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeType | Structure: R-EB-SUB-S022, R-EB-SUB-S026 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceType | |
+++++ | EvidenceTypeClassification | An URI pointing to the Evidence Type. The classification is linking with the Evidence Type of the Semantic Repository (Evidence Broker). | 1..1 | Attribute | Code | Content: R-EB-SUB-C001 | Core Criterion Core Evidence Vocabulary | cccev:evidenceTypeClassification |
+++++ | Title | A name to identify in common language the Evidence Type. Unbounded cardinality to support multiple languages. | 1..n | Attribute | Text | DCAT-AP | dct:title | |
++++++ | Title/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C002, R-EB-SUB-C003 | DCAT-AP | dct:title |
+++++ | Description | A description of the Evidence Type. Unbounded cardinality to support multiple languages. | 0..n | Attribute | Text | DCAT-AP | dct:description | |
++++++ | Description/@lang | The language of the description encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C004, R-EB-SUB-C005 | DCAT-AP | dct:description |
+++++ | Jurisdiction | The administrative level in which this EvidenceType applies. It can apply to multiple jurisdictions. | 1..1 | JurisdictionType | Core Criterion Core Evidence Vocabulary | cccev:evidenceTypeJurisdiction | ||
+++++ | Jurisdiction | The jurisdictions to which this EvidenceType applies. | 1..1 | JurisdictionType | Core Location Vocabulary (CLV) | locn:Address | ||
++++++ | AdminUnitLevel1 | The name of the uppermost level of the address, almost always a country. | 1..1 | Attribute | Code | Content: R-EB-SUB-C006 | Core Location Vocabulary (CLV) | locn:adminUnitL1 |
++++++ | AdminUnitLevel2 | The name of a secondary level/region of the address, usually a county, state or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-SUB-C007 | Core Location Vocabulary (CLV) | locn:adminUnitL2 |
++++++ | AdminUnitLevel3 | The name of a secondary level/region of the address, usually a municipality or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-SUB-C008 | Core Location Vocabulary (CLV) | locn:adminUnitL3 |
++ | rim:RegistryObject <rim:Slot "EvidenceTypeList"> | Element to control the type and structure of Registry Object within the SubmitObjectsRequest. | 1..n | RegistryObjectType | Structure: R-EB-SUB-S045 | ebRIM | - | |
+++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S006, R-EB-SUB-S043 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a EvidenceTypeList. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
+++ | rim:slot "EvidenceTypeList" | The slot is a container to describe the specific aspects and metadata of the EvidenceTypeList. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S015, R-EB-SUB-S019 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a EvidenceTypeList. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
++++ | id | The unique identifier used to used for associating this target registry object with a source object (EvidenceTypeList). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S008, R-EB-SUB-S009 | ebRIM | |
++++ | classificationScheme | The classification scheme under which the specific classification nodes reside for the EB Service. FixedValue: urn:fdc:oots:classification:eb | 1..1 | Attribute | URI | Structure: R-EB-SUB-S010, R-EB-SUB-S012 | ebRIM | |
++++ | classificationNode | A classification node defining the registry object as Evidence Type List. FixedValue: EvidenceTypeList | 1..1 | Attribute | Code | Structure: R-EB-SUB-S011, R-EB-SUB-S013 | ebRIM | |
+++ | rim:slot "EvidenceTypeList" | The slot is a container to describe the specific aspects and metadata of the EvidenceTypeList. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S015, R-EB-SUB-S019 | ebRIM | - |
++++ | EvidenceTypeList | A list of Evidence Types, that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeListType | Structure: R-EB-SUB-S023, R-EB-SUB-S027 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceTypeList | |
++++ | EvidenceTypeList | A list of Evidence Types, that can be provided to meet a requirement, within a certain jurisdiction. | 1..n | EvidenceTypeListType | Structure: R-EB-SUB-S023, R-EB-SUB-S027 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:EvidenceTypeList | |
+++++ | Identifier | The identifier of the Evidence Type List. | 1..1 | Attribute | Identifier | Content: R-EB-SUB-C009 | CCCEV | cccev:identifier |
+++++ | Name | The name of the Evidence Type List. Unbounded cardinality to support multiple languages. | 0..n | Attribute | Text | CCCEV | cccev:name | |
++++++ | Name/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C010, R-EB-SUB-C011 | CCCEV | cccev:name |
++ | rim:RegistryObject <rim:Slot "Requirement"> | Element to control the type and structure of Registry Object within the SubmitObjectsRequest. | 0..n | RegistryObjectType | Structure: R-EB-SUB-S046 | ebRIM | - | |
+++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S006, R-EB-SUB-S043 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a EvidenceTypeList. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
+++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S016, R-EB-SUB-S020 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a Requirement. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
++++ | id | The unique identifier used to used for associating this target registry object with a source object (Requirement). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S008, R-EB-SUB-S009 | ebRIM | |
++++ | classificationScheme | The classification scheme under which the specific classification nodes reside for the EB Service. FixedValue: urn:fdc:oots:classification:eb | 1..1 | Attribute | URI | Structure: R-EB-SUB-S010, R-EB-SUB-S012 | ebRIM | |
++++ | classificationNode | A classification node defining the registry object as Requirement. FixedValue: Requirement | 1..1 | Attribute | Code | Structure: R-EB-SUB-S011, R-EB-SUB-S013 | ebRIM | |
+++ | rim:slot "Requirement" | The slot is a container to describe the specific aspects and metadata of the Requirement. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S016, R-EB-SUB-S020 | ebRIM | - |
++++ | Requirement | The element describes specific aspects and metadata of the Requirement. | 1..1 | RequirementType | Structure: R-EB-SUB-S024, R-EB-SUB-S028 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
++++ | Requirement | The element describes specific aspects and metadata of the Requirement. | 1..1 | RequirementType | Structure: R-EB-SUB-S024, R-EB-SUB-S028 | Core Criterion and Core Evidence Vocabulary | cccev:Requirement | |
+++++ | Identifier | The unique identifier of the Requirement. | 1..1 | Attribute | Identifier | Content: R-EB-SUB-C012 | CCCEV | cccev:identifier |
+++++ | Name | A name to identify in common language the Requirement. | 1..1 | Attribute | Text | CCCEV | cccev:name | |
++++++ | Name/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C013, R-EB-SUB-C014 | CCCEV | cccev:name |
++ | rim:RegistryObject <rim:Slot "ReferenceFramework"> | Element to control the type and structure of Registry Object within the SubmitObjectsRequest. | 0..n | RegistryObjectType | Structure: R-EB-SUB-S048 | ebRIM | - | |
+++ | id | Unique UUID for each RegistryObject. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S006, R-EB-SUB-S043 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a ReferenceFramework. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
+++ | rim:slot "ReferenceFramework" | The slot is a container to describe the specific aspects and metadata of the ReferenceFramework. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S017, R-EB-SUB-S021 | ebRIM | - |
+++ | rim:Classification | The classification of the Registry Object being a ReferenceFramework. | 1..1 | ClassificationType | Structure: R-EB-SUB-S007, | ebRIM | ||
++++ | id | The unique identifier used to used for associating this target registry object with a source object (ReferenceFramework). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S008, R-EB-SUB-S009 | ebRIM | |
++++ | classificationScheme | The classification scheme under which the specific classification nodes reside for the EB Service. FixedValue: urn:fdc:oots:classification:eb | 1..1 | Attribute | URI | Structure: R-EB-SUB-S010, R-EB-SUB-S012 | ebRIM | |
++++ | classificationNode | A classification node defining the registry object as ReferenceFramework. FixedValue: ReferenceFramework | 1..1 | Attribute | Code | Structure: R-EB-SUB-S011, R-EB-SUB-S013 | ebRIM | |
+++ | rim:slot "ReferenceFramework" | The slot is a container to describe the specific aspects and metadata of the ReferenceFramework. | 1..1 | SlotType | AnyValueType | Structure: R-EB-SUB-S017, R-EB-SUB-S021 | ebRIM | - |
++++ | ReferenceFramework | The Reference Framework or Proceddure that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-SUB-S025, R-EB-SUB-S029 | Core Criterion and Core Evidence Vocabulary | cccev:ReferenceFramework | |
++++ | ReferenceFramework | The Reference Framework or Procedure that is responsible for the creation/initiation of the Requirement. | 0..n | ReferenceFrameworkType | Structure: R-EB-SUB-S025, | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
+++++ | Identifier | The Identifier of the ReferenceFramework or Procedure. | 1..1 | Attribute | Identfier | Content: R-EB-SUB-C015 | CCCEV | cccev:identifier |
+++++ | Title | The title of the ReferenceFramework orProcedure. | 1..n | Attribute | Text | - | - | |
++++++ | Title/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C016, R-EB-SUB-C017 | - | - |
+++++ | Description | The description of the ReferenceFramework orProcedure. | 0..n | Attribute | Text | - | - | |
++++++ | Description/@lang | The language of the title encoded as ISO 639-1 two-letter code. Default value "en" | M | Attribute | Code | Content: R-EB-SUB-C018, R-EB-SUB-C019 | - | - |
+++++ | RelatedTo | The Identifier of the SDGR Procedure which this ReferenceFramework or procedure relates to. | 1..n | ReferenceFrameworkType | Structure: R-EB-SUB-S029, R-EB-SUB-S049 | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
+++++ | Jurisdiction | The administrative level in which this reference framework applies. It can apply to multiple jurisdictions. | 1..n | JurisdictionType | Structure: R-EB-SUB-S050 | Core Criterion Core Evidence Vocabulary (CCCEV) | cccev:evidenceTypeJurisdiction | |
+++++ | RelatedTo | The Identifier of the SDGR Procedure which this ReferenceFramework relates to. | 1..n | ReferenceFrameworkType | Structure: R-EB-SUB-S029, R-EB-SUB-S049 | Core Criterion and Core Evidence Vocabulary (CCCEV) | cccev:ReferenceFramework | |
++++++ | Identifier | The Identifier of the Procedure. | 1..1 | Attribute | Identfier | Content: R-EB-SUB-C023 | CCCEV | cccev:identifier |
+++++ | Jurisdiction | The Jurisdiction to which this ReferenceFramework (Procedure) applies. | 1..n | JurisdictionType | Structure: R-EB-SUB-S050 | Core Location Vocabulary (CLV) | locn:Address | |
++++++ | AdminUnitLevel1 | The name of the uppermost level of the address, almost always a country. | 1..1 | Attribute | Code | Content: R-EB-SUB-C020 | Core Location Vocabulary (CLV) | locn:adminUnitL1 |
++++++ | AdminUnitLevel2 | The name of a secondary level/region of the address, usually a county, state or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-SUB-C021 | Core Location Vocabulary (CLV) | locn:adminUnitL2 |
++++++ | AdminUnitLevel3 | The name of a secondary level/region of the address, usually a municipality or other such area that typically encompasses several localities. | 0..1 | Attribute | Code | Content: R-EB-SUB-C022 | Core Location Vocabulary (CLV) | locn:adminUnitL3 |
++ | rim:RegistryObject <xsi:type="rim:AssociationType"> | An association that links a RegistryObject with another RegistryObject in the SubmitObjectsRequest Message. | 1..n | AssociationType | Structure: R-EB-SUB-S047, R-EB-SUB-S030 | ebRIM | - | |
+++ | xsi:type | Must be xsi:type="rim:AssociationType" to indicate that this RegistryObject is an association between two RegistryObjects. | 1..1 | Attribute | Code | Structure: R-EB-SUB-S031 | ebRIM | - |
+++ | id | The unique identifier used to used for identifying this association. | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S006, R-EB-SUB-S043 | ebRIM | - |
+++ | sourceObject | The unique identifier used for the Classification of the source object (see section 5.3 Associations). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S051, R-EB-SUB-S054, R-EB-SUB-S055 | ebRIM | - |
+++ | targetObject | The unique identifier used for the Classification of the source object (see section 5.3 Associations). | 1..1 | Attribute | Identifier | Structure: R-EB-SUB-S052, R-EB-SUB-S053, R-EB-SUB-S056 | ebRIM | - |
+++ | type | The name of the association (see section 5.3 Associations). | 1..1 | Attribute | URI | Structure: R-EB-SUB-S036, R-EB-SUB-S037, R-EB-SUB-S038, R-EB-SUB-S039, R-EB-SUB-S040, R-EB-SUB-S041 | ebRIM | - |
5.4.3. Example of the LCM Submit Objects Request to the EB
The following example shows a complete example of a possible bulk upload for a member state MS, submitting an EvidenceType, an EvidenceTypeList, Requirement, ReferenceFramework and associations that link these RegistryObjects together:
<lcm:SubmitObjectsRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rs="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0" xmlns:query="urn:oasis:names:tc:ebxml-regrep:xsd:query:4.0" xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0" xmlns:sdg="http://data.europa.eu/p4s" id="urn:uuid:e5af5ba0-39a2-43d7-89c0-04f623c59855"> <rim:RegistryObjectList> <!-- The RegistryObject EvidenceType "CertificateOfBirth"--> <rim:RegistryObject id="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873"> <rim:Classification id="urn:uuid:a1be6e74-efgh-5678-aaaa-0376f367b8fd" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="EvidenceType"/> <rim:Slot name="EvidenceType"> <rim:SlotValue xsi:type="rim:AnyValueType"> </sdg:EvidenceType> <sdg:EvidenceTypeClassification>CertificateOfBirth</sdg:EvidenceTypeClassification> <sdg:Title lang="en">Certificate of Birth</sdg:Title> <sdg:Title lang="de">Geburtsurkunde</sdg:Title> <sdg:Description lang="en">The birth certificate is an official certificate of birth of a person - with first name, surname, gender, date and place of birth, which is created from the birth register of the place of birth.</sdg:Description> <sdg:Description lang="de">Die Geburtsurkunde ist eine amtliche Bescheinigung über die Geburt einer Person – mit Vorname, Familienname, Geschlecht, Datum und Ort der Geburt, welche aus dem Geburtsregister des Geburtsortes erstellt wird.</sdg:Description> <sdg:Jurisdiction> <!-- ISO code --> <sdg:AdminUnitLevel1>DE</sdg:AdminUnitLevel1> <!-- NUTS Code --> <sdg:AdminUnitLevel2>DE211</sdg:AdminUnitLevel2> <!-- LAU Code --> <sdg:AdminUnitLevel3>01001</sdg:AdminUnitLevel3> </sdg:Jurisdiction> </sdg:EvidenceType> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> <!-- The RegistryObject EvidenceTypeList "List of birth certificates"--> <rim:RegistryObject id="urn:uuid:a1be6e74-e9ba-4d44-b04c-0376f367b8fd"> <rim:Classification id="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="EvidenceTypeList"/> <rim:Slot name="EvidenceTypeList"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:EvidenceTypeList> <sdg:Identifier>a1be6e74-e9ba-4d44-b04c-0376f367b8fd</sdg:Identifier> <sdg:Name lang="en">List of birth certificates</sdg:Name> </sdg:EvidenceTypeList> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> <!-- The RegistryObject Requirement "Proof of Birth"--> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Classification id="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="Requirement"/> <rim:Slot name="Requirement"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:Requirement> <sdg:Identifier>315cfd75-6605-49c4-b0fe-799833b41099</sdg:Identifier> <sdg:Name lang="en">Proof of Birth</sdg:Name> </sdg:Requirement> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> <!-- The RegistryObject ReferenceFramework (Procedure) "Procedure 5 - Annex II of SDG as Implemented in the German Portal"--> <rim:RegistryObject id="urn:uuid:315cfd75-6605-49c4-b0fe-799833b41099"> <rim:Classification id="urn:uuid:7778d596-3a85-4786-aa86-3d2c37033724" classificationScheme="urn:fdc:oots:classification:eb" classificationNode="ReferenceFramework"/> <rim:Slot name="ReferenceFramework"> <rim:SlotValue xsi:type="rim:AnyValueType"> <sdg:ReferenceFramework> <!-- Procedure Identifier --> <sdg:Identifier>118fd444-6443-42be-a084-c9fbfd1f674d</sdg:Identifier> <sdg:Title lang="en">Procedure 5 - Annex II of SDG as Implemented in the German Portal</sdg:Title> <sdg:Description lang="en"> Procedure 5 of Annex II of the Regulation (EU) 2018/1724 of the European Parliament and of the Council of 2 October 2018 establishing a single digital gateway to provide access to information, to procedures and to assistance and problem-solving services and amending Regulation (EU) No 1024/2012 </sdg:Description> <!-- The Identifier of the SDGR Procedure which this procedure relates to --> <sdg:RelatedTo> <sdg:Identifier>http://data.europa.eu/eli/reg/2018/1724/oj#AnnexII-5</sdg:Identifier> </sdg:RelatedTo> <!-- The Reference Framework points to Procedure 5 in Germany --> <sdg:Jurisdiction> <sdg:AdminUnitLevel1>DE</sdg:AdminUnitLevel1> </sdg:Jurisdiction> </sdg:ReferenceFramework> </rim:SlotValue> </rim:Slot> </rim:RegistryObject> <!-- Association between the EvidenceTypeList "List of birth certificates" and EvidenceType "CertificateOfBirth"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:9e0b722c-d16c-414d-bccc-4522b070b500" <!-- The <rim:Classification id of the EvidenceTypeList "List of birth certificates" --> sourceObject="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" <!-- The <rim:Classification id of the EvidenceType "CertificateOfBirth" --> targetObject="urn:uuid:a1be6e74-efgh-5678-aaaa-0376f367b8fd" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList contains an EvidenceType --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:containsEvidence"/> <!-- Association between the EvidenceTypeList "List of birth certificates" and Requirement "Proof of Birth"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:16995e1f-e385-44f3-a26a-28ed6b3ad873" <!-- The <rim:Classification id of the EvidenceTypeList "List of birth certificates" --> sourceObject="urn:uuid:d45aa619-2d90-4d6c-ae59-b9ca4e6a5873" <!-- The <rim:Classification id of the Requirement "Proof of Birth" --> targetObject="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList fulfill a Requirement --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:fulfillsRequirement"/> <!-- Association between the Requirement "Proof of Birth" and the ReferenceFramework (Procedure) "Procedure 5 - Annex II of SDG as Implemented in the German Portal"--> <rim:RegistryObject xsi:type="rim:AssociationType" id="urn:uuid:568434db-1852-4b00-b05c-0b917b92658d" <!-- The <rim:Classification id of the Requirement "Proof of Birth" --> sourceObject="urn:uuid:3ddde921-1ed9-44c1-b738-6749aadfc23f" <!-- The <rim:Classification id of the ReferenceFramework (Procedure) "Procedure 5 - Annex II of SDG as Implemented in the German Portal" --> targetObject="urn:uuid:7778d596-3a85-4786-aa86-3d2c37033724" <!-- A fixed value used to indicate the type of relationsship describing that an EvidenceTypeList fulfill a Requirement --> type="urn:oasis:names:tc:ebxml-regrep:AssociationType:derivesFromReferenceFramework"/> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest>
5.4.4. Business Rules associated to the LCM Submit Objects Request to the EB
In order to facilitate interoperability of the successful Query Response of the EB (for the Requirements Query), a set of business rules is defined to guarantee the correct structure, use and format of information objects when receiving query responses from the EB. The rule IDs reference to the EB transaction "LCM Submit Objects Request to the EB" (EB-SUB).
Business Rule
The Rule ID is used to identify the rule and to have an error code next to the rule description. The Element and Location points to the correct information object that is affected by the rule. Each business rule is associated with an error level (flag) that expresses a validation result when an XML instance is proven against the rules through schematron validation:
- information: a hint that an additional object is mandatory in some cases;
- warning: offering recommendations to improve the quality of the instance or regain full validity;
- fatal: the rule point to a major issue of consistency or data correctness.
Rule descriptions containing "MUST" correspond to an error level that is flagged as fatal, while "SHOULD" rules correspond to an error level that is flagged as a warning. "MAY" rules point to error level note. For each business rule, a corresponding schematron rule is defined that references the same rule ID. Schematrons are used to prove the correctness of instances.
5.4.4.1 Business rules to prove the correct structure of a LCM Submit Objects Request to the EB
The table below lists the business rules to prove the structure of a "LCM Submit Objects Request to the EB" (EB-SUB) such as namespace, root elements, slots, data types including "multidimensional" checks crossing the barrier between the different XSD schemes (XSD-Binding and XSD-Restriction).
Rule Type | Rule ID | Element | Location | Rule | Flag |
RootElement | R-EB-SUB-S001 | lcm:SubmitObjectsRequest | lcm:SubmitObjectsRequest | The root element of a query response document MUST be 'lcm:SubmitObjectsRequest' | Fatal |
Namespace | R-EB-SUB-S002 | lcm:SubmitObjectsRequest | lcm:SubmitObjectsRequest | The namespace of root element of a 'lcm:SubmitObjectsRequest' must be 'urn:oasis:names:tc:ebxml-regrep:xsd:lcm:4.0' | Fatal |
RootAttribute | R-EB-SUB-S003 | lcm:SubmitObjectsRequest | lcm:SubmitObjectsRequest/@id | The 'id' attribute of a 'SubmitObjectsRequest' MUST be present. | Fatal |
RootAttribute | R-EB-SUB-S004 | lcm:SubmitObjectsRequest | lcm:SubmitObjectsRequest/@id | The 'id' attribute of a 'SubmitObjectsRequest' MUST be unique UUID (RFC 4122) starting with prefix "urn:uuid:". | Fatal |
Structure | R-EB-SUB-S005 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject | A 'SubmitObjectsRequest' MUST include a 'rim:RegistryObjectList' and a 'rim:RegistryObject' | Fatal |
Cardinality | R-EB-SUB-S006 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@id | Each 'rim:RegistryObject' MUST include an 'id' attribute | Fatal |
Structure | R-EB-SUB-S007 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification | Each 'rim:RegistryObject' MUST include a 'rim:Classification' if the 'rim:RegistryObject' is not an 'xsi:type="rim:AssociationType"' | Fatal |
Cardinality | R-EB-SUB-S008 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@id | Each 'rim:Classification' MUST include an 'id' attribute | Fatal |
Identifier | R-EB-SUB-S009 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@id | Each id of 'rim:Classification' MUST be unique UUID (RFC 4122) starting with prefix "urn:uuid:". | Fatal |
Cardinality | R-EB-SUB-S010 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@classificationScheme | Each 'rim:Classification' MUST include an 'classificationScheme' attribute | Fatal |
Cardinality | R-EB-SUB-S011 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@classificationNode | Each 'rim:Classification' MUST include an 'classificationNode' attribute | Fatal |
FixedValue | R-EB-SUB-S012 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@classificationScheme | The 'classificationScheme' attribute MUST be 'urn:fdc:oots:classification:eb' | Fatal |
CodeList | R-EB-SUB-S013 | rim:Classification | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:Classification/@classificationNode | The 'classificationNode' attribute MUST be 'EvidenceType', 'EvidenceTypeList', 'Requirement' or 'ReferenceFramework' | Fatal |
Slot | R-EB-SUB-S014 | rim:Slot (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType'] | A 'rim:RegistryObject' with the classificationNode 'EvidenceType' MUST include a <rim:Slot name="EvidenceType"> and no other | Fatal |
Slot | R-EB-SUB-S015 | rim:Slot (EvidenceTypeList) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList'] | A 'rim:RegistryObject' with the classificationNode 'EvidenceTypeList' MUST include a <rim:Slot name="EvidenceTypeList">and no other | Fatal |
Slot | R-EB-SUB-S016 | rim:Slot (Requirement) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement'] | A 'rim:RegistryObject' with the classificationNode 'Requirement' MUST include a <rim:Slot name="Requirement"> and no other | Fatal |
Slot | R-EB-SUB-S017 | rim:Slot (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework'] | A 'rim:RegistryObject' with the classificationNode 'ReferenceFramework' MUST include a <rim:Slot name="ReferenceFramework"> and no other | Fatal |
DataType | R-EB-SUB-S018 | rim:SlotValue (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue | The <rim:SlotValue> of <rim:Slot name="EvidenceType"> MUST be of "rim:AnyValueType" | Fatal |
DataType | R-EB-SUB-S019 | rim:SlotValue (EvidenceTypeList) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue | The <rim:SlotValue> of <rim:Slot name="EvidenceTypeList"> MUST be of "rim:AnyValueType" | Fatal |
DataType | R-EB-SUB-S020 | rim:SlotValue (Requiremen) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue | The <rim:SlotValue> of <rim:Slot name="Requirement"> MUST be of "rim:AnyValueType" | Fatal |
DataType | R-EB-SUB-S021 | rim:SlotValue (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue | The <rim:SlotValue> of <rim:Slot name="ReferenceFramework"> MUST be of "rim:AnyValueType" | Fatal |
XSD-Binding | R-EB-SUB-S022 | sdg:EvidenceType (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType | A 'rim:Slot[@name='EvidenceType'/rim:SlotValue' MUST contain one sdg:EvidenceType of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Binding | R-EB-SUB-S023 | sdg:EvidenceTypeList (EvidenceTypeList) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList | A 'rim:Slot[@name='EvidenceTypeList'/rim:SlotValue' MUST contain one sdg:EvidenceTypeList of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Binding | R-EB-SUB-S024 | sdg:Requirement (Requirement) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement | A 'rim:Slot[@name='Requirement'/rim:SlotValue' MUST contain one sdg:Requirement of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Binding | R-EB-SUB-S025 | sdg:ReferenceFramwork (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework | A 'rim:Slot[@name='ReferenceFramework'/rim:SlotValue' MUST contain one sdg:ReferenceFramwork of the targetNamespace="http://data.europa.eu/p4s" | Fatal |
XSD-Restriction | R-EB-SUB-S026 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType | A 'rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType' MUST not contain a 'sdg:Distribution' | Fatal |
XSD-Restriction | R-EB-SUB-S027 | sdg:EvidenceTypeList | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList | A 'rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList' MUST not contain a 'sdg:EvidenceType' | Fatal |
XSD-Restriction | R-EB-SUB-S028 | sdg:Requirement | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement | A 'rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement' MUST not contain a 'sdg:EvidenceTypeList' and a 'sdg:ReferenceFramework' | Fatal |
XSD-Restriction | R-EB-SUB-S029 | sdg:RelatedTo | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType"/ MUST only contain the 'sdg:Identifier' | Fatal |
AssociationRules | R-EB-SUB-S030 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject | If a 'rim:RegistryObject' does not have a 'rim:Classification it MUST have the attribute 'xsi:type="rim:AssociationType"' | Fatal |
AssociationRules | R-EB-SUB-S031 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@xsi:type | Each 'rim:RegistryObject' with a classificationNode 'EvidenceType', 'EvidenceTypeList', 'Requirement' or 'ReferenceFramework' MUST have an association described in a the attribute 'xsi:type="rim:AssociationType"' | Fatal |
AssociationRules | R-EB-SUB-S036 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:ContainsEvidence" MUST link the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceTypeList' (@sourceObject) to the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceType' (@targetObject) | Fatal |
AssociationRules | R-EB-SUB-S037 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with the attribute 'xsi:type="rim:AssociationType"' linking 'rim:RegistryObject' with the classificationNode 'EvidenceTypeList' (@sourceObject) to 'rim:RegistryObject' with the classificationNode 'EvidenceType' (@targetObject) MUST use the type="urn:oasis:names:tc:ebxml-regrep:AssociationType:ContainsEvidence" | Fatal |
AssociationRules | R-EB-SUB-S038 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with the type="urn:oasis:names:tc:ebxml-regrep:AssociationType:FulfillsRequirements" MUST link the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceTypeList' (@sourceObject) to the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'Requirement' (@targetObject) or to a unique UUID (RFC 4122) starting with prefix "urn:uuid:" (@targetObject). | Fatal |
AssociationRules | R-EB-SUB-S039 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with the attribute 'xsi:type="rim:AssociationType"' linking 'rim:RegistryObject' with the classificationNode 'EvidenceTypeList' (@sourceObject) to 'rim:RegistryObject' with the classificationNode 'Requirement' (@targetObject) or to a unique UUID (RFC 4122) starting with prefix "urn:uuid:" (@targetObject) MUST use the type="urn:oasis:names:tc:ebxml-regrep:AssociationType:FulfillsRequirements" | Fatal |
AssociationRules | R-EB-SUB-S040 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:DerivesFromReferenceFramework" MUST link a unique UUID (RFC 4122) starting with prefix "urn:uuid:" (@sourceObject) or the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'Requirement' (@sourceObject) to the id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'ReferenceFramework' (@targetObject) . | Fatal |
AssociationRules | R-EB-SUB-S041 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@type | A 'rim:RegistryObject' with the attribute 'xsi:type="rim:AssociationType"' linking a unique UUID (RFC 4122) starting with prefix "urn:uuid:" (@sourceObject) or a 'rim:RegistryObject' with the classificationNode 'Requirement' (@sourceObject) to 'rim:RegistryObject' with the classificationNode 'ReferenceFramework' (@targetObject) MUST use the type="urn:oasis:names:tc:ebxml-regrep:AssociationType:DerivesFromReferenceFramework" | Fatal |
Slots | R-EB-SUB-S042 | lcm:SubmitObjectsRequest | lcm:SubmitObjectsRequest | A 'lcm:SubmitObjectsRequest' MUST not contain any other rim:Slots. | Fatal |
Identifier | R-EB-SUB-S043 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@id | Each id of 'rim:RegistryObject' MUST be unique UUID (RFC 4122) starting with prefix "urn:uuid:". | Fatal |
Cardinality | R-EB-SUB-S044 | rim:Slot (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType'] | A 'SubmitObjectsRequest' MUST include a 'rim:RegistryObject' with a <rim:Slot name="EvidenceType"> | Fatal |
Cardinality | R-EB-SUB-S045 | rim:Slot (EvidenceTypeList) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList'] | A 'SubmitObjectsRequest' MUST include a 'rim:RegistryObject' with a <rim:Slot name="EvidenceTypeList"> | Fatal |
Cardinality | R-EB-SUB-S047 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject | A 'SubmitObjectsRequest' MUST include a 'rim:RegistryObject' with the attribute 'xsi:type="rim:AssociationType" | Fatal |
Cardinality | R-EB-SUB-S048 | rim:Slot (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework'] | A 'SubmitObjectsRequest' MUST include a 'rim:RegistryObject' with a <rim:Slot name="ReferenceFramework"> | Fatal |
Cardinality | R-EB-SUB-S049 | sdg:RelatedTo | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:RelatedTo | The xs:element name="RelatedTo" type="sdg:ReferenceFrameworkType" MUST be present. | Fatal |
Cardinality | R-EB-SUB-S050 | sdg:Jurisdiction | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Jurisdiction | The xs:element name="sdg:Jurisdiction" type="sdg:JurisdictionType" MUST be present. | Fatal |
AssociationRules | R-EB-SUB-S051 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@sourceObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:DerivesFromReferenceFramework" MUST have a @sourceObject that uses a unique UUID (RFC 4122) (starting with prefix "urn:uuid:") or that uses same id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'Requirement' . | Fatal |
AssociationRules | R-EB-SUB-S052 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@targetObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:DerivesFromReferenceFramework" MUST have a @targetObject that uses same UUID (RFC 4122) of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'ReferenceFramework' . | Fatal |
AssociationRules | R-EB-SUB-S053 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@targetObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:FulfillsRequirements" MUST have a @targetObject that uses a unique UUID (RFC 4122) (starting with prefix "urn:uuid:") or that uses same id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'Requirement' . | Fatal |
AssociationRules | R-EB-SUB-S054 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@sourceObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:FulfillsRequirements" MUST have a @sourceObject that uses the same id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceTypeList'. | Fatal |
AssociationRules | R-EB-SUB-S055 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@sourceObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:ContainsEvidence" MUST have a @sourceObject that uses the same id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceTypeList'. | Fatal |
AssociationRules | R-EB-SUB-S056 | rim:RegistryObject | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/@targetObject | A 'rim:RegistryObject' with type="urn:oasis:names:tc:ebxml-regrep:AssociationType:ContainsEvidence" MUST have a @targetObject that uses the same id of the 'rim:RegistryObject' (starting with prefix "urn:uuid:") with the classificationNode 'EvidenceType'. | Fatal |
5.4.4.2 Business rules to prove the content format of information objects of a LCM Submit Objects Request to the EB
The table below lists the business rules to prove the structure of a "LCM Submit Objects Request to the EB" (EB-SUB) such as identifiers, formats, fixed values, mandatory set of values on specific fields (code lists) and dependencies between fields.
Rule Type | Rule ID | Element | Location | Rule | Flag |
Codelist | R-EB-SUB-C001 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/ sdg:EvidenceTypeClassification | The value of 'EvidenceTypeClassification' MUST be a URI with the following format 'http:://……' pointing to the Semantic Repository encoded in the EvidenceBroker. | Fatal |
CodeList | R-EB-SUB-C002 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Title/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Cardinality | R-EB-SUB-C003 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Title/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
CodeList | R-EB-SUB-C004 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Description/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Cardinality | R-EB-SUB-C005 | sdg:EvidenceType | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Description/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-SUB-C006 | sdg:Jurisdiction (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Jurisdiction/ sdg:AdminUnitLevel1 | The value of the 'AdminUnitLevel1' MUST be part of the code list 'CountryIdentificationCode' (ISO 3166-1 alpha-2 codes). | Fatal |
Codelist | R-EB-SUB-C007 | sdg:Jurisdiction (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Jurisdiction/ sdg:AdminUnitLevel2 | The value of the 'AdminUnitLevel2' MUST be coded using the code list 'Nuts' (Nomenclature of Territorial Units for Statistics). | Fatal |
Codelist | R-EB-SUB-C008 | sdg:Jurisdiction (EvidenceType) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceType']/rim:SlotValue/sdg:EvidenceType/sdg:Jurisdiction/ sdg:AdminUnitLevel3 | The value of the 'AdminUnitLevel3' MUST be coded using the code list 'LAU' (Local Administrative Units). | Fatal |
Identifier | R-EB-SUB-C009 | sdg:EvidenceTypeList | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList/sdg:Identifier | The identifier of 'EvidenceTypeList' MUST be unique UUID (RFC 4122). | Fatal |
Codelist | R-EB-SUB-C010 | sdg:EvidenceTypeList | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList/sdg:Name/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-SUB-C011 | sdg:EvidenceTypeList | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='EvidenceTypeList']/rim:SlotValue/sdg:EvidenceTypeList/sdg:Name/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Identifier | R-EB-SUB-C012 | sdg:Requirement | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Identifier | The value of 'Identifier' of a 'Requirement' MUST be unique UUID (RFC 4122) provided by the EvidenceBroker. | Fatal |
Codelist | R-EB-SUB-C013 | sdg:Requirement | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-SUB-C014 | sdg:Requirement | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='Requirement']/rim:SlotValue/sdg:Requirement/sdg:Name/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Identifier | R-EB-SUB-C015 | sdg:ReferenceFramework | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Identifier | The 'Identifier' of a 'ReferenceFramework' MUST be unique UUID (RFC 4122). | Fatal |
Codelist | R-EB-SUB-C016 | sdg:ReferenceFramework | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Title/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-SUB-C017 | sdg:ReferenceFramework | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Title/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-SUB-C018 | sdg:ReferenceFramework | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Description/@lang | The value of 'lang' attribute MUST be part of the code list 'LanguageCode' (ISO 639-1 two-letter code). | Fatal |
Default Value | R-EB-SUB-C019 | sdg:ReferenceFramework | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Description/@lang | The value of 'lang' attribute MUST be be provided. Default value: 'en'. | Fatal |
Codelist | R-EB-SUB-C020 | sdg:Jurisdiction (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Jurisdiction/sdg:AdminUnitLevel1 | The value of the 'AdminUnitLevel1' MUST be part of the code list 'CountryIdentificationCode' (ISO 3166-1 alpha-2 codes). | Fatal |
Codelist | R-EB-SUB-C021 | sdg:Jurisdiction (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Jurisdiction/sdg:AdminUnitLevel2 | The value of the 'AdminUnitLevel2' MUST be coded using the code list 'Nuts' (Nomenclature of Territorial Units for Statistics). | Fatal |
Codelist | R-EB-SUB-C022 | sdg:Jurisdiction (ReferenceFramework) | lcm:SubmitObjectsRequest/rim:RegistryObjectList/rim:RegistryObject/ rim:slot[@name='ReferenceFramework']/rim:SlotValue/sdg:ReferenceFramework/ sdg:Jurisdiction/sdg:AdminUnitLevel3 | The value of the 'AdminUnitLevel3' MUST be coded using the code list 'LAU' (Local Administrative Units). | Fatal |
R-EB-SUB-C023 |
6. References
ETSI TS 119 182-1. Electronic Signatures and Infrastructures (ESI); JAdES digital signatures; Part 1: Building blocks and JAdES baseline signatures https://www.etsi.org/deliver/etsi_ts/119100_119199/11918201/01.01.01_60/ts_11918201v010101p.pdf.
OASIS. ebXML RegRep Version 4.0 Part 2: Services and Protocols (ebRS). http://docs.oasis-open.org/regrep/regrep-core/v4.0/os/regrep-core-rs-v4.0-os.pdf
RFC 3230. Instance digests in HTTP. https://datatracker.ietf.org/doc/html/rfc3230.
RFC 5246. The Transport Layer Security (TLS) Protocol Version 1.2. https://datatracker.ietf.org/doc/html/rfc5246.
RFC 7515. JSON Web Signature. https://datatracker.ietf.org/doc/html/rfc7515.
RFC 7517. JSON Web Algorithms (JWA). https://datatracker.ietf.org/doc/html/rfc7518.
RFC 8032. Edwards-Curve Digital Signature Algorithm (EdDSA). https://datatracker.ietf.org/doc/html/rfc8032.
RFC 8446. The Transport Layer Security (TLS) Protocol Version 1.3. https://datatracker.ietf.org/doc/html/rfc8446.