我正在尝试创建一个映射,在其中我使用 rml 中的 fno 将全名拆分为名字和姓氏。我的代码就像
<#FunctionSplitName>
fnml:functionValue [
rml:logicalSource <#LogicalSource>;
rr:predicateObjectMap [
rr:predicate fno:executes;
rr:objectMap [
rr:constant grel:string_split
];
];
rr:predicateObjectMap [
rr:predicate grel:valueParameter;
rr:objectMap [
rml:reference "metadata__customer_name"
];
];
rr:predicateObjectMap [
rr:predicate grel:p_string_sep;
rr:objectMap [
rr:constant " ";
];
];
].
<#FunctionGetName>
fnml:functionValue [
rr:predicateObjectMap [
rr:predicate fno:executes ;
rr:objectMap [ rr:constant grel:array_get ]
] ;
rr:predicateObjectMap [
rr:predicate grel:p_array_a ;
rr:objectMap <#FunctionSplitName>
] ;
rr:predicateObjectMap [
rr:predicate grel:param_int_i_from ;
rr:objectMap [
rr:constant 0 ;
rr:datatype xsd:integer ;
]
];
rr:predicateObjectMap [
rr:predicate grel:param_int_i_opt_to ;
rr:objectMap [
rr:constant 1 ;
rr:datatype xsd:integer ;
]
]
].
但我收到以下错误:
17:17:11.969 [main] ERROR be.ugent.rml.cli.Main .main(389) - Declared method "get" does not exist for class "io.fno.grel.ArrayFunctions".
有人可以告诉我如何获取 grel:string_split 的第 n 个元素吗?