Download - DIADEM Web Service Interface
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$
Table of Contents
1 Introduction ...................................................................... 1
2 Definition of Terms ............................................................ 1
2.1 Property relations ................................................................. 2
3 DIADEM Use Scenario ........................................................ 3
3.1 STEP 1: Finding Real Property ................................................ 3
3.2 STEP 2: Using a DIADEM Report Template ............................... 4
3.3 STEP 3: Ordering a DIADEM Report ........................................ 4
3.4 STEP 4: Getting and Determining DIADEM Report Status ........... 5
3.5 STEP 5: Rendering a DIADEM Report ...................................... 5
3.6 STEP 6 Reorder a DIADEM Report ........................................... 6
4 DIADEM Public Web Services ............................................. 6
4.1 Readers Guide ...................................................................... 6
4.2 Web Service – EjendomSoeg .................................................. 7
4.2.1 Operation – EjendomSoegViaAdresseIdentifikation ................... 7
4.2.2 Operation – EjendomSoegViaAdresse ...................................... 7
4.2.3 Operation – EjendomSoegViaKoordinat.................................... 8
4.2.4 Operation – EjendomSoegViaMatrikelnummer .......................... 9
4.2.5 Operation – EjendomSoegViaEjendomsnummer ........................ 9
4.2.6 Operation – EjendomSoegViaEjerforhold ................................ 10
4.3 Web Service – Rapportskabelon (Version 2) ........................... 10
4.3.1 Operation – RapportskabelonHent ......................................... 11
4.3.2 Operation – RapportskabelonlisteHent ................................... 11
4.4 Web Service – Rapport ........................................................ 12
4.4.1 Operation - RapportBestil .................................................... 12
4.4.2 Operation - RapportHent ..................................................... 14
4.4.3 Operation – RapportlisteHent ............................................... 14
4.4.4 Operation – RapportlisteHentViaEjendomsnummer ................. 15
4.4.5 Operation – RapportOpdaterFortrolighed ............................... 16
4.4.6 Operation – RapportGenbestil .............................................. 17
4.4.7 Operation – RapportBilagHent .............................................. 18
4.4.8 Operation – RapportPdfHent ................................................. 18
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.5 Web Service – Metadata ...................................................... 19
4.5.1 General – Metadata filters .................................................... 19
4.5.2 Operation - MetadataHentViaRapport .................................... 20
4.5.3 Operation - MetadataHentViaRapportBestillingsDato................ 21
4.5.4 Operation - MetadataHentViaRapportelement ......................... 21
4.6 Web Service Datamodtag .................................................... 22
4.6.1 Operation - ForespoergselHent ............................................. 22
4.6.2 Operation - ForespoergselListeHentUbesvarede ...................... 23
4.6.3 Operation - SvarOpdater ..................................................... 24
4.7 Web Service RapportAfregningService ................................... 24
4.7.1 Operation - KontantBetalingerHent ....................................... 25
4.7.2 Operation - BeregnPris ........................................................ 25
4.7.3 Operation - BetalingsIdHent ................................................. 26
4.8 Web Service – FuldmagtService ............................................ 26
4.8.1 Operation - FuldmagtAfgivetListeHent ................................... 27
4.8.2 Operation - FuldmagtOpret .................................................. 27
4.8.3 Operation - FuldmagtTildeltListeHent .................................... 29
4.8.4 Operation - FuldmagtAnnuller .............................................. 29
4.9 Web Service – KundeService ................................................ 30
4.9.1 Operation - KundeHent ........................................................ 30
4.9.2 Operation - FastKundeHent .................................................. 30
4.10 Web Service – Statistik ....................................................... 31
4.10.1 Operation - StatistikDataHent .............................................. 31
5 DIADEM Web Service Semantics ...................................... 32
5.1 Message Format ................................................................. 32
5.2 Web Service Security .......................................................... 32
5.2.1 OWSA model T – Anonymous Users ...................................... 33
5.2.2 OIO IDWS – Authenticated Users .......................................... 33
5.2.3 Issuing a token .................................................................. 34
5.3 Time ................................................................................. 35
5.4 Error Handling .................................................................... 35
5.4.1 Soap Fault ......................................................................... 35
5.4.2 Http Error Code .................................................................. 36
5.4.3 Client timeout .................................................................... 36
5.5 Error codes ........................................................................ 36
5.6 Web Service Input Validation ............................................... 39
5.7 Standards Compliance ......................................................... 39
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
6 Important DIADEM Schemas ........................................... 40
6.1 Report Template Structure ................................................... 40
6.1.1 Report Template Group ....................................................... 40
6.1.2 Report Option..................................................................... 41
6.2 Top Level Report Structure .................................................. 42
6.2.1 Report Status ..................................................................... 42
6.2.2 Report Template ................................................................. 43
6.2.3 Report Order ...................................................................... 43
6.2.4 Report Element .................................................................. 44
6.2.5 Report summary ................................................................. 45
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
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
2 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Term Description
Matrikelnummer and EjerlavsKode. Municipality In Danish “Kommune”. Municipality is uniquely
identified through a 4 digit code, called a “Kommunekode”.
OIO IDWS Standard profile for securing activation of web services. Includes identity and right of the end-user.
OWSA model T Standard profile for securing activation of web services based on https with client authentication.
DIBS Danish internet payment system – information is relation to doing cash payments in DIADEM.
2.1 Property relations
The figure below describes the primary real property information with
restrictions.
Figure 1 Property relations
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
3 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
3 DIADEM Use Scenario
This chapter contains a high level description of common usage scenario.
Figure 2 Use cases
3.1 STEP 1: Finding Real Property
The first step in ordering a DIADEM report is to search and find the real
property which must be the object of a DIADEM report.
DIADEM has a set of operations located in the EjendomSoeg web service
that can be used to search for a real property. The search can be based on
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
4 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
a real property identifier, based on address information, based on owner
information or based on a land parcel identifier.
The operations of EjendomSoeg returns an in depth description of the real
properties that meet the search criteria. Based on the returned real
property information, a user is able to identify the real property that
should be the object of a DIADEM report.
Note a Real Property is uniquely identified by a composite key consisting
of Ejendomsnummer and Kommunenummer (real property number and
municipality number).
3.2 STEP 2: Using a DIADEM Report Template
A DIADEM report consists of a number of sections each describing a
different aspect of the real property. When ordering a DIADEM report the
user can select which sections the report must contain. The price
associated with a report is dependent on which report options have been
ordered.
DIADEM has a set of operations located in the Rapportskabelon web
service that can be used to get templates with different contents. A report
template contains information that defines naming and describes the
contents of the individual report options.
A report template contains a subset of the report options defined in
DIADEM. The report options in a template may be ordered in groups,
allowing related information to be kept together.
Report templates are administrated by MBBL. There is a set of globally
available templates and there is the possibility to have a tailored report
that is only available to a group of customers.
The report templates available to a given user may always be retrieved using the RapportskabelonListeHent operation on the Rapportskabelon
web service.
Note if desired Step 2 could be done before Step 1.
3.3 STEP 3: Ordering a DIADEM Report
To order a DIADEM report the user must specify the desired real property
and report options that the DIADEM report must contain. Optionally the
user may select to limit the DIADEM report to cover only a subset of the
land properties associated with the real property. Ordering a DIADEM
report starts the collection of the information associated with a real
property.
The Rapport web service operation RapportBestil is used for ordering a
DIADEM report. The RapportBestil operation will return when the
validity of the order details, including payment, has been verified. The
DIADEM report is not returned by the operation. Instead a DIADEM report
order identifier, which can be used to get the generated report, is
returned.
The user can choose to be notified when the DIADEM report has been
completed by DIADEM. The user can be notified by an e-mail and/or an
SMS text message.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
5 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
When ordering, the user may specify whether the report should be
available to any user in possession of the DIADEM report order identifier
or confidential and only accessible by the user who ordered the report.
If the user is registered as a regular customer and has special privileges in
relation to power of attorney it is possible to specify if collection of private
data must be enforced.
Finally the user has the ability to specify an own reference, that will be
available as part of the DIADEM report. This allows the user to include
information, like an internal case number, that identifies who is
responsible for the report within the user’s own organisation.
3.4 STEP 4: Getting and Determining DIADEM Report Status
As already mentioned, generation of a DIADEM report is not necessary completed when the RapportBestil operation returns.
The DIADEM report is however always available in any intermediate state
where available report options of the report has been generated. Report
options that have not yet been retrieved and generated, are marked with
a status identifying their intermediate state.
A DIADEM report is retrieved using the RapportHent operation which is
part of the Rapport web service. Status information identifies whether the
report is complete or is incomplete. When incomplete, DIADEM is still
getting information from real property information providers.
If the user has selected to be notified at report completion, she will
receive an email and/or SMS.
A user may get a list of report orders complete and incomplete that the user over time has ordered. This is done using the RapportlisteHent
operation.
Note a report not marked as confidential can be retrieved by anyone
(even anonymous) if the DIADEM report order identifier is known. This is
used to share the report with others.
3.5 STEP 5: Rendering a DIADEM Report
The DIADEM report, returned by the RapportHent operation, is an xml
document containing structured information and references to external
documents (pdf files and images).
It is possible to get the external document using BilagHent
The DIADEM report is in itself not displayable or printable for human
reading.
The DIADEM report contains the following information:
Status on the report as a whole and on the individual report options.
Identification of the real property and land properties included
Metadata describing the business properties related to the DIADEM
report, report groups (aka categories) and report options
Core real property information (EjendomsInfo)
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
6 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
All report options as xml
References to external documents
That is enough information to render the general information report
contents. But not enough information to render and document the actual
contents of the report options.
Metadata describing the business and presentation properties for each report field can be gotten using the operations on Metadata web service.
Note the metadata information which is returned as part of the RapportHent operation and the operations on the Metadata web service
contains only limited information in how to actually render the report to an
end user (professional or private citizens).
3.6 STEP 6 Reorder a DIADEM Report
Within a given period from a report was originally ordered it is possible to
reorder the report a predefined number of times. DIADEM will get the
DIADEM report options from the information providers again making the
contents of the reordered report up to date.
The RapportGenbestil operation on the Rapport web service is used for
reordering a DIADEM Report.
Note: Not all report options will be retrieved again in a report when
reordering – some will be copies from the original report.
4 DIADEM Public Web Services
4.1 Readers Guide
Each DIADEM web service is described in a separate section. The following
template is used when describing the operations of the web service.
Name: <Operation name>
Description: Description of the operation purpose.
Input: Description of input parameters.
Output: Description of output parameters.
Error Handling: Description of error handling, typically a reference to the
general error handling section (see section 5.3).
Role Required: Description of the required roles (see section 5.2.3.3).
OWSA Model T
supported
States if the operation supports OWSA Model T (Https).
Prerequisites: Description of pre requisites that must be fulfilled for a
call of the operation to be successful.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
7 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.2 Web Service – EjendomSoeg
The EjendomSoeg web service encapsulates operations that allows for
searching for real property and for getting basis real property information.
Forventet endpoint:
https://diademservices.dk/diadem/EjendomSoegService/EjendomSoegServiceV2.sv
c
https://diademservices.dk/diadem/EjendomSoegAnonymousService/EjendomSoegA
nonymousServiceV2.svc
4.2.1 Operation – EjendomSoegViaAdresseIdentifikation
Name: EjendomSoegViaAdresseIdentifikation
Description: This operation has not been implemented (yet).
Get real property information based on an address
identifier. Every official address in Denmark is assigned
a unique address identifier. This operation returns the
list of real properties associated with the specified
address identifier.
Input: AdgangsadresseIdentifikator (Access address
identifier). Unique identification of the access address for
which real properties are wanted.
Output: EjendomInfoSamling (Real property information
collection). A collection of one or more real properties
that match the search criteria. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
N/A
Prerequisites: 1. Calling system must be a registered system
2. Property must be in a supported municipality.
4.2.2 Operation – EjendomSoegViaAdresse
Name: EjendomSoegViaAdresse
Description: Get real property information based on a structured
address. This operation returns the list of real properties
associated with the specified address identifier.
Input: KommuneIdentifikator (Kommunekode, municipality
identifier) Unique identification of a municipality.
VejKode (Road identifier) Unique identification of a road
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
8 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
in the municipality.
HusIdentifikator (Husnummer, house identifier).
House number. May be left empty thus returning all real
properties for a given road.
EtageIdentifikator (Etage nummer, floor identifier).
Floor number. May be left empty thus returning all real
properties for each house.
SidedoerIdentifikator. Side identifier. May be empty
thus returning all real properties for a given floor.
Output: EjendomInfoSamling (Real property information
collection). A collection of one or more real properties
that match the search criteria’s. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling system must be a registered system
2. Property must be in a supported municipality.
4.2.3 Operation – EjendomSoegViaKoordinat
Name: EjendomSoegViaKoordinat
Description: This operation has not been implemented (yet).
Get real property information based on geographical
location. This operation returns the real property
associated with the specified geographical position.
Input: Koordinat (Coordinate). Uniquely identifies a geo-
graphically coordinate in Denmark.
Output: EjendomInfoSamling (Real property information
collection). A collection of one or more real properties
that match the search criteria. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: N/A
OWSA Model T
supported
N/A
Prerequisites: 1. Calling system must be a registered system
2. Property must be in a supported municipality.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
9 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.2.4 Operation – EjendomSoegViaMatrikelnummer
Name: EjendomSoegViaMatrikelnummer
Description: Get real property information based on land parcel
identification. This operation returns a list containing
zero or one real property associated with the specified
land parcel.
The information needed for querying can be gotten from
the BBR-meddelelse on a given real property.
Input: LandsejerlavKode. Unique identification of the
“Landsejerlav” where the Land Parcel is located.
MatrikelnummerIdentifikator (Land parcel identifier).
Unique identification of a land parcel, within a
“Landsejerlav”.
Output: EjendomInfoSamling (Real property information
collection). A collection of one or more real properties
that match the search criteria. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling system must be a registered system
2. Property must be in a supported municipality.
4.2.5 Operation – EjendomSoegViaEjendomsnummer
Name: EjendomSoegViaEjendomsnummer
Description: Get real property information based on a real property
identifier. This operation returns a list containing zero or
one real property.
The information needed for querying can be retrieved
from the BBR-meddelelse on a given real property.
Input: EjendomIdentifikator (Ejendomsnummer, real
property number). Unique identification of the real
property within a given municipality.
KommuneIdentifikator (Kommunenummer,
municipality number). Unique identification of a
municipality.
Output: EjendomInfoSamling (Real property information
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
10 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
collection). A collection of one or more real properties
that match the search criteria. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Pre Requisites: 1. Calling system must be a registered system
2. Property must be in a supported municipality.
4.2.6 Operation – EjendomSoegViaEjerforhold
Name: EjendomSoegViaEjerforhold
Description: Get real property information based on identification of a
person or a company. This operation returns the list of
real properties owned by the specified person or
company.
Input: Ejerangivelse (Owner identification). Unique
identification person or a company. As a CPR number or
a CVR number.
Output: EjendomInfoSamling (Real property information
collection). A collection of one or more real properties
that match the search criteria’s. See section 6.2.4.2 for
further information on the contents of the real property
information structure.
Error Handling: See section 5.3.
Role Required: ActAsOwner
OWSA Model T
supported
No
Prerequisites: 1. Calling system must be a registered system
2. The user must be identified
3. Property must be in a supported municipality.
4.3 Web Service – Rapportskabelon (Version 2)
The Rapportskabelon web service exposes operation’s that enable client
systems to get metadata describing report template, report group and
report options. The information should be sufficient, to allow a user to
determine what report options to order in a given situation.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
11 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
https://diademservices.dk/diadem/RapportSkabelonService/RapportSkabelonServic
eV3.svc
https://diademservices.dk/diadem/RapportSkabelonAnonymousService/RapportSka
belonAnonymousServiceV3.svc
4.3.1 Operation – RapportskabelonHent
Name: RapportskabelonHent
Description: Get a report template from DIADEM.
Input: RapportSkabelonIdentifikator (Report template iden-
tifier). Unique identification of a report template. Valid
report template identifiers can be obtained through the RapportskabelonListeHent operation.
Output: RapportSkabelon (Report template). A structure
defining a report template. See section 6.1 for
information on the report template information and its
usage.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling system must be a registered system
2. If the identified report template is associated with at customer groups, then the user must be a member of that customer group.
4.3.2 Operation – RapportskabelonlisteHent
Name: RapportskabelonlisteHent
Description: Get a list of summary information on Report Templates
available to the User.
Different users may have different report Templates
available, depending on what Customer Group they are a
member of. If the user is not member of a Customer
group or is anonymous, the list if report Templates will
be those available to everyone.
Input: Empty request.
Output: RapportSkabelonMetadataSamling (Report Template
Summary Collection). A collection of summary
information on all Report Templates available to the
User.
The Summary information are Report Template Name,
Report Template Description, Status and Report
Template Identifier that is used with the
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
12 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
RapportskabelonHent operation to get the actual report
Template.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling System must be a registered system
4.4 Web Service – Rapport
The Rapport web service encapsulates operations that allows for ordering,
querying and getting DIADEM Property Reports.
Forventet endpoint:
https://diademservices.dk/diadem/RapportService/RapportServiceV5.svc
https://diademservices.dk/diadem/RapportAnonymousService/RapportAnonymousS
erviceV5.svc
4.4.1 Operation - RapportBestil
Name: RapportBestil
Description: Order a DIADEM report that contains the information
specified as input. If the user is the owner of the real
property or has a power of attorney for the real property
the DIADEM report will contain both public and private
information. If the user is not the owner and does not
have a power of attorney then the generated report will
contain only public information.
Input: EjendomIdentifikator and KommuneIdentifikator.
Identification of the real property that must be the
object of the DIADEM report.
SamletFastEjendomIdentifikatorSamling [Required]
(Land property identifier collection). When specified the
report will only contain information related to the
specified list of land properties.
EgenReference (Own reference). Structure that allows
the user / customer to add an own reference to the
report order. The own reference is returned as part of
the report.
RapportSkabelonIdentifikator (Report template iden-
tifier). Identification of the report template which must
be the basis for the report. The report template identifier can be retrieved by the Rapportskabelon web service
operations. When no RapportSkabelonIdentifikator is
supplied, the configured default template will be used.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
13 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
RapportvalgmulighedValgSamling [Required]
(Report option collection). Identifies the report options
that must be retrieved from the information providers
and be part of the finished DIADEM report.
AdviseringsAdresse (Notification address). Allows for
specification of an email-address and/or an SMS
number. Please note that the SMS-number must be
qualified by the country calling code. When the report
has been completed a notification will be sent to the
specified addresses.
FuldmagtIndhentetIndikator (Has power of attorney
indicator). Allows users who are taking part in the
“Fuldmagtsordningen” to get private information on a
property.
RapportFortroligIndikator (Confidential Indicator).
Indicates if the report must be confidential or available
to the public. Cannot be set when user is anonymous.
BetalingsInformation (Payment information). This is
only specified if the calling system is the DIADEM portal.
BetalingsInformation contains information about: order
identification, DIBS identification, and the amount paid
in DKK.
Output: RapportBestillingIdentifikator (Report identifier).
Unique identification of the DIADEM report. This identifier is used with the RapportHent and
RapportGenbestil operations.
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: 1. Calling system must be a registered system
2. The specified real property must exist
3. If User is anonymous RapportFortroligIndikator must be false.
4. When specified, the land properties must be part of the real property.
5. The specified report template must exist.
6. The specified collection of report options must exist.
7. The specified collection of report options must all be active.
8. When FuldmagtIndhentetIndikator has been set to true
the user must participate in the “Fuldmagtsordningen”.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
14 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
9. Property must be in a supported municipality.
4.4.2 Operation - RapportHent
Name: RapportHent
Description: Get a previously ordered DIADEM report. If the
generation of the report has not been able to collect real
property information from all information providers the
report is incomplete.
For how reports and report elements are versioned see 0
Input: RapportBestillingIdentifikator (Report identifier).
Identification of the report that must be retrieved. The
identifier returned by the operations Rapport.RapportBestil and Rapport.RapportGenbe-
stil.
Output: Rapport (Report). The DIADEM report, identified by the
RapportIdentifikator specified as input. Please see
section 6 for in depth information on the format and
contents of the DIADEM report. Note that the DIADEM
report may become very large (megabytes).
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling system must be a registered system
2. RapportIdentifikator must identify an existing DIADEM report
3. If DIADEM report is registered as confidential then
the following must be fulfilled
a. The user must be identified
b. User.Person must have ordered the DIADEM report or the User.Employee must work for the company that ordered the report.
4.4.3 Operation – RapportlisteHent
Name: RapportlisteHent
Description: Get a list of DIADEM reports the user has ordered within
a given period. When user is an employee
(User.Employee) the operation returns all the reports the
company has ordered.
Report orders made by an anonymous user cannot be
listed by this operation.
Deactivated reports are not included in the list.
Input: StartDato (From date). Define the earliest date from
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
15 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
which reports are returned.
SlutDato (To date). Define the latest date from which
reports are returned.
Output: RapportMetadataSamling (Report summary
information collection) A collection of DIADEM report
summary information, which contains summary informa-
tion about all DIADEM report ordered by the user with in
the specified period. The following information is
included:
Date of ordering the report
Report identifier (to be used with RapportHent)
Own reference, the own reference assigned by the
user when ordering.
Report generation status, see section 6.2.
Real property information, see section 6.2.4.2.
Grace period end date
Number of reorders left
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
No
Prerequisites: Calling system must be a registered system.
If report could contain private data the user must be
identified.
StartDato must be equal to or before SlutDato.
4.4.4 Operation – RapportlisteHentViaEjendomsnummer
Name: RapportlisteHentViaEjendomsnummer
Description: Get a list of DIADEM reports the user has ordered on the
given property. When user is an employee
(User.Employee) the operation returns all the reports the
company has ordered.
Report orders made by an anonymous user cannot be
listed by this operation.
Input: EjendomIdentifikator (Ejendomsnummer, real
property number). Unique identification of the real
property within a given municipality.
KommuneIdentifikator (Kommunenummer,
municipality number). Unique identification of a
municipality.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
16 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Output: RapportMetadataSamling (Report summary
information collection) A collection of DIADEM report
summary information, which contains summary informa-
tion about all DIADEM report ordered by the user with in
the specified period. The following information is
included:
Date of ordering the report
Report identifier (to be used with RapportHent)
Own reference, the own reference assigned by the
user when ordering.
Report generation status, see section 6.2.
Real property information, see section 6.2.4.2.
Grace period end date
Number of reorders left
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
No
Prerequisites: 1. Calling system must be a registered system.
2. The user must be identified.
3. StartDato must be equal to or before SlutDato.
4.4.5 Operation – RapportOpdaterFortrolighed
Name: RapportOpdaterFortrolighed
Description: Set the confidentiality on a DIADEM report previously
ordered by the user. The confidentiality controls if the
report can be retrieved by everyone who knows the
report identifier or if only by the user who ordered the
report.
Input: RapportBestillingIdentifikator (Report identifier)
Identifies the DIADEM report which must be changed.
RapportFortroligIndikator (Confidential indicator)
Identifies if the report is confidential or not.
Output: Empty response.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
No
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
17 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Prerequisites: 1. Calling system must be a registered system.
2. The user must be identified.
3. The user must have ordered the specified report.
4. The report must have been completed. Calling the
operation for an incomplete report will result in an exception.
4.4.6 Operation – RapportGenbestil
Name: RapportGenbestil
Description: Reorder a previously ordered DIADEM report. This can
be done by a user a predefined number of times within a
grace period relative to the original report.
The content of a reordered DIADEM report is limited
compared to the original report. In general report
options which maps to information providers doing
manual work and report options with special payments
are not included. Metadata for the individual report options returned by the RapportskabelonHent operation
defines if the report option is retrieved again when
reordering.
Input: RapportBestillingIdentifikator (Report identifier),
Identifies the DIADEM report this report order is based
on.
FuldmagtIndhentetIndikator (Has power of attorney
indicator). Allows users who are taking part in the
“Fuldmagtsordningen” to get private information on a
property.
Output: RapportBestillingIdentifikator (Report identifier).
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
elements and report fields.
Forventet endpoint:
https://diademservices.dk/diadem/MetadataService/MetadataServiceV2.svc
https://diademservices.dk/diadem/MetadataService/MetadataAnonymousServiceV2
.svc
4.5.1 General – Metadata filters
When getting metadata filters can be applied allowing a client application
to request exactly the needed information. It is possible to filter in two
dimensions based on content type (Indholdsfilter) and detail level (DetaljeringsFilter). The filters can be specified with all the Metadata web
service operations.
Content filtering must be specified as one of:
Forretning (Business), returns only metadata marked as business
metadata
Praesentation (Presentation), returns only metadata marked as
presentation metadata
Alle (all), returns all metadata i.e. both business and presentation
metadata.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
20 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Detail Level Filtering must be specified as one of:
1, returns metadata marked as level 1
2, returns metadata marked as level 2
3, returns metadata marked as level 1 or 2
4, returns metadata marked as level 4
5, returns metadata marked as level 1 or 4
6, returns metadata marked as level 2 or 4
7, returns metadata marked as level 1 or 2 or 4
Note the two first columns of the tables in sections 6.3.3.1 and 6.3.3.2
define contents type and detail level for each individual metadata
information.
4.5.2 Operation - MetadataHentViaRapport
Name: MetadataHentViaRapport
Description: Retrieves all the report element and report field
metadata that is relevant to a given DIADEM report. The
operation returns metadata for all metadata keys which
are registered on a given DIADEM report.
Input: RapportBestillingIdentifikator. (Report identifier) The
report identifier for a previously ordered DIADEM report.
MetadataIndholdfilter (Content filter) defines which
metadata content to return. See section 4.5.1 for further
information.
MetadataDetaljeringsfilter (Detail level filter) defines
which metadata content levels to return. See section
4.5.1 for further information.
Output: MetadataListe (Metadata collection) contains a
collection of metadata information that as a minimum
corresponds to the metadata keys, which are used in the
specified report.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 1. Calling system must be a registered system
2. The specified input report identifier must identify an existing DIADEM report
3. The specified DIADEM report must be non-confiden-
tial OR the user must have ordered the report.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
21 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4. The content and detail level filters contain valid data
4.5.3 Operation - MetadataHentViaRapportBestillingsDato
Name: MetadataHentViaRapportBestillingsDato
Description: Retrieves all the report element and report field
metadata that is relevant to a given DIADEM report. The
operation returns the metadata valid at the ordering
time of the report.
Input: RapportBestillingIdentifikator. (Report identifier) The
report identifier for a previously ordered DIADEM report.
MetadataIndholdfilter (Content filter) defines which
metadata content to return. See section 4.5.1 for further
information.
MetadataDetaljeringsfilter (Detail level filter) defines
which metadata content levels to return. See section
4.5.1 for further information.
Output: MetadataListe (Metadata collection) contains a
collection of metadata information that as a minimum
corresponds to the metadata keys, which are used in the
specified report.
Error Handling: See section 5.3.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Prerequisites: 5. Calling system must be a registered system
6. The specified input report identifier must identify an existing DIADEM report
7. The specified DIADEM report must be non-confiden-
tial OR the user must have ordered the report.
8. The content and detail level filters contain valid data
4.5.4 Operation - MetadataHentViaRapportelement
Name: MetadataHentViaRapportelement
Description: Retrieves all the report element and report field
metadata associated with one report element.
Input: MetaIdentifikator (Metadata identifier) Metadata key
from a report element in a DIADEM report.
MetadataIndholdfilter, (Metadata content filter) states
which type of metadata that is to be returned. Options
are:”Alle” (All), ”Forretning” (Business), ”Præsentation”
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
22 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
(Presentation).
Output: MetadataListe (Metadata collection) contains a
collection of metadata information that corresponds to
the metadata keys which are used in the specified report
element.
Role Required: ActAsEmployee
OWSA Model T
supported
Yes
Error Handling: See section 5.3.
Prerequisites: 1. The content filter must contain one of the defined
report options.
2. There is metadata associated to the specified
metadata key.
4.6 Web Service Datamodtag
Forventet endpoint:
https://diademservices.dk/diadem/DataModtagService/DataModtagService.svc
4.6.1 Operation - ForespoergselHent
Name: ForespoergselHent
Description: Gets the given request for a report element.
Input: ForespoergselsIdentifikator (Request identifier).
Identifier of the request to be retrieved.
Output: A reply containing the following data:
ForespoergselsIdentifikator (Request identifier) The
id of the request.
KommuneIdentifkator (Kommunekode, Municipality
identifier) Unique identification of a municipality.
EjendomIdentifikator (Real property identifier) Unique
identification of the property.
LandsejerlavKode Unique identification of the
“Landsejerlav” where the land parcel is located.
MatrikelNummerIdentifikator (Land parcel identifier).
Unique identification of a land parcel, within a
“Landsejerlav”.
RekvireringsDato (Date of requisition) The date the
request was issued.
RapportBestillingIdentifikator. Report identifier for a
previously ordered DIADEM report.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
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.
4.6.2 Operation - ForespoergselListeHentUbesvarede
Name: ForespoergselListeHentUbesvarede
Description: Gets all the requests that have not yet been processed.
This means the semi-automatic report elements that are
awaiting being processed.
Input: KommuneIdentifkator (Kommunekode, Municipality
identifier) Unique identification of a municipality.
Output: A collection of the requests, for the specified
municipality, that have not yet been processed.
A request contains:
ForespoergselsIdentifikator (Request identifier) The
id of the request.
KommuneIdentifkator (Kommunekode, municipality
identifier) Unique identification of a municipality.
EjendomIdentifikator (Real property identifier)
LandsejerlavKode Unique identification of the
“Landsejerlav” where the land parcel is located.
MatrikelNummerIdentifikator (Land parcel identifier).
Unique identification of a land parcel, within a
“Landsejerlav”.
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
Copenhagen.
2. The status of the request must be incomplete.
4.7 Web Service RapportAfregningService
Forventet endpoint:
https://diademservices.dk/diadem/RapportAfregningService/RapportAfregningServi
ceV2.svc
https://diademservices.dk/diadem/RapportAfregningAnonymousService/RapportAfr
egningAnonymousServiceV2.svc
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
25 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.7.1 Operation - KontantBetalingerHent
Name: KontantBetalingerHent
Description: Gets the DIBS transactions for a given period of time
defined by the input parameters (date/time).
Input: StartDato (From date). Define the earliest date from
which Reports are returned.
SlutDato (To date). Define the latest date from which
Reports are returned.
Output: Collection of DIBS information that are in the interval
from StartDato to SlutDato.
DIBS information consists for the following:
OrdreIdentifikator (the identifier of the order)
DIBSIdentifikator (The DIBS identifier)
BetaltDkkBeloeb (The amount paid in DKK)
Role Required: Can only be called via OWSA Model T
OWSA Model T
supported
Yes
Error Handling: See section 5.3.
Prerequisites: 1. The calling system must be the Hercules system.
Hercules is authenticated by using OWSA model T.
2. StartDato date/time must be before SlutDato
date/time.
4.7.2 Operation - BeregnPris
Name: BeregnPris
Description: Calculates the accumulated price for a DIADEM report.
Input: PriszoneId, [Required] (Price zone id) The price
zones that are to be in a report order.
Kundenummer,(Customer number) Unique identification of the customer that makes the order.
Output: SamletBeloeb, (Accumulated price) The accumulated price of the report.
BetalingsFormKode, (Payment form) What sort of payment is used. Cash or invoicing.
BetalingsPeriodeKode, (Payment period) States when invoicing will take place.
PrisDetaljer, (Price details) The details that documents the accumulated price contains the
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
26 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
following information for every product:
ProduktNavn, (Product name) The name of the product.
ProduktTekst, (Product description.) Description of
the product.
AftaleTypeKode, (Type of agreement) States if the product is free or to be paid for.
ProduktBeloeb, (Product price) States the price of the product.
PriszoneIdentikator, (Price zone) The collection of pricezones attached to the Product.
Role Required: No role required.
OWSA Model T
supported
Yes
Error Handling: See section 5.3.
Prerequisites: 1. The caller must be either the DIADEM portal or a DIADEM web service.
2. All Price zone ids must be valid. (i.e. defined in the CustomerProduct system)
3. The customer number must be a registered customer.
4. The customer identified by customer number must
have Kundestatus = Aktiv (Active).
4.7.3 Operation - BetalingsIdHent
Name: BeregnPris
Description: Generates a unique payment identifier.
Input: None
Output: BetalingsIdentifikator, (Payment identifier) a unique payment identifier, as a alphanumeric sting of maximum length 6.
Role Required: Can only be called via OWSA Model T
OWSA Model T
supported
Yes
Error Handling: See section 5.3.
Prerequisites: 1. The caller must be the DIADEM.
4.8 Web Service – FuldmagtService
Forventet endpoint:
https://diademservices.dk/diadem/FuldmagtService/FuldmagtService.svc
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
27 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.8.1 Operation - FuldmagtAfgivetListeHent
Name: FuldmagtAfgivetListeHent
Description: Gets a list of all power of attorney registrations issued
by given user/organization
Input: None
Output: A collection of:
FuldmagtIdentifikator, (Power of attorney identifier) unique identification of a Power of attorney in DIADEM.
Fuldmagttager, (Power of attorney receiver) The CPR or CVR number that receives the power of
attorney.
Fuldmagtgiver (Power of Attorney issuer) The CPR or CVR number that issues the power of attorney.
Registreret Af (Registered by) The CPR or CVR number that registers the power of attorney.
Ejendoms identifikator (Property number) Real property number). Unique identification of the real property with a given municipality.
Kommune identifikator (Municipality number) Municipality identifier) Unique identification of a
municipality.
Tidspunktgivet, (Date/time granted) The
date/time for the registration of the power of attorney. Information available in the Bitemporal.TransactionFraDatoTid property.
Tidspunktophør, (Date/time ceased)The date/time for when the power of attorney ceases
to be valid.
Status (Power of attorney status) For the power of attorney the status is either: ”Aktiv” (Active) or ”Annulleret” (Cancelled).
Role Required: No role required.
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. User must be authenticated, which means no anonymous calls are valid.
4.8.2 Operation - FuldmagtOpret
Name: FuldmagtOpret
Description: Creates the power of attorney registration. The user is
either a private person or an employee and is thereby
linked to a CPR or CVR number.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
28 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Input: FuldmagtIdentifikator, (Power of attorney identifier)
UdstedtTil, (Issued to)
UdstedtAf, (Issued by)
RegistreretAf, (Registered by)
KommuneIdentifikator (Municipality identifier) Unique identification of a municipality.
EjendomIdentifikator (Real property number). Unique identification of the real property with a given municipality.
Tidspunktgivet, (Date/time granted) The
date/time for the registration of the power of
attorney. This value is to be left as null, as the DIADEM system sets the timestamp.
FuldmagtStatusKode, (Power of attorney status)
FuldmagtGyldigTilDato,(Power of attorney valid until date)
Output: FuldmagtIdentifikator, (Power of attorney identifier)
UdstedtTil, (Issued to)
UdstedtAf, (Issued by)
RegistreretAf, (Registered by)
KommuneIdentifikator (Kommunekode,
municipality identifier) Unique identification of a
municipality.
EjendomIdentifikator (Ejendomsnummer, real property number). Unique identification of the real property with a given municipality.
FuldmagtStatusKode, (Power of attorney status)
FuldmagtGyldigTilDato,(Power of attorney valid
until date)
Role Required: No role required.
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The user must be authenticated (the operation cannot be used by anonymous users)
2. The user (Issuer of power of attorney) as a private person or as an employee in a firm
3. The user must own the object issuing a power of attorney to.
4. The valid time of the power of attorney to must be after the issuing time.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
29 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
4.8.3 Operation - FuldmagtTildeltListeHent
Name: FuldmagtTildeltListeHent
Description: Gets a list of all power of attorney registrations issued to
given user/organization.
Input: 1. Empty request.
Output: A collection of:
FuldmagtId, (Power of attorney identifier) unique identification of a Power of attorney in DIADEM.
Fuldmagtsudsteder, (Power of attorney) The CPR or CVR number that issues the power of attorney.
Kommune identifikator (Municipality number)
Municipality identifier) Unique identification of a municipality
Ejendoms identifikator (Property number) Real property number). Unique identification of the real property with a given municipality.
Status (Power of attorney status) For the power of attorney the status is either:”Aktiv” (Active) or ”Annulleret” (Cancelled).
Tidspunktgivet, (Date/time granted) The date/time for the registration of the power of attorney.
Tidspunktophør, (Date/time ceased)The date/time
for when the power of attorney ceases to be valid.
Role Required: No role required.
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The user must be authenticated (the operation cannot be used by anonymous users)
4.8.4 Operation - FuldmagtAnnuller
Name: FuldmagtAnnuller
Description: Cancels the power of attorney registration.
Input: FuldmagtId, (Power of attorney identifier).
Output: Empty response.
Role Required: No role required.
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The user must be authenticated (the operation cannot be used by anonymous users)
2. The user must be the issuer of the given power of
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
30 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
attorney.
4.9 Web Service – KundeService
Forventet endpoint:
https://diademservices.dk/diadem/KundeService/KundeServiceV2.svc
4.9.1 Operation - KundeHent
Name: KundeHent
Description: Gets existing customer by customer id, CPR or
CVR number
Input: One of the following identifiers:
KundeIdentifikator (Customer Identifier),
identifies the customer via the unique customer identifier.
CPRNummerIdentifikator (CPR number identifier), identifies the customer via CPR number.
CVRNummerIdentifikator (CVR number identifier), identifies the customer via CVR number.
Output: KundeStamoplysninger (Basic customer data), the basic data about a customer.
AdviseringsAdresse (Notification address), where to send notifications, e-mail and/or address.
KundeIdentifikator (Customer identifier), Uniquely identifies the customer.
KundeStatusKode (Customer status), The customer status, which is either:“Aktiv” (Active) or “Inaktiv” (Inactive).
KundeKanRegistrereFuldmagterIndikator (Customer may register power of attorneys)
Role Required: ActAsEmployee
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The customer must exist in the system.
4.9.2 Operation - FastKundeHent
Name: FastKundeHent
Description: Gets a regular customer.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
31 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Input: Kundeangivelse (Customer identifier), one of the following:
- KundeIdentifikator (Customer Identifier), identifies the customer via the unique customer
identifier.
- CPRNummerIdentifikator (CPR number identifier), identifies the customer via CPR number.
- CVRNummerIdentifikator (CVR number identifier), identifies the customer via CVR number.
Output: KundeStamoplysninger (Basic customer data), the basic data about a customer e.g. name, address
etc.
AdviseringsAdresse (Notification address), where to send notifications, e-mail and/or address.
KundeIdentifikator, (Customer identifier)
FaktureringsAdresse, (Billing Address)
KundeAftaler, (Customer agreements)
KundeGruppeIdentifikator, (Customer Group identifier)
KundeKanRegistrereFuldmagterIndikator (Customer may register power of attorneys)
Role Required: ActAsEmployee
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. The regular customer already exists in DIADEM.
4.10 Web Service – Statistik
4.10.1 Operation - StatistikDataHent
Forventet endpoint:
https://diademservices.dk/diadem/StatistikService/StatistikService.svc
Name: StatistikDataHent
Description: Gets statistics data from a given period in time related
to the user and the users report order.
Input: StartDato (From date). Define the earliest date from which statistics are returned.
SlutDato (To date). Define the latest date from
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
32 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
which statistics are returned.
Output: A collection of StatistikDataHent
RapportbestillingID, (Report order identifier)
Uniquely identifies the report order.
GenbestillingAf, (Is a reorder of) If the field is not null this is a reference to which report it is a reorder of.
EgenReference, (End user reference text)
EjendomsIdentifikation, (Property identifier)
Tidspunkt, (Point in time) The point in time of the
report order call.
Pris, (Price) The price of the report.
FaktureringsID, (Invoicing Id) available when an invoice has been made
FaktureDato, (Date of invoicing) available when an invoice has been made
Role Required: No role required
OWSA Model T
supported
No
Error Handling: See section 5.3.
Prerequisites: 1. StartDato must be equal to or before SlutDato.
2. The User must be identified.
5 DIADEM Web Service Semantics
Business-2-Business integration with DIADEM is available through soap
standards based web service. General information related to integrating
with the DIEDEM web services are described in this chapter.
5.1 Message Format
DIADEM exposes soap version 1.1 web services. The services are WS-I
basic Profile compliant. The Liberty Basic SOAP Binding v1.0 is used for
the OIO IDWS based web services.
5.2 Web Service Security
DIADEM web service uses two different security models – the difference
between the two is that one requires that the user is identified and the
other requires that the user is anonymous.
Whether a web service (operation) supports one or the other or both is
defined as part of the definition of the web services and operation in
chapter 4
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
33 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
5.2.1 OWSA model T – Anonymous Users
A select subset of DIEDEM web services may be called by anonymous
users. For these versions of the web service the OWSA model T is used.
The implications of using OWSA model T are web service that support:
WS-I’s Basic Profile 1.1 and simple SOAP Binding Profile 1.0.
HTTPS is used for transport security – allowing for server and client
authentication and transport layer encryption.
OCES certificates are used as identification of the client application –
that is the B2B application must use an OCES function certificate for
https based client authentication.
OCES certificates are used as identification of the server application –
that is DIADEM uses a OCES function certificate for https based server
authentication.
OIOXML is used. This requirement has, by design, not been fully
implemented.
Note The OCES function certificates used by the client applications for
identification must be registered at DIADEM to enable access. If Client
certificates, is not registered in DIADEM, access will not be possible.
5.2.2 OIO IDWS – Authenticated Users
DIADEM web services can be called by authenticated users. For these
versions of the web services the OIO IDWS profile is used.
For information on OIO IDWS please refer to digitaliser.dk,
http://digitaliser.dk/resource/526486.
Security Token Service
DIADEMClient
Identity provider(NemId)
1 3
<Tru
sts>
5
2
4
Figure 3 Obtaining identity, issuing a token and calling DIADEM
2. The client obtains the certificate of the user (POCES or MOCES) from
an identity provider.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
34 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
3. The client calls the STS. The request must be signed using the client’s
certificate
The client must specify the serial number of the certificate of the
user as an SAML attribute
4. The STS then issues a token
5. The client calls DIADEM using the issued token
6. DIADEM returns a reply.
5.2.3 Issuing a token
The request for issuing a security token must have the following SAML
attributes specified as part of the subject:
Serial number of the caller’s certificate. The certificate must either be a
POCES or a MOCES certificate or the like. If it is not a MOCES
certificate, the serial number of the used certificate must identify the
company and the user.
The roles the caller would like to act as.
5.2.3.1 Serial number
The SAML attribute for the certificate serial number is:
urn:oasis:names:tc:SAML:2.0:assertion/urn:oid:2.5.4.5
5.2.3.2 CPR or CVR number
The SAML attribute for the CPR number identifier is:
urn:oasis:names:tc:SAML:2.0:assertion/dk:gov:saml:attribute:Cp
rNumberIdentifier
The SAML attribute for the CVR number identifier is:
urn:oasis:names:tc:SAML:2.0:assertion/dk:gov:saml:attribute:Cv
rNumberIdentifier
The client must only specify one of the attributes.
5.2.3.3 Roles
DIADEM operates with a small set of roles that defines which web service
operations the individual users may call.
The SAML attribute for a role is:
urn:oasis:names:tc:SAML:2.0:assertion/dk:diadem:attribute:Role
Legal values for DIADEM roles are:
Role Purpose
ActAsEmployee
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.
RapportSkabelonIndholdSamling (Report Template content collection)
Collection of the report template top level content.
RapportSkabelonIndhold (Report Template content)
Report template contents, is either a report group or a report option.
PositionIdentifikator (Content position)
Defines the position of the report group or report option within the report template.
RapportSkabelonGruppe
(Report Template Group)
Defines a report group at the top level. See
section 6.1.1 for the definition of a Report Group.
Rapportvalgmulighed (Report Option)
Defines a report option at the top level. See section 6.1.2 for the definition of a report option.
6.1.1 Report Template Group
The report group structure contains the definition of a report group this
includes name, description and a definition of the contained report
options.
Field Name Description
Navn (Report Group Name)
Metadata defining the name associated with the report group.
BeskrivelseTekst
(Report Group description)
Metadata describing the report group.
And additional metadata See section 6.3.2.2 for all metadata that is
part of the report group. RapportSkabelonGrupperIndholdSamling (Report Group content collection)
Collection containing the contents of the report group.
RapportSkabelonGruppeIndhold (Report Group Content)
One instance of report group contents.
PositionIdentifikator (Report Option position)
Defines the position of the report option within the report group.
Rapportvalgmulighed (Report Option)
Defines a report option within a report group. See section 6.1.2 for the definition of a report option.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
41 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
6.1.2 Report Option
The report option structure contains the definition or a report option.
Field Name Description
RapportvalgmulighedIdentifikator (Report Option Identifier)
Unique identification of the report option.
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.
Datakilde (Information provider)
Information about an information provider.
DatakildeIdentifikator (Information provider identifier)
Unique identificator of the information provider
Navn (Information provider name)
Information provider name
BeskrivelseTekst (Information provider description)
Information provider description
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.
RapportvalgmulighedValg (Report option choice)
A single report option.
RapportvalgmulighedIdentifikator (Report option identifier)
Identifies the report option.
AdviseringsAdresse (Notify addresses)
Contains a specification of the phone number that receives a notification SMS, and the email address that
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
44 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Field Name Description
receives a notification message when the report has been completed.
FuldmagtIndhentetIdentikator (Use power of attorney indicator)
Identifies if a power of attorney has been given and used.
RapportFortroligIndikator (Report Confidential Indicator)
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.
Field Name Description
RapportvalgmulighedIdentifikator (Report option identifier)
Identifies the report option to summary is about.
RapportResumeTekst
(Report summary text)
Describes a single status about the summary
of the report option. RapportResumeIndhold (Report summary content)
Describes multiple statutes about the summary of the report option
6.3 Using Metadata
Metadata are returned by DIADEM in two different ways depending on
what report content they describe.
Metadata describing the report template, report groups (also known as
categories) and report options are returned as part of the RapportskabelonHent and as part of RapportHent operations (the latter
only if the report was ordered using a template). They define the overall
purpose and structure of a DIADEM report. See section 6.3.2 for an in-
depth description of the metadata supplied on these levels.
COMMERCIAL IN CONFIDENCE
COMMERCIAL IN CONFIDENCE
46 of 54 SSE/10712/IFS/001$Revision: 1.65$ $Date: 20 Aug 2013$
Metadata describing report elements and report fields can be gotten using the operations exposed by the Metadata web service. The metadata
defines low level information down to the individual report fields in a
DIADEM report. See section 6.3.3 for an in-depth description of the
metadata supplied on these levels.
6.3.1 Rendering a DIADEM Report
The generic rendering of a diadem report described in terms of metadata
and report content, is as described below.
Get the desired report using:
Rapport.RapportHent(ReportID) -> Report object
Get the Element and Field metadata associated with the report:
Metadata.MetadataHentViaRapport(ReportID) -> Metadata object
The rendering steps are as follows.
Content Description
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
is Forfalden gæld V1.
COMMERCIAL IN CONFIDENCE
www.systematic.com
COMMERCIAL IN CONFIDENCE
Denmark
Systematic A/S
Søren Frichs Vej 39
8000 Aarhus C, DK
Tel.: +45 8943 2000
Landgreven 3, 2.sal
1301 Copenhagen K, DK
United Kingdom
Systematic Software Engineering Ltd
The Coliseum, Riverside Way
Camberley, Surrey, GU15 3YL, UK
Tel.: +44 1 276 675 533
United States of America
Systematic Software Engineering Inc
5875 Trinity Parkway, Suite 130
Centreville, Virginia 20120-1971, USA
Tel.: +1 703 385 7522
Finland
Systematic Oy Finland
Finlaysoninkuja 19
33210 Tampere, FI
Tel.: +358 207 463 870
Australia
Systematic Australia
Tower A, Level 5, 7 London Circuit
Canberra ACT 2601, AU
Tel.: +61 (0)2 6169 4088
Sweden
Systematic Sweden AB
Ostermalmstorg 1, 4th Floor
Stockholm 114 42, SE
Tel.: +46 770 770109
Germany
Systematic Gmbh
Im Zollhafen 24
50678 Köln, DE
Tel.: +49 221 650 783 71