Удаление поврежденных стилей из документов расширяемого языка разметки

Изобретение относится к средствам удаления повреждений стилей из основанных на расширяемом языке разметки (XML) документов. Технический результат заключается в уменьшении вероятности повреждения содержимого файла. Считывают информацию о стилях, связанную с основанным на XML документом. Определяют по меньшей мере один из ряда неиспользуемых, поврежденных и продублированных стилей посредством сопоставления определений стилей для этого документа с частями, которые относятся к стилям, в пакете документов. Удаляют по меньшей мере один из упомянутого ряда неиспользуемых, поврежденных и продублированных стилей, не открывая основанный на XML документ в полнофункциональном приложении, которое связано с основанным на XML документом. Определяют поврежденные диапазоны имен. Удаляют поврежденные диапазоны имен из основанного на XML документа. 3 н. и 16 з.п. ф-лы, 7 ил.

 

УРОВЕНЬ ТЕХНИКИ

Расширяемый язык разметки (XML) является набором стандартизованных правил для кодирования электронных документов в машиночитаемом формате для упрощения, обобщения и использования в сети Интернет. Несмотря на то, что данный формат текстовых данных сконцентрирован на документах, однако он широко используется для представления произвольных структур данных, например в web-услугах. Существуют разные версии и вариации XML. Одним примером использования типа XML является стандартизованный формат файла XML Открытого Офиса (OOXML), который разработан Microsoft Corp., Редмонд, штат Вашингтон. OOXML включает в себя набор форматов файлов, которые могут использоваться для представления документов электронного офиса. Форматы определяют набор словарей разметки XML для документов обработки текстов, электронных таблиц и презентаций, как, впрочем, и специальные словари разметки XML для контента, такого как математические формулы, графики, библиографии и сопоставимого. Стандартизованный формат OOXML предназначен для обеспечения расширяемости и функциональной совместимости посредством предоставления возможности реализаций множеством авторов и на множестве платформ.

Часть определения стиля документа, в общем именуемая «таблицей стилей», является формой разделения представления и контента в программах обработки документов, которая хранит и применяет форматирование к тексту. Отдельные стили могут быть включены в шаблоны документов в качестве стилей по умолчанию или созданных пользователями с широким многообразием команд, которые диктуют, каким образом отформатирована выбранная часть данных. Таблицы стилей способствуют сохранению связности в публикациях таким образом, что общие элементы, такие как основная часть, заголовки, сноски, форматирование нумерации, цвет шрифта, цвет фона и т.п., всегда выглядят одинаково. Таблицы стилей также экономят время, позволяя автору применять формат к выбранным элементам за одну операцию вместо применения операции к каждому элементу.

При использовании в документах определений пользовательских стилей существует потенциальная угроза повреждения содержимого файла. В некоторых сценариях, когда содержимое копируется из нескольких документов с пользовательскими стилями, это может привести к повреждению файла по различным причинам, связанным с архитектурами документов. Пакет OOXML является сжатым (или сжимаемым) пакетом (package), который содержит документы XML и прочие ресурсы, такие как определения стилей, связанных с документом(ами). Доступ к содержимому пакета OOXML может быть осуществлен приложением или инструментом, не активируя приложение для редактирования самих документов.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Данный раздел «Сущность Изобретения» предоставлен в качестве ознакомления в упрощенном виде с подборкой концепций, которые дополнительно описаны ниже в разделе «Подробное Описание». Данное краткое изложение сущности изобретения не предназначено ни для установления ключевых признаков или неотъемлемых признаков изобретения, ни для использования в качестве средства при определении объема заявленного изобретения.

Варианты осуществления направлены на удаление неиспользуемых, продублированных или поврежденных стилей из основанных на XML файлов документов. Удаление может затрагивать часть документа, которая относится к пользовательским стилям, используя системный ввод-вывод, и может быть основано на анализе информации, которая содержится в сжимаемом пакете соответствующего файла документа. Так же может удаляться прочее поврежденное содержимое файла, такое как поврежденные диапазоны имен или неиспользуемые определения форматов, используя тот же подход.

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

ПЕРЕЧЕНЬ ЧЕРТЕЖЕЙ

Фиг.1 является схемой, иллюстрирующей примеры локального и удаленного алгоритмов удаления повреждений;

Фиг.2 иллюстрирует схему системы, отображающую главные компоненты алгоритма удаления повреждений;

Фиг.3 иллюстрирует отдельные модули в алгоритме удаления повреждений;

Фиг.4 концептуально иллюстрирует удаление поврежденных определений стилей из документа XML;

Фиг.5 является сетевой средой, в которой может быть реализована система в соответствии с вариантами осуществления;

Фиг.6 является структурной схемой характерной вычислительной рабочей среды, в которой могут быть реализованы варианты осуществления; и

Фиг.7 иллюстрирует логическую блок-схему для процесса удаления поврежденных стилей в документах XML в соответствии с вариантами осуществления.

ПОДРОБНОЕ ОПИСАНИЕ

Как вкратце описано выше, неиспользуемые, продублированные или поврежденные стили могут быть удалены из части файлов XML, которая относится к стилям, используя компоненты системного ввода-вывода. Анализ информации, которая содержится в части пакета XML, может управлять удалением поврежденных частей. Также может удаляться прочее некорректное содержимое файла. В нижеследующем подробном описании делаются ссылки на сопроводительные чертежи, которые являются частью описания и которые показаны в качестве иллюстрации конкретных вариантов осуществления или примеров. В прилагаемых чертежах подобные цифровые обозначения представляют подобные элементы на протяжении нескольких фигур. Эти аспекты могут объединяться, могут использоваться другие аспекты, и могут быть выполнены структурные изменения, не отступая от сущности и объема настоящего изобретения. Вследствие этого нижеследующее подробное описание не должно рассматриваться в духе ограничения, а объем настоящего изобретения определяется прилагаемой формулой изобретения и ее эквивалентами.

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

Как правило, программные модули включают в себя процедуры, программы, компоненты, структуры данных и прочие типы структур, которые выполняют конкретные задачи или реализуют определенные абстрактные типы данных. Более того, специалистам в соответствующей области техники следует иметь в виду, что варианты осуществления могут быть воплощены на практике при помощи других конфигураций компьютерных систем, включая переносные устройства, многопроцессорные системы, программируемую или основанную на микропроцессоре потребительскую электронику, мини-компьютеры, компьютеры класса мэйнфрейм и сопоставимые вычислительные устройства. Варианты осуществления также могут быть воплощены на практике в распределенных вычислительных средах, в которых задачи выполняются удаленными устройствами обработки данных, которые связаны посредством сети связи. В распределенной вычислительной среде программные модули могут размещаться как на локальных, так и удаленных запоминающих устройствах.

Варианты осуществления могут быть реализованы в качестве реализуемого компьютером процесса (способа), вычислительной системы или промышленного изделия, такого как компьютерный программный продукт или машиночитаемый носитель информации. Компьютерный программный продукт может быть компьютерным носителем данных, который читается компьютерной системой и на котором закодирована компьютерная программа, которая содержит инструкции, предписывающие компьютерной или вычислительной системе выполнить характерный процесс(ы). Машиночитаемый носитель данных может быть, например, реализован посредством одного или более из временной компьютерной памяти, постоянной памяти, накопителя на жестком диске, накопителя на флэш-памяти, гибкого диска, компакт-диска и сопоставимых носителей данных.

В данном техническом описании под понятием «платформа» может пониматься сочетание компонентов программного и аппаратного обеспечения для управления функционированием компьютера и сети. Примеры платформ включают в себя, но не в ограничительном смысле, размещенную услугу, исполняемую множеством серверов, приложение, исполняемое одним сервером, или сопоставимые системы. Понятие «сервер» в целом относится к вычислительному устройству, исполняющему одну или более программ программного обеспечения, как правило, в сетевой среде. Тем не менее, сервер также может быть реализован в качестве виртуального сервера (программ программного обеспечения), исполняемого на одном или более вычислительных устройствах, рассматриваемых в сети в качестве сервера. Дополнительные подробности применительно к этим технологиям и примеры функционирования представлены ниже.

Фиг.1 является схемой, иллюстрирующей примеры локального и удаленного алгоритмов удаления повреждений. На схеме 100 исполняемый локально алгоритм 112 может осуществлять доступ к документам XML, которые локально хранятся на компьютере 110. Компьютером может быть любое вычислительное устройство, такое как настольный компьютер, ноутбук, переносной компьютер, сотовый телефон, интеллектуальный телефон, PDA или аналогичные устройства. Алгоритм может оценивать повреждение определений пользовательских стилей и удалять их (например, удалять определения пользовательских стилей). Также алгоритм может оставлять используемые определения стилей после определения тех, которые используются документом, чтобы предотвратить повреждение документа из-за количества стилей, которое превышает заранее определенное пороговое значение. Аналогичным образом, локальный алгоритм 122 может исполняться на компьютере 120 класса лэптоп и т.д.

Локальные алгоритмы могут быть предоставлены вычислительным устройствам (110, 120) разнообразными способами, такими как посредством загрузки из сети, установки вручную (например, используя портативное запоминающее устройство) или сопоставимыми способами. В соответствии с некоторыми вариантами осуществления несколько экземпляров локального алгоритма могут исполняться для обработки нескольких документов. В каждом случае необязательно активировать приложение, связанное с документом (например, приложение работы с электронными таблицами, приложение обработки текстов и т.д.), поскольку алгоритм может осуществлять доступ к частям, которые относятся к стилям, не открывая документ.

В других вариантах осуществления алгоритм удаления может размещаться на удаленном сервере 140. Локальные компьютеры 110 и 120 могут осуществлять доступ к документам на сервере документов через сеть(и) 130, как, например, в web-услуге совместного использования документов. Совместно используемые документы могут включать в себя электронные таблицы, документы обработки текстов, презентации и т.д., структурированные в качестве документов XML. Таким образом, документы могут храниться в пакетах, содержащих документы XML и прочие ресурсы, такие как определения стилей, связанные с документом(ами). Удаленный алгоритм может периодически или по запросу сканировать документы и удалять поврежденные пользовательские стили, не открывая соответствующие документы.

Фиг.2 иллюстрирует схему системы, отображающую главные компоненты алгоритма удаления повреждений. На схеме 200 обработчик 220 документов может быть фильтрующим приложением для быстрой обработки документов XML. Такой модуль может открывать множество документов XML, включая, но не в ограничительном смысле, электронные таблицы, диаграммы, документы обработки текстов и презентации. Обработчик 220 документов может быстро открывать документы посредством использования системного I/O.

Инструмент 230 формирования стилей может быть графическим набором инструментов для использования модуля базового приложения, а именно синтаксического анализатора 210 файла. Инструмент 230 формирования стилей может представлять пользователю интерфейс с тем, чтобы пользователь имел возможность графического взаимодействия с синтаксическим анализатором файла. Модуль 240 поддержки пакета может определять допустимость запрашиваемого пользователем или запрашиваемого системой пакета XML и открывать пакет в байтовом потоке. Синтаксический анализатор 210 файла может программным путем удалять неиспользуемые, продублированные или поврежденные стили из части пакета XML, которая относится к стилям, не активируя «толстого» клиента (полнофункциональное приложение, которое связано с конкретным типом документа), на основе анализа информации, которая содержится в частях пакета XML соответствующих файлов.

Фиг.3 иллюстрирует отдельные модули в алгоритме удаления повреждений. Модуль 300 синтаксического анализатора файла может реализовывать характерный алгоритм удаления повреждений, основанный на определении пользовательского стиля, в соответствии с некоторыми вариантами осуществления. Компонент 320 модуля 300 синтаксического анализатора файла получает информацию о стилях из частей пакета XML, которые относятся к стилям, применительно к документу, не активируя приложение «толстого» клиента, в то время как другой компонент 330 может копировать содержимое файла из одного экземпляра файла в другой. Впрочем, изменения могут выполняться над тем же самым файлом, который хранится в памяти. Модуль 300 синтаксического анализатора файла может удалять (310) неиспользуемые стили посредством сканирования всех частей, которые относятся к стилям, содержащихся в пакете XML (например, посредством компонента 320), сопоставляя стили, которые определены в документе, с частями, которые содержатся в пакете, и идентифицируя неиспользуемые и/или продублированные стили. Продублированные стили также могут удаляться.

Модуль 300 синтаксического анализатора файла также может осуществлять проверку (312) в отношении исправляемых стилей из числа пользовательских стилей. Стили по умолчанию (в противоположность пользовательским стилям), также именуемые как встроенные стили, менее восприимчивы к повреждению, однако в некоторых случаях они также могут быть повреждены. Поврежденные встроенные стили, как правило, не могут быть удалены с помощью объектной модели клиентского приложения, однако к ним может быть осуществлен доступ и они могут быть исправлены с помощью алгоритма, который описывается в данном документе. В соответствии с другими вариантами осуществления компонент модуля 300 синтаксического анализатора файла может приводить (314) все стили в нормальное состояние посредством перенастройки стилей в формат по умолчанию. Еще один компонент может предоставлять возможность для опционального отображения (316) документа.

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

Фиг.4 концептуально иллюстрирует удаление поврежденного определения стиля из документа XML. Алгоритм удаления, реализуемый синтаксическим анализатором 420 файла, может сканировать документ 410 с несколькими определениями стилей, некоторые из которых могут быть поврежденными, неиспользуемыми или продублированными. Как только идентифицированы поврежденные, неиспользуемые и/или продублированные стили, синтаксический анализатор 420 файла может предпринять попытку их удаления, что приводит в результате к документу 430 со скорректированными определениями стилей. Если удаление недопустимо или не выполнено, то синтаксический анализатор 420 файла может задать документу формат по умолчанию со стилями по умолчанию клиентского приложения посредством выполнения операции приведения в нормальное состояние.

Операции копирования и вставки между документами могут увеличить количество пользовательских стилей в итоговом документе, поскольку форматирование копируемых данных также переносится в новый документ. Может существовать заранее определенное предельное количество пользовательских стилей для каждого клиентского приложения. Если количество пользовательских стилей превышает предельное значение, то документ становится поврежденным и переходит в неисправимое состояние. Заранее определенное предельное значение пользовательских стилей до того, как произойдет неисправимое повреждение, может быть относительно высоким (например, 65534 для некоторых приложений работы с электронными таблицами). Тем не менее, в среде с совместным использованием документов, в которой данные в документе непрерывно модифицируются, копируются, вставляются несколькими пользователями, такое предельное значение может быть достигнуто за относительно короткий интервал времени. Для предотвращения возникновения разочарования пользователя и траты времени и энергии на повторное создание документа(ов) алгоритм удаления повреждений может исполняться в фоновом режиме такой услуги совместного использования документов, непрерывно сокращая количество определений стилей, связанных с каждым документом, посредством удаления поврежденных, неиспользуемых или продублированных стилей.

Алгоритм может использовать библиотеку системного ввода/вывода (I/O) для прямого доступа к файлам XML. Библиотеки системного I/O обеспечивают прямой доступ к поврежденным файлам. Это может исключить потребность в открытии поврежденного файла в ассоциированном приложении, таком как приложение обработки текстов, приложение работы с электронными таблицами, приложение работы с диаграммами, приложение просмотра или приложение работы с презентациями, с тем чтобы привести в порядок стили или другое содержимое.

В соответствии с некоторыми вариантами осуществления алгоритм удаления повреждений в документе XML может быть автономным исполняемым в командной строке файлом. В соответствии с другими вариантами осуществления алгоритм может быть реализован в качестве независимого приложения с графическим интерфейсом пользователя. В соответствии с дополнительными вариантами осуществления алгоритм может быть реализован в качестве библиотеки на стороне сервера, объединенной с приложениями на стороне сервера для автоматической коррекции документов (например, функция или набор инструментов на стороне сервера).

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

Фиг.5 является характерной сетевой средой, в которой могут быть реализованы варианты осуществления. Алгоритм удаления повреждений в пользовательских стилях может быть реализован посредством программного обеспечения, исполняемого на одном или более серверах 544 или одном сервере 546 (например, web-сервере), таком как размещенная услуга. Платформа может осуществлять связь с приложениями «тонкого» клиента на отдельных вычислительных устройствах, таких как интеллектуальный телефон 543, компьютер 542 класса лэптоп или настольный компьютер 541 (клиентские устройства) через сеть(и) 540.

Как рассмотрено выше, сервер документов может исполнять алгоритм на стороне сервера для обработки документов, которые хранятся на сервере. Пользователь может запустить алгоритм удаления повреждений на конечном устройстве (любом из клиентских устройств 541-543 или интеллектуальном телефоне, компьютере, интеллектуальной автомобильной консоли и т.д.). Алгоритм может удалять неиспользуемые или поврежденные стили из документов XML автоматически или по запросу.

Клиентские устройства 541-543 могут обеспечивать доступ к приложениям, исполняемым на удаленном сервере(ах) (например одном из серверов 544), как рассмотрено ранее. Сервер(ы) могут извлекать или сохранять соответствующие данные из/в хранилища 549 данных напрямую или через сервер 548 базы данных.

Сеть(и) 540 может быть выполнена с любой топологией серверов, клиентов, поставщиков интернет-услуг и средств связи. Система в соответствии с вариантами осуществления может обладать статической или динамической топологией. Сеть(и) 540 может быть выполнена в виде безопасных сетей, таких как корпоративная сеть, небезопасной сети, такой как беспроводная открытая сеть, или Интернет. Сеть(и) 540 также может координировать связь через другие сети, такие как Телефонная Коммутируемая Сеть Общего Пользования (PSTN) или сотовые сети. Кроме того, сеть(и) 540 может включать в себя беспроводные сети малого радиуса действия, такие как Bluetooth и аналогичные. Сеть(и) 540 обеспечивает связь между описанными здесь узлами. В качестве примера, а не ограничения, сеть(и) 540 может включать в себя беспроводные среды связи, такие как акустические, радиочастотные, инфракрасные или другие беспроводные среды связи.

Множество других конфигураций вычислительных устройств, приложений, источников данных и систем распределения данных может использоваться для реализации алгоритма удаления повреждений из документов XML. Кроме того, рассмотренные на фиг.5 сетевые среды служат лишь в целях иллюстрации. Варианты осуществления не ограничиваются характерными приложениями, модулями и процессами.

Фиг.6 и связанное с ней рассмотрение предназначены для обеспечения краткого, общего описания приемлемой вычислительной среды, в которой могут быть реализованы варианты осуществления. Со ссылкой на фиг.6 проиллюстрирована структурная схема характерной вычислительной рабочей среды для приложения в соответствии с вариантами осуществления, такой как вычислительное устройство 600. В базовой конфигурации вычислительное устройство 600 может быть клиентским устройством, исполняющим инструмент приведения в порядок документов с помощью удаления поврежденных стилей, и включает в себя, по меньшей мере, один процессор 602 и системную память 604. Вычислительное устройство 600 также может включать в себя множество процессоров, которые работают совместно при исполнении программ. В зависимости от конкретной конфигурации и типа вычислительного устройства, системная память 604 может быть временной (такой как RAM), постоянной (такой как ROM, флэш-память и т.д.) или неким сочетанием их обоих. Системная память 604, как правило, включает в себя операционную систему 605, приемлемую для управления функционированием платформы, такую как операционная система WINDOWS® от MICROSOFT CORPORATION, Редмонд, штат Вашингтон. Системная память 604 также может включать в себя одно или более приложений программного обеспечения, таких как программные модули 606, инструмент 622 работы со стилями и модуль 624 синтаксического анализатора файла.

Инструмент 622 работы со стилями может быть частью услуги, которая удаляет пользовательский стиль на основе повреждения в файлах XML на клиентской машине, серверах или других устройствах. Модуль 624 синтаксического анализатора файла может удалять поврежденные, неиспользуемые или продублированные стили из документов XML. Данная базовая конфигурация проиллюстрирована на фиг.6 компонентами, которые обведены пунктирной линией 608.

Вычислительное устройство 600 может обладать дополнительными функциями или функциональными возможностями. Например, вычислительное устройство 600 также может включать в себя дополнительные запоминающие устройства (съемные и/или несъемные), такие как, например, магнитные диски, оптические диски или лента. Такое дополнительное хранилище проиллюстрировано на фиг.6 посредством съемного хранилища 609 и несъемного хранилища 610. Машиночитаемый носитель данных может включать в себя временный или постоянный, съемный или несъемный носитель информации, реализованный любым способом или по любой технологии для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули и прочие данные. Системная память 604, съемное хранилище 609 и несъемное хранилище 610 являются примерами машиночитаемых носителей данных. Машиночитаемый носитель данных включает в себя, но не ограничивается, RAM, ROM, EEPROM, флэш-память или другую технологию памяти, CD-ROM, универсальный цифровой диск (DVD) или другое оптическое запоминающее устройство, магнитные кассеты, магнитную ленту, накопитель на магнитных дисках, или другие магнитные запоминающие устройства, или любой другой носитель информации, который может использоваться для хранения требуемой информации и доступ к которому может быть осуществлен посредством вычислительного устройства 600. Вычислительное устройство 600 также может иметь устройство(а) 612 ввода, такое как клавиатура, манипулятор типа мышь, перо, устройство голосового ввода, устройство тактильного ввода и сопоставимые устройства ввода. Также в состав может быть включено устройство(а) 614 вывода, такое как дисплей, громкоговорители, принтер и другие типы устройств вывода. Эти устройства хорошо известны в соответствующей области техники, и их дальнейшее рассмотрение не требуется.

Вычислительное устройство 600 также может содержать соединения 616 связи, которые позволяют устройству осуществлять связь с другими устройствами 618, как например, через беспроводную сеть в распределенной вычислительной среде, спутниковую линию связи, сотовую линию связи или сопоставимые механизмы. Другие устройства 618 могут включать в себя компьютерное устройство(а), которое исполняет приложения связи, другие серверы каталогов или политик, и сопоставимые устройства. Соединение(я) 616 связи является одним примером сред связи. Среды связи могут содержать в себе машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другой механизм транспортировки, и включают в себя любое средство доставки информации. Понятие «модулированный сигнал данных» означает сигнал, который обладает одной или более своими характеристиками, которые устанавливаются или изменяются таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, среды связи включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и прочие беспроводные среды.

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

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

Фиг.7 иллюстрирует логическую блок-схему для процесса 700 удаления поврежденных стилей в документах XML в соответствии с вариантами осуществления. Процесс 700 может быть реализован алгоритмом на стороне клиента или алгоритмом на стороне сервера как части сервера хранения документов.

Процесс 700 начинается с операции 710, которая может проверять то, что пакет является пакетом XML, идентифицируя файл как пакет XML, и определять, является ли пакет XML допустимым. Допустимость пакета XML может определять, может ли применяться алгоритм для коррекции какого-либо повреждения стиля в документе. Алгоритм может определять допустимость файла XML посредством проверки того, обладает ли файл всеми частями, которые определены стандартом для пакетирования документов XML. На операции 720 алгоритм может считывать информацию о стилях из частей пакета, которые относятся к стилям, не открывая соответствующий документ(ы) в приложении «толстого» клиента. Собранная информация о стилях может использоваться для сопоставления на операции 730 стилей с частями документа, определяя на операции 740 неиспользуемые, поврежденные и продублированные стили.

Другой точкой принятия решения для алгоритма может быть количество стилей. Как упомянуто ранее, может существовать предельное значение для количества пользовательских стилей, которые могут использоваться в документе. Если это предельное значение превышено, то весь документ может быть поврежден и неисправим. Таким образом, алгоритм может корректировать повреждения посредством удаления неиспользуемых и/или продублированных стилей, как впрочем, и поврежденных, на операции 750. В качестве альтернативы, алгоритм может возвращать документ назад к стилям по умолчанию. Алгоритм также может идентифицировать и удалять другое поврежденное содержимое, подобное поврежденным диапазонам имен, и удалять их. В случае другого содержимого подход аналогичен тому, который используется для стилей: могут быть считаны определения частей; может быть определено, повреждена ли часть; если часть не повреждена, может быть идентифицировано содержимое, которое требуется удалить (например, тестирование на дубликаты, тестирование на то, используется ли в документе часть содержимого, и разметка как используемой и/или неиспользуемой). Затем пользователям может быть предоставлена возможность принятия решения по пути приведения в порядок, например, оставить или удалить определения, помеченные как неиспользуемые.

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

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

1. Способ, выполняемый, по меньшей мере, частично в вычислительном устройстве, для удаления повреждений стилей из основанных на расширяемом языке разметки (XML) документов, при этом способ содержит этапы, на которых:
считывают информацию о стилях, связанную с основанным на XML документом;
определяют по меньшей мере один из ряда неиспользуемых, поврежденных и продублированных стилей посредством сопоставления определений стилей для этого документа с частями, которые относятся к стилям, в пакете документов;
удаляют по меньшей мере один из упомянутого ряда неиспользуемых, поврежденных и продублированных стилей, не открывая основанный на XML документ в полнофункциональном приложении, которое связано с основанным на XML документом;
определяют поврежденные диапазоны имен; и
удаляют поврежденные диапазоны имен из основанного на XML документа.

2. Способ по п. 1, дополнительно содержащий этап, на котором определяют, является ли пакет документов допустимым пакетом XML.

3. Способ по п. 1, дополнительно содержащий этапы, на которых:
представляют опцию по возврату основанного на XML документа в формат по умолчанию; и
в ответ на подтверждающий выбор возвращают основанный на XML документ к формату по умолчанию посредством удаления всех пользовательских стилей.

4. Способ по п. 1, в котором основанный на XML документ представляет собой одно из электронной таблицы, диаграммы, документа обработки текстов и презентации.

5. Способ по п. 1, дополнительно содержащий этап, на котором определяют, содержит ли основанный на XML документ пользовательские стили в количестве, большем заранее определенного их количества.

6. Способ по п. 5, дополнительно содержащий этап, на котором возвращают основанный на XML документ к формату по умолчанию посредством удаления всех пользовательских стилей, если в основанном на XML документе имеются пользовательские стили в количестве, большем заранее определенного их количества.

7. Способ по п. 1, дополнительно содержащий этапы, на которых:
представляют пользователю информацию о стилях основанного на XML документа; и
удаляют неиспользуемые, поврежденные и продублированные стили после подтверждения пользователя.

8. Способ по п. 1, дополнительно содержащий этап, на котором удаляют неиспользуемые, поврежденные и продублированные стили автоматически.

9. Способ по п. 8, в котором неиспользуемые, поврежденные и продублированные стили удаляются во время автоматического восстановления основанного на XML документа.

10. Вычислительное устройство для удаления повреждений стилей из документов расширяемого языка разметки (XML), содержащее:
память;
процессор, соединенный с памятью, причем процессор исполняет модуль в связи с инструкциями, которые хранятся в памяти, при этом модуль выполнен с возможностью:
определять, является ли пакет документов, включающий в себя основанный на XML документ, который будет анализироваться, допустимым пакетом XML,
считывать информацию о стилях, которая связана с основанным на XML документом,
определять по меньшей мере один из ряда неиспользуемых, поврежденных и продублированных стилей посредством сопоставления определений стилей для основанного на XML документа с частями, которые относятся к стилям, в пакете документов,
удалять по меньшей мере один из упомянутого ряда неиспользуемых, поврежденных и продублированных стилей, не открывая основанный на XML документ в полнофункциональном приложении, которое связано с основанным на XML документом,
определять поврежденные диапазоны имен и
удалять поврежденные диапазоны имен из основанного на XML документа.

11. Вычислительное устройство по п. 10, в котором модуль дополнительно выполнен с возможностью:
определять, имеются ли в основанном на XML документе пользовательские стили в количестве, большем заранее определенного их количества;
представлять опцию по возврату основанного на XML документа к формату по умолчанию; и
в ответ на подтверждающий выбор осуществлять возврат основанного на XML документа к формату по умолчанию посредством удаления всех пользовательских стилей.

12. Вычислительное устройство по п. 10, в котором модуль является одним из программы, исполняемой в командной строке, программной библиотеки и набора инструментов сервера.

13. Вычислительное устройство по п. 10, в котором модуль использует системный компонент ввода/вывода для непосредственного доступа к основанному на XML документу.

14. Вычислительное устройство по п. 10, в котором модуль реализован в услуге совместного использования документов, автоматически удаляющей повреждения стилей из совместно используемых документов в услуге.

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

16. Вычислительное устройство по п. 10, в котором модуль дополнительно выполнен с возможностью определять допустимость пакета документов на основе оценки того, присутствуют ли в пакете документа все части, определяемые стандартным протоколом пакетирования документов.

17. Машиночитаемый носитель данных, на котором хранятся инструкции для удаления повреждений стилей из документов расширяемого языка разметки (XML), при этом инструкции содержат:
определение того, является ли пакет документов, включающий в себя основанный на XML документ, который будет анализироваться, допустимым пакетом XML;
считывание информации о стилях, которая связана с основанным на XML документом;
определение того, имеет ли основанный на XML документ пользовательские стили в количестве, большем заранее определенного их количества;
возврат основанного на XML документа к формату по умолчанию посредством удаления всех пользовательских стилей, если в основанном на XML документе имеется больше, чем заранее определенное количество пользовательских стилей; в противном случае
определение по меньшей мере одного из ряда неиспользуемых, поврежденных и продублированных стилей посредством сопоставления определений стилей для основанного на XML документа с частями, которые относятся к стилям, в пакете документов;
удаление по меньшей мере одного из упомянутого ряда неиспользуемых, поврежденных и продублированных стилей, не открывая основанный на XML документ в полнофункциональном приложении, которое связано с основанным на XML документом; и
определение поврежденных диапазонов имен; и
удаление поврежденных диапазонов имен из основанного на XML документа.

18. Машиночитаемый носитель данных по п. 17, при этом полнофункциональное приложение, которое связано с основанным на XML документом, включает в себя одно из приложения обработки текстов, приложения работы с электронными таблицами, приложения работы с презентациями, приложения работы с диаграммами и приложения просмотра.

19. Машиночитаемый носитель данных по п. 17, при этом некорректное значение в XML заменяется посредством установки этого некорректного значения в заранее определенное значение по умолчанию.



 

Похожие патенты:

Изобретение относится к компьютерной технике, а именно к анализу текстов. Технический результат - эффективная обработка новых слов, отсутствующих в используемом реестре значений, добавление этих понятий в реестр значений и использование их во время дальнейшего анализа.

Изобретение относится к компьютерной технике, а именно к анализу текстов. Технический результат - эффективная обработка новых слов, отсутствующих в используемом реестре значений, добавление этих понятий в реестр значений и использование их во время дальнейшего анализа.

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

Изобретение относится к способам поиска на устройствах хранения данных электронных документов, похожих стилистически и по смыслу на выбранный документ. Техническим результатом является повышение точности поиска подобных электронных документов в массиве документов различного стиля.

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

Настоящее изобретение относится к технологиям поиска информации в электронных ресурсах и способам представления результатов поиска. Технический результат состоит в повышении точности и скорости поиска информации.

Изобретение относится к технологиям поиска. Техническим результатом является повышение точности поиска информации за счет обеспечения возможности получения пользователем только релевантных результатов поиска за счет использования семантических запросов.

Изобретение относится к области обработки данных, а именно к распознаванию текстовой информации. Техническим результатом является повышение производительности системы содержательной обработки электронных документов и увеличение числа анализируемых источников информации.

Изобретение относится к области систем управления базами данных (СУБД). Техническим результатом является обеспечение автоматического формирования реляционного описания синтаксиса команды на основе метаописания синтаксиса команды.

Изобретение относится к решениям в области обработки массивов данных, в частности к решениям в области обработки структурированных массивов данных, содержащих текст на естественном языке.

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

Изобретение относится к области передачи информации. Технический результат - уменьшение навигационных затрат при передаче текстовой информации.

Группа изобретений относится к области конверсии данных, причем первые данные имеют первую табличную структуру, вторые данные имеют вторую табличную структуру. Техническим результатом является повышение точности, а также обеспечение возможности применения данного способа для множества различных структур данных.
Изобретение относится к кодированию числовых данных и передачи структур данных в телекоммуникационной системе, основанной на IP-протоколе. .

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

Изобретение относится к области шаблонов электронных форм, предназначенных для сбора информации определенного вида. .

Изобретение относится к способам и системам для преобразования иерархической структуры данных в плоскую структуру данных. .

Изобретение относится к способам проверки правильности документа расширяемого языка разметки (XML) и выдачи сообщения о нарушениях схемы в режиме реального времени.

Изобретение относится к области обработки, хранения и передачи команд телекодового управления в комплексах оконечной связи. Технический результат - повышение надежности, достоверности и информационной безопасности команд телекодового управления. Способ содержит: на передающей стороне выделяют постоянную и переменную части команды телекодового управления, в массив сжатой информации помещают код индекса постоянной части команды телекодового управления в базе данных команд телекодового управления, переменную часть команды телекодового управления нормируют и также помещают в массив сжатой информации, выполняют статистическое кодирование массива сжатой информации. При восстановлении исходных данных на приемной стороне после статистического декодирования принятой информации по коду индекса постоянной части команды телекодового управления в базе данных команд телекодового управления находят постоянную часть команды телекодового управления и записывают ее в массив восстановленной информации, затем для переменной части команды телекодового управления выполняют операцию, обратную ее нормализации, проверяют допустимый диапазон значений переменной части команды телекодового управления и при выполнении этой проверки помещают переменную часть команды в массив восстановленной информации. При отсутствии кода индекса постоянной части команды телекодового управления в базе данных команд телекодового управления или при невыполнении проверки допустимого диапазона значений переменной части команды телекодового управления в массив восстановленной информации записывают признак стирания команды телекодового управления. 5 з.п. ф-лы.
Наверх