具有不同名称的SPARQL列标题

具有不同名称的SPARQL列标题,sparql,jena,triples,Sparql,Jena,Triples,我是SANSA-STACK新手,我正在使用SPARQL查询对三元组RDD执行一些操作,我正在使用Select和一些列名,但是当我完成查询时,列名将更改为一些随机值 val query = s""" PREFIX ns0: <https://www.example.com/discovery/catalog/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

我是SANSA-STACK新手,我正在使用SPARQL查询对三元组RDD执行一些操作,我正在使用Select和一些列名,但是当我完成查询时,列名将更改为一些随机值

   val query = s""" PREFIX ns0: <https://www.example.com/discovery/catalog/>
                    PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

                    SELECT ?ColumnRef
                    WHERE
                    {
                        {<https://www.example.com/db/h2/fred/2020/table/FRED.FRED.US_REGIONS}> ns0:column ?ColumnRef .}
                    }
                """

   val result : sql.DataFrame = triples.sparql(query)


   result.show()

我是这个技术栈的新手,请告诉我我做错了什么。

这里有一个临时解决方案,它可以为我的目的工作,返回一个具有预期列名的数据帧。通过分解rdd.sparql,重写对象可用于获得列映射:


警告:Sansa查询通常为每个sparql所选元素返回多个列。在这些情况下,此代码只是将这些列连接起来,因为第一列之后的列往往包含空字符串。连接可能不是您想要的,但是我还没有发现这些空字符串数据帧列代表什么。

?应该在大约2周后的下一版本
0.8.0
中修复。我想这方面有什么新闻吗@未格式化感谢共享,更新:对于不同类型的对象结果,存在额外的“空字符串”数据帧列。IntType、StringType、LongType对象结果在生成的数据帧中获得自己的列。
+--------------------+
|                   o|
+--------------------+
|https://www.examp...|
|https://www.examp...|
|https://www.examp...|
|https://www.examp...|
+--------------------+