Musicbrainz 查询是否区分大小写?

Musicbrainz query case sensitive?

我是 运行 一个查询 Musicbrainz 数据库信息的 Java 应用程序,我 运行 遇到了一个特殊问题。我的应用程序构建的查询(使用 java.net.URL.URL)如下:

http://musicbrainz.org/ws/2/recording?query=%22Gilt+Complex%22+AND+artistname%3A+%22Sons+And+Daugthers%22

上面的查询returns一个空响应:

<metadata xmlns="http://musicbrainz.org/ns/mmd-2.0#" xmlns:ext="http://musicbrainz.org/ns/ext#-2.0" created="2018-04-25T14:25:36.224Z">
  <recording-list count="0" offset="0"/>
</metadata>

但是,如果我将 AND 更改为小写,查询将正常工作:

http://musicbrainz.org/ws/2/recording?query=%22Gilt+Complex%22+and+artistname%3A+%22Sons+And+Daugthers%22

returns:

<metadata xmlns="http://musicbrainz.org/ns/mmd-2.0#" xmlns:ext="http://musicbrainz.org/ns/ext#-2.0" created="2018-04-25T14:25:36.224Z">
  <recording-list count="526823" offset="0">
    ...
  </recording-list>
</metadata>

如果我将查询复制并粘贴到 Chrome,也会发生同样的事情。这还没有发生在我的其他歌曲上。谁能解释一下这是怎么回事?

查询是区分大小写的,本质上是"AND"作为关键字全部大写。您的第一个查询 returns 没有结果,因为:

"Gilt Complex" AND artistname="Sons and Daugthers" 没有结果。

你的第二个查询有几十万个结果,因为它被翻译成:

"Gilt Complex" OR and OR artistname="Sons and Daugthers"

查询中的最后一项不适用于任何内容,只是一个排除项。在这种情况下仅搜索 "and" 会产生 526821 个结果,这与我们之前观察到的结果相符。