Повышение уровня автоматизации при инициализации компьютерной системы для доступа к сети
Иллюстрации
Показать всеИзобретение относится к вычислительной технике. Техническим результатом является повышение уровня автоматизации при инициализации и конфигурировании компьютерной системы для доступа к сети. Компьютерная система предпринимает попытку аутентификации на сервере для предоставления авторизации для доступа к первой сети. Сервером определяется, что компьютерная система не авторизована для доступа к первой сети. Компьютерной системе предоставляется авторизация для доступа ко второй сети по меньшей мере с целью загрузки файлов, необходимых для получения доступа к первой сети. В компьютерной системе автоматически представляется пользовательский интерфейс для приема вводимой пользователем информации для подписки. Первый основанный на схеме документ, включающий в себя вводимую пользователем информацию, пересылается серверу. Если сервер определяет, что вводимая пользователем информация является приемлемой, то принимается второй основанный на схеме документ, который включает в себя указание на авторизацию для доступа к первой сети. Компьютерной системой выполняется третий основанный на схеме документ для совместимого конфигурирования компьютерной системы для получения доступа к первой сети. 4 н. и 28 з.п. ф-лы, 4 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к конфигурированию компьютерных систем для обмена данными соответствующим образом по сети, и, в частности, к автоматическому предоставлению компьютерной системе соответствующей информации, так что компьютерная система может быть инициализирована для обмена данными по сети.
Уровень техники
Компьютерные системы и относящаяся к ним техника оказывают влияние на многие аспекты общества. В самом деле, возможность компьютерных систем обрабатывать информацию преобразила образ нашей жизни и работы. Компьютерные системы теперь, как правило, выполняют множество задач (например, обработку текста, планирование и управление базами данных), которые до появления компьютерной системы выполнялись вручную. В последнее время компьютерные системы были соединены друг с другом, образуя компьютерные сети, по которым компьютерные системы могут обмениваться данными электронным образом с целью совместного использования данных. В результате многие из задач, выполняемых на компьютерной системе (например, получение доступа к электронной почте и просмотр веб-страниц), включают в себя электронный обмен данными с одной или несколькими другими электронными системами по компьютерной сети (например, Интернет).
Для того чтобы электронным образом обмениваться данными по компьютерной сети, компьютерной системе может потребоваться авторизация для доступа к компьютерной сети. Например, перед тем как компьютерная система сможет электронным образом обмениваться данными по Интернет, пользователю компьютерной системы часто необходимо зарегистрироваться у провайдера услуг Интернет (ниже упоминаемого как ПУИ, ISP), который может авторизовать получение доступа к Интернет. Регистрация у ПУИ обычно включает в себя обмен данными некоторого вида, отличного от электронного обмена данными по сети. Например, пользователю, возможно, потребуется инициировать телефонную связь с представителем ПУИ с целью открытия счета у ПУИ.
Во время этой телефонной связи пользователь может предоставить представителю ПУИ общую информацию (например, фамилию, адрес и т.д.) и форму оплаты (например, номер кредитной карточки). В свою очередь, ПУИ может предоставить пользователю имя пользователя и пароль, которые могут быть использованы для аутентификации пользователя и авторизации получения доступа в Интернет. Во многих случаях ПУИ также посылает по почте или по другой службе доставки программное обеспечение для предоставления доступа (например, программу набора телефонного номера, веб-браузер и т.д.) и/или аппаратное обеспечение для предоставления доступа (например, модем цифровой абонентской линии (ЦАЛ) или кабельный модем), которые должны быть установлены в компьютерной системе. Для того чтобы пользователь мог подключиться к ПУИ и, тем самым, получить доступ в Интернет, любое программное и аппаратное обеспечение для предоставления доступа должно быть правильно установлено в компьютерной системе. По существу, пользователю, желающему получить доступ в Интернет, часто необходимо ждать, пока такое программное и аппаратное обеспечение будет получено. Затем, после того как программное и/или аппаратное обеспечение для предоставления доступа будет получено, пользователь должен правильно установить в компьютерной системе программное и аппаратное обеспечение для предоставления доступа, чтобы получить доступ в Интернет.
Если оно правильно установлено, то пользователь может подключиться к ПУИ и ввести имя пользователя и пароль, предоставленные ПУИ. ПУИ может аутентифицировать пользователя, основываясь на имени пользователя и пароле и, если они соответствующие (например, когда платежи пользователя действуют до настоящего времени), то ПУИ может авторизовать компьютерную систему пользователя для доступа в Интернет. К сожалению, если пользователь в настоящий момент не зарегистрирован у ПУИ, то в большинстве случаев нет возможности использовать электронный обмен данными по Интернет для инициирования процесса регистрации. Это потому, что большинство ПУИ доступны из Интернет, и когда пользователь не имеет возможности получить доступ в Интернет, то у него, в свою очередь, нет возможности получить доступ к ПУИ для регистрации.
Таким образом, во многих случаях пользователи, желающие получить доступ в Интернет, вынуждены общаться с ПУИ по телефону и ожидать доставки соответствующего программного и/или аппаратного обеспечения для предоставления доступа. Далее, пользователи, которые предпринимают попытку подключиться к ПУИ без соответствующего мандата (например, имени пользователя и пароля) или без авторизации (например, платежи не действуют к настоящему времени), обычно полностью блокируются от всякого сетевого доступа как к ПУИ, так и к Интернет. Таким образом, даже если пользователь знает номер доступа ПУИ для набора (или сетевой адрес ПУИ, чтобы предпринять попытку подключиться к нему), пользователю может все же потребуется общение с ПУИ, используя другие способы связи, с целью регистрации (или исправления нехватки на счету) у ПУИ.
В некоторых случаях, таких как, например, при подключении к ПУИ из дома, может быть допустимой задержка, связанная с ожиданием получения программного и аппаратного обеспечения для предоставления доступа. Однако в других случаях такая задержка может быть неприемлемой. Например, во время путешествия в аэропорту или находясь в гостинице, пользователь с мобильной компьютерной системой, такой как, например, переносной компьютер, может захотеть получить доступ в Интернет. Частично, как результат этой потребности мобильного доступа, многие гостиницы и аэропорты предлагают доступ в Интернет посредством как проводных служб, так и беспроводных. Получение авторизации для доступа в Интернет посредством этих служб обычно требует электронного обмена данными некоторого вида со службой для ввода информации о пользователе и информации об оплате.
Обычно эти службы требуют, чтобы пользователь вставил кабель в карту сетевого интерфейса в мобильной компьютерной системе (или использовал карту беспроводного сетевого интерфейса для инициирования подключения) и затем открыл веб-браузер. Однако пользователь должен знать, что эти действия должны быть выполнены до его попытки зарегистрироваться в службе. Например, если пользователь не знает, что он должен открыть веб-браузер, то, по существу, для пользователя нет возможности зарегистрироваться в службе. Когда веб-браузер открыт, то служба тогда перенаправляет любой обмен данными с веб-браузера через процесс регистрации, основанный на Интернет. Пользователю может быть представлен интерфейс для ввода информации для регистрации (например, фамилии, номера комнаты, номера кредитной карточки и т.д.). Если информация для регистрации является соответствующей, то пользователь может быть авторизован для доступа в Интернет, используя службу.
К сожалению, многие службы являются частными, и каждая служба может потребовать различных конфигураций компьютерной системы и/или информации для регистрации для авторизации доступа в Интернет. Однако пользователь может не знать перед попыткой регистрации в службе, какие потребуются конфигурация системы и/или информация для регистрации. Таким образом, даже если пользователь успешно зарегистрируется в службе в одном месте (например, аэропорту), пользователю будет отказано в регистрации в другом месте (например, гостинице) вследствие неправильно сконфигурированной компьютерной системы или отсутствия соответствующей информации для регистрации.
Далее, большинство служб в гостинице и аэропорту авторизуют доступ в Интернет только в течение короткого периода времени (например, 24 часа) до того, как истечет срок действия счета. После того как истечет срок действия счета, пользователю, возможно, потребуется снова открыть веб-браузер (и, возможно, также повторно подключить кабель) и повторно ввести всю информацию для регистрации, которая была ранее введена. Таким образом, даже если первоначально пользователь знал, что он должен открыть веб-браузер для регистрации в службе, пользователь может не знать, что веб-браузер должен открываться каждый день с целью повторной регистрации в службе. Часто информация для регистрации, введенная в предыдущей регистрации (например, в предыдущий день), должна быть повторно введена, даже если никакая информация для регистрации не изменилась. Если информация для регистрации в некоторой степени значительная, то повторная регистрация через короткий период времени может вызывать раздражение у пользователя, который ввел соответствующую информацию для регистрации в прошлом.
Кроме того, у большинства, если не у всех, этих служб отсутствует механизм изменения конфигурации программного обеспечения компьютерной системы. Т.е. служба типично не может предоставить компьютерной системе машинно-считываемые команды, которые могут быть обработаны в компьютерной системе, чтобы компьютерная система стала совместимой со службой. Служба может предоставить команды на языке гипертекстовой разметки (ЯГР, HTML) как часть веб-интерфейса для приема информации для регистрации. Однако команды на HTML типично не могут быть обработаны компьютерной системой для модифицирования конфигурации компьютерной системы. Таким образом, любые несовместимости в программном обеспечении должны быть доработаны пользователем, у которого могут отсутствовать технические знания или желание переконфигурировать программное обеспечение для его совместимости со службой.
Поэтому, были бы полезными системы, способы, компьютерные программные продукты и структуры данных для повышения уровня автоматизации при инициализации и конфигурировании компьютерной системы для доступа к сети.
Краткое изложение сущности изобретения
Вышеописанные проблемы с известным уровнем техники решаются посредством принципов настоящего изобретения, которые направлены на способы, системы, компьютерные программные продукты и структуры данных для повышения уровня автоматизации при инициализации и конфигурировании компьютерной системы для доступа к сети.
Сервер включает в себя функциональную возможность авторизовать клиентам доступ ко второй сети (например, Интернет). Сервер может быть расположен в первой сети, которая отделена от второй сети, или может быть расположен во второй сети. Клиент посылает мандат серверу при попытке аутентификации на сервере. Основываясь на мандате, сервер может авторизовать клиента по меньшей мере для частичного доступа ко второй сети и/или может отказать в доступе ко второй сети и авторизовать клиента, по меньшей мере частично, для доступа к первой сети. Сервером может быть сервер службы удаленной аутентификации пользователей по коммутируемым линиям (СУАПКЛ, RADIUS), который расположен в первой сети. Клиентам может быть предоставлен частичный доступ к первой или второй сети по меньшей мере с целью аутентификации на сервере и загрузки файлов инициализации, используемых для предоставления полного доступа ко второй сети. Таким образом, компьютерные системы, которые в данный момент не могут получить доступ к ресурсам, расположенным во второй сети, могут электронным образом загрузить файлы инициализации для предоставления доступа к этим ресурсам.
Определение, должны ли быть переданы данные от клиента в первую сеть или вторую сеть, может быть выполнено с использованием любого количества методов, таких как, например, виртуальные локальные вычислительные сети (ВЛВС, VLAN), IP-фильтрация (ПИ - протокол Интернет, IP), виртуальные частные сети (ВЧС, VPN) или использование протоколов IP-безопасности. В некоторых вариантах выполнения аналогичные методы также могут быть использованы в одной сети. В этих вариантах выполнения сервер (основываясь, по меньшей мере частично, на принятом мандате) может авторизовать клиента по меньшей мере для частичного доступа к одной сети, как, например, посредством авторизации клиента для доступа к выбранным компьютерным системам или модулям в одной сети.
Посылка мандата может включать в себя посылку сообщения ответа расширяемого протокола аутентификации (РПА, ЕАР)/ идентификации от клиента серверу. Если клиент предпринимает попытку подключения к сети через точку доступа, то сообщение ответа РПА/идентификации может быть инкапсулировано в сообщение некоторого другого типа, которое может быть передано через точку доступа. В вариантах выполнения ВЛВС точка доступа может вставить заголовок тега в инкапсулирующее сообщение для указания устройству маршрутизации данных, что инкапсулирующее сообщение необходимо переслать в первую сеть. Точка доступа также может быть сконфигурирована для блокировки обмена данными от клиента, который использует протоколы, отличающиеся от РПА и 802.1Х.
Если мандаты не авторизуют полный доступ ко второй сети (например, мандаты не могут быть аутентифицированы, мандатами являются гостевые мандаты, или аутентифицированный пользователь не авторизован), то сервер может ответить посылкой клиенту уведомления, такого как, например, уведомление РПА или объект тип/длина/значение (ТДЗ) в защищенном РПА (ЗРПА, РЕАР). Уведомление может быть зашифровано и проверена его целостность в соответствии с ЗРПА. Уведомление может включать в себя унифицированный идентификатор ресурсов (УИР, URI) на главный документ, который содержит информацию для инициализации клиента. Уведомление также может включать в себя условия (например, подписка, возобновление и т.д.), которым пользователь должен удовлетворять, чтобы получить авторизацию для полного доступа к ресурсам, расположенным во второй сети.
Уведомление может указывать на точку доступа, для которой обмены данными, использующие протокол передачи гипертекста (ППГ), должны быть разрешены (разблокированы), так чтобы клиент мог загружать главный документ посредством обращения к включенному URI (например, посредством выполнения запросов HTTP или HTTPS). В ответ на уведомление клиент может автоматически загрузить главный документ. Главный документ может содержать URI на подфайлы, включающие подфайл конфигурации и подфайл подписки, которые также могут быть автоматически загружены. Когда один ПУИ использует услуги другого ПУИ, то один главный документ также может содержать URI на другие главные документы. Таким образом, существует малая потребность в обращении к провайдеру услуг, используя другие способы связи с целью запроса файлов для предоставления доступа к сети. Главный документ и любые связанные с ним подфайлы могут быть определены в соответствии со схемой расширяемого языка разметки (РЯР, XML). Например, подфайл конфигурации может быть определен в соответствии с XML-схемой конфигурации.
В некоторых вариантах выполнения доступ к главному документу и подфайлам может быть получен посредством механизмов, отличных от URI, предусмотренного в уведомлении, таких как, например, посредством обращения к главному документу и/или подфайлам со съемного считываемого компьютером носителя (дискеты, карты флэш-памяти и т.д.). Это выгодно в вариантах выполнения, которые требуют информации инициализации до того, как может быть сконфигурирована возможность подключения, такая как, например, удаленный набор номера. После установления возможности подключения главный документ и подфайлы впоследствии могут быть обновлены из сети.
Загружаемый подфайл подписки может быть обработан на клиенте, чтобы автоматически представлять пользовательский интерфейс, который может принимать вводимую пользователем информацию. Таким образом, пользователю не нужно предварительно знать, как вызвать представление пользовательского интерфейса. Пользовательский интерфейс может быть представлен на множестве различных письменных языках, таких как, например, английский, японский, французский или немецкий. Если он представлен, то вводимая пользователем информация может быть принята в пользовательский интерфейс. Если пользовательский интерфейс представлен с целью возобновления регистрации, то может быть уменьшено количество вводимой пользователем информации, принимаемой пользовательским интерфейсом. Например, ранее введенная пользователем информация может быть извлечена из базы данных пользователей. Может быть, что представленный пользовательский интерфейс включает в себя только средства управления «ДА» и «НЕТ» для авторизации дальнейших платежей по кредитной карточке.
Первый основанный на схеме документ, который включает в себя вводимую пользователем информацию, предъявляется серверу (например, посредством выполнения запросов HTTP или HTTPS). Это может включать в себя предъявление XML-документа, который определяется в соответствии с XML-схемой подписки. После предъявления первого основанного на схеме документа клиент может принять указание, что сервер авторизовал клиента для доступа к ресурсам, расположенным во второй сети. Это может включать в себя прием второго основанного на схеме документа, который включает в себя идентификатор пользователя и пароль, или который включает в себя указание, что был подтвержден платеж по кредитной карточке. В вариантах выполнения ВЛВС, когда клиент авторизуется для доступа к ресурсам, расположенным во второй сети, точка доступа может вводить «заголовки тега» в клиентские данные для указания устройству маршрутизации данных, что клиентские данные должны быть пересланы во вторую сеть. Точка доступа также может разрешить обмен данными, используя другие заблокированные в настоящий момент протоколы, такие как, например, простой протокол электронной почты (ППЭП, SMTP) и протокол динамического управления хоста (ПДУХ, DHCP).
Третий основанный на схеме документ выполняется для конфигурирования клиента для совместимой работы со второй сетью. Он может включать в себя выполнение подфайла конфигурации, который был принят от сервера. Подфайл конфигурации может быть выполнен для конфигурации типа подключения, протоколов обмена данными, типа аутентификации, типа шифрования и т.д. Подфайл конфигурации может быть выполнен практически в любое время после его загрузки. Нет требования, чтобы подфайл конфигурации выполнялся перед или после приема вводимой пользователем информации. В результате выполнения основанного на схеме документа клиент может быть переконфигурирован с малым вмешательством пользователя или без него. Это освобождает пользователей от необходимости ручной переконфигурации клиента для совместимой работы со второй сетью.
Дополнительные признаки и преимущества изобретения будут изложены в нижеследующем описании, и частично будут очевидны из описания, или могут быть получены из практики изобретения. Признаки и преимущества изобретения могут быть реализованы и получены посредством инструментальных средств и комбинаций, конкретно указанных в прилагаемой формуле изобретения. Эти и другие признаки настоящего изобретения станут более очевидными из нижеследующего описания и прилагаемой формулы изобретения, или могут быть получены из практики изобретения, как изложено ниже.
Краткое описание чертежей
Для того чтобы описать то, как могут быть реализованы вышеизложенные и другие преимущества и признаки изобретения, более подробное описание изобретения, кратко описанное выше, может быть представлено в виде ссылки на его конкретные варианты выполнения, которые проиллюстрированы на прилагаемых чертежах. Понимая, что чертежи изображают только типичные варианты выполнения изобретения и, поэтому, не должны рассматриваться как ограничивающие его объем, изобретение описывается и объясняется с дополнительной определенностью и подробностями посредством использования прилагаемых чертежей, на которых:
На фиг.1 представлена соответствующая операционная среда для принципов настоящего изобретения.
На фиг.2 представлен пример сетевой архитектуры, которая может способствовать повышению уровня автоматизации при инициализации клиента.
На фиг.3 представлена схема последовательности операций, иллюстрирующая пример способа инициализации компьютерной системы.
На фиг.4 представлен, в общих чертах, пример сетевой архитектуры, которая может обеспечить доступ к первой сети, в то же самое время ограничивая доступ ко второй сети.
Подробное описание предпочтительных вариантов выполнения
Принципы настоящего изобретения обеспечивают повышение уровня автоматизации при инициализации и конфигурировании компьютерной системы для получения доступа к сети. Клиент предпринимает попытку получить авторизацию доступа к ресурсам, расположенным во второй сети (например, Интернет). Клиент посылает мандат на точку доступа, которая связана с возможностью обмена данными с сервером (расположенным в первой сети или расположенным во второй сети), который может авторизовать доступ ко второй сети. Сервер принимает мандат клиента и определяет, авторизует ли мандат клиента получение доступа ко второй сети.
Если не авторизуется полный доступ к ресурсам, расположенным во второй сети, то сервер может авторизовать ограниченный доступ к первой сети или второй сети, так что клиент может загружать файлы инициализации для предоставления полного доступа к ресурсам, расположенным во второй сети. В некоторых вариантах выполнения (например, когда сервер расположен в первой сети) сервер может авторизовать (по меньшей мере ограниченный) доступ к первой сети, в то же самое время ограничивая доступ ко второй сети. В других вариантах выполнения (например, когда сервер расположен во второй сети) сервер может авторизовать ограниченный доступ ко второй сети. Ограничивающий и/или ограничительный доступ к сети может быть осуществлен с использованием многочисленных методов, таких как, например, виртуальные локальные вычислительные сети (ВЛВС), IP-фильтрация, виртуальные частные сети (ВЧС) или протоколы IP-безопасности.
Сервер посылает клиенту унифицированный идентификатор ресурсов (УИР, URI) на главный документ, который содержит информацию для инициализации клиента. Главный документ может содержать дополнительные УИР на подфайлы или другие главные документы, включая подфайл конфигурации и подфайл подписки (подписи). После приема URI клиент может автоматически загрузить любые соответствующие файлы инициализации. Главный документ и любые связанные с ним подфайлы могут быть определены в соответствии со схемами расширяемого языка разметки (РЯР, XML).
Загруженный подфайл подписки может быть обработан на клиенте так, чтобы автоматически представлять пользовательский интерфейс, который может принимать вводимую пользователем информацию. Клиент может предъявить серверу первый, основанный на схеме документ, включающий вводимую пользователем информацию. Это может включать в себя предъявление XML-документа, определенного в соответствии с XML-схемой. После предъявления первого основанного на схеме документа клиент может принять второй, основанный на схеме документ, который указывает (например, посредством включения идентификатора пользователя и пароля), что клиент был авторизован для доступа к ресурсам, расположенным во второй сети.
Третий основанный на схеме документ выполняется на клиенте для конфигурирования клиента для совместимой работы со второй сетью. Это может включать в себя выполнение подфайла конфигурации, который был принят от сервера. Подфайл конфигурации может быть выполнен для конфигурирования типа подключения, протоколов обмена данными, типа аутентификации, типа шифрования и т.д. Подфайл конфигурации может быть выполнен практически в любой момент времени после его загрузки. Нет требования, чтобы подфайл конфигурации был выполнен перед или после приема вводимой пользователем информации.
Варианты выполнения в объеме настоящего изобретения включают в себя считываемые компьютером носители для переноса или хранения на них выполняемых компьютером команд или структур данных. Такие считываемые компьютером носители могут быть любыми подходящими носителями, к которым может обращаться компьютер общего назначения или специализированный компьютер. В качестве примера, а не ограничения, такие считываемые компьютером носители могут содержать физические считываемые компьютером носители, такие как оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), электрически стираемое программируемое ПЗУ (ЭСППЗУ), компакт-диск или другое запоминающее устройство на оптическом диске, запоминающее устройство на магнитном диске или другие магнитные запоминающие устройства, или любой другой носитель, который может быть использован для переноса или хранения требуемого средства программного кода в виде выполняемых компьютером команд или структур данных и к которым может обратиться компьютер общего назначения или специализированный компьютер.
Когда информация пересылается или передается по сети или через другое подключение для обмена данными (или с постоянным соединением, или беспроводное, или комбинацию постоянного соединения или беспроводного) на компьютерную систему, компьютерная система правильно рассматривает подключение как считываемый компьютером носитель. Таким образом, любое такое подключение правильно выражается считываемым компьютером носителем. Комбинации вышеописанных также должны быть включены в объем считываемых компьютером носителей. Выполняемые компьютером команды содержат, например, любые команды и данные, которые вызывают выполнение компьютерной системой общего назначения, специализированной компьютерной системой или специализированным вычислительным устройством некоторой функции или группы функций. Выполняемой компьютером командой могут быть, например, двоичные коды, команды промежуточного формата, такие как язык ассемблер, или даже исходный код.
В этом описании и в последующей формуле изобретения «логический канал обмена данными» определяется как любой канал обмена данными, который может выполнять транспортировку электронных данных между двумя объектами, такими как компьютерные системы или модули. Реальное физическое представление канала обмена данными между двумя объектами не является важным и может быть изменено во времени. Логический канал обмена данными может включать в себя части системной шины, локальной вычислительной сети (например, сети Эзернет, Ethernet), глобальной сети, Интернет, их комбинации или части любого другого канала, который может способствовать транспортировке электронных данных. Логические каналы обмена данными могут включать в себя каналы с постоянным соединением, беспроводные каналы или комбинации каналов с постоянным соединением и беспроводных каналов. Логические каналы обмена данными также могут включать в себя программные или аппаратные модули, которые приводят в соответствующее состояние или форматируют части электронных данных, с тем чтобы сделать их доступными для компонентов, которые реализуют принципы настоящего изобретения. Такие модули включают в себя, например, посредники, маршрутизаторы, брандмауэры, коммутаторы или шлюзы. Логические каналы обмена данными также могут включать в себя части виртуальной сети, такой как, например, виртуальная частная сеть (ВЧС) или виртуальная локальная вычислительная сеть (ВЛВС).
В этом описании и в последующей формуле изобретения «схема» определяется как выражение совместно используемого словаря между множеством компьютерных систем, которые позволяют множеству компьютерных систем обрабатывать документы согласно выраженному совместно используемому словарю. Например, схема расширяемого языка разметки (XML) может определить и описать класс XML-документов, использующих логические структуры схемы языка описания схемы XML. Эти логические структуры схемы могут быть использованы для ограничения и документирования значения, использования и соотношений типов данных, элементов и их содержимого, атрибутов и их значений, сущностей и их содержимого, и нотаций, используемых в XML-документах. Таким образом, любая компьютерная система, которая может обратиться к XML-схеме, может обрабатывать XML-документы в соответствии с XML-схемой. Далее, любая компьютерная система, которая может обратиться к XML-схеме, может компоновать или модифицировать XML-документы для использования другими компьютерными системами, которые также могут обращаться к XML-схеме.
Схема, по определению, включает в себя определения типа документа (ОТД, DTD), такие как, например, файлы ОТД, оканчивающиеся расширением «.dtd». Схема, по определению, также включает в себя XML-схемы консорциума Всемирной паутины (W3C), такие как, например, файлы XML-схемы, оканчивающиеся расширением «.xsd». Однако фактическое расширение файла для конкретного ОТД или XML-схемы не является важным. Схема может быть использована для определения практически любого типа данных, включая логические, двоичные, восьмеричные, десятичные, шестнадцатеричные, целые типы данных, типы данных с плавающей точкой, типы символьных данных, данные типа строки символов, определяемые пользователем типы данных и комбинации этих типов данных, используемые для определенных структур данных. Элементы и атрибуты XML могут быть определены для представления типов данных, которые определяются схемой. В этом определении и в последующей формуле изобретения термин «основанный на схеме» относится к определяемому схемой и/или внутри схемы.
Фиг.1 и последующее описание предназначены для того, чтобы дать краткое общее описание соответствующей вычислительной среды, в которой может быть выполнено изобретение. Хотя это и не требуется, изобретение описывается в общем контексте выполняемых компьютером команд, таких как программные модули, выполняемые компьютерами в сетевых средах. В общих чертах, программные модули включают в себя подпрограммы, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Выполняемые компьютером команды, связанные с ними структуры данных и программные модули представляют примеры средства программного кода для выполнения этапов описанных здесь способов. Конкретная последовательность таких выполняемых команд представляет примеры соответствующих действий для осуществления функций, описываемых такими этапами.
Как показано на фиг.1, примерная система для осуществления изобретения включает в себя вычислительное устройство общего назначения в виде обычного компьютера 120, включающего в себя вычислительный блок 121, системную память 122 и системную шину 123, которая соединяет различные системные компоненты, включающие в себя системную память 122, с вычислительным блоком 121. Системная шина 123 может быть любого из нескольких типов конструкций шин, включающих в себя шину памяти или контроллер памяти, периферийную шину и локальную шину, использующие любую из множества шинных архитектур. Системная память включает в себя постоянное запоминающее устройство (ПЗУ) 124 и оперативное запоминающее устройство (ОЗУ) 125. Базовая система 126 ввода-вывода (БСВВ), содержащая базовые подпрограммы, которые способствуют пересылке информации между элементами в компьютере 120, например, во время запуска, может храниться в ПЗУ 124.
Компьютер 120 также может включать в себя привод 127 магнитного жесткого диска для считывания с магнитного жесткого диска 139 и записи на него, привод 128 магнитного диска для считывания со съемного магнитного диска 129 и записи на него и привод 130 оптического диска для считывания со съемного оптического диска 131 и записи на него, такой как компакт-диск или другой оптический носитель. Привод 127 магнитного жесткого диска, привод 128 магнитного диска и привод 130 оптического диска подключены к системной шине 123 при помощи интерфейса 132 привода жесткого диска, интерфейса 133 привода магнитного диска и интерфейса 134 привода оптического диска соответственно. Приводы и связанные с ними считываемые компьютером носители обеспечивают энергонезависимое запоминающее устройство для хранения выполняемых компьютером команд, структур данных, программных модулей и других данных для компьютера 120. Хотя в описанной здесь примерной среде используется магнитный жесткий диск 139, съемный магнитный диск 129 и съемный оптический диск 131, могут быть использованы другие типы считываемых компьютером носителей для хранения данных, включая магнитные кассеты, карты флэш-памяти, цифровые видеодиски, картриджи Бернулли, ОЗУ, ПЗУ и т.д.
Средство программного кода, содержащее один или несколько программных модулей, может храниться на жестком диске 139, магнитном диске 129, оптическом диске 131, в ПЗУ 124 или ОЗУ 125, включая в себя операционную систему 135, одну или несколько программ 136 приложения, другие программные модули 137 и данные 138 программ. Пользователь может вводить команды и информацию в компьютер 120 при помощи клавиатуры 140, указательного устройства 142 или других устройств ввода (не показаны), таких как микрофон, джойстик, игровой планшет, антенна спутниковой связи, сканер и т.п. Эти и другие устройства ввода часто подключаются к вычислительному блоку 121 через интерфейс 146 последовательного порта, соединенный с системной шиной 123. Альтернативно, устройства ввода могут быть подключены посредством других интерфейсов, таких как параллельный порт, игровой порт или универсальная последовательная шина (УПШ, USB). Монитор 147 или другое устройство отображения также подключается к системной шине 123 через интерфейс, такой как видеоадаптер 148. В дополнение к монитору персональные компьютеры типично включают в себя другие периферийные устройства вывода (не показаны), такие как громкоговорители и принтеры.
Компьютер 120 может работать в сетевой среде, использующей логические каналы обмена данными к одному или нескольким удаленным компьютерам, таким как удаленные компьютеры 149а и 149b. Каждый удаленный компьютер 149а и 149b может быть другим персональным компьютером, клиентом, сервером, маршрутизатором, коммутатором, сетевым ПК, равноправным устройством или другим общим узлом сети, и может включать в себя многие или все из элементов, описанных выше в отношении компьютера 120, хотя на фиг.1 изображены только запоминающие устройства 150а и 150b хранения и связанные с ними программы 136а и 136b приложений. Логические каналы обмена данными, изображенные на фиг.1, включают в себя локальную вычислительную сеть (ЛВС) 151 и глобальную сеть (ГС) 152, которые представлены здесь в качестве примера, а не ограничения. Такие сетевые среды являются обычным делом в компьютерных сетях масштаба офиса или масштаба предприятия, интрасетях и Интернет.
При использовании в сетевой среде ЛВС (например, сети Ethernet) компьютер 120 подключается к ЛВС 151 через сетевой интерфейс или адаптер 153, который может быть проводным или беспроводным интерфейсом. При использовании в сетевой среде ГС компьютер 120 может включать в себя проводной канал, такой как, например, модем 154, беспроводный канал или другое средство для установления обмена данными по ГС 152. Модем 154, который может быть внутренним или внешним, подключается к системной шине 123 через интерфейс 146 последовательного порта. В сетевой среде программные модули, описанные в отношении компьютера 120, или его частей, могут храниться на удаленных запоминающих устройствах хранения. Понятно, что показанные сетевые подключения являются примерными, и могут быть использованы другие средства установления обмена данными по глобальной сети 152.
Хотя на фиг.1 изображен пример компьютерной системы, которая может осуществлять принципы настоящего изобретения, любая компьютерная система может осуществлять признаки настоящего изобретения. В описании и в формуле изобретения широко определен термин «компьютерная система» как любой аппаратный компонент или компоненты, которые способны использовать программное обеспечение для выполнения одной или нескольких функций. Примеры компьютерных систем включают в себя настольные компьютеры, переносные компьютеры, персональные цифровые помощники (ПЦП), телефоны (как проводные, так и мобильные), беспроводные точки доступа, шлюзы, брандмауэры, посредники, маршрутизаторы, коммутаторы, карманные устройства, мультипроцессорные системы, микропроцессорну