Indexation fulltext et organisation des données

Bonjour à tous,

Je vais devoir très bientôt indexer un ensemble de documents en fulltext et plusieurs langues.
Chaque document est repéré par un code et existe en plusieurs langues.
Chaque document est lié à un produit.

Mon client souhaite que les rèsultats de recherche (quelque soit la recherche : texte, code produit, code document) affiche un seul bloc de résultats par document (DocumentCode)
et ce bloc contiendra les liens pour télécharger les versions linguistiques.

Pour cela j'ai pensé à l'organisation des données de la façon suivante : (voir ci-dessous).

Cette arboresence json vous semble-t-elle cohérente ou avez d'autre propositions ?
Merci d'avance pour vos remarques.

{
  "id": "1",
  "DocumentCode": "A1",
  "Products": [
    "P100",
    "P125",
    "P500",
    "P435"
  ],
  "DocByLang": [
    {
      "Lang": "FR-fr",
      "Title": "Titre en francais du doc A1 ...",
      "Text": "Contenu complet du doc A1",
      "Url": "/files/A1-fr.pdf"
    },
    {
      "Lang": "EN-en",
      "Title": "English Title to doc A1 ...",
      "Text": "Content full-text to doc A1",
      "Url": "/files/A1-en.pdf"
    },
    {
      "Lang": "ES-es",
      "Title": "Título en español del documento A1...",
      "Text": "Contenido completo del doc A1",
      "Url": "/files/A1-es.pdf"
    }
  ]
}	

{
  "id": "2",
  "DocumentCode": "A2",
  "Products": [
    "P105",
    "P135",
    "P500",
    "P435"
  ],
  "DocByLang": [
    {
      "Lang": "FR-fr",
      "Title": "Titre en francais du doc A2 ...",
      "Text": "Contenu complet du doc A2",
      "Url": "/files/A2-fr.pdf"
    },
    {
      "Lang": "EN-en",
      "Title": "English Title to doc A2 ...",
      "Text": "Content full-text to doc A2",
      "Url": "/files/A2-en.pdf"
    },
    {
      "Lang": "ES-es",
      "Title": "Título en español del documento A2...",
      "Text": "Contenido completo del doc A2",
      "Url": "/files/A2-es.pdf"
    }
  ]
}	

Cordialement

LaurentF

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.

Désolé @lfourny pour l'absence de réponse.

As-tu finalement trouvé la bonne organisation pour ton cas?

A titre personnel, je pense que je ferais un index par langage. Quelque chose comme:

{
  "id": "1_FR",
  "DocumentCode": "A1",
  "Products": [
    "P100",
    "P125",
    "P500",
    "P435"
  ],
  "Lang": "FR-fr",
  "Title": "Titre en francais du doc A1 ...",
  "Text": "Contenu complet du doc A1",
  "Url": "/files/A1-fr.pdf"
}
{
  "id": "1_EN",
  "DocumentCode": "A1",
  "Products": [
    "P100",
    "P125",
    "P500",
    "P435"
  ],
  "Lang": "EN-en",
  "Title": "English Title to doc A1 ...",
  "Text": "Content full-text to doc A1",
  "Url": "/files/A1-en.pdf"
}

...