我不想在輸出文檔中寫出元素屬性,如果值缺失或是一個空字符串。 如何做到這一點? 這是一個biztalk映射。如何在Biztalk中缺少值時映射元素?
0
A
回答
1
如果你喜歡做自己的XSLT: (我檢查缺少的元素,爲空值,xsi:nil
- 因此如果不適用,刪除)
<xsl:choose>
<xsl:when test="not(s0:inElement)
or s0:inElement[normalize-space(.) = '']
or string(s0:inElement/@xsi:nil) = 'true'">
... Default here, e.g. leave this blank,
... or if you want nil then <ns1:outElement xsi:nil="true"/>
</xsl:when>
<xsl:otherwise>
<ns1:outElement>
<xsl:value-of select="s0:inElement/text()" />
</ns1:outElement>
</xsl:otherwise>
</xsl:choose>
7
要抑制目標中的元素,請使用值映射functoid。
- 將有問題的元素連接到
LOGICAL EXISTENCE
functoid。 - 將
LOGICAL EXISTENCE
functoid連接到LOGICAL AND
functoid。 - 將元素functoid連接到
NOT EQUALS
functoid。 - 在
NOT EQUALS
functoid中,將Condition2設置爲BLANK。 - 將
NOT EQUALS
functoid連接到LOGICAL AND
functoid。 - 將
LOGICAL AND
functoid連接到VALUE MAP
functoid。 - 將元素連接到
VALUE MAP
functoid。 - 將
VALUE MAP
functoid連接到目標元素。
按順序執行這些步驟。下面的屏幕截圖應該有所幫助:
HTH
+1
我只是通常只是使用> functoid,並比較它是否>單個空間。然後你有一個邏輯functoid而不是3. – NealWalters
相關問題
- 1. BizTalk映射值映射環接的functoid
- 2. 在Biztalk中設置映射中的可選元素?
- 3. 與集怪異的JSON映射的問題 - 缺少的元素
- 4. 的Biztalk:映射
- 5. 在SharePoint 2010中的元數據屬性映射中缺少ows_editior
- 6. 在Internet Explorer中打印時缺少輸入元素中的值
- 7. 的BizTalk XSLT映射
- 8. BizTalk映射到excel
- 9. BizTalk映射問題
- 10. 陣列中缺少元素
- 11. 庫中缺少元素
- 12. 如何使用BizTalk映射器
- 13. BizTalk映射只輸出每個元素的1個元素。爲什麼?
- 14. JAXB元素映射
- 15. 檢查缺少的int值xml元素
- 16. getBBox()缺少文本元素的值
- 17. AutoMapperMappingException - 缺少類型映射配置或不支持的映射
- 18. automapper缺少類型映射配置或不支持的映射。
- 19. 缺少類型映射配置或不支持的映射 - AutoMapper
- 20. 缺少類型映射配置或不支持的映射。
- 21. 缺少類型映射配置或不支持的映射
- 22. 休眠映射缺少列錯誤
- 23. IBodyModelValidator你是否缺少類型映射?
- 24. 單元測試從SSO讀取值的BizTalk映射
- 25. 如何迭代通過哈希映射映射列表元素
- 26. XML到Bean映射:XML元素值到Bean設置映射器
- 27. R:保存爲PDF時缺少元素
- 28. Biztalk映射邏輯路徑
- 29. 在C++映射中找不到元素
- 30. IncompleteAnnotationException:dagger.Provides缺少元素類型
xslt解決方案看起來不錯。 – marko
看看這裏看看如何將視覺地圖轉換爲XSLT http://stackoverflow.com/questions/3716608/biztalk-2010-mapping-an-xsd-with-a-lot-of-elements-with-the -same名/ 3718014#3718014 – StuartLC