フィールドに追加されたトレーリングスペース

トピック作成者:ks-solruserml-bot (2024/06/09 21:19 投稿)
2
CloseClose

(The bot translated the original post https://lists.apache.org/thread/xc2vcxx8fllr79j3jjj1dgby1m30n05q into Japanese and reposted it under Apache License 2.0. The copyright of posted content is held by the original poster.)

こちらの設定は、XMLドキュメントをインデックス化し、データのインポートにXPathEntityProcessorを使用しています。クエリ結果をJSONやXML形式でエクスポートする際に、要素の末尾にスペースが付加されることに気づきました。

      <entity name="meta"
          dataSource="myfilereader"
          processor="XPathEntityProcessor"
          url="${jcurrent.fileAbsolutePath}"
          stream="false"
          forEach="/TEI/teiHeader/fileDesc"
          xsl="xslt/meta.xsl">

          <field column="title" xpath="/TEI/teiHeader//title" flatten="true"/>
          <field column="author" xpath="/TEI/teiHeader//author" />
          <field column="publisher" xpath="/TEI/teiHeader//publisher" />
          <field column="accession" xpath="/TEI/teiHeader//idno" />
          <field column="date" xpath="/TEI/teiHeader//date" flatten="true" />
          <field column="origin" xpath="/TEI/teiHeader//origin" />
          <field column="origPlace" xpath="/TEI/teiHeader//origPlace" />
          <field column="origGeo" xpath="/TEI/teiHeader//origGeo" />
          <field column="settlement" xpath="/TEI/teiHeader//settlement" />
          <field column="region" xpath="/TEI/teiHeader//region" />
          <field column="country" xpath="/TEI/teiHeader//country" />
          <field column="when" xpath="/TEI/teiHeader//when" />
          <field column="when-custom" xpath="/TEI/teiHeader//when-custom" />
          <field column="notAfter" xpath="/TEI/teiHeader//notAfter" />
          <field column="notBefore" xpath="/TEI/teiHeader//notBefore" />
          <field column="note" xpath="/TEI/teiHeader//note" flatten="true" />
          <field column="annotator" xpath="/TEI/teiHeader//annotator" />
          <field column="scribe" xpath="/TEI/teiHeader//scribe" />
          <field column="recipient" xpath="/TEI/teiHeader//recipient" />
       </entity>

JavaScriptのfetch呼び出しに文字列が追加されていると考えましたが、Solr管理サイトのクエリページを見ると、明らかに末尾にスペースが表示されています。フィールドがstringまたはtext_generalで保存されている場合でも、同様の結果です。

以下は、クエリ応答のスニペットです:

|{ "date":"1884-09-09 September 9, 1884 ", "note":"Handwritten by Mary on a postcard from Boston, Massachusetts. ", "country":"USA ", "origGeo":"42.3584308 -71.0597732 ", "author":"Mary ", "authorString":"Mary ", "origin":"1884-09-09 ",
"originSort":"1884-09-09 ", "accession":"639P3.65.026 ", "accessionSort":"639P3.65.026 ", "title":"
Mary to Mary Baker Eddy,
September 9, 1884

", "titleSort":"
Mary to Mary Baker Eddy,
September 9, 1884

", "when":"1884-09-09 ",
"settlement":"Boston ", "recipient":"Mary Baker Eddy", "recipientString":"Mary Baker Eddy", "publisher":"The Mary Baker Eddy Library ", "origPlace":"places.xml#boston_ma ", "region":"MA ", "type":"incoming_correspondence", "places":"Boston ",
"placesString":"Boston ", "people":"Mary ", "peopleString":"Mary ", "body":"Paper rec received Thanks, Just looked it over, good . Have moved at last! Will find me at cor: Shawmut Ave. & Pleasant St. a few doors from 66 S. Ave, further downtown. Hope
you will find time to come in. Not yet settled, but like much better. Hope you are prospering. Wanted to see you last Sabbath eve but too tired In love Mary – ", "closer":"Boston Sept 9. 1884 . ", "id":"3272bf21-e6c2-4053-85ef-db3ec5a7f0ae",
"version":1710182653070671872},|

これがXPathEntityProcessorによって行われている可能性がありますが、間違いも考えられます。末尾のスペースを取り除く方法はありますか?

お手伝いできることがあれば教えてください。

Scott

返信投稿者:ks-solruserml-bot (2024/06/09 21:19 投稿)

一般的な回答としては、UpdateRequestProcessorパイプラインを追加することです。これにより、ポスト処理の柔軟性が向上します。

ただし、xpathで ..../text() を指定してみることもできます。これによってスペースが特に処理されるかもしれません。ただし、自分自身ではテストしていません。考えの一つです。

よろしくお願いします。
Alex

返信投稿者:ks-solruserml-bot (2024/06/09 21:19 投稿)

Alexandre,

完璧ですね!

内蔵の空白トリムファクトリ、TrimFieldUpdateProcessorFactoryをデフォルトのチェーンに追加しました。これですべてうまくいきました!

改めてありがとうございます。

Scott

トピックへ返信するには、ログインが必要です。

KandaSearch

Copyright © 2006-2024 RONDHUIT Co, Ltd. All Rights Reserved.

投稿の削除

この投稿を削除します。よろしいですか?