2012-06-28 84 views
0

在我的源模式中,我有一個可選元素,在我的目標中我有一個必需的元素。將可選元素映射到所需元素

如果源存在,我必須將它直接映射到目標,否則我需要生成一個GUID並將其分配給目標。我該怎麼做呢?

回答

3

如果你不使用你的映射XSLT:使用「邏輯存在」的functoid

測試文件是否存在 - >「邏輯非」的functoid - >「值映射」的functoid。這將檢查輸入中的節點是否不存在,如果不存在,則使用值映射設置值。您可以直接在值映射器中放置一個硬編碼值,或者將其掛接到其他輸入。如果您的輸入節點存在但您是空白的,您可能需要做更多的工作。

互聯網上有很多例子。

+0

我得到了那麼多,但它似乎並沒有讓我如果它存在的ID,或者如果它不生成一個新的。邏輯存在和值映射只能輸出單個值。所以我可以得到解決方案的「如果」部分,但不是「其他」部分。 – Jeremy

+3

你可以有兩個值映射functoids到源模式中的相同元素 - 因爲只有一個將根據您的條件使用。因此,如果它存在,請使用值映射,如果它不存在,則使用另一個來傳遞您的值。 –