2009-09-21 5 views
0

Je suis mappage d'un schéma HL7 à un schéma fait maison. Maintenant, mon schéma ressemble à ceci:BizTalk problème de mappage bizarre

<xs:element name="Patienten"> 
<xs:complexType> 
<xs:sequence> 
<xs:element name="Patient"> 
<xs:complexType> 
<xs:sequence> 
    <xs:element minOccurs="0" name="ContactNummer" nillable="true" type="xs:string" /> 
    <xs:element minOccurs="0" name="Voornaam" type="xs:string" /> 
    <xs:element minOccurs="0" name="Naam" type="xs:string" /> 
    <xs:element minOccurs="0" name="Plaats" type="xs:string" /> 
    <xs:element minOccurs="0" name="Straat" type="xs:string" /> 
    <xs:element minOccurs="0" name="Campus" type="xs:string" /> 
    <xs:element minOccurs="0" name="Kamer" type="xs:string" /> 
    <xs:element minOccurs="0" name="Bed" type="xs:string" /> 
    <xs:element minOccurs="0" name="Ontslagen" type="xs:string" /> 
    <xs:element minOccurs="0" name="CampusCode" type="xs:string" /> 
    <xs:element minOccurs="0" name="TelefoonCode" type="xs:string" /> 
    </xs:sequence> 
    </xs:complexType> 
    </xs:element> 
    </xs:sequence> 
    </xs:complexType> 
    </xs:element> 

Lorsque je la carte des éléments de mon schéma HL7 et quand j'utilise un fichier de test je reçois une erreur: « L'élément Patienten dans l'espace de noms blabla est incomplète Liste des éléments possibles:. Patient ". J'ai remarqué que mon fichier test ne remplissait pas les éléments "straat" et "plaats". Si je supprime les liens de mappage de ces deux éléments, la carte fonctionne correctement. Mais j'ai évidemment besoin d'eux. Si je mets l'élément patient propriétée minOccurs = « 0 », alors la validation est réussie, mais je reçois un xml vide:

<ns0:Patienten xmlns:ns0="http://nextel.zna.be/ZNA_Nextel_Patient.xsd" /> 

Si je supprime l'élément « patient » et il suffit d'utiliser les autres éléments comme sous-éléments de " Patienten "alors la carte fonctionne bien! Mais j'ai besoin de la sous-racine "Patient". J'ai joué avec min et max Se produit parce que je remarque que ceux-ci font une différence, mais je n'arrive toujours pas à ma solution. Si j'utilise un exemple de test, cela fonctionne très bien, donc je ne comprends pas pourquoi ça ne fonctionne pas ...

Quelqu'un at-il des idées ou des problèmes similaires?

Répondre

2

Le schéma que vous avez défini requiert l'existence de l'élément Patient, comme vous l'avez noté lors de la modification de l'attribut minOccurs. Se pourrait-il que le fichier de test et la carte que vous utilisez ne remplissent aucun des sous-éléments, donc ne créent pas l'élément Patient?

Une façon de vérifier cela pourrait être d'utiliser une valeur statique pour l'un des éléments cibles, de cette façon vous assurer que le document cible n'est pas vide.