Partager via


Analyseurs de documents personnalisés

Dernière modification : lundi 1 novembre 2010

S’applique à : SharePoint Foundation 2010

Dans cet article
Configuration requise pour l'analyseur
Association d'analyseurs
Déploiement d'analyseurs

La gestion des métadonnées associées à votre document est l’un des avantages les plus puissants que représente le stockage du contenu dans Microsoft SharePoint Foundation 2010. Toutefois, la synchronisation des informations dans la bibliothèque de documents et dans le document lui-même est une tâche difficile. SharePoint Foundation fournit l’infrastructure d’analyse des documents, ce qui permet de créer et d’installer des analyseurs de documents personnalisés qui peuvent analyser les types de fichiers personnalisés et mettre à jour un document avec les modifications apportées au niveau de la bibliothèque de documents et inversement. Utiliser un analyseur de documents pour les types de fichiers personnalisés permet de s’assurer que les métadonnées des documents sont toujours à jour et synchronisées entre la bibliothèque de documents et le document lui-même.

Un analyseur de documents est un objet COM personnalisé qui, en implémentant l’ISPDocumentParser, interface, effectue les opérations suivantes lorsqu’il est appelé par SharePoint Foundation :

  • Extrait les valeurs des propriétés d'un document d'un certain type de fichier et passe ces valeurs de propriétés à SharePoint Foundation pour leur promotion dans les colonnes de propriétés de la bibliothèque de documents.

  • Reçoit les propriétés de document et rétrograde ces valeurs de propriétés dans le document lui-même.

  • En outre, met à jour les informations des types de contenu, effectue la découverte et la réparation des liens et extrait une image miniature.

Cette fonctionnalité permet aux utilisateurs de modifier les propriétés de document dans le document lui-même et de faire en sorte que les valeurs des propriétés de la bibliothèque de documents soient automatiquement mises à jour pour refléter ces modifications. Les utilisateurs peuvent de la même façon mettre à jour des valeurs de propriétés au niveau de la bibliothèque de documents, et obtenir que ces modifications soient réécrites automatiquement dans le document.

Pour plus d'informations sur la façon dont SharePoint Foundation invoque des analyseurs de documents et sur la façon dont ils promeuvent et rétrogradent les métadonnées des documents, voir Promotion et rétrogradation de propriétés de document.

Configuration requise pour l'analyseur

Pour que SharePoint Foundation utilise un analyseur de documents personnalisés, l'analyseur de documents doit respecter les conditions suivantes :

  • L’analyseur de documents doit être un composant COM qui implémente l’ISPDocumentParser, interface.

    Pour plus d'informations, voir Vue d'ensemble de l'interface de l'analyseur de documents.

  • Vous devez installer et inscrire le composant COM sur chaque serveur Web frontal de SharePoint Foundation.

  • Vous devez inscrire l’analyseur de documents auprès de SharePoint Foundation en l’ajoutant à la collection retournée par la propriété PluggableParsers de la classe SPWebService. (C’est la raison pour laquelle les analyseurs personnalisés sont parfois appelés « enfichables ».)

Association d'analyseurs

SharePoint Foundation sélectionne l’analyseur de documents à invoquer en fonction du type de fichier du document qui doit être analysé. Tout type de fichier donné peut être associé à un seul analyseur de documents. Toutefois, le même analyseur de documents peut être associé à plusieurs types de fichiers différents.

Vous pouvez déterminer l’analyseur associé à un type de fichier particulier en examinant la collection retournée par la propriété PluggableParsers de la classe SPWebService. Par exemple, l’application console suivante énumère les analyseurs enfichables enregistrés auprès du service de contenu sur le serveur local et affiche chaque extension de nom de fichier et ID de programme correspondant.

using System;
using System.Collections.Generic;
using Microsoft.SharePoint.Administration;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            SPWebService service = SPWebService.ContentService;

            Dictionary<string, SPDocumentParser> parsers = service.PluggableParsers;
            Dictionary<string, SPDocumentParser>.KeyCollection keys = parsers.Keys;

            Console.WriteLine("Ext       ProgID");
            Console.WriteLine("---       ------");
            foreach (string key in keys)
            {
                Console.WriteLine("{0, -7}   {1}", parsers[key].FileExtension,  parsers[key].ProgId );
            }
            Console.Write("\nPress ENTER to continue...");
            Console.ReadLine();
        }
    }
}

Pour associer un analyseur de documents personnalisé à un type de fichier, ajoutez l’analyseur à la collection retournée par la propriété PluggableParsers de la classe SPWebService. Par exemple, l’application console suivante crée un analyseur de documents personnalisé et l’associe aux fichiers portant l’extension « txt » en ajoutant l’analyseur à la collection d’analyseurs enfichables pour le service de contenu sur le serveur local.

using System;
using System.Collections.Generic;
using Microsoft.SharePoint.Administration;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            SPWebService service = SPWebService.ContentService;
            Dictionary<string, SPDocumentParser> parsers = service.PluggableParsers;

            // Create a custom parser.
            string extension = "txt";
            string progID = parsers["docx"].ProgId;
            SPDocumentParser customParser = new SPDocumentParser(progID, extension);

            // Remove any existing parser for the file type.
            if (parsers.ContainsKey(extension))
            {
                parsers.Remove(extension);
                service.Update();
            }

            // Add the new parser for the file type.
            service.PluggableParsers.Add(extension, customParser);
            service.Update();
        }
    }
}
Note AttentionAttention

SharePoint Foundation 2010 comprend plusieurs analyseurs de documents prédéfinis. Vous pouvez remplacer un analyseur de documents prédéfini par un analyseur personnalisé, mais vous ne devez effectuer cette opération qu’après en avoir mesuré toute la portée, notamment si vous envisagez de remplacer un analyseur pour un type de fichier HTML. Il arrive parfois que les analyseurs prédéfinis effectuent plus d’opérations que ce qu’autorise l’interface d’analyseur enfichable.

Déploiement d'analyseurs

Pour que SharePoint Foundation soit capable d’invoquer un analyseur donné chaque fois que cela est nécessaire, vous devez installer le composant COM pour chaque analyseur sur chaque serveur Web frontal dans SharePoint Foundation. En raison de cela, vous ne pouvez spécifier qu’un seul analyseur pour un type de fichier donné dans SharePoint Foundation.

L’infrastructure de l’analyseur de documents n’offre pas la possibilité d’empaqueter et de déployer un analyseur de documents personnalisés dans un Composant fonctionnel SharePoint Foundation.

Voir aussi

Référence

SPDocumentParser

Concepts

Promotion et rétrogradation de propriétés de document

Analyse de documents et types de contenu

Vue d'ensemble de l'interface de l'analyseur de documents