- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用的是官方文档:http://docs.basex.org/wiki/Commands#String_Syntax ,而且我一直无法找到逻辑运算符的列表。我希望能够查询 text contains 'A' or 'B'
。
按照同样的思路,我也在尝试弄清楚如何限制返回结果的数量,并且我正在尝试找到在 BaseX 中创建关系表的良好指南。
这就是我正在使用的....我已经想出了如何做“或”,但我还没有想出如何为不同的目标传递变量。
let $items := ('Creditcard', 'Money order')
for $item score $s in doc('xmark')//item
[payment contains text "$items" using stemming using case sensitive]
order by $s descending
return <item ranking= '{ $s }'>{ $item/payment/text() }</item>
-编辑-
现在看这段代码,它基于现有的答案:
let $items := ('Creditcard', 'Money order')
for $item in descendant::*:$item | descendant-or-self::*[text() contains text "$item"] | .//item//payment[descendant-or-self::node()/@*:lang = "bnt"][descendant-or-self::node()/@*:lang = "afr"][descendant-or-self::node()/@*:lang = "eng"][descendant-or-self::node()/@*:lang = "chi"]
return <payment>{ .//item//payment/text() }</payment>
<buyer_name>{ .//item//buyer/text() }</buyer_name>
-编辑-
另一个尝试:
let $list := doc('xmark')
return for $p in $list/payments/item/payment-method[text() = 'Creditcard']
return $p//text()
返回 0 个结果。只是试图从文本中获取“信用卡”,即“付款方式”的值。基本上,我没能找到一致或成功的例子。
-编辑-
最近的尝试非常接近;然而,当我将它应用到我实际尝试访问的数据库而不是 BaseX 示例数据库时,我得到了一个特殊的错误品牌:
通过http://basex.org/products/live-demo/
文档('测试') :=
<item>
<item_number>1171270</item_number>
<seller_info>
<seller_company_id>6356</seller_company_id>
<seller_rating>C31</seller_rating>
<seller_rating>T150 hr.</seller_rating>
</seller_info>
<product_info>
<unit>2022</unit>
<sinfo>55 cases</sinfo>
<sinfo>Yu-gi-oh trading card pack</sinfo>
<sinfo>.45kg per unit</sinfo>
<sinfo>24.7500kg shipment</sinfo>
</product_info>
<product_info>
<unit>9291</unit>
<sinfo>7 units</sinfo>
<sinfo>Naruto, Classic, action figure</sinfo>
<sinfo>1.8kg per unit</sinfo>
<sinfo>12.6kg shipment</sinfo>
</product_info>
</item>
0: 编写您自己的查询...:=
let $doc := doc('test')
for $v in $doc//item
where contains($v//seller_rating,'C31')
return $v//product_info/sinfo
返回:
Error:
Stopped at line 3, column 39: [XPTY0004] Single item expected, (element seller_rating { ... }, element seller_rating { ... }) found.
我不能说我没想到会遇到这样的问题。不幸的是,我没有格式化 XML 文档,而且它的格式非常糟糕,就像这样,这是我试图访问它(重组它)的部分原因。 Next question即将到来:“how do I target same-node-having values in XQuery”?
最佳答案
恕我直言,这与您的问题最相似:
let $results :=
( (: Prepare a sequence of results for each $keyword in $keywords :)
let $keywords := ('Money order', 'Creditcard', 'Personal Check')
for $keyword in $keywords
(: see http://docs.basex.org/wiki/Full-Text#Scoring for information regarding
scores :)
for $item score $s in doc('xmark')//item[
payment contains text {$keyword} all words using stemming using case sensitive
]
order by $s descending
return <item ranking= '{ $s }'>{ $item/payment/text() }</item>
)
(: now sort and group these results, grouping is done to eliminate duplicate payment
methods that have been matched by two or more keywords :)
for $result in $results
group by $val := $result/text()
order by $result[1]/@ranking descending
return $result[1]
不过,我认为您可能对分数
不感兴趣,但对包含您的关键字的不同支付方式的总数感兴趣,以下查询将为您提供这些数据:
let $keywords := ('Cash', 'Personal Check')
for $keyword in $keywords
return <keyword name="{$keyword}">
{
for $result in //item/payment
group by $payment-method := $result/text()
order by count($result) descending
return element {"item"} {
attribute {"count"} {count($result)},
$payment-method
}[. contains text {$keyword} phrase]
}</keyword>
我希望这对您有所帮助并回答您的问题,以防您无法随意寻求更多帮助:)
关于xml - 在哪里可以找到 BaseX 的逻辑运算符列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12434945/
我有一个只有一个小的 XML 文件的 BaseX XML 数据库。这些文件基本上由两种结构组成。一个是PlatformCategory有 46 个实例,另一个 PlatformGenericType有
似乎 BaseX gui 只适用于本地数据库。有什么方法可以使用 BaseX gui 连接和管理远程 BaseX 服务器?如果没有,是否有任何第 3 方解决方案? 提前谢谢你。 最佳答案 我终于在Ba
我已经通过文档和 SO 检查了有关 BaseX 中 SET WRITEBACK TRUE 的信息,因为它写入数据更新的性质(根据文档)。 这是我遇到的问题:在一台计算机 (Ubuntu 15.10)
我有这个简单的 XML 文件: 557 Fleece Pullover navy black 563 Floppy Sun Hat
我使用以下docker compose文件启动basexhttp服务器和dba: 版本:“3” 服务: basexhttp: 图片:basex / basexhttp 端口: -“1984:1984”
我使用的是官方文档:http://docs.basex.org/wiki/Commands#String_Syntax ,而且我一直无法找到逻辑运算符的列表。我希望能够查询 text contains
目前,我是一个研究小组的实习生,该小组可以搜索大量文本(语料库)。不仅可以搜索文字字符串,更重要的是,还可以查找与给定输入类似的语法依赖结构,而无需精通任何编程语言或语料库注释风格。很明显,这个工具是
从理论角度来看,如何在 Java 中运行 BaseX 数据库的命令(如 http://docs.basex.org/wiki/Commands 中描述的命令)。是否存在一些工作到比 XPath 更高的
我在 Linux 机器上安装了 basex。安装运行良好,我能够编辑 .basex 文件以将任何执行指向主数据库,并且可以从任何地方运行客户端并连接。 我也有运行 basex war 包的 jetty
我是一名计算机科学专业的学生,我们必须在我们的一门类(class)中使用 BaseX(一种纯 Java OSS XML 数据库)。在浏览代码时,我发现了以下代码: /** * Retu
下面是 XML 文件 - Introduction 1 History of Internet
我编写了一个 XQuery 表达式,其结果约为 50MB,需要几个小时才能计算。我在 BaseX GUI 中执行它,但这有点不方便:它将结果裁剪到结果窗口,然后我必须保存它。此时,BaseX 变得无响
我对使用 BaseX api 进行开发还很陌生,并且我一直在使用其中一种方法时遇到一些麻烦。我创建并打开了一个数据库,但是当我尝试使用 Add 方法时,它抛出异常。请参阅this page以 Base
使用 BaseX 程序,我能够使用 XPath 和 XQuery 来查询位于我的主目录中的 XML 文档,但是我在 XSLT 中执行相同操作时遇到了问题。 我查询的文档是 BookstoreQ.xml
这是一个非常基本的问题,但我似乎找不到答案。我刚刚安装了 BaseX(Win7 PRO/64 位上的 V.7.8.1)并让它通过他们的 GUI 成功运行。我现在正尝试通过他们的 JAVA 示例(来自
我正在尝试使用 XPath 在 instance 中导航。我在下面提供了 original 的摘录实例: 0000874214 2
是否可以将一百万条记录(xml 文件)存储到 Basex 数据库中? for(int j=1;j<1000000;j++) { String id=String.valueOf(j);
我正在努力开始使用 BaseX RESTXQ API。 我已经下载并安装了适用于 Windows 的最新版本的 BaseX。我通过单击 BaseX 安装添加到 Windows 开始菜单的“BaseX
使用org.json,最重要的是,使用JSONArray而不是JSONObject,成功地seemingly at least ,通过 Twitter4J 获取 XML 输出。然而,它shows如:
我正在尝试使用 Java BaseX XQJ API 将数据插入 到 XML 文件中。 代码如下(忽略导入): public class BaseXTest { public static void
我是一名优秀的程序员,十分优秀!