<template xmlns="http://marklogic.com/xdmp/tde">
<context>/test</context>
<vars>
<var>
<name>subprefix</name>
<val>"http://www.test.com/resource/test/"</val>
</var>
<var>
<name>objprefix</name>
<val>"http://www.test.com/resource/test/"</val>
</var>
</vars>
<triples>
<triple>
<subject>
<val>sem:iri($subprefix || ElemenetName)</val>
<invalid-values>ignore</invalid-values>
</subject>
<predicate>
<val>sem:iri('is')</val>
</predicate>
<object>
<val>sem:iri($objprefix || FullName)</val>
<invalid-values>ignore</invalid-values>
</object>
</triple>
</triples>
</template>
我创建了一个模板来获取XML的三元组。
但是要转义空值三元组(s,p或o)。 我正在使用ignore,但这仅在主题或对象中没有前缀的情况下有效。如果有前缀,它将创建带有null(仅前缀)的三元组。
我们有什么方法可以在MarkLogic TDE中进行处理吗?
空的对象/主题问题。
PFB。
答案 0 :(得分:0)
您可以从上下文表达式中获得更多使用,尤其是在使用子模板的情况下。这里有一个显示子模板的粗略示例,应用于3个示例文档:
validate
可以在以下位置找到有关子模板的更多背景:
https://docs.marklogic.com/guide/sql/creating-template-views#id_28999
HTH!