COMMERCIAL IN CONFIDENCE COMMERCIAL IN CONFIDENCE SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$ IFS Interface Specification DIADEM-10712 DIADEM Web Service Interface Prepared for: Ministeriet for By, Bolig og Landdistrikter Gammel Mønt 4 1117 København K
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
IFS Interface Specification
DIADEM-10712
DIADEM Web Service Interface
Prepared for:
Ministeriet for By, Bolig og Landdistrikter
Gammel Mønt 4
1117 København K
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
IFS Interface Specification
Project: $DIADEM-10712
Revision: $Revision: 1.65$ $Date: 20 Aug 2013$
Document: $SSE/10712/IFS/001
Copyright (c) 2013 by Systematic Group. It shall not be copied, reproduced, disclosed or otherwise
made available to third party without previous consent from Systematic Group
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
6.3 Using Metadata .................................................................. 45
6.3.1 Rendering a DIADEM Report ................................................ 46
6.3.2 Metadata on Report, Groups and Categories........................... 47
6.3.3 Metadata on Elements and fields .......................................... 48
7 Versioning of Reports and Report Elements ..................... 51
7.1 Versioning of Reports .......................................................... 51
7.2 Versioning of Report elements .............................................. 51
7.3 Examples of versioning ........................................................ 51
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
1 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
1 Introduction
This interface description documents the web service interfaces which the
DIADEM implements and makes available to business-to-business
systems.
Note to get started developing an application that uses the DIADEM you
need to do the following:
Read this guide.
Supply MBBL with the OCES functional certificate (public key) you want
to use with to authenticate you application.
Supply MBBL with the OCES functional certificate (public key) you want
to use with to authenticate you STS. If you do not use the IOI IDWS
based methods you do not need this.
Supply MBBL with the users who need access.
2 Definition of Terms
Term Description
MBBL Abbreviation of ”Ministeriet for By, Bolig og Landdistrikter”. The owner and administrator of the DIADEM project and solutions. See more at http://mbbl.dk/ejendomsdata-i-diadem.
User Is used to represent the person who is the caller
of a DIADEM web service. The user is identified in the OIO SAML information sent using IDWS. See section 5.2 on security.
User.Employee A user that is an employee at some company. It must be a Danish company identified by a CVR number.
User.Person A user that is a private person. The person must have a Danish CPR number.
Calling System Is used to represent the application / system that calls a DIADEM web service. The system is identified by the functional OCES certificate (FOCES). See section 5.2 on security.
Real Property In Danish “Vurderingsejendom”, the primary
subject of a DIADEM Report. See section 2.1 for information on the relations between the
property terms. Is uniquely identified through a composite key Ejendomsnummer and Kommunenummer.
Land Property In Danish “Samlet Fast Ejendom”, a subdivision of a Real Property into Property that may be
sold separately. See section 2.1 for information on the relations between the property terms. Is uniquely identified through a SamletFast-EjendomIdentifikator.
Land Parcel In Danish “Matrikelnummer”, a sub division of a land parcel. See section 2.1 for information on
the relations between the property terms. Is uniquely identified through a composite key
Unique identification of the DIADEM report. This identifier is used with the RapportHent and
RapportGenbestil operations.
Note this is different from the report identifier specified
as part of the input.
Error Handling: See section 5.3.
If the client application has a time out, the status of the
call is unknown. The client application may call the Rapport.RapportListeHent to determine if the report
order has taken effect.
Role Required: No role required
OWSA Model T
supported
No
Prerequisites: 1. Calling system must be a registered system
2. The specified input report identifier must identify an
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
18 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
existing DIADEM report.
3. The user must have ordered the original report
4. The number of times the report has been reordered must not exceed the maximum allowed
5. The grace period must not have been exceeded
4.4.7 Operation – RapportBilagHent
Name: RapportBilagHent
Description: Gets attachment for a report.
Input: RapportBestillingIdentifikator, (Report identifier), Identifies the DIADEM report this report order is based on.
BilagIdentifikator, (Attachment identifier),
Identifies the attachment.
Output: BilagData, (Attachment data) The attachment data itself.
MimeTypeIdentifikator, (The MIME type identifier) The MIME type of the attachment.
Error Handling: See section 5.3.
If the client application has a time out, the status of the
call is unknown. The client application may call the Rapport.RapportListeHent to determine if the report
order has taken effect.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: This method has the same prerequisites as Operation -
RapportHent.
4.4.8 Operation – RapportPdfHent
Name: RapportPdfHent
Description: Gets a PDF version of the DIADEM report.
Input: RapportBestillingIdentifikator, (Report identifier), Identifies the DIADEM report this report order is based on.
PdfRapportType (Pdf report type), Defines which type of report to fetch, can be one of the following:
FuldRapport
FuldRapportUdenMetadata
KunResume
KunMetadata
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
19 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
PdfBilagIndhold (Attachment content), Defines if the attachment of the report is reference only or includes the attachment data aswell. Can be one of the following
SomReference
SomReferenceOgData
Output: PdfRapport, (Pdf report) The pdf report itself.
BilagSamling, (Attachments) A collection of attachments for the report.
Error Handling: See section 5.3.
If the client application has a time out, the status of the
call is unknown. The client application may call the Rapport.RapportListeHent to determine if the report
order has taken effect.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: This method has the same prerequisites as Operation -
RapportHent.
4.5 Web Service – Metadata
The metadata web service encapsulates access to metadata information
describing the business properties and presentation properties for report
23 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
SvarStatus (Reply status). The status of the requested
report element.
RapportValgmulighedIdentifikator The identifier of
the report option the request relates to.
RapportElementIdentifikator The identifier of the
report element the request relates to.
Svar The current reply.
BilagSamling Collection of attachments.
Role Required: RequestProcessor
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The request must correspond to the municipality in which the user is employed. Thus a user from Aarhus cannot give input about a property in Copenhagen.
RekvireringsDato (Date of requisition) The date the
request was issued.
RapportBestillingIdentifkator The identifier of the
report order the request relates to.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
24 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
SvarStatus (Reply status). The status of the report
element.
Role Required: RequestProcessor
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The request must correspond to the
municipality in which the user is employed. Thus a user from Aarhus cannot give input about a property in Copenhagen.
4.6.3 Operation - SvarOpdater
Name: SvarOpdater
Description: Updates the given request with the given reply to the
given state.
Input: ForespoergselsIdentifikator (Request identificator) identification of the request that is to be updated.
Status the status for processing the request.
Svar (Response) the preliminary or complete response, controlled by Status.
BilagSamling, (Attachment collection) collection of
attached documents that are connected with the report
element.
Output: Empty response
Role Required: RequestProcessor
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The request must correspond to the municipality in which the user is employed. Thus a user from Aarhus cannot give input about a property in
Employees at a company must be registred to use DIADEM (ordering reports etc.) All private persons have this role implicitly.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
35 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
ActAsOwner
Employees at a company must have this role when obtaining information from DIADEM that is related to their company.
All private persons have this role implicitly.
RequestProcessor Given to users in the municipalities for providing information for the DataModtagService
It is possible to specify multiple roles as part of the request. Each role
must be a separate attribute.
Note DIADEM roles are only relevant in connection with the usage of
authenticated users – i.e. when using OIO IDWS.
5.3 Time
All times in DIADEM used as input or returned as output, must be in UTC.
The only exception from this rule is time objects that are provided by
external data providers.
5.4 Error Handling
A DIADEM web service returns an error when any of the defined pre-
requisites for a web service operation has not been fulfilled and when an
error occurs in the DIADEM System. Errors are reported explicitly as soap-
fault or http error codes, and implicitly by the calling system in the form of
a timeout.
5.4.1 Soap Fault
Soap fault is used to report any error detected by the DIADEM system in
relation to a call of a web service operation. The soap fault version 1.1
standards and formats are used.
DIADEM fills out the soap fault elements in accordance with the following
specification:
Soap fault element
Specification
faultcode A code for identifying the fault, must be one of: Client The message was incorrectly formed or
contained incorrect information, the client need to correct the soap request before retrying. Server There was a problem with the server so the message could not proceed, in general the client
should retry sending the soap request. VersionMismatch Found an invalid namespace for the SOAP Envelope element
MustUnderstand An immediate child element of the Header element, with the mustUnderstand attribute set to "1", was not understood
faultstring A human readable explanation of the fault. faultactor Information about who caused the fault to happen Details Holds application specific error information related to
the soap body element that may be used when e.g.
debugging the error.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
36 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
5.4.2 Http Error Code
The DIADEM system is hosted on a Microsoft Internet Information Server
(IIS) which under certain circumstances may reject a soap request, by
returning http status codes indicating the error.
Note that any soap stack should handle or report these errors.
5.4.3 Client timeout
There may be situations where the DIADEM system is not capable of
receiving the request or producing a reply, when this occurs the calling
system must perform a time out.
When a calling system has timed out it is unknown if the request was
processed by the DIADEM system or not. The calling system will have to
query the DIADEM system to determine if the request was processed, if
possible.
Note Client timeouts should be set as high as possible, allowing situations
of problems or reduced performance to be handled in an appropriate
manner. Remember that a time-out is an error situation, it does not define
the longest time a user is willing to wait for a response – it defines the
period until we are certain something is wrong and a reply is unlikely.
5.5 Error codes
Error codes for the DIADEM query engine are found in the database in the
FejlTekst table.
All errors thrown are a FaultException containing a description of the error
occurred.
Below is a list of possible error codes for DIADEM:
Error code Error description
1 Ejendom identificator should not be null or empty.
2 Start date is greater than end date.
3 Invalid report order ID.
4 Report with specified ID not found.
5 Report option elements count must be more than zero.
6 Report order does not contains all expected land
properties.
7 Wrong ejendom identificator.
8 Internal communication problem.
9 Customer group does not exist.
10 Invalid report option element ID.
11 No report option or report template group specified for
report template content.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
37 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
12 Invalid report template status.
13 Both report option and report template group are specified
for report template content.
14 Customer group identifier of the current caller is different
from one specified in report template.
15 Invalid report option status.
16 Invalid report option element status.
17 Only report owner can get confidential report order.
18 Properties collection is empty.
19 Null property in properties collection.
20 Null cadastre in cadastres collection.
21 Only report owner can update confidential report order.
22 Report option orders collection is empty.
23 Null report option in report order.
24 Report option with specified ID not found.
25 Report option has no elements.
26 The report option contains a null report option element.
27 Invalid report option element type.
28 Report option element with specified ID not found.
29 Report template with specified ID not found.
30 The report template contains duplicate report option
identifiers.
31 The price zone on the report option is not defined.
32 Price zone with specified ID not found.
33 Unauthorized access denied.
34 The identity of the user, using the report template service
is unknown.
34 The claim must either have a CPR or CVR number.
35 A reply transformation did not produce a valid result.
36 The input for a transformation is not valid.
37 Report cannot be reordered.
38 Not the owner of the property.
39 Not the issuer of the power of attorney.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
38 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
40 The power of attorney has already been cancelled.
41 The power of attorney validity date is less than the
registration date.
42 The power of attorney registration doesn't exist.
43 The attachment doesn't exist.
44 The from-date is later than the to-date.
46 The metadata cannot be null.
47 Invalid power of attorney issuer.
48 Invalid power of attorney registrant.
49 The metadata mappings configuration file can not be
loaded.
50 Usage of FuldmagtIndhentet not allowed for current user.
51 Product package not found.
52 Either payment information not specified or customer has
no valid customer agreements.
53 Invalid customer payment form.
54 Cannot update a completed report request.
55 Cannot find attachment by attachment id.
56 Duplicate attachments identificators found.
57 User is not Authorized.
58 Grace period is exceeded.
59 Number of re-orders has been exceeded.
60 Report is still being processed.
61 Timeout value is not large enough.
62 Notification sending failed.
63 Notification via SMS failed.
64 Notification via email failed.
65 Report element has already been processed.
66 Municipalities with specified ID not found.
67 The integration file name is not specified.
68 The customer is inactive.
100 Schema validation error.
101 Schema compilation error.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
39 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
102 Error occurred during report generation.
103 Error occurred during report serialization.
108 B2B system is not registered.
109 Report template is not useable by caller.
110 Report option is not active.
112 CVR or CPR cannot be updated.
113 It is not possible to order reports on the specified
municipality.
114 Report may contain private data and cannot be accessed
anonymously.
115 The PdfRapportHent method is only able to deliver a pdf
report with summary
116 Not able to update confidentiality of the report
117 Access to the report has been revoked
200 Unknown error.
Note: An administrator is capable of changing the error text from a UI,
but not the error codes.
5.6 Web Service Input Validation
The following validation is performed for all web service operation calls in
addition to the validation of pre-requisites defined for the web service
operation.
Input XML Schema Validation
Output XML Schema Validation
Validation based on OIO IDWS.
5.7 Standards Compliance
DIADEM web services have been developed and test for compliance with
the following standards to reduce the risk of incompatibility issues.
SOAP version 1.1
Soap Fault version 1.1
WS-I Basic Profile 1.1
OIO NDR 3.2
OIO IWDS, for identity based web services, which among others
include:
The Liberty Basic SOAP Binding v1.0
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
40 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
6 Important DIADEM Schemas
There are number of central structures in DIADEM requiring some
description and comments on usage and relationship to each other.
6.1 Report Template Structure
The report template structure contains general information about the
name and purpose of the template.
Field Name Description
RapportSkabelonIdentifikator Unique identification of the report template.
RapportSkabelonStatusKode Status code for the template. Is one of: Aktiv (active) indicates that the report template is active and may be used.
Inaktiv (inactive) indicates that the report template is inactive and may not be used.
Navn
(Report Template name)
Metadata defining the name associated with
the report template. BeskrivelseTekst (Report Template descruption)
Metadata describing the report template.
And additional metadata See section 6.3.2.1 for all metadata that is part of the report template.
RapportvalgmulighedStatusKode (Report Option status code)
Identified the status of the report option. Is set to one of the following: Aktiv, the report option is active and may be ordered. Inaktiv, the report option is marked as
inactive and cannot be ordered. The RapportBestil operation will fail.
RapportvalgmulighedTilgaengelighedKode
(Report Option Confidentiality)
Defines if this report option may contain confidential information. The possible
values are: Alle (everybody) the report option does not contain confidential information. Ejer (owner) the report option may contain
confidential information. The report option will contain confidential information if the User that ordered the report is the owner of the real property and if the User has a valid power of attorney.
Navn (Report Option name)
Metadata, name of the report option.
BeskrivelseTekst (Report Option description)
Metadata, description of the report option.
PriszoneIdentifikator (Price zone identifier)
Identifies the price zone this element is associated with. Used with the BeregnPris
operation to calculate the price for a given
report.
7. HentesVedGenbestillingIndikator
(Get at re-order)
Indicates whether the report option should be retrieved again (i.e. source system is to
be called again) when re-ordering a report.
DatakildeSamling (Collection of information providers)
Contains a collection of information about the information provides that are used when DIADEM retrieved DIADEM report content.
A report option may have one or more information providers associated. Most have one.
DatakildeStatusKode (Information Provide Status Code)
Information provider status code. Is set to one of the following:
aktiv the information provider is active and the report element will be generated. midlertidigInaktiv, the information provider is temporarily inactive, when it becomes active, the report element will be generated.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
42 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Field Name Description
inaktiv, the information provider is inactive the report element will not be generated. Note the information provider status may change after a report has been ordered. There is thus no guarantee that information from a provider with status aktiv or
midlertidigInaktiv will be delivered, because the status may be changed to inaktiv before the contents is generated.
6.2 Top Level Report Structure
The top level Report structure has been designed to be static, and it is
expected that it will not change (ever).
The top level structure of a DIADEM report is as follows.
Report Status (see section 6.2.1) contains the status of the report
generation.
Report Template (see section 6.2.2) contains all information defining
the report template used for generating the report.
Report Order (see section 6.2.3) contains information from the report
order e.g. identifying the Real Property.
Report Elements (see section 6.2.4) contains the individual Report
Elements and status.
Report Summary (See section 6.2.5): contains a list of status
information for each report option in the report.
6.2.1 Report Status
The status section of a DIADEM report contains status information on the
report generation.
Field Name Description
RapportstatusKode (Report status code)
A code that defines the current status of the report port generation. The code is one of the following: Bestilt (Ordered) The DIADEM report has been
ordered, but no data has been retrieved from the information providers.
UnderUdarbejdelse (In process) Some, but not all report elements have been retrieved from the information providers.
Faerdig (Done) The DIADEM report has been completed; all report elements have been retrieved from the information providers. FaerdigMedMangler (Done but incomplete) The Diadem report has been “completed”; however not
all report elements have been retrieved from the information providers. Some information providers have been marked as unavailable – information
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
43 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Field Name Description
from these will not be delivered. Deaktiveret (Deactivated) The DIADEM report has been deactivated and is unavailable.
6.2.2 Report Template
The report template section contains the metadata as of the when the
report was ordered. This includes all metadata relating to report template,
report group and report option, which should be used for rendering the
report.
For a specification of the report template contents see section 6.1.
6.2.3 Report Order
The report order section of a report contains the information describing
the report order as specified by the user when ordering using the Rapport.RapportBestil web service operation.
Field Name Description
RapportbestillingIdentifikator
(Report Identifier)
Identifies the report order.
RapportbestillingDatoTid (Time and Data of order)
Contains the date and time when the DIADEM report was ordered.
EjendomIdentifikator
(Real Property Identifier)
Ejendomsnummer. Identifies the real
property the DIADEM report covers. KommuneIdentifikator (Municipality code)
Kommunenummer. Identifies the municipality where the real property is
located. SamletFastEjendomIdentifikatorSamling (Collection of Land Parcel Identifiers)
Contains a list of land property identifiers, for the land properties to be part of the DIADEM report. If empty all land properties associated with the real property are included.
RapportSkabelonIdentifikator
(Report Template Identifier)
Contains a report template identifier,
identifying the template used when ordering the DIADEM report. The template is included in the report template section of the report, see section 6.2.2. Please note that this is only the case is the report was ordered
with a template. Template use is optional.
RapportvalgmulighedValgSamling (Collection of Report Option Identifiers)
Contains a list of the report options Identifiers that the generated DIADEM report must contain. These should be a sub set of the report options defined report template.
Indicates if the generated DIADEM report may contain confidential infor-mation.
6.2.4 Report Element
RapportElementSamling contains the generated report element, and it
contains placeholders for all report elements that has been ordered.
Field Name Description
RapportvalgmulighedIdentifikator
(Report Option Identifier)
Identifies the report option this report
element has been gathered for. RapportElementIdentifikator (Report Option Status)
Identifies the report element.
RapportElementStatusKode (Report element status code)
IkkeHentet The information has not been gathered yet. Hentet The information has been gathered.
KildeDeaktiveret The data source is no longer available. AfventerSemiAutomatiskInput The data source requires manual input from a municipality. UdeladesAfRapport The information is
omitted from report. IkkeTilgaengelig The information was not available when the DIADEM report was set to done but not complete (FaerdigMedMangler).
IndhentetDato (Date of gathering)
The date the information was gathered from the data provider.
RapportElementBetegnelseKode (Report Element Definition Code)
Describes if the data was gathered for the entire property or a single land parcel. matrikelBetegnelse If the information was gathered for a single land parcel. ejendomsBetegnelse If the information was gatherd for the entire
property.
RapportIndhold (Report content)
The gathered information.
6.2.4.1 Report content
The individual sections of a DIADEM report are not defined in this
document. Instead they are documented as XSL schema definitions (XSD) files and metadata, available from the Metadata web service.
The DIADEM report element and field schemas are to be made available
by MBBL.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
45 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
6.2.4.2 Real Property Information Report Element
The Real Property Information Report Element contains general
information on a given property. It identifies the relations between a Real
Property and Land Properties, Land Parcels, buildings, building facilities
etc.
This is not an in-depth description of the Real Property Information Report
Option. It is a description of select subset of report fields that act as
identifiers which are used in other parts of a DIADEM report (typically in
the other Report Options).
For information on all Report Fields in the Real Property Information
Report Option please look up the metadata associated with the relevant
Report Elements (and Fields).
Report Fields of special interest are:
Field Name Description
EjendomIdentifikator Ejendomsnummer, Real Property Identifier. Uniquely identifies a Real Property with in a municipality. Is use to identify a Real Property when ordering a DIADEM Report.
KommuneIdentifikator Kommunekode, Municipality Code. Uniquely identifies a municipality.
Is use to identify a Real Property when ordering a DIADEM Report.
SamletFastEjendomIdentifikator Land property Identifier. Uniquely identifies a Land Property in Denmark. Is use to identify a Land Property when ordering a DIADEM Report.
EjendomReference e-REF, Property Reference. A novel property
reference that ties together historic property related
references. Has not been fully implemented in the source systems.
6.2.5 Report summary
Each report contains a summary for each ordered report option.
Report name and description Based on report template metadata from the report object.
Report status, i.e. is the report complete
Based on status information from the report object.
Identify real property and land properties cover in report.
Based on ordering information from the report object.
In depth real property Information is rendered.
Based on the EjendomsInfo section in the report object. The rendering should be done as described below for a report option.
Report groups and report option are rendered according to their position
Based on metadata from the report object. Rendering the group and section content is
described in the two following tables.
Rendering of a report group
Content Description
Render group name, description and other relevant metadata defined for the report group
Based on the report group metadata from the report object.
Report options that are part of the group are rendered according to their position.
Based on the report group metadata from the report object. Rendering the report option content is described in the following table.
Rendering of a report option
Content Description
Render section question,
description and other relevant metadata defined for the report option
Based on the report option metadata from the
report object.
For each report element render the following render report element name and
summary and other relevant
metadata defined for the report element
Based on the report Element metadata from the metadata object. The relevant metadata is identified using the metadata:Key provided as
an attribute on each report element in the report
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
47 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Content Description
object. For each report field in the report element render the following render report fields name and
description and other relevant metadata according to the order defined as part of the report field metadata
Based on the report field metadata from the metadata object. The relevant metadata is identified using the metadata:Key provided as
an attribute on each report field in the report object.
The report rendering dependencies are illustrated on the figure below.
Rendered ReportReport (RapportHent)
Metadata (MetadataHentViaRapport)
Report Status
Report Order
Report Template
EjendomsInfo
Report Sections
Report Element
Report Field
Report name and description
Report status
Section question and description
Element name and description etc
Identify Real Property etc.
In depth Real Property Information
Group name and description etc.
Field value, name and description etc
Figure 4 Rendering dependencies of a DIADEM report based on the report
and metadata.
6.3.2 Metadata on Report, Groups and Categories
The following section define the metadata supplied describing the report
template, report group and report option.
6.3.2.1 Report
Name Description
B 1 NavnTekst
(Name)
A name identifying a report (template).
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
48 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Name Description
B 1 BeskrivelseTekst
(Description)
A description of the template contents
and where it is applicable.
Note column 1 identifies if the metadata are Business (B) or Presentation
(P), column 2 defines the detail level.
6.3.2.2 Group / Category
Name Description
B 1 NavnTekst (Name)
A name identifying a report group.
B 1 BeskrivelseTekst (Description)
A description of the group contents.
P 1 PositionIdentifikator
(Position)
Defines the group’s desired position
when rendering report. Used for ordering the groups and sections in a report. It is a positive integer starting at 1.
P 1 TilkoebIndikator
(Option)
Defines the group’s contents. It is
considered an option that a user actively can choose to include when ordering and buying a Report.
Note column 1 identifies if the metadata are Business (B) or Presentation
(P), column 2 defines the detail level.
6.3.3 Metadata on Elements and fields
In the DIADEM report, xml elements representing report elements and report fields are decorated with a metadata:Key attribute that defines a
metadata key that can be used with the metadata returned by the operations exposed by the Metadata web service.
6.3.3.1 Element
Name Description
Resume (Summary)
B 2 BeskrivelseTekst (Description)
A summary of the element contents and where it is applicable.
B 2 ForfatterNavn (Author)
Identifies the user that who made the most recent changes to the
BeskrivelseTekst (Description) element. B 2 AendringsDatoKildeDato
(Changed at Source) Identifies when the most recent changes to the BeskrivelseTekst (Description) were made at the information source.
B 2 AendringDatoDiademDato (Changed in DIADEM)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made in DIADEM.
Formaal (Purpose)
B 4 BeskrivelseTekst (Description)
A definition of the purpose of the element.
B 4 ForfatterNavn (Author)
Identifies the user that who made the most recent changes to the BeskrivelseTekst (Description) element.
B 4 AendringsDatoKildeDato (Changed at Source)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made at the information source.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
49 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Name Description
B 4 AendringDataoDiademDato (Ahanged at Source)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made in DIADEM.
Historik (History)
B 2 BeskrivelseTekst (Description)
A description of changes to the element.
B 2 ForfatterNavn (Author)
Identifies the user that who made the most recent changes to the BeskrivelseTekst (Description) element.
B 2 AendringsDatoKildeDato (Changed at Source)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made at the information source.
B 2 AendringDataoDiademDato
(Changed at Diadem)
Identifies when the most recent changes
to the BeskrivelseTekst (Description) were made in DIADEM.
LovgrundlagFagligt (Legal framework)
B 4 BeskrivelseTekst (Description)
An identification / description of legal framework which is the foundation of
this element. B 4 ForfatterNavn
(Author) Identifies the user that who made the most recent changes to the BeskrivelseTekst (Description) element.
B 4 AendringsDatoKildeDato (Changed at Source)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made at the information source.
B 4 AendringDataoDiademDato (Changed at Diadem)
Identifies when the most recent changes to the BeskrivelseTekst (Description) were made in DIADEM.
ReguleringAfRegistreringOgAjourfoering (Legal Framework Registration and maintenance)
B 2 BeskrivelseTekst (Description)
An identification / description of legal framework regarding information registration and information main-tenance which is the foundation of this element.
B 2 ForfatterNavn (Author)
Identifies the user that who made the most recent changes to the
BeskrivelseTekst (Description) element. B 2 AendringsDatoKildeDato
(Changed at Source) Identifies when the most recent changes to the BeskrivelseTekst (Description) were made at the information source.
B 2 AendringDataoDiademDato (Changed at Diadem)
Identifies when the most recent changes to the BeskrivelseTekst (Description)
were made in DIADEM.
B 1 DatakildeNavn (Information Provider)
Identification of the information provider, i.e. where the information in this elements has been retrieved.
B 1 RessortMyndighedTekst (Responsible Authority)
Identification of the responsible authority.
B 1 AdministrativMyndighedTekst
(Administrative Authority)
Identification of the administrative
authority. KontaktoplysningerForAdministrati
vMyndighed (Contact information)
B 1 BeskrivelseTekst (Description)
Description related to the contact information
B 1 AdresseTekst Contact address information.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
50 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Name Description
(Address) B 1 TelefonIdentifikator
(Phone number) Contact phone number.
B 1 EmailAdresseTekst (E mail address)
Contact e-mail address.
B 1 WebAdresseTekst (Web address)
Contact web page
B 1 YderligereInformationIdentifikator (Link to further information)
Link to further information.
Note column 1 identifies if the metadata are Business (B) or Presentation
(P), column 2 defines the detail level.
6.3.3.2 Field
Name Description
B 1 FeltNavnTekst (Name)
A name identifying a report (template).
B 1 BeskrivelseTekst (Description)
A description of the template contents and where it is applicable.
P 4 TekniskNavn The technical name
P 1 FormatTekst Represents the report field format B 1 ForfatterNavn
(Author) Identifies the user that who made the most recent changes to the BeskrivelseTekst (Description) element.
B 1 AendringsDatoKildeDato (Changed at Source)
Identifies when the most recent changes to the BeskrivelseTekst
(description) were made at the information source.
B 1 AendringsDatoDiademDato
(Changed at Diadem)
Identifies when the most recent
changes to the BeskrivelseTekst (description) were made in DIADEM.
P 1 FeltPositionIdentifikator (Position)
Defines the field’s desired position when rendering a report. Used for ordering
the fields within a report element. This is a positive integer starting at 1.
P 1 VisibilitetKode (Show)
Defines if the report field should be shown.
P 1 TypeTekst (Type)
Code identifying the data type of the data in the report field.
P 2 PraesentationStyreParameterATekst Text defining presentation parameter A.
P 2 PraesentationStyreParameterBTekst Text defining presentation parameter B. P 2 PraesentationStyreParameterCTekst Text defining presentation parameter C. P 2 PraesentationStyreParameterDTekst Text defining presentation parameter D. P 2 PraesentationStyreParameterETekst Text defining presentation parameter E. P 2 PraesentationStyreParameterFTekst Text defining presentation parameter F.
P 2 PraesentationStyreParameterGTekst Text defining presentation parameter G.
P 2 PraesentationStyreParameterHTekst Text defining presentation parameter H. P 2 PraesentationStyreParameterITekst Text defining presentation parameter I. P 2 PraesentationStyreParameterJTekst Text defining presentation parameter J.
Note column 1 identifies if the metadata are Business (B) or Presentation
(P), column 2 defines the detail level.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
51 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
7 Versioning of Reports and Report Elements
The purpose of this section is to describe how reports and report elements
within the report are versioned in DIADEM.
7.1 Versioning of Reports
When calling the Report Service the newest possible version of the Report
is returned based on which version was available when the Report Service
was released. I.e. reports are both migrated backwards and forwards.
7.2 Versioning of Report elements
Report elements are a bit different since they are only migrated
backwards to older versions depending of which version of the Report
Service the Report is fetched with.
If an older Report is fetched with a newer version of the Report Service,
then no migration will occur.
If a newer Report is fetched with an older version of the Report Service,
then report elements with versions that were not known at the time of the
deployment of the Report Service will be migrated back.
This means the integrators must be able to support multiple versions of
report elements.
7.3 Examples of versioning
To give an example of how report versioning works we can use the report
element “Forfalden gæld”.
When Rapport Service V3 was released the report element was versioned
into Forfalden Gæld V2.
If a report is ordered and the report contains the new version of the report
element, the following will happen when the report is fetched.
If the report is fetched using Rapport Service V2 (The older version of the
service), the report element returned will always be Forfalden Gæld V1.
If the report is fetched using Rapport Service V3 then it depends on which
version of the report element is stored in the report in the database.
If the report element is stored in version 2 then the version in the report
is Forfalden gæld V2.
If the report element is stored in version 1 then the version in the report