УПРАВЛЯЕМЫЕ ДАННЫМИ ДЕЙСТВИЯ ДЛЯ СЕТЕВЫХ ФОРМ
DATA CONTROLLED ACTIONS FOR NETWORK FORMS

Область техники, к которой относится изобретение
Это изобретение относится к действиям для сетевых форм.
УРОВЕНЬ ТЕХНИКИ
Электронные формы обычно используют для сбора информации. Электронные формы можно использовать локально или через сеть связи, такую как интранет или Интернет. Для электронных форм, которые используют локально, компьютер пользователя локально осуществляет доступ к информации визуального представления и к информации данных относительно электронной формы. С (использованием) указанной информации визуального представления компьютер пользователя может обеспечивать возможность просмотра пользователем электронной формы и ввода пользователем данных в электронную форму. С использованием указанной информации данных компьютер пользователя может обеспечивать возможность действий над данными для электронной формы, подобных проверке достоверности данных, введенных в поле, добавлению данных из нескольких полей и заполнению результатом другого поля и т.п.
Для электронных форм, используемых с использованием сети связи, компьютер пользователя осуществляет связь с сетевым компьютером для обеспечения возможности использования электронной формы. При этом часто сетевой браузер пользователя принимает из сетевого компьютера информацию визуального представления, но не информацию данных. Эта информация визуального представления может использоваться сетевым браузером пользователя для обеспечения возможности просмотра пользователем электронной формы и ввода пользователем информации в электронную форму.
Для обеспечения возможности действий над данными для электронной формы сетевой браузер пользователя часто должен осуществлять связь с сетевым компьютером для каждого действия над данными. Пользователь может, например, ввести цену продукта в одно поле ввода данных сетевой формы и количество указанных продуктов в другое поле ввода данных. Действие над данными может вычислять суммарную цену, умножая цену продукта на количество продуктов. Для представления указанной суммарной цены в форме, часто, сетевой браузер пользователя передает цену и количество в сетевой компьютер и ожидает, пока сетевой компьютер вычислит сумму, создаст новую информацию визуального представления для всей формы, но теперь включая указанную сумму, и передаст ее в сетевой браузер. Затем на основе этой новой информации визуального представления сетевой браузер может представить сумму пользователю.
Однако осуществление связи с сетевым компьютером может замедлять сетевой браузер пользователя достаточно для отрицательного влияния на впечатление пользователя от редактирования. В некоторых случаях сетевому компьютеру может требоваться существенное количество времени для приема запроса из браузера, выполнения действия над данными и передачи новой информации визуального представления в браузер. Также, осуществление связи с сетевым компьютером может быть медленным из-за сети или из-за того, как браузер осуществляет с ним связь (например, с использованием модема коммутируемой линии передачи), вследствие этого потенциально влияя на впечатление пользователя от редактирования.
Дополнительно, при выполнении сетевым компьютером действий над данными расходуются некоторые из ресурсов сетевого компьютера. Расходование этих ресурсов может замедлять или препятствовать возможности обслуживания сетевым компьютером других пользователей.
Соответственно, это изобретение возникло в результате проблем, связанных с выполнением действий над данными для сетевых форм.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Описаны системы и/или способы ("инструментальные средства"), обеспечивающие возможность управляемого данными действия, ассоциированного с изменением экземпляра данных сетевой формы, без изменения и/или осуществления доступа к экземпляру данных.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 иллюстрирует возможную операционную среду, в которой могут функционировать различные варианты осуществления.
Фиг.2 - блок-схема возможного процесса создания управляемого данными действия, ориентированного на визуальное представление.
Фиг.3 иллюстрирует возможное визуальное представление сетевой формы.
Фиг.4 - блок-схема возможного процесса выполнения управляемого данными действия, ассоциированного с изменением экземпляра данных сетевой формы, и/или воспроизведения результата управляемого данными действия.
Фиг.5 иллюстрирует визуальное представление фиг.3 с редакционными изменениями (изменениями, внесенными при редактировании).
Фиг.6 иллюстрирует визуальное представление фиг.5 с дополнительным редакционным изменением и является результатом выполнения управляемого данными действия.
В чертежах и описании использована сквозная нумерация.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Краткий обзор
Далее приведено описание одного или большего количества инструментальных средств, обеспечивающих возможность управляемого данными действия, ассоциированного с изменением экземпляра данных сетевой формы, без изменения и/или осуществления доступа к экземпляру данных. В одном варианте осуществления инструментальное средство выполняет управляемое данными действие без локального доступа к экземпляру данных сетевой формы и без осуществления связи не локальным образом для доступа к экземпляру данных, такого как посредством “прохода туда и обратно” на сетевой компьютер, имеющий экземпляр данных.
В другом варианте осуществления инструментальное средство воспроизводит результат управляемого данными действия для сетевой формы без преобразования экземпляра данных сетевой формы. Инструментальное средство может делать это, не требуя доступа к экземпляру данных и/или изменения экземпляра данных. Это может позволить пользователю редактировать элемент управления в сетевой форме и просматривать результаты управляемого данными действия, запущенного редактированием пользователя, не требуя осуществления доступа инструментальным средством к экземпляру данных сетевой формы или изменения им экземпляра данных сетевой формы. Это может позволить пользователю редактировать форму и просматривать результат действия, запущенного этим редактированием, без ожидания прохода туда и обратно на сетевой компьютер, имеющий экземпляр данных. Без необходимости выполнения прохода туда и обратно можно улучшить впечатление пользователя от редактирования, делая его более гладким, быстрым и/или более бесшовным. Без необходимости выполнения прохода туда и обратно для просмотра результата действия также могут быть уменьшены ресурсы, требуемые сетевому компьютеру для обслуживания сетевой формы.
В еще одном варианте осуществления инструментальное средство создает отношение, отображающее управляемое данными действие на шаблон визуального представления электронной формы. Инструментальное средство может делать это посредством преобразования отображения, ориентированного на данные, действия для экземпляра данных электронной формы в отображение, ориентированное на визуальное представление, (действия) для шаблона визуального представления электронной формы. Это отображение, ориентированное на визуальное представление, может использоваться, например, для обеспечения возможности выполнения инструментальным средством управляемого данными действия без необходимости осуществления доступа к экземпляру данных сетевой формы.
Возможная операционная среда
Чтобы способствовать пониманию читателем, где и как могут быть использованы инструментальные средства, перед подробным описанием инструментальных средств приведено последующее описание возможной операционной среды. Приведенное ниже описание состоит из одного возможного варианта и не предназначено для ограничения применения инструментальных средств какой-либо одной определенной операционной средой.
Фиг.1 иллюстрирует одну такую среду в общем, где среда 100 содержит компьютер 102, сеть 104 связи и сетевой компьютер 106. Компьютер изображен содержащим один или большее количество процессоров 108 и носитель 110 информации, считываемый компьютером. Процессор(ы) выполнен с возможностью осуществления доступа к носителю информации, считываемому компьютером, и/или выполнению носителя информации, считываемого компьютером. Носитель информации, считываемый компьютером, содержит сетевой браузер 112, журнал 114 регистрации событий и принятое средство 116 информации. Пунктирные линии между принятым средством информации и средством информации сетевого компьютера показывают, что указанные средства информации могут быть загружены компьютером из сетевого компьютера.
Сеть связи обеспечивает возможность связи между компьютером и сетевым компьютером и может включать в себя одну или большее количество интранет, подобных внутренней сети связи компании, Интернет и т.п.
Сетевой компьютер изображен содержащим носитель 118 информации, считываемый компьютером. Этот носитель информации, считываемый компьютером, содержит сетевую форму 120, содержащую экземпляр 122 данных, схему 124 управления сетевой формой и управляемые данными действия 126, ориентированные на данные. Экземпляром данных сетевой формы является определенный экземпляр данных сетевой формы; соответственно, если структуру или данные сетевой формы изменяют (например, посредством ввода информации пользователем в визуальное представление сетевой формы), то экземпляр данных сетевой формы в некоторый момент времени изменяется для отображения изменения. Управляемыми данными действиями, ориентированными на данные, являются действия, запускаемые изменениями данных в экземпляре данных и отображаемые на экземпляр данных.
Носитель информации, считываемый компьютером, сетевого компьютера также изображен содержащим информацию 128 визуального представления, шаблон 130 визуального представления, действия 132, ориентированные на визуальное представление, актор-приложение 134 и исходные данные 136. Информация визуального представления, шаблон визуального представления, действия, ориентированные на визуальное представление, актор-приложение и исходные данные могут быть объединены или раздельны.
Информацией визуального представления является информация, достаточная для вывода на экран монитора сетевым браузером доступного для редактирования визуального представления сетевой формы. Указанная информация визуального представления может быть также достаточной для вывода на экран сетевым браузером и/или актор-приложением изменения в доступном для редактирования визуальном представлении, являющегося результатом выполнения действия. В одном варианте осуществления информация визуального представления содержит машинный язык гипертекстовой разметки (HTML), являющийся результатом преобразования, объявленного в преобразовании языка таблицы стилей XML (XSLT) варианта осуществления языка наращиваемой разметки (XML), экземпляра данных. Этот HTML может использоваться сетевым браузером для вывода на экран сетевой формы. Также в этом варианте осуществления схема сетевой формы содержит Схему XML (XSD). Эта схема может содержать действия, ориентированные на данные, для проверки достоверности сетевой формы.
Шаблон визуального представления содержит логическое представление, ориентированное на визуальное представление, сетевой формы. Структурой шаблона визуального представления, в одном варианте осуществления, является структура, в которой информация визуального представления может быть отображена достаточно для создания актор-приложением и/или браузером просмотра сетевой формы. Структурой шаблона визуального представления, в другом варианте осуществления, может быть также структура, в которой действия связаны достаточно для выполнения актор-приложением действий в ответ на взаимодействие пользователя с частью шаблона визуального представления.
Действия, ориентированные на визуальное представление, содержат управляемые данными действия, которые могут быть идентифицированы позицией или узлом в шаблоне визуального представления или отображены на позицию или узел в шаблоне визуального представления.
Актор-приложение, совместно с сетевым браузером или отдельно, обеспечивает возможность выполнения управляемых данными действий без изменения и/или осуществления доступа к экземпляру данных 122 сетевой формы.
Исходные данные содержат хранящиеся данные, такие как данные, заданные по умолчанию. Данные, заданные по умолчанию, могут содержать, например, значения для простых полей (подобных полям даты, валюты и имени), и некоторое количество описаний для списков, таблиц и строк. Другие хранящиеся данные могут содержать данные, предварительно введенные в сетевую форму, например, при изменении, подтверждении и последующем повторном открытии формы для просмотра или дополнительного редактирования.
Ниже более подробно описаны различные варианты осуществления указанных элементов и, в частности, возможный процесс создания управляемых данными действий, ориентированных на визуальное представление. После описания этого процесса описаны возможные инструментальные средства, обеспечивающие возможность указанных и других действий.
Управляемые данными действия
Многие управляемые данными действия для электронных форм относятся к экземпляру данных формы, например, отображаясь на экземпляр данных формы. Но это отношение может требовать доступа к экземпляру данных, что может быть нежелательным для электронных форм, доступ к которым осуществляют через сеть связи.
Ниже описан возможный процесс 200 создания управляемого данными действия, ориентированного на визуальное представление, изображенный на фиг.2. Этот процесс создает управляемое данными действие, ориентированное на визуальное представление, посредством преобразования существующего управляемого данными действия, ориентированного на данные, имеющего отношение к экземпляру данных сетевой формы, в управляемое данными действие, имеющее отношение к шаблону визуального представления сетевой формы. Процесс 200 иллюстрируется в виде последовательности блоков, представляющих отдельные функции или операции, выполняемые элементами операционной среды 100 фиг.1, такими как актор-приложение 134. Указанный и другие процессы, описанные здесь, могут быть реализованы в любых соответствующих аппаратных средствах, программном обеспечении, программно-аппаратных средствах или их комбинации; в случае программного обеспечения и программно-аппаратных средств эти процессы могут представлять набор функций, реализованных в виде инструкций, выполнимых компьютером, которые хранятся на носителе 118 информации, считываемом компьютером, и могут быть выполнены процессором(ами) сетевого компьютера 106 и/или на носителе 110 информации, считываемом компьютером, и могут быть выполнены процессорами 108.
Для иллюстрации процесса 200 на фиг.3 в виде возможного варианта сетевой формы приведен заказ 300 на поставку. В заказе на поставку изображено визуальное представление элементов управления, здесь для поля 302 имени (name), поля 304 (номера) телефона (phone), полей 306a и 306b предмета (item Id), полей 308a и 308b количества (quantity), полей 310a и 310b цены единицы продукции (unit price), полей 312a и 312b суммы (total) и поля 314 общей суммы (grand total). При описании процесса используются схема заказа на поставку, экземпляр данных и шаблон визуального представления, которые приведены ниже.
Схема, управляющая экземпляром данных сетевой формы, может быть представлена в виде:
Экземпляр данных, управляемый этой схемой, может быть представлен в виде:
И, шаблон визуального представления для этой формы может быть представлен в виде:
Согласно фиг.2, в блоке 202 инструментальное средство (например, актор-приложение 134) обнаруживает отношение, отображающее управляемое данными действие (например, одно из управляемых данными действий 126, ориентированных на данные, фиг.1) на экземпляр 122 данных. Это отношение может содержать путь передвижения (навигации), такой как выражение языка адресации частей документа XML (пути) (Xpath).
В соответствии с иллюстрируемым вариантом осуществления, предполагают, что экземпляр данных имеет два управляемых данными действия, ориентированных на данные. Эти действия могут быть представлены в виде:
и
Первое действие структурировано для умножения данных в узле количества экземпляра данных на данные в узле цены единицы продукции экземпляра данных. Второе действие структурировано для суммирования всех данных в узлах суммы экземпляра данных, которые являются дочерними узлами для узла заказов.
Могут быть извлечены пути передвижения из указанных управляемых данными действий, ориентированных на данные, которые в этом случае являются выражениями XPath. Инструментальные средства извлекают следующие XPath:
/root/orders/order/total
и
/root/total
Как видно, указанные XPath отображаются на экземпляр данных. Первый отображается на два узла суммы, которые являются дочерними для узла "заказов" (воспроизведены, как поля 312a и 312b суммы на фиг.3). Второй отображается на узел суммы, который является дочерним непосредственно для корневого узла (воспроизведен, как поле 314 общей суммы на фиг.3).
В блоке 204 инструментальное средство создает путь шаблона визуального представления, соответствующий пути передвижения. Инструментальное средство может соотносить путь передвижения с шаблоном визуального представления для преобразования пути передвижения в путь шаблона визуального представления. Инструментальное средство может также сравнивать часть экземпляра данных, отображаемую путем передвижения, со структурой шаблона визуального представления. Если инструментальное средство обнаруживает узел шаблона визуального представления, который соответствует отображаемой части экземпляра данных, то инструментальное средство может создать путь шаблона визуального представления, отображающий этот узел.
Согласно иллюстрируемому варианту осуществления, инструментальное средство определяет, какой узел шаблона визуального представления соответствует узлу экземпляра данных, отображаемому путем передвижения. Шаблон визуального представления может быть представлен в виде:
Инструментальное средство определяет, что узел экземпляра данных, отображаемый путем передвижения: "/root/orders/order/total", которым является:
<root><orders><order><total></total>
</order></ orders></root>
соответствует в шаблоне визуального представления:
V1/R1/T4
Аналогично, инструментальное средство определяет, что узел экземпляра данных для второго управляемого данными действия соответствует:
V1/T3
В виде варианта, инструментальное средство преобразует путь передвижения посредством определения узла шаблона визуального представления, соответствующего узлу схемы, отображаемому путем передвижения. В некоторых случаях структура схемы, управляющей электронной формой, анализируется более просто или точно, вследствие этого делая определение, осуществляемое инструментальным средством, более простым или более точным. Как показано выше, при соотнесении узел "/root/orders/order/total" схемы может быть соотнесен с:
V1-/root
R1-orders/order
T4-total
для обнаружения "V1/R1/T4" шаблона визуального представления.
В некоторых случаях узлу экземпляра данных, отображаемому путем передвижения, не соответствует никакой узел шаблона визуального представления. Одним таким случаем является тот случай, где узел экземпляра данных, на который отображается действие, не обеспечен возможностью воздействовать на визуальное представление формы. Например, если узел экземпляра данных (или схемы) имеет относящееся к нему действие, изменяющее данные в узле, которые не являются видимыми, то это действие может не иметь соответствующего узла в шаблоне визуального представления.
Если инструментальное средство определяет, что отображенная часть экземпляра данных не имеет соответствующего узла в шаблоне визуального представления, то инструментальное средство не осуществляет перехода. Если оно определяет иначе, то переходит к блоку 206. В иллюстрируемом варианте осуществления оба управляемых данными действия, ориентированные на данные, обеспечены возможностью воздействовать на визуальное представление и имеют соответствующий узел в шаблоне визуального представления. Инструментальное средство создает пути шаблона визуального представления для указанных соответствующих узлов.
В блоке 206 инструментальное средство заменяет путь передвижения, отображающий управляемое данными действие на экземпляр данных, путем шаблона визуального представления, отображающим управляемое данными действие на шаблон визуального представления.
Согласно иллюстрируемому варианту осуществления, путями передвижения для управляемых данными действий являются:
/root/orders/order/total
и
/root/total
Инструментальные средства заменяют указанные пути передвижения на пути шаблона визуального представления. Соответственно, управляемые данными действия, ориентированные на данные, преобразуют в управляемые данными действия, ориентированные на визуальное представление, например:
target = “V1/R1/T4”
expression = “../T2 *../T3”
и
target = “V1/T3” expression = “sum(../R1/T4)”
В блоке 208 инструментальное средство может, в некоторых вариантах осуществления, аннотировать шаблон визуального представления управляемым данными действием. Пути шаблона визуального представления указывают узел или узлы шаблона визуального представления, на которые отображается действие. Инструментальное средство может аннотировать эти узлы для указания того, что действие может быть запущено изменением для этих узлов. Шаблон визуального представления непосредственно также может быть аннотирован действием, вследствие этого объединяются действие и шаблон визуального представления.
В соответствии с иллюстрируемым вариантом осуществления инструментальные средства аннотируют шаблон визуального представления действиями, ориентированными на визуальное представление:
Этот аннотированный шаблон визуального представления указывает, что данные для узла "V1/R1/T2" (изображенного полем 308a количества) и "V1/R1/T3" (изображенного полем 310b количества) могут быть помножены, и результат помещен в узел "V1/R1/T4" (изображенный полем 312a суммы). Шаблон визуального представления указывает тождественное также для каждой итерации этих узлов (например, полей 308b, 310b и 312b).
Шаблон визуального представления также указывает, что данные для каждого из узлов "V1/R1/T4" (изображенных, как поля 312a и 312b суммы) могут суммироваться, и результат помещен в другой узел, "V1/T3" (изображен полем 314 общей суммы).
Выполнение управляемого данными действия для сетевой формы
Как часть возможного процесса 400, изображенного на фиг.4, инструментальные средства выполняют управляемые данными действия, ассоциированные с изменением экземпляра данных сетевой формы, без изменения и/или осуществления доступа к экземпляру данных. Также в этом процессе инструментальное средство воспроизводит результат управляемого данными действия для сетевой формы без преобразования экземпляра данных сетевой формы. Процесс 400 иллюстрируется в виде последовательности блоков, представляющих отдельные функции или операции, выполняемые элементами операционной среды 100 фиг.1, такими как актор-приложение 134.
В блоке 402 сетевой браузер 112 принимает выбор пользователя на редактирование сетевой формы. Предполагается, в виде возможного варианта, что пользователь просматривает формы, доступные через сеть связи, и выбирает редактирование заказа 300 на поставку фиг.3.
В блоке 404 сетевой браузер принимает информацию, достаточную для обеспечения возможности вывода на экран и приема редакционных изменений для сетевой формы компьютером 102. Эта информация может содержать средство информации, считываемое компьютером, из сетевого компьютера 106 фиг.1, такое как информация 128 визуального представления, шаблон 130 визуального представления, действия 132, ориентированные на визуальное представление, актор-приложение 134 и исходные данные 136. С использованием информации визуального представления и шаблона визуального представления актор-приложение и/или сетевой браузер выводит на экран доступное для редактирования визуальное представление формы.
В одном варианте осуществления актор-приложение создает доступное для редактирования визуальное представление формы, отображая фрагменты информации визуального представления на шаблон визуального представления. Эти фрагменты являются видимыми фрагментами, такими как HTML, которые актор-приложение может конкатенировать в общее визуальное представление формы. Эти фрагменты визуального представления могут содержать, например, воспроизводимый HTML для кнопок, полей ввода данных и других элементов управления.
В блоке 406 компьютер воспроизводит сетевую форму, выбранную пользователем. В иллюстрируемом варианте осуществления актор-приложение воспроизводит заказ на поставку фиг.3.
В блоке 408 сетевой браузер принимает редакционное изменение для элемента управления сетевой формы. Пользователь может редактировать форму посредством ввода данных в поле, выбора кнопки и т.п.
В соответствии с иллюстрируемым вариантом осуществления сетевой браузер принимает данные, введенные в поле 302 имени. Эти данные вставлены в визуальное представление, изображенное на фиг.5.
В блоке 410 актор-приложение определяет, ассоциировано ли с редакционным изменением действие. В одном варианте осуществления актор-приложение анализирует действия для определения, ассоциированы ли какие-либо из них (например, отображаются на) узел, редактируемый пользователем. В другом варианте осуществления актор-приложение передвигается по шаблону визуального представления для обнаружения действий, ассоциированных с редакционным изменением (если существуют). Если управляемые данными действия, ассоциированные с редакционным изменением, отсутствуют, то актор-приложение возвращается в блок 408 для приема дополнительных редакционных изменений от пользователя. Если управляемые данными действия существуют, то актор-приложение переходит в блок 412 (или осуществляет обход в блок 414).
В соответствии с иллюстрируемым вариантом осуществления актор-приложение передвигается по шаблону визуального представления, аннотированному действиями (представлено выше), для определения, ассоциировано ли с узлом "V1/T1" ("узлом имени"), воспроизведенным в виде поля 302 имени на фиг.3 и 5, какое-либо действие. Этот узел не имеет ассоциированного с ним действия. Затем актор-приложение возвращается в блок 408. Сетевой браузер принимает другие редакционные изменения от пользователя; ввод в поле 304 номера телефона, изображенное на фиг.5, номера телефона пользователя и в узел 306a предмета, также изображенный на фиг.5, идентификатора предмета. Эти введенные данные также не ассоциированы с управляемым данными действием.
Затем пользователь вводит количество в поле 308a количества, принимаемое в блоке 408 и изображенное на фиг.5. В блоке 410 актор-приложение определяет, ассоциировано ли с этим редакционным изменением действие.
В соответствии с иллюстрируемым вариантом осуществления актор-приложение передвигается по шаблону визуального представления для определения, ассоциировано ли с принятым редакционным изменением действие. Аннотированный шаблон визуального представления может быть представлен в виде:
Актор-приложение передвигается по этому шаблону визуального представления и определяет, что с редакционным изменением пользователя в узле количества ассоциировано следующее управляемое данными действие:
В блоке 412 актор-приложение определяет, будет ли выполнение ассоциированного действия воздействовать на визуальное представление. В виде варианта, актор-приложение может перейти в обход блока 412 в блок 414.
Актор-приложение может определить, будет ли действие воздействовать на визуальное представление, передвигаясь по шаблону визуального представления для определения, какие узлы шаблона визуального представления могут быть изменены при выполнении действия.
В представленном варианте осуществления актор-приложение определяет, что управляемое данными действие, ассоциированное с узлом количества, умножает данные в узле "V1/R1/T2" на данные в узле "V1/R1/T3" и помещает этот результат в узле "V1/R1/T4" суммы. Соответственно, данные "17” в поле 308a количества умножают на отсутствующие данные (нуль) в поле 310a цены единицы продукции, результат этого ("0") должен быть помещен в поле 312a суммы. В этом случае результат выполнения действия не изменяет визуальное представление. Поле 312a суммы уже содержит нуль. В этом случае актор-приложение может отказаться от выполнения действия, ассоциированного с указанным узлом количества, и/или других действий, таких как обновление данных для формы (то есть, не выполнять блок 416), и воспроизведения результатов выполнения этого действия (то есть, не выполнять блок 418). Если актор-приложение отказывается от выполнения действия и/или указанных других действий, то оно возвращается в блок 408.
При возвращении в блок 408 сетевой браузер принимает другое редакционное изменение, в этот раз ввод цены единицы продукции в поле 310a цены единицы продукции. Цена изображена на фиг.6 в поле 310a ("299.99").
Затем актор-приложение в блоке 410 определяет, что с этим редакционным изменением ассоциировано действие. В соответствии с иллюстрируемым вариантом осуществления актор-приложение передвигается по шаблону визуального представления, аннотированному действиями (представлены выше) и определяет, что действие ассоциировано с узлом "V1/R1/T3" (узлом "цены").
При передвижении по шаблону визуального представления, заданному выше, актор-приложение определяет, что с редакционным изменением пользователя для узла цены ассоциировано следующее управляемое данными действие:
Затем актор-приложение определяет, что действие будет воздействовать на визуальное представление. Оно это делает, передвигаясь по шаблону визуального представления для определения, какие узлы шаблона визуального представления могут быть изменены при выполнении действия.
В представленном варианте осуществления актор-приложение определяет, что управляемое данными действие, ассоциированное с узлом количества, умножает данные в узле "V1/R1/T2" на данные в узле "V1/R1/T3" и помещает этот результат в узле "V1/R1/T4" суммы. Соответственно, данные "17", изображенные в поле 308a количества умножают на "299.99", изображенные в поле 310a цены единицы продукции, результат этого может быть отличен от нуля, воспроизведенного в текущее время в поле 312a суммы.
В блоке 414 актор-приложение выполняет действие без доступа и/или изменения экземпляра данных формы. В этом возможном процессе актор-приложение скорее использует шаблон визуального представления, чем экземпляр данных, вследствие этого актор-приложение освобождается от необходимости доступа к экземпляру данных формы или его изменения. Актор-приложение, в некоторых случаях, может выполнять управляемое данными действие без какой-либо связи, отличной от локальной связи, вследствие этого потенциально улучшая впечатление пользователя от редактирования. В одном варианте осуществления актор-приложение выполняет действие посредством выполнения выражения и определения местонахождения узла шаблона визуального представления, в котором может быть воспроизведен результат.
В представленном варианте осуществления актор-приложение умножает данные, введенные в поле количества, "17", на данные, введенные в поле цены единицы продукции "299.99", для получения в результате "5099.83".
В блоке 416 актор-приложение обновляет данные для формы. Указанные данные для формы могут храниться локально, что может обеспечить меньшее количество проходов туда и обратно на сетевой компьютер. В представленном варианте осуществления актор-приложение обновляет нуль для первого узла суммы (воспроизведенного, как поле 312a суммы) результатом "5099.83". Актор-приложение может перейти непосредственно в блок 418 для воспроизведения этого результата в визуальном представлении, но также может сначала определить, вызывает ли это изменение данных какие-либо другие действия. Если так, актор-приложение может выполнить все вызванные действия (некоторые действия могут вызвать другое действие, которое вызывает другое действие и т.д) перед воспроизведением результатов различных действий.
Аналогично блокам 408, 410, 412 и 414 актор-приложение может перейти для приема данных (например, результата выполненного действия), определить, что узел, в котором приняты данные, ассоциирован с действием, определить, может ли это действие воздействовать на визуальное представление, и выполнить действие. Соответственно, актор-приложение в представленном варианте осуществления принимает результат действия, выполненного выше, в узле суммы. Затем актор-приложение может определить, имеет ли узел, к которому было сделано это "редакционное изменение" (например, результат автоматически принят из выполнения действия), другое действие, ассоциированное с ним. Если так, то затем оно может определить, будет ли выполнение другого действия воздействовать на визуальное представление, и если так, то затем может выполнить другое действие.
В представленном варианте осуществления актор-приложение определяет, что результат для узла суммы имеет другое ассоциированное действие. Это действие может быть представлено в виде:
Соответственно, узел ("V1/R1/T4") суммы имеет ассоциированное управляемое данными действие. Это действие суммирует данные узла суммы и всех других узлов суммы. Затем результат этого суммирования направляется в узел суммы "V1/T3" (воспроизведенный, как поле 314 общей суммы).
Затем актор-приложение определяет, что выполнение этого действия суммирования может воздействовать на визуальное представление. Актор-приложение выполняет это действие, суммируя данные первого и второго узлов суммы, которые составляют "5099.83" и "0" для получения результата в "5099.83".
Актор-приложение может записывать эти данные, введенные и результирующие из действий, например, в локально хранящемся иерархически структурированном дереве данных или в журнале 114 регистрации событий. Дерево данных с данными и результатами представленного варианта осуществления может быть представлено в виде:
В блоке 418 актор-приложение и/или сетевой браузер воспроизводит результат управляемого данными действия(й), выполненного без преобразования экземпляра данных формы. Актор-приложение, в другом варианте осуществления, может также воспроизводить изменения для визуального представления без осуществления доступа к экземпляру данных или его изменения.
Актор-приложение может отслеживать, какие элементы управления в визуальном представлении требуют обновления, помечая узлы, ассоциированные с этими элементами управления, и затем воспроизводя каждый из этих узлов для новых данных, когда были выполнены все действия (но с воспроизведенными результатами).
В виде варианта, актор-приложение может повторно воспроизвести всю форму, хотя это может требовать дополнительного времени или дополнительных ресурсов по сравнению с избирательным повторным воспроизведением.
Для избирательного повторного воспроизведения частей визуального представления актор-приложение может определять, какие фрагменты информации из информации 128 визуального представления фиг.1 ассоциированы с узлами шаблона визуального представления, которые были изменены, например, помечая эти узлы флагом изменения. Для вышеупомянутого шаблона визуального представления, помеченными узлами являются "V1/R1_1/T4" и "V1/T3". Затем актор-приложение может вставить результаты в указанные фрагменты визуального представления или повторно воспроизвести каждый из этих фрагментов с добавленными результатами.
Как изображено на фиг.6, визуальное представление заказа на поставку представляет пользователю результаты управляемых данными действий. Эти результаты, изображенные в поле 312a суммы и поле 314 общей суммы, являются точными воспроизведениями того, как могло бы выглядеть визуальное представление, если бы управляемые данными действия взамен были ассоциированы с экземпляром данных. Соответственно, это визуальное представление может быть идентично визуальному представлению, представляемому при помещении результатов этих действий в экземпляр данных, преобразовании экземпляра данных и воспроизведении преобразования.
Однако в некоторых случаях управляемое данными действие может требовать осуществления связи через сеть связи, например, для доступа к экземпляру данных для формы или к базе данных, имеющей данные, необходимые для выполнения действия (например, проверки достоверности введенных данных относительно данных в базе данных). В этих случаях актор-приложение может осуществить доступ к сети связи, вследствие этого отказываясь от многих блоков процесса 400.
Актор-приложение и/или сетевой браузер может записывать редакционные изменения пользователя и/или результаты выполнения различных действий. Эта запись редакционных изменений и/или результатов может передаваться в сетевой компьютер 106 так, чтобы при передаче существенно не ухудшать впечатление пользователя от редактирования или не затруднять представление пользователем.
Сетевой компьютер в ответ на прием этого журнала регистрации событий изменяет экземпляр данных сетевой формы. Он может делать это редко, вследствие этого потенциально уменьшая ресурсы, требуемые для обслуживания сетевой формы.
Для представленной иллюстрации актор-приложение записывает редакционные изменения пользователя для визуального представления в журнал 114 регистрации событий и передает этот журнал регистрации событий в сетевой компьютер. Сетевой компьютер обновляет экземпляр данных 122 информацией из журнала регистрации событий. Экземпляр данных, представленный выше в начале описания, согласно фиг.2, может быть изменен сетевым компьютером с использованием журнала регистрации событий, в этом случае на следующий:
Заключение
Описаны системы и/или способы для обеспечения возможности управляемого данными действия, ассоциированного с изменением экземпляра данных сетевой формы, без изменения и/или осуществления доступа к экземпляру данных. Хотя изобретение было описано на языке, определенном для структурных признаков и/или методологических этапов, должно быть понято, что изобретение, определенное в приложенной формуле изобретения, не обязательно ограничивается определенными признаками или описанными этапами. Скорее, определенные признаки и этапы раскрыты как предпочтительные виды реализации заявленного изобретения.