Monday, July 14, 2008

Top 10 SOA-Valkuilen


  1. Not invented here syndroom
  2. Security
  3. Incorrect Granularity of Services
  4. SOA does not solve complexity automatically
  5. Big Design Up Front (BDUF)
  6. Incorrectly applied Canonical Data Model (CDM)
  7. Missing skills
  8. Unclear ownership / Project based funding
  9. Ignoring culture when introducing SOA

Ad puntje 6: Ik zie liever het gebruik van Canonical Information Model (CIM). In de data zit informatie. Met alleen data heb je alleen een brij van getallen en letters. Met informatie staan er Nederlandse zinnen. In informatie zit de syntax en semantiek ook verwerkt. Het gaat in SSOA (Semantic SOA) juist om informatie!

Bron: Computable

Friday, July 11, 2008

HL7 UML Conventions for Derived Information Models

I received the Formal Namers documentation on the tooling hl7 mailinglist and there was a section on HL7 UML Notation and what it failes to illustratie. For most of the issues I found a solution or workaround using Enterprise Architect:
  • The associative function of the "arrow classes" > Cannot be fixed

  • The cardinality constraints imposed on attributes > Attributes / Details / Multiplicity

  • The appearance constraints (mandatory and required) imposed on attributes.. > Add '*' to attribute name

  • Vocabulary domain constraints applied to classCode, typeCode and moodCode values which establish the essential semantic meaning of each class > Initial value

  • The coding strength constraint applied to coded attributes > Include in attribute type

Tuesday, July 8, 2008

Infopath Template Parts impossibilities

We tried to use Infopath forms to be composed out of Infopath Template Parts. Each Template Part is a Section that represents the UI of a HL7v3 Template. To our surprise all functionality is stripped from Template Parts. E.g. it is not possible to add datasources that submit data and it is not possible to add script to e.g. validate input. Short summary, for now Infopath 2007 Template Parts are useless to us and the only alternative is to generate xsn's on the server side.

See Features that are unavailable in template parts.

Sunday, July 6, 2008

Kenn Lunn (NHS) - Healthcare Service Bus

Integrating Standards to Achieve Semantic Interoperability (pdf). In deze presentatie over de HealthCare Service Bus zoals de 'NHS Connecting for Health' dat ziet. Hier wordt het concept wel heel volledig uitgelegd.
Fantastisch om te zien hoe een ander op dezelfde visie uitkomt als de Ziekenhuis Service Bus (artikel uit thema uitgave HL7 Magazine nr.5).

JAXB icm JAX-WS bugjes?

Volgens mij heb ik 2 bugs gevonden in JAXB en JAX-WS in Java 6u10. Namelijk:
  1. Ik weet niet precies wat het doet, maar voor e.g. recordTarget wordt een JAXBElement gebruikt, en dat geeft niet het gewenste resultaat. Dus ik heb het hele (lastige) JAXBElement stuk weggehaald en dan werkt het wel goed in Java en in .Net

  2. Bij Observation.value wordt met xsi:type het type van de value opgegeven, alleen in de combinatie JAXB en WebService (JAX-WS) gaat het mis. De datatypes zitten in namespace hl7.org, maar ze hebben daar geen annotatie voor, JAX-WS "vergist zich" dan in de namespace en maakt er store.hl7.umcg.nl van. En dan kan hij het type dus niet vinden. Ik heb handmatig de annotatie van de datatypes uitgebreid met de namespace attribute en voila!

Zie ook HL7Book.

UMCG HL7v3 Templates

Het had wel wat voeten in de aarde, maar het is gelukt!
ASP.NET 3.5 WebSite die een JAX-WS HL7v3 CDR Service aanroept.

Goed stuk over Microsoft SOA

Bron: Microsoft SOA: a failure to communicate..

Een stukje eruit, maar de rest is ook het lezen waard!

"Microsoft is open when it comes to other objects and formats coming into their environment, but the stuff doesn't go out nearly as easily," he said. "There isn't really heterogeneity in principle. It's strategy really still favors Microsoft trying to grow its footprint at the expense of the larger SOA ideals, which is that it shouldn't matter what goes in and what goes out. What should matter is the ease of creating business processes that can extend across multiple environments, data types, application silos, and formats."

Wij weten er alles van. Een voorbeeld van bovenstaande quote is het feit dat SharePoint wel een WSRP Client (Portlets integreren in SharePoint) heeft, maar geen WSRP Server (WebParts in een andere Portal).

Wel grappig dat wij ook andersom bewijzen. Wij gebruiken de SharePoint WebServices om SharePoint lists in P+ te tonen!