Повышение и понижение уровня свойства документа

Дата последнего изменения: 1 ноября 2010 г.

Применимо к: SharePoint Foundation 2010

Повышение уровня свойства означает извлечение значений из свойств документа и их запись в соответствующие столбцы в списке или библиотеке документов, где хранится документ. Понижение уровня свойства означает обратный процесс. Значения считываются из столбцов списка и записываются в свойства документа.

Microsoft SharePoint Foundation может работать вместе с анализатором документов для автоматизации процесса повышения и понижения уровня свойств. При изменении значений свойств документа они могут автоматически записываться обратно в список. При изменении значений столбцов (полей) в элементе списка эти изменения могут автоматически записываться обратно в документ, связанный с элементом списка. Таким образом обеспечивается синхронизация документа и связанного элемента списка.

SharePoint Foundation запускает повышение или понижение уровня свойства при возникновении следующих событий:

  • отправка файла в библиотеку документов;

  • изменение полей элемента списка, связанного с файлом;

  • обновление свойства Properties объекта SPFile программным способом;

  • первичная загрузка файла после изменения схемы списка.

В каждом случае SharePoint Foundation определяет, связан ли анализатор с типом файла. Если это так, SharePoint Foundation вызывает анализатор, передавая ему документ и объект контейнера свойств. Анализатор затем либо заполняет контейнер свойств значениями, уровень которых нужно повысить до списка, либо извлекает из контейнера свойств значения, уровень которых нужно понизить до документа.

SharePoint Foundation повышает и понижает уровень только тех свойств, которые соответствуют столбцам списка, применимым к документу. Столбцы, которые применимы к документу, задаются следующими элементами:

  • типом контента документа, если этот тип назначен;

  • столбцами в библиотеке документов, если документ не имеет типа контента.

Дополнительные сведения о типах контента см. в разделе Типы контента.

SharePoint Foundation также сохраняет всю коллекцию свойств документа в хэш-таблице, доступ к которой может производиться программным способом с использованием свойства Properties объекта SPFile. Доступ к хэш-таблице свойств документа через пользовательский интерфейс невозможен.

Дополнительные сведения о том, как встроенный XML-анализатор повышает и понижает уровень свойств документов для XML-файлов, см. в разделе Повышение и понижение уровня свойства XML-документа.

Повышение уровня

SharePoint Foundation создает экземпляр Интерфейс IParserPropertyBag и наполняет объект свойствами документа, указанными в списке. Затем он вызывает анализатор документов для типа файла и вызывает метод Parse анализатора, передавая в качестве аргументов документ и контейнер свойств. После завершения работы метода SharePoint Foundation обращается к контейнеру свойств, определяет, какие свойства документа соответствуют определенным столбцам списка, и записывает такие значения в список.

На следующем рисунке показан процесс повышения уровня документа. Здесь анализатор извлекает свойства документа и записывает их в контейнер свойств. Из четырех свойств документа три включены в тип контента документа. В свою очередь, SharePoint Foundation сопоставляет свойства в контейнере свойств со столбцами (полями) в библиотеке документов и затем повышает уровень этих свойств до библиотеки документов. Это означает, что значения свойств записываются в соответствующие столбцы. Поскольку тип контента документа не включает столбец "Состояние", SharePoint Foundation не повышает уровень четвертого свойства документа "Состояние", даже если библиотека документов включает совпадающий столбец. SharePoint Foundation также записывает все четыре свойства документа в свойство Properties объекта SPFile, который представляет документ в библиотеке документов.

Распространение свойств с помощью настраиваемого средства синтаксического анализа

Понижение уровня

SharePoint Foundation создает экземпляр Интерфейс IParserPropertyBag и наполняет объект свойствами документа, указанными в списке. Затем он вызывает анализатор документов для типа файла и вызывает метод Demote анализатора, передавая в качестве аргументов документ и контейнер свойств. Метод Demote обращается к контейнеру свойств, сопоставляет столбцы списка со свойствами документа и записывает соответствующие значения обратно в документ.

На следующем рисунке показан процесс понижения уровня свойства документа. Чтобы обновить два свойства документа, SharePoint Foundation вызывает анализатор, передавая ему обновляемый документ и объект контейнера свойств, содержащий два свойства документа. Анализатор считывает значения свойств из контейнера свойств и обновляет свойства в документе. Когда анализатор заканчивает обновление документа, он устанавливает флаг, переданный в выходном параметре, который указывает, что анализатор изменил документ. После этого SharePoint Foundation сохраняет обновленный документ в библиотеке документов.

Понижение свойства с помощью настраиваемого средства синтаксического анализа

См. также

Концепции

Настраиваемые анализаторы документов

Синтаксический анализ документа и типы контента