Showing posts with label webservice. Show all posts
Showing posts with label webservice. Show all posts

Friday, March 13, 2009

Another WS-Star candidate for Event Driven Architecture - WS-Eventing

pencil icon, that"s clickable to start editing the post

In my last post I had a look at Web Services Notification (WSN). In this post I'll see what Web Services Eventing (WS-Eventing) has to offer. Where WSN is a formal OASIS Standard Web Services Eventing is currently only a Member Submission to W3C back in March 2006. The list of vendors behind the specification are most of the big players like for WSN with the big difference that Microsoft is participating.

The specification tries to meet the following requirements:

  • Define means to create and delete event subscriptions.
  • Define expiration for subscriptions and allow them to be renewed.
  • Define how one Web service can subscribe on behalf of another.
  • Define how an event source delegates subscription management to another Web service.
  • Allow subscribers to specify how event messages should be delivered.
  • Leverage other Web service specifications for secure, reliable, transacted message delivery.
  • Support complex eventing topologies that allow the originating event source and the final event sink to be decoupled.
  • Provide extensibility for more sophisticated and/or currently unanticipated subscription scenarios.
  • Support a variety of encoding formats, including (but not limited to) both SOAP 1.1 [SOAP 1.1] and SOAP 1.2 [SOAP 1.2] Envelopes.

I haven't done a formal comparison but there seems to be quite a overlap between Web Services Notification and Web Services Eventing.

An attempt for convergense

It isn't the first time that we see two competing standards in the WS-Star stack, not that it makes it any better. I found that at the same time that the specification was submitted to W3C, the four companies Intel, Microsoft, IBM and HP put out a a letter of intent with the title "Toward Converging Web Service Standards for Resources, Events, and Management":

HP, IBM, Intel and Microsoft plan to develop a common set of specifications for resources, events, and management that can be broadly supported across multiple platforms. The parties will do this by building on existing specifications and defining a set of enhancements that enable this convergence. In many scenarios, vendors and customers building solutions using Web services will find that the existing specifications support their scenarios. Vendors and customers may use the new specifications and functions when needing the common capabilities.

The full text [PDF] can be found on intels website or in googles cache from Microsofts website. To my knowledge this never materialized, but maybe this is what turned up as a new working group at W3C.

Web Services Resource Access (WS-RA)

Just as I had concluded that WS-Eventing had stranded at W3C I found that W3C in november 2008 launched the Web Services Resource Access Working Group, and from the charter the scope is:

The Web Services Resource Access Working Group is chartered to standardize a general mechanism for accessing and updating the XML representation of a resource-oriented Web Service and metadata of a Web Service, as well as a mechanism to subscribe to events from a Web Service. The following list of features is intended to focus the work of the Working Group and ensure its timely completion:

  1. The definition of basic Create, Read, Update, Delete (CRUD) operations that provide capabilities to create, read, update and delete a Web Services XML representation and the binding of these operations to SOAP.
  2. A mechanism to allow a requester to retrieve metadata, or references to metadata, related to a Web Service and a mechanism to allow embedding of such metadata, or references to such metadata, in an Endpoint Reference (EPR). The defined capability must provide for retrieval and embedding of specific items of metadata such as WSDL, XML Schema and WS-Policy. The referencing of metadata must allow for both EPR or URL style references.
  3. The definition of Web service operations (e.g. Enumerate, Pull, etc…) to enable a consumer to request and manage an enumeration context, and retrieve data items from an enumeration context for a data source. These operations must define details of SOAP messages for the request and response as well as one or more filter dialects to select the data that would be sent to the consumer. The ability to work efficiently with large datasets is important.
  4. The definition of Web Services operations (e.g. Subscribe, Unsubscribe, etc…) to create and manage subscriptions to events that are delivered via Web Services.
    1. The definition of one or more filter dialects, such as XPath, that can be used in subscriptions to indicate interest in messages with specific content.
    2. Mechanisms to allow a subscriber to specify the means by which an event is delivered and the definition of a push-based delivery mode.
  5. A mechanism by which a Web Service can advertise, through its metadata, such as WSDL and WS-Policy, the capabilities it supports from among the features defined by the Web Service Resource Access specifications.

The thing that jumps into my eyes is how RESTfull this sounds!

This high speed WG i supposed to deliver the recommendations in little more than a year (June 2010), which in quite fast in terms of standarization speed. The work will build on the following submission:

  • Web Services Transfer (WS-Transfer)
  • Web Services Resource Transfer (WS-RT)
  • Web Services Enumeration (WS-Enumeration)
  • Web Services Metadata Exchange 1.1 (WS-MetadataExchange)
  • Web Services Eventing (WS-Eventing)

The current editors draft of WS-Eventing is available online as promised. Judging from the issues related to WS-Eventing convergence doesn't seem to be on the agenda.

Interesting enough IBM has part in both specifications and their standpoint can be read in a mail from Steve Holbrook to the W3C maillist to show their support for WS-RA, "Re: Standardization of WS-Eventing":

IBM remains committed to use of the OASIS Standard WS-Notification 1.3 as the interoperability standard for enabling a broad range of applications that include publish/subscribe and event notification in the context of business and complex event processing scenarios. However, we are supportive of the W3C standardization of WS-Eventing because we appreciate that some in the Web Services community are using it in certain domains such as device management and we are interested in ensuring that such a standard compose effectively with other Web services specifications including WS-Notification.

Conclusion

I'm not in a position to really conclude anything except from the obvious that I would have preferred to have one widely supported specification instead of two lightly adopted ones. Ih this I agree with Gartners conclusion from back in 2006, "WS-Notification Standard Ratified by OASIS Still Needs Work";

The delay in reconciling WS-Notification and WS-Eventing shows that the Web services standardization process has lost momentum. Standards have remained static for the past year, permitting only primitive interoperability.

Read more

Sunday, March 1, 2009

A Demo WSDL for part of OIOUBL Simpel Ordering

pencil icon, that"s clickable to start editing the post

I want to get back on track with my WCF certification and the best thing to do seems to be rolling a service myself. I've had this post in draft for almost two years now so it's about time i finalize it! To save myself from yet another uninspiring hello world example I've decided to base it on a simple document flow that's part of a basic OIOUBL process " OIOUBL BASPRO - Basic procurement Cycle [PDF]. This will not only give my webservice a touch of the real world but I'll also update my knowledge of OIOUBL slightly.

Here's a couple of diagrams:

There's a complete package to download from oioubl.info and this one is called Basic procurement Cycle (Ref. S03) [BASPRO.zip].

I'll develop this WSDL based on the Contract First principle - that's based on the schemas (and not generate it from code), but where do I find the XML Schemas for OIOUBL? The answer is on the introduction page to OIOUBL in the section "The relationship between OIOUBL and UBL 2.0" (my strong):

As mentioned above, OIOUBL is a subset of UBL 2.0. This means that UBL 2.0 contains a number of business documents in addition to the ones in OIOUBL. For example international transportation documents. These additional business documents are fully compatible with and may be used with the OIOUBL documents. However, no Danish language instructions or guidelines are provided for these documents.

The OIOUBL specifications are based directly upon the UBL 2.0 XML schemas. No additional XML schemas have been developed or are required for OIOUBL.

It should be noted that, for business reasons, a few elements from the UBL 2.0 schemas have been excluded in the OIOUBL customization. These elements have been judged as not applicable in Denmark, either because of specific Danish legislation, or because they are of not relevant in a Danish context. These omitted elements will not be present in the OIOUBL specifications, and if these fields were to be used they will not pass the document validator published by the National IT and Telecom Agency.

So contrary to the first Danish adoption to UBL, here no special schemas so I can use the one from the OASIS website UBL-Order-2.0.xsd. The rest is just boilerplate WSDL.

I've uploaded the WSDL SX_OIOUBLorderDemo.wsdl to digitaliser.dk (the successor of the InfoStructureBase). It's still open to anyone, and the biggest change I've found is that once you've made anything public it can't be edited! Not the file (artifact) nor the resource (metadata), the only way is a new version of the resource.

Read more

Monday, January 28, 2008

SOAP and the Byte Order Mark (BOM)

pencil icon, that"s clickable to start editing the post

I've known about Byte Order Mark in the context of XML. But how about in the context of SOAP? To my simple understanding (SOAP) web services is all about exchanging XML Documents (mostly over HTTP), so since Byte Order Marks are part of the XML Specification it should also be part of SOAP. Since I've never thought or heard of it before nor of problems related to it I decided to look a bit closer.

In Wikipedia the Byte Order Mark the definition goes like:

A byte-order mark (BOM) is the Unicode character at code point U+FEFF ("zero-width no-break space") when that character is used to denote the endianness of a string of UCS/Unicode characters encoded in UTF-16 or UTF-32. It is conventionally used as a marker to indicate that text is encoded in UTF-8, UTF-16 or UTF-32.

In most character encodings the BOM is a pattern which is unlikely to be seen in other contexts (it would usually look like a sequence of obscure control codes). If a BOM is misinterpreted as an actual character within Unicode text then it will generally be invisible due to the fact it is a zero-width no-break space. Use of the U+FEFF character for non-BOM purposes has been deprecated in Unicode 3.2 (which provides an alternative, U+2060, for those other purposes), allowing U+FEFF to be used solely with the semantic of BOM.

Next place to look is the XML Specification, where some terms/defintions are needed. In 2 Documents

[Definition: A data object is an XML document if it is well-formed, as defined in this specification. In addition, the XML document is valid if it meets certain further constraints.]

Each XML document has both a logical and a physical structure. Physically, the document is composed of units called entities. An entity may refer to other entities to cause their inclusion in the document. A document begins in a "root" or document entity. Logically, the document is composed of declarations, elements, comments, character references, and processing instructions, all of which are indicated in the document by explicit markup. The logical and physical structures MUST nest properly, as described in 4.3.2 Well-Formed Parsed Entities.

Then down in 4.3.3 Character Encoding in Entities (my strong):

Each external parsed entity in an XML document may use a different encoding for its characters. All XML processors MUST be able to read entities in both the UTF-8 and UTF-16 encodings. The terms "UTF-8" and "UTF-16" in this specification do not apply to character encodings with any other labels, even if the encodings or labels are very similar to UTF-8 or UTF-16.

Entities encoded in UTF-16 MUST and entities encoded in UTF-8 MAY begin with the Byte Order Mark described by Annex H of [ISO/IEC 10646:2000], section 2.4 of [Unicode], and section 2.7 of [Unicode3] (the ZERO WIDTH NO-BREAK SPACE character, #xFEFF). This is an encoding signature, not part of either the markup or the character data of the XML document. XML processors MUST be able to use this character to differentiate between UTF-8 and UTF-16 encoded documents.

..............

In the absence of information provided by an external transport protocol (e.g. HTTP or MIME), it is a fatal error for an entity including an encoding declaration to be presented to the XML processor in an encoding other than that named in the declaration, or for an entity which begins with neither a Byte Order Mark nor an encoding declaration to use an encoding other than UTF-8. Note that since ASCII is a subset of UTF-8, ordinary ASCII entities do not strictly need an encoding declaration.

And a little more in Appendix F.1 Detection Without External Encoding Information.

In an older article in MSDN Library Archived the interoperability aspect is raised:Web Services Interoperability and SOAP () under XML Problems

The second set of possible interop issues are those involving XML parsing and XSD schema handling. SOAP uses XML and XML Schemas at its core, so interoperable handling of both is requisite for SOAP interop.

An interesting example of an interop issue involving both XML parsing and HTTP transports relates to the Byte Order Mark, or BOM. When sending data over HTTP, you can specify the encoding of the data, such as UTF-16 or UTF-8, in the Content-Type header. You can also indicate the encoding of a piece of XML by inserting a set of bytes that specify the encoding used. When sending UTF-16, the BOM is needed, even if the encoding is present in the Content-Type header (to indicate big-endian or little-endian), but for UTF-8 it is unnecessary.

The first three characters here are hex for the Byte Order Mark indicating UTF-8, but as you can see, the Content-Type also stated this. Some implementations send the BOM for UTF-8, even though they don't need to. Others are unable to process XML with any BOM. The solution here is to avoid sending it unless needed, and to correctly handle it. The correct handling of BOM is essential in processing UTF-16 messages, as BOM is required in this case. Although there is no single way to resolve such issues ahead of time, the best solution once issues are recognized is to refer to the actual specifications (usually found at the W3C) that describe the standards; then apply those specifications as the arbiter of any problem.

The sentence The solution here is to avoid sending it unless needed, and to correctly handle it sounds a little easy, but a variant of be strict on what you send and lax on what you receive which is a clever strategy though it's doesn't make it as easy for you as it should!

What to conclude?

The WS-I Basic Profile 1.0 addresses this issue in 3.1.3 Unicode BOMs:

XML 1.0 allows UTF-8 encoding to include a BOM; therefore, receivers of envelopes must be prepared to accept them. The BOM is mandatory for XML encoded as UTF-16.

R4001 A RECEIVER MUST accept envelopes that include the Unicode Byte Order Mark (BOM).

So it is intuitive as in what goes for XML goes for XML in SOAP.

Read more

Thursday, October 25, 2007

REST API (GET) for UDDI entities - does anyone implement it?

pencil icon, that"s clickable to start editing the post

The webservice API for UDDI isn't pure SOAP, there's also a little REST part, though calling it an API for itself would be an exaggeration since it only enables aminor part of the SOAP API, that for retrieving the basic entities. It's and optional feature (may but for some reason not with capital letters) and described in Section 6.5 HTTP GET Services for UDDI Data Structures :

A node may offer an HTTP GET service for access to the XML representations of UDDI data structures. If a node offers this service, the URLs should be in a format that is predictable and uses the entity key as a URL parameter.

The RECOMMENDED syntax for the URLs for such a service is as follows:

If a UDDI node’s base URI is http://uddi.example.org/mybase, then the URI http://uddi.example.org/mybase?<entity>Key=uddiKey would retrieve the XML for the data structure whose type is <entity> and whose key is uddiKey. For example, the XML representation of a tModel whose key is "uddi:tempuri.com:fish:interface" can be retrieved by using the URL http://uddi.example.org/mybase?tModelKey=uddi:tempuri.com:fish:interface.

In the case of businessEntities, the node MAY add these URIs to the businessEntity’s discoveryURLs structure, though this is NOT RECOMMENDED behavior as it complicates the use of digital signatures.

First example - Global Biodiversity Information Facility UDDI Registry

An example of a registry supporting the HTTP GET Services is theGlobal Biodiversity Information Facility UDDI Registry. The documentation contains a very nice presentation of the UDDI data structures in XML Schema in a fashion very like JavaDoc. On the frontpage the product and version number is given "GBIF UDDI is powered by Systinet (c) WASP 4.6 UDDI engine" - doing a HTTP GET returns the following headers:

wget --no-check-certificate -S https://registry.gbif.net/uddi/web
--22:10:38--  https://registry.gbif.net/uddi/web
Resolving registry.gbif.net... 192.38.28.80
Connecting to registry.gbif.net|192.38.28.80|:443... connected.
WARNING: cannot verify registry.gbif.net's certificate, issued by
  `/C=DK/ST=Copenhagen/L=Copenhagen/O=GBIF Secretariat/OU=ICT/CN=registry.gbif.net/emailAddress=helpdesk@gbif.org':
  Self-signed certificate encountered.
HTTP request sent, awaiting response...
  HTTP/1.1 200 OK
  Date: Tue, 23 Oct 2007 20:10:38 GMT
  Server: Systinet WASP Server for Java/4.6.1 (Java/1.4.1_03; Linux/2.4.21-52.ELsmp)
  Content-type: text/html; charset=UTF-8
  Connection: close
Length: unspecified [text/html]

That confirms this. Not exactly the newest versions, Linux 2.4 kernel, Java 1.4 and WASP server that seems to have run though two major releases in the meantime. I also find that it's run from Copenhagen.

Doing a browse search and choosing 'Australian National Insect Collection, CSIRO Entomology' gives:

Australian National Insect Collection, CSIRO Entomology, Business entity, web presentation

Activating The View as XML button, implemented as:

<input value="View as XML" 
       class="button" 
       type="button"
       onclick="displayXMLDirect("businessKey","06bbd2a0-671b-11d8-b9b2-b8a03c50a862",'')">

using a simple JavaScript function defined in http://registry.gbif.net/uddi/web/data/uddi.js:

function displayXMLDirect(paramName, paramValue, authinfo) {    
    window.location = "?"+paramName+"="+paramValue+"&authInfo="+authinfo;    
}

For my own preference I would have skipped the JavaScript and just made the link (HTTP GET) directly - simpler and more accessible. Any way the raw XML describing the Business Entity Australian National Insect Collection, CSIRO Entomology

<?xml version="1.0" encoding="UTF-8"?>
<businessEntity authorizedName="provider"
  businessKey="06bbd2a0-671b-11d8-b9b2-b8a03c50a862" operator="GBIFS">
  <discoveryURLs>
    <discoveryURL useType="businessEntity">http://registry.gbif.net:8009/uddi/web?businessKey=06bbd2a0-671b-11d8-b9b2-b8a03c50a862</discoveryURL>
  </discoveryURLs>
  <name xml:lang="en">Australian National Insect Collection, CSIRO Entomology</name>
  <description xml:lang="en">http://anic.ento.csiro.au/</description>

Obviously there's either a configuration error or some redirecting going on since I can't access discoveryURL running on port 8009. A similar problem can be found in the old OIO UDDI based on another product so this is obviously a general problem.

Second example - OIO e-Business Registry

Abother UDDI is the OIO e-Business Registry, that can be accessed as Oracle Application Server Service Registry 10.1.3.1 (don't use the Business Control Center that is another interface to the same data, though I haven't figured out the real diffenrence). Choosing 'Search' gives the simple search page:

Doing a wildcard/browse search and choosing KMD Gateway SKI 0.7 - 04:

But I can't call this as raw XML with the HTTP GET as described in the UDDI version 3 specification:

http://publish.uddi.ehandel.gov.dk/registry/uddi/web?businessKey=uddi:5cf0ef10-7c94-11dc-89b4-ca0ca711898a

gives an error page similar to this:

But through the button on the page, that's a link enabled image:

<a href="javascript:submitToURL('form','/directGetXml','root##465195',-1,false,'https://publish.uddi.ehandel.gov.dk:12443/registry/uddi/web');;void(0);" .....</a>

this is worse than the older version, since is all JavaScript but based on href and not onClick. The JavaScript function is defined in wf.js (port 12443):

// submits page to url
function submitToURL (formName, targetTask, actionID, targetDepth, redirect, targetURL)
{
  document.forms[formName].action = targetURL;
  submitPage(formName, targetTask, actionID, targetDepth, redirect);
}

// submits page
function submitPage (formName, targetTask, actionID, targetDepth, redirect)
{
  if (checkFields(formName,actionID)) {
    document.forms[formName].elements['actionId'].value = actionID;
    document.forms[formName].elements['targetTask'].value = targetTask;
    document.forms[formName].elements['targetDepth'].value = targetDepth;
    document.forms[formName].elements['redirect'].value = redirect;
    document.forms[formName].submit();
  }
}

which relates to this form:

<form name="form" method="POST" >
<input type="hidden" name="actionId"/>
<input type="hidden" name="targetTask"/>
<input type="hidden" name="targetDepth"/>
<input type="hidden" name="redirect"/>

The values were:

  • formName='form'
  • targetTask='/directGetXml'
  • actionID='root##465195'
  • targetDepth=-1
  • redirect=false
  • targetURL='https://publish.uddi.ehandel.gov.dk:12443/registry/uddi/web'

So it can be POST'ed and that might not be true REST or according to what the specification suggests, but it can done by ex. curl or a simple form on another web page. I haven't tried to access it with GET, but it might work.

Does anyone implement it?

In fact it would be more interesting to know whether anyone uses it, but the two examples I've looked at here does both implement it (both systinet products), in diffent ways, I haven't used UDDI for a real business case or development so I can't way whether is a great feature or just a possible feature.

Read more

Sunday, November 19, 2006

Using the ISB UDDI #5 - whos doing business?

pencil icon, that"s clickable to start editing the post

A very central data structure in UDDI is business, which can be searched by find_business:

    1 <?xml version="1.0"?>
    2 <find_business generic="2.0" xmlns="urn:uddi-org:api_v2">
    3   <name>%</name>
    4 </find_business>
a the search at present gives:
    1 <?xml version="1.0"?>
    2 <businessList generic="2.0"
    3               operator="Infostructurebase"
    4               truncated="false"
    5               xmlns="urn:uddi-org:api_v2">
    6   <businessInfos>
    7     <businessInfo businessKey="c780e2ec-41cc-4978-8d19-47d07f167c41">
    8       <name xml:lang="en-us">&lt;New Provider Name></name>
    9       <serviceInfos>
   10         <serviceInfo serviceKey="095a67b9-cb6d-47b7-ab97-13238427ae43" businessKey="c780e2ec-41cc-4978-8d19-47d07f167c41">
   11           <name xml:lang="en-us">&lt;New Service Name></name>
   12         </serviceInfo>
   13       </serviceInfos>
   14     </businessInfo>
   15     <businessInfo businessKey="5466157e-0129-43cc-a0a3-382aed61e53e">
   16       <name xml:lang="en-us">&lt;New Provider Name></name>
   17       <serviceInfos />
   18     </businessInfo>
   19     <businessInfo businessKey="5d7c6751-5ff3-4888-a91b-c9fd9227588f">
   20       <name xml:lang="en">Accenture</name>
   21       <serviceInfos>
   22         <serviceInfo serviceKey="176e44de-2b73-4a45-971e-d0d363078a3e" businessKey="5d7c6751-5ff3-4888-a91b-c9fd9227588f">
   23           <name xml:lang="en">AcnService1</name>
   24         </serviceInfo>
   25         <serviceInfo serviceKey="688cfcd8-7977-4063-9e1f-34603e6f3716" businessKey="5d7c6751-5ff3-4888-a91b-c9fd9227588f">
   26           <name xml:lang="en">Accenture Service 1</name>
   27         </serviceInfo>
   28       </serviceInfos>
   29     </businessInfo>
   30     <businessInfo businessKey="1b3ebc57-a6fb-4900-bce4-efe947f07885">
   31       <name xml:lang="en">Accenture SP</name>
   32       <serviceInfos />
   33     </businessInfo>
   34     <businessInfo businessKey="49fda011-0b46-41ee-addf-c075134929e7">
   35       <name xml:lang="en">ACCENTURETEST1</name>
   36       <description xml:lang="en">Test 1</description>
   37       <serviceInfos>
   38         <serviceInfo serviceKey="d7987d41-2cd0-48df-9c54-5ba9617b88e4" businessKey="49fda011-0b46-41ee-addf-c075134929e7">
   39           <name xml:lang="en">acntest1</name>
   40         </serviceInfo>
   41       </serviceInfos>
   42     </businessInfo>
   43     <businessInfo businessKey="e29d142d-4f68-4ad2-862d-12cbc9bd44c2">
   44       <name xml:lang="en">ACCENTURETEST2</name>
   45       <description xml:lang="en">test2</description>
   46       <serviceInfos />
   47     </businessInfo>
   48     <businessInfo businessKey="cfe58050-fd25-40ac-9d75-c1cbd27e5fee">
   49       <name xml:lang="en">ACCENTURETEST3</name>
   50       <description xml:lang="en">ACCENTURETEST3</description>
   51       <serviceInfos />
   52     </businessInfo>
   53     <businessInfo businessKey="2f489a02-dffc-4d41-9311-f0d251c20cca">
   54       <name xml:lang="en">delete</name>
   55       <serviceInfos>
   56         <serviceInfo serviceKey="cd367ebe-57e0-42ed-ad38-da1ebc079992" businessKey="2f489a02-dffc-4d41-9311-f0d251c20cca">
   57           <name xml:lang="en">delete serv3</name>
   58         </serviceInfo>
   59       </serviceInfos>
   60     </businessInfo>
   61     <businessInfo businessKey="78ea44cb-8201-4b0e-aff8-87be54cd1fce">
   62       <name xml:lang="da">Det Centrale Virksomhedsregister</name>
   63       <name xml:lang="en">&lt;New Provider Name></name>
   64       <serviceInfos>
   65         <serviceInfo serviceKey="3465bf97-a35d-4d86-8e7b-e966b8ffdd0e" businessKey="78ea44cb-8201-4b0e-aff8-87be54cd1fce">
   66           <name xml:lang="en">CVR online</name>
   67         </serviceInfo>
   68       </serviceInfos>
   69     </businessInfo>
   70     <businessInfo businessKey="b7453c3b-c8e7-4318-bb8f-180831e2a060">
   71       <name xml:lang="en-us">FESD pilot</name>
   72       <serviceInfos>
   73         <serviceInfo serviceKey="4c8f92dd-5026-4d6f-b551-ba5da930808e" businessKey="b7453c3b-c8e7-4318-bb8f-180831e2a060">
   74           <name xml:lang="en-us">FESD A850 webservice pilot</name>
   75         </serviceInfo>
   76       </serviceInfos>
   77     </businessInfo>
   78     <businessInfo businessKey="0bb38549-919e-415f-8239-70aacc0780ae">
   79       <name xml:lang="en">gf</name>
   80       <description xml:lang="en">gf</description>
   81       <serviceInfos />
   82     </businessInfo>
   83     <businessInfo businessKey="2811adb5-88d3-4403-983e-1fb1fbb70840">
   84       <name xml:lang="da">glr.dk</name>
   85       <serviceInfos>
   86         <serviceInfo serviceKey="d24b8874-71c9-4da6-84d0-8bb993b7864b" businessKey="2811adb5-88d3-4403-983e-1fb1fbb70840">
   87           <name xml:lang="da">MVJGis</name>
   88         </serviceInfo>
   89       </serviceInfos>
   90     </businessInfo>
   91     <businessInfo businessKey="a2ab96a6-d760-4bdd-8659-edc9feac6fba">
   92       <name xml:lang="en">hjh3</name>
   93       <description xml:lang="en">hjh3</description>
   94       <serviceInfos />
   95     </businessInfo>
   96     <businessInfo businessKey="09b02af8-09cf-4e5d-acd7-94c917380f46">
   97       <name xml:lang="en">Infostructurebase</name>
   98       <description xml:lang="en">A Microsoft UDDI Services site</description>
   99       <serviceInfos>
  100         <serviceInfo serviceKey="d6817e82-746c-481c-a7c9-91a8d8646913" businessKey="09b02af8-09cf-4e5d-acd7-94c917380f46">
  101           <name xml:lang="en-us">Repository Services</name>
  102         </serviceInfo>
  103         <serviceInfo serviceKey="0a4ce531-f876-4181-bcbf-02ee36b1d8af" businessKey="09b02af8-09cf-4e5d-acd7-94c917380f46">
  104           <name xml:lang="en">UDDI Services</name>
  105         </serviceInfo>
  106       </serviceInfos>
  107     </businessInfo>
  108     <businessInfo businessKey="47594afd-2774-4621-a241-4973c4b45d01">
  109       <name xml:lang="en-us">ITST</name>
  110       <serviceInfos>
  111         <serviceInfo serviceKey="48d326e6-b0e9-4d5c-8c52-1c29b21a9b0b" businessKey="47594afd-2774-4621-a241-4973c4b45d01">
  112           <name xml:lang="en-us">MasteDataBasen</name>
  113         </serviceInfo>
  114       </serviceInfos>
  115     </businessInfo>
  116     <businessInfo businessKey="f3cef3b7-a747-4856-a8d1-47be02fbc8c3">
  117       <name xml:lang="en-gb">John Gøtze</name>
  118       <serviceInfos>
  119         <serviceInfo serviceKey="1de05d22-d2b9-41ae-b65f-e576b03a43b9" businessKey="f3cef3b7-a747-4856-a8d1-47be02fbc8c3">
  120           <name xml:lang="en-gb">WS4RP</name>
  121         </serviceInfo>
  122       </serviceInfos>
  123     </businessInfo>
  124     <businessInfo businessKey="3296d079-4431-418b-a350-18d30a275d3f">
  125       <name xml:lang="da">KMD</name>
  126       <description xml:lang="da">Kommunedata A/S</description>
  127       <serviceInfos>
  128         <serviceInfo serviceKey="f382674f-b48f-4fa8-885b-09cc9c20a438" businessKey="3296d079-4431-418b-a350-18d30a275d3f">
  129           <name xml:lang="da">P-Data opslag</name>
  130         </serviceInfo>
  131       </serviceInfos>
  132     </businessInfo>
  133     <businessInfo businessKey="f9b1a2e5-c1a1-436a-bff1-8efe55acc2e5">
  134       <name xml:lang="da-dk">Krak</name>
  135       <description xml:lang="da">
  136         Den grundlæggende idé bag Krak har gennem mere end 230 år været at indsamle, bearbejde og udgive information – med
  137         det formål at hjælpe danskerne til at skabe handel. Idéen holder stadig – dog er den nu videreudviklet. Samtidig er
  138         vi i stand til at hjælpe
  139       </description>
  140       <serviceInfos>
  141         <serviceInfo serviceKey="5925002d-5a70-4ad9-a823-b378e8083a69" businessKey="f9b1a2e5-c1a1-436a-bff1-8efe55acc2e5">
  142           <name xml:lang="en-us">AddressValidation</name>
  143         </serviceInfo>
  144         <serviceInfo serviceKey="4f86f0cd-c988-4aa1-ada0-67d2b389321f" businessKey="f9b1a2e5-c1a1-436a-bff1-8efe55acc2e5">
  145           <name xml:lang="en-us">TicketCentral</name>
  146         </serviceInfo>
  147         <serviceInfo serviceKey="f7189317-3187-48c3-9962-d8ad28cd58c0" businessKey="f9b1a2e5-c1a1-436a-bff1-8efe55acc2e5">
  148           <name xml:lang="en-us">CompanySearch</name>
  149         </serviceInfo>
  150       </serviceInfos>
  151     </businessInfo>
  152     <businessInfo businessKey="8dba6919-e074-428f-aba0-1c8df2340f0e">
  153       <name xml:lang="da-dk">LCO/RUC</name>
  154       <serviceInfos>
  155         <serviceInfo serviceKey="1d9427d3-b73e-4199-8279-6f99c3e752e1" businessKey="8dba6919-e074-428f-aba0-1c8df2340f0e">
  156           <name xml:lang="da-dk">EjendomService</name>
  157         </serviceInfo>
  158       </serviceInfos>
  159     </businessInfo>
  160     <businessInfo businessKey="aeeee52f-e42a-4798-bc32-92cfc1c9369a">
  161       <name xml:lang="en">lkl</name>
  162       <description xml:lang="en">lkl</description>
  163       <serviceInfos>
  164         <serviceInfo serviceKey="4466bca1-093a-4bfb-ba51-d6de5ec82f5c" businessKey="aeeee52f-e42a-4798-bc32-92cfc1c9369a">
  165           <name xml:lang="en">ACCENTURETEST11</name>
  166         </serviceInfo>
  167       </serviceInfos>
  168     </businessInfo>
  169     <businessInfo businessKey="f98ba3dd-940a-45b1-890c-5510f4f08c18">
  170       <name xml:lang="en-us">National IT and Telecom Agency</name>
  171       <name xml:lang="da">IT- og Telestyrelsen</name>
  172       <description xml:lang="en-us">
  173         The National IT and Telecom Agency is part of the Ministry for Science, Technology and Innovation. The Agency's
  174         principal task is to develop and implement initiatives within key areas of the Government's IT policy strategy.
  175       </description>
  176       <description xml:lang="da">
  177         IT- og Telestyrelsen er en del af Ministeriet for Videnskab, Teknologi og Udvikling. IT- og Telestyrelsen har som
  178         hovedopgave at udvikle og gennemføre initiativer inden for de centrale områder af regeringens IT-politiske strategi.
  179       </description>
  180       <serviceInfos>
  181         <serviceInfo serviceKey="34d2acc8-9fde-4af5-a429-abd928f8e6d0" businessKey="f98ba3dd-940a-45b1-890c-5510f4f08c18">
  182           <name xml:lang="en-us">PressRoom</name>
  183           <name xml:lang="da">PressRoom</name>
  184         </serviceInfo>
  185       </serviceInfos>
  186     </businessInfo>
  187     <businessInfo businessKey="bcd2db3d-9a5f-404c-8d04-9d40de8ddcf2">
  188       <name xml:lang="en-us">OIO</name>
  189       <description xml:lang="en-us">
  190         OIO - Offentlig Information Online (public information online) is a website and an electronic newsletter offering
  191         information, knowledge and access to tools in relation to IT in the publice sector as well as public sector
  192         communication.
  193       </description>
  194       <description xml:lang="da">
  195         OIO står for Offentlig Information Online. På engelsk Open Public Information Online. Portalen oio.dk er for alle,
  196         der beskæftiger sig med digital forvaltning og implementering af it i den offentlige sektor samt effektivisering af
  197         den offentlige kommunik
  198       </description>
  199       <serviceInfos>
  200         <serviceInfo serviceKey="26b8f5fe-5eef-4c75-8d61-4f63e7fddd87" businessKey="bcd2db3d-9a5f-404c-8d04-9d40de8ddcf2">
  201           <name xml:lang="en-us">AWS - Address Web Service</name>
  202           <name xml:lang="da">AWS - Adresse Web Service</name>
  203         </serviceInfo>
  204       </serviceInfos>
  205     </businessInfo>
  206     <businessInfo businessKey="7323deeb-f4e2-4d94-bbba-fc0b0cd60d89">
  207       <name xml:lang="en-us">OIOMaker.dk</name>
  208       <description xml:lang="en">
  209         OIOMaker provide automatic metadata about what OIO-subjects are relevant to the content to a given document or
  210         webpage. All tags are returned in Dublin Core tags as: &lt;DC:OIO Subject>
  211       </description>
  212       <description xml:lang="da-dk">
  213         OIOMaker er en webservice der leverer metadata om hvilke OIO-emner i henhold til OIO-emnesystem der er relevante for
  214         indholdet af et givent dokument eller en webside. For mere information om OIOemnesystem se
  215         http://www.oio.dk/index.php?o=60603a5f79ef7cbd
  216       </description>
  217       <serviceInfos>
  218         <serviceInfo serviceKey="906ed95f-0013-4efb-82bd-7c6e70662260" businessKey="7323deeb-f4e2-4d94-bbba-fc0b0cd60d89">
  219           <name xml:lang="en-us">OIOMaker</name>
  220         </serviceInfo>
  221       </serviceInfos>
  222     </businessInfo>
  223     <businessInfo businessKey="6ccb966d-e97f-4b12-9f6e-733b3d16791f">
  224       <name xml:lang="da">Retsinformation</name>
  225       <name xml:lang="en">Legal Information</name>
  226       <description xml:lang="da">
  227         Retsinformation er statens juridiske online informationssystem, som giver Dem adgang til love, bekendtgørelser og
  228         cirkulærer m.v., til Folketingets dokumenter og til Folketingets Ombudsmands beretningssager.
  229       </description>
  230       <description xml:lang="en">
  231         Retsinformation was established in 1985 and contains all Danish rules and regulations, i.e. all acts passed by the
  232         Folketing (the Danish parliament) as well as statutory orders, circulars etc. issued by the administration.
  233       </description>
  234       <serviceInfos>
  235         <serviceInfo serviceKey="fd36f2a5-97bf-40e4-ba2d-639df8679b0e" businessKey="6ccb966d-e97f-4b12-9f6e-733b3d16791f">
  236           <name xml:lang="da">RetsInfoDocuments</name>
  237           <name xml:lang="en">RetsInfoDocuments</name>
  238         </serviceInfo>
  239       </serviceInfos>
  240     </businessInfo>
  241     <businessInfo businessKey="c18d0eed-d1e6-41b2-a9cf-2cd2a88a685e">
  242       <name xml:lang="da-dk">Sweetxml</name>
  243       <name xml:lang="en-us">Sweetxml</name>
  244       <description xml:lang="da-dk">Sweetxml er et website/en blog for Brian Nielsen.</description>
  245       <description xml:lang="en-us">Sweetxml is a website/blog for Brian Nielsen.</description>
  246       <serviceInfos />
  247     </businessInfo>
  248     <businessInfo businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  249       <name xml:lang="da">Told og Skattestyrelsen</name>
  250       <description xml:lang="da">
  251         Skatteministeriets opgaver kan overordnet kategoriseres i tre typer: lovgivning, forvaltning (klagebehandling),
  252         drift. Den funktionelle opgavefordeling mellem ministeriets tre institutioner er således, at Departementet varetager
  253         lovgivningen mv., Landsska
  254       </description>
  255       <serviceInfos>
  256         <serviceInfo serviceKey="32e4a992-dac5-495f-b31d-7ca48b2bf08b" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  257           <name xml:lang="en-us">PaymentVacationPensionDetailService</name>
  258         </serviceInfo>
  259         <serviceInfo serviceKey="285188ec-8931-422b-b05b-8acaf911d7fd" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  260           <name xml:lang="en-us">EmploymentService</name>
  261         </serviceInfo>
  262         <serviceInfo serviceKey="13ce4c5e-0798-401e-be68-be6d774e6dcf" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  263           <name xml:lang="en-us">PaymentVacationPensionPrBaseMonthService</name>
  264         </serviceInfo>
  265         <serviceInfo serviceKey="285df998-310c-49b5-9714-d3848e621e0f" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  266           <name xml:lang="en-us">PaymentVacationPensionSumService</name>
  267         </serviceInfo>
  268         <serviceInfo serviceKey="ba3aaee4-c771-47e2-a107-029068906e00" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  269           <name xml:lang="en-us">EmploymentPrCprService</name>
  270         </serviceInfo>
  271         <serviceInfo serviceKey="b0fbdce6-1685-4117-b20f-a4a583d0633d" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  272           <name xml:lang="en-us">PaymentVacationInsurancePensionPrCprService</name>
  273         </serviceInfo>
  274         <serviceInfo serviceKey="a421e42b-b6b7-46b3-a647-a85196b71e4d" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  275           <name xml:lang="en-us">PaymentVacationDetailPrCprService</name>
  276         </serviceInfo>
  277         <serviceInfo serviceKey="f25ce542-e665-4a35-8198-171ac353764e" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  278           <name xml:lang="en-us">InsurancePensionPrCprService</name>
  279         </serviceInfo>
  280         <serviceInfo serviceKey="ad3803bd-c390-46f8-a40d-7aa94aca72c6" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  281           <name xml:lang="en-us">PaymentVacationInsurancePensionPrTypeService</name>
  282         </serviceInfo>
  283         <serviceInfo serviceKey="db0c9383-e5a0-4a96-b437-0119deb27819" businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  284           <name xml:lang="en-us">PaymentVacationPensionPrBaseMonthPrCprService</name>
  285         </serviceInfo>
  286       </serviceInfos>
  287     </businessInfo>
  288     <businessInfo businessKey="390ced8a-9d8b-47ba-acf8-24a813f03217">
  289       <name xml:lang="en-us">xmltools.oio.dk</name>
  290       <description xml:lang="da">OIO test side for xmlværktøjer og webservices.</description>
  291       <description xml:lang="en-us">OIO test site for xml tools and webservices</description>
  292       <serviceInfos>
  293         <serviceInfo serviceKey="458f4e3e-e452-4ea7-bd79-15ce9721289d" businessKey="390ced8a-9d8b-47ba-acf8-24a813f03217">
  294           <name xml:lang="en-us">AuthorityCodeConversion</name>
  295         </serviceInfo>
  296       </serviceInfos>
  297     </businessInfo>
  298   </businessInfos>
  299 </businessList>

I'll now have a look at the details available for SKAT (Told og Skattestyrelsen) with the businessKey:

    1 <?xml version="1.0"?>
    2 <get_businessDetail
    3   generic="2.0"
    4   xmlns="urn:uddi-org:api_v2">
    5   <businessKey>483afc20-f25e-4ed7-b316-9d8de9131d34</businessKey>
    6 </get_businessDetail>

with the result:

    1 <?xml version="1.0"?>
    2 <businessDetail
    3   generic="2.0"
    4   operator="Infostructurebase"
    5   truncated="false"
    6   xmlns="urn:uddi-org:api_v2">
    7   <businessEntity
    8     businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34"
    9     operator="Infostructurebase"
   10     authorizedName="OIO\knippel">
   11     <discoveryURLs>
   12       <discoveryURL useType="businessEntity">
   13         http://vtuapp01.oio.dk/uddipublic/discovery.ashx?businessKey=483afc20-f25e-4ed7-b316-9d8de9131d34
   14       </discoveryURL>
   15     </discoveryURLs>
   16     <name xml:lang="da">Told og Skattestyrelsen</name>
   17     <description xml:lang="da">
   18       Skatteministeriets opgaver kan overordnet kategoriseres i tre typer: lovgivning, forvaltning
   19       (klagebehandling), drift. Den funktionelle opgavefordeling mellem ministeriets tre institutioner er
   20       således, at Departementet varetager lovgivningen mv., Landsska
   21     </description>
   22     <contacts>
   23       <contact useType="">
   24         <personName>Jens Lorentz Bay</personName>
   25         <phone useType="">72373453</phone>
   26         <email useType="">Jens.bay@toldskat.dk</email>
   27       </contact>
   28     </contacts>
   29     <businessServices>
   30       <businessService
   31         serviceKey="32e4a992-dac5-495f-b31d-7ca48b2bf08b"
   32         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
   33         <name xml:lang="en-us">PaymentVacationPensionDetailService</name>
   34         <description xml:lang="da">
   35           En borgerrettet service. På baggrund af CPR-nr samt evt. SE-nr på arbejdsgiver og medarbejdernr.
   36           returnerer servicen detailoplysninger om en borgers løn, feriekonto og forsik-ring/pension for en
   37           anfordret periode.
   38         </description>
   39         <bindingTemplates>
   40           <bindingTemplate
   41             bindingKey="167c45c2-7c7f-46e0-8c36-707bd252f9ef"
   42             serviceKey="32e4a992-dac5-495f-b31d-7ca48b2bf08b">
   43             <description xml:lang="da">Servicen kører på et lukket net</description>
   44             <accessPoint URLType="http">http://</accessPoint>
   45             <tModelInstanceDetails>
   46               <tModelInstanceInfo tModelKey="uuid:27b337ec-9df5-4851-887f-5665215dcf19" />
   47             </tModelInstanceDetails>
   48           </bindingTemplate>
   49         </bindingTemplates>
   50       </businessService>
   51       <businessService
   52         serviceKey="285188ec-8931-422b-b05b-8acaf911d7fd"
   53         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
   54         <name xml:lang="en-us">EmploymentService</name>
   55         <description xml:lang="da">
   56           En borgerrettet service. På baggrund af CPR-nr samt evt. SE-nr på arbejdsgiver og medarbejdernr
   57           returnerer servicen stamoplysninger om borgerens ansættelsesforhold for en anfordret periode.
   58         </description>
   59         <bindingTemplates>
   60           <bindingTemplate
   61             bindingKey="b2255ce1-ff20-4e94-b79a-9ff2d960b766"
   62             serviceKey="285188ec-8931-422b-b05b-8acaf911d7fd">
   63             <description xml:lang="da">Servicen kører på et lukket net</description>
   64             <accessPoint URLType="http">http://</accessPoint>
   65             <tModelInstanceDetails>
   66               <tModelInstanceInfo tModelKey="uuid:a8a22fcf-c208-496f-ad7b-1c6e9b781a78" />
   67             </tModelInstanceDetails>
   68           </bindingTemplate>
   69         </bindingTemplates>
   70       </businessService>
   71       <businessService
   72         serviceKey="13ce4c5e-0798-401e-be68-be6d774e6dcf"
   73         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
   74         <name xml:lang="en-us">PaymentVacationPensionPrBaseMonthService</name>
   75         <description xml:lang="da">
   76           En borgerrettet service. På baggrund af CPR-nr samt evt. SE-nr på arbejdsgiver og medarbejdernr
   77           returnerer servicen summerede oplysninger om en borgers løn, feriekonto og forsikring/pension pr.
   78           ansættelsesforhold, pr. basismåned.
   79         </description>
   80         <bindingTemplates>
   81           <bindingTemplate
   82             bindingKey="ee46120b-9edc-4a82-9802-2fd379c6df81"
   83             serviceKey="13ce4c5e-0798-401e-be68-be6d774e6dcf">
   84             <description xml:lang="da">Servicen kører på et lukket net</description>
   85             <accessPoint URLType="http">http://</accessPoint>
   86             <tModelInstanceDetails>
   87               <tModelInstanceInfo tModelKey="uuid:8fb960e5-1f1a-451a-b975-f195cfa439a0" />
   88             </tModelInstanceDetails>
   89           </bindingTemplate>
   90         </bindingTemplates>
   91       </businessService>
   92       <businessService
   93         serviceKey="285df998-310c-49b5-9714-d3848e621e0f"
   94         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
   95         <name xml:lang="en-us">PaymentVacationPensionSumService</name>
   96         <description xml:lang="da">
   97           En borgerrettet service. På baggrund af CPR-nr samt evt. SE-nr på arbejdsgiver og medarbejdernr
   98           returnerer servicen summerede beløb for den ønskede periode. Der summeres lønoplysninger, optjente
   99           feriepenge samt indbetalinger til pensionsordninger.
  100         </description>
  101         <bindingTemplates>
  102           <bindingTemplate
  103             bindingKey="72e2397d-d2d2-4d1b-adf7-53268cfcb67e"
  104             serviceKey="285df998-310c-49b5-9714-d3848e621e0f">
  105             <description xml:lang="da">Servicen kører på et lukket net</description>
  106             <accessPoint URLType="http">http://</accessPoint>
  107             <tModelInstanceDetails>
  108               <tModelInstanceInfo tModelKey="uuid:0325a926-1f82-445d-85ef-98b0002a2dce" />
  109             </tModelInstanceDetails>
  110           </bindingTemplate>
  111         </bindingTemplates>
  112       </businessService>
  113       <businessService
  114         serviceKey="ba3aaee4-c771-47e2-a107-029068906e00"
  115         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  116         <name xml:lang="en-us">EmploymentPrCprService</name>
  117         <description xml:lang="da">
  118           Er en virksomhedsrettet service. Servicen returnerer oplysninger om ansættelsesforhold for de
  119           medarbejdere, der er tilknyttet en virksomhed.
  120         </description>
  121         <bindingTemplates>
  122           <bindingTemplate
  123             bindingKey="c6e21193-c72f-4549-a93e-e76dd62a238d"
  124             serviceKey="ba3aaee4-c771-47e2-a107-029068906e00">
  125             <description xml:lang="da">Servicen kører på et lukket net</description>
  126             <accessPoint URLType="http">http://</accessPoint>
  127             <tModelInstanceDetails>
  128               <tModelInstanceInfo tModelKey="uuid:805939a7-5bd3-45b7-ae89-46972be7cca0" />
  129             </tModelInstanceDetails>
  130           </bindingTemplate>
  131         </bindingTemplates>
  132       </businessService>
  133       <businessService
  134         serviceKey="b0fbdce6-1685-4117-b20f-a4a583d0633d"
  135         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  136         <name xml:lang="en-us">PaymentVacationInsurancePensionPrCprService</name>
  137         <description xml:lang="da">
  138           Er en virksomhedsrettet service. Servicen returnerer indberettede detailoplysninger om ansattes
  139           forsikring/pension for en anfordret periode for et antal CPR-numre.
  140         </description>
  141         <bindingTemplates>
  142           <bindingTemplate
  143             bindingKey="5dfdecb0-1958-4a9a-a220-89ce18cf9925"
  144             serviceKey="b0fbdce6-1685-4117-b20f-a4a583d0633d">
  145             <description xml:lang="da">Servicen kører på et lukket net</description>
  146             <accessPoint URLType="http">http://</accessPoint>
  147             <tModelInstanceDetails>
  148               <tModelInstanceInfo tModelKey="uuid:22967ba5-ff4d-43f2-8553-498e31f2ec42" />
  149             </tModelInstanceDetails>
  150           </bindingTemplate>
  151         </bindingTemplates>
  152       </businessService>
  153       <businessService
  154         serviceKey="a421e42b-b6b7-46b3-a647-a85196b71e4d"
  155         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  156         <name xml:lang="en-us">PaymentVacationDetailPrCprService</name>
  157         <description xml:lang="da">
  158           Er en virksomhedsrettet service. Servicen returnerer detailoplysninger om indberettede løn- og
  159           feriekontooplysninger for en anfordret periode for et antal CPR-numre. Derudover returnerer services
  160           også nulindberetninger.
  161         </description>
  162         <bindingTemplates>
  163           <bindingTemplate
  164             bindingKey="a19f0b44-fa48-4c32-a58a-91185f43782f"
  165             serviceKey="a421e42b-b6b7-46b3-a647-a85196b71e4d">
  166             <description xml:lang="da">Servicen kører på et lukket net</description>
  167             <accessPoint URLType="http">http://</accessPoint>
  168             <tModelInstanceDetails>
  169               <tModelInstanceInfo tModelKey="uuid:97b5f657-63b5-4b98-bb60-85b0686603f8" />
  170             </tModelInstanceDetails>
  171           </bindingTemplate>
  172         </bindingTemplates>
  173       </businessService>
  174       <businessService
  175         serviceKey="f25ce542-e665-4a35-8198-171ac353764e"
  176         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  177         <name xml:lang="en-us">InsurancePensionPrCprService</name>
  178         <description xml:lang="da">
  179           En virksomhedsrettet service. Servicen returnerer sum-tal på lønoplysninger, optjente feriepenge
  180           samt indbetalinger til pensionsordninger. Ud over sumtal pr. med-arbejder leveres listning af
  181           periodens øvrigt indberettede kryds, kode og tekstfelter.
  182         </description>
  183         <bindingTemplates>
  184           <bindingTemplate
  185             bindingKey="311cbd47-0726-458f-adc2-9d8a8cf4ddf5"
  186             serviceKey="f25ce542-e665-4a35-8198-171ac353764e">
  187             <description xml:lang="da">Servicen kører på et lukket net</description>
  188             <accessPoint URLType="http">http://</accessPoint>
  189             <tModelInstanceDetails>
  190               <tModelInstanceInfo tModelKey="uuid:429d9818-70fa-42bb-ac0f-3be9a30164a0" />
  191             </tModelInstanceDetails>
  192           </bindingTemplate>
  193         </bindingTemplates>
  194       </businessService>
  195       <businessService
  196         serviceKey="ad3803bd-c390-46f8-a40d-7aa94aca72c6"
  197         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  198         <name xml:lang="en-us">PaymentVacationInsurancePensionPrTypeService</name>
  199         <description xml:lang="da">
  200           Er en virksomhedsrettet service. Servicen returnerer sumtal for virksomheden som helhed på
  201           lønoplysninger, optjente feriepenge samt indbetalinger til pensionsordninger.
  202         </description>
  203         <bindingTemplates>
  204           <bindingTemplate
  205             bindingKey="ae9c24f2-a5f3-4f08-8728-37bf2c16accc"
  206             serviceKey="ad3803bd-c390-46f8-a40d-7aa94aca72c6">
  207             <description xml:lang="da">Servicen kører på et lukket net</description>
  208             <accessPoint URLType="http">http://</accessPoint>
  209             <tModelInstanceDetails>
  210               <tModelInstanceInfo tModelKey="uuid:bbcd88f4-4aed-43f9-95bf-7f3e98c30008" />
  211             </tModelInstanceDetails>
  212           </bindingTemplate>
  213         </bindingTemplates>
  214       </businessService>
  215       <businessService
  216         serviceKey="db0c9383-e5a0-4a96-b437-0119deb27819"
  217         businessKey="483afc20-f25e-4ed7-b316-9d8de9131d34">
  218         <name xml:lang="en-us">PaymentVacationPensionPrBaseMonthPrCprService</name>
  219         <description xml:lang="da">
  220           En virksomhedsrettet service. På baggrund af oplysninger om medarbejdere returnerer servicen
  221           summerede oplysninger om løn, feriekonto og forsikring/pension pr. basismåned for hvert
  222           ansættelsesforhold.
  223         </description>
  224         <bindingTemplates>
  225           <bindingTemplate
  226             bindingKey="b5853087-239e-4bf0-aafb-697d42ab5133"
  227             serviceKey="db0c9383-e5a0-4a96-b437-0119deb27819">
  228             <description xml:lang="da">Servicen kører på et lukket net</description>
  229             <accessPoint URLType="http">http://</accessPoint>
  230             <tModelInstanceDetails>
  231               <tModelInstanceInfo tModelKey="uuid:8ce8045a-c6f4-4f13-a460-30288e461b87" />
  232             </tModelInstanceDetails>
  233           </bindingTemplate>
  234         </bindingTemplates>
  235       </businessService>
  236     </businessServices>
  237     <categoryBag>
  238       <keyedReference
  239         tModelKey="uuid:f699264c-384d-47a2-bb46-c6a476242e55"
  240         keyName="SKAT"
  241         keyValue="b4df00fd-ba21-4ef5-9e43-918bdcadea9b" />
  242     </categoryBag>
  243   </businessEntity>
  244 </businessDetail>

Read more