Frage

Ich habe ein Schema, das die Eigenschaft Max Länge auf allen Elementen unterschiedlicher Größe aufweist. Ich machte mich darauf ab und erwarte, dass die maximale Länge ziemlich oft überschritten wird.

Gibt es eine Möglichkeit, BizTalk zu sagen, dass er automatisch abgeschnitten wird, ohne ein Functoid für jedes Element manuell konfigurieren zu müssen?

Gibt es einen Zweck für die maximale Länge -Eigenschaft als die Validierung?

War es hilfreich?

Lösung

Es gibt keine Funktionen, um das zu tun, was Sie im BizTalk Mapper wollen - Sie könnten sicherlich eine Art Pre- oder Post -Prozessor schreiben, der dies tun würde, aber ich würde vorschlagen, dass Sie den falschen Weg gehen.

Es wird mehr Arbeit dauern, aber ich würde untersuchen, warum Ihre Quell- und Zielsysteme so unterschiedliche Schemata haben. Es ist wahrscheinlich ein Warnzeichen, dass Sie so viele Felder abschneiden möchten, um Informationen weiterzugeben.

Es wird Ihre Zeit wert sein, zu trainieren:

  • Sind diese maximalen Elemente alles streng notwendig?
  • Wird die Kürzung eines Ihrer Felder entweder technisch oder an Geschäftsanwender Probleme verursachen?
  • Sollten einige dieser Felder stattdessen getrennt werden? Möglicherweise definiert ein System ein einzelnes 100 -Zeichen -Adressfeld, während das andere System über eine Straße und ein Stadtfeld verfügt.

Die MaxLength -Eigenschaft definiert, wie lange ein Elementinhalt sein kann. Ja, es ist nur Zweck, zusätzliche Validierungsregeln für Ihr Schema zu erteilen.

Von dem W3C XML -Schema -Definition:

MaxLength · sieht vor:

• Einschränken eines · Wertraums · auf Werte mit höchstens einer bestimmten Anzahl von Längeneinheiten, wobei die Längeeinheiten je nach {Basistypdefinition} variieren.

Ich bevorzuge das Wort, das sie verwenden Einschränkung über das Wort Validierung- Für mich drückt dies das Konzept, dass Ihr XML -Schema ein Vertrag ist, der definiert, was Ihr System an andere Systeme übergeben wird. Facetten wie MaxLength sagen (zum Leser des Schemas), dass Systeme in der Hoffnung, diese Daten zu konsumieren, durchaus brechen können, wenn sie länger als die MaxLength übergeben werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top