- Возможность работать с идентификаторами, соединенные в произвольные графы (как альтернатива тройкам, онтологиям и типизации, необходимой в Семантическом Вебе), что сделает семантику доступной для не-экспертов, а в целом будет ближе к ситуации, свойственной естественному языку.
* Идентификация
- Идентификация всех элементов смысла и трансляция идентификаторов между собой (например, слово "корабль" и слово "ship" должны иметь одинаковый языконезависимый идентификатор), этот же идентификатор может транслироваться в локальный идентификатор базы данных для указания типа транспортного средства, а также в элемент графического интерфейса, который используется для редакции этого типа (что позволит, например, произвольную совместимость приложений, т.е. пользователь может сам определить совместимость идентификаторов разных приложений).
- Идентификация предпочтительно должна происходить при создании информации (предполагается, что создатель информации лучше разбирается в области, к которой принадлежит эта информация, к тому же он пользуется контекстами, о которых см. ниже). Таким образом, становятся не нужными сложные вычисления для распознавания (которые сейчас вынуждены делать приложения), которые к тому же дают неоднозначные результаты в сложных случаях.
- Идентификация элементов приложения должны включать не все объекты приложения, а только семантически значимые для пользователя (т.к. иначе пользователь потеряется в большом количестве идентификаторов).
- Трансляция идентификаторов и абстракций между собой, с указанием критериев схожести (например, модель машины может выйти в другой стране с определенными изменениями, в этом случае трансляция двух идентификаторов моделей невозможна, поэтому идентификатор может только "примерно" транслирован в другой идентификатор). В отличие от ключевых слов, тегов, ассоциаций, "похожих тем" и тому подобному, подобная трансляция подразумевает явное определение критериев схожести (абстрагирования), т.е. по сути их типизированию.
- Трансляция идентификаторов в ресурсы (гипертекстовые ссылки, файлы, и т.п.), данная трансляция должна заменить гипертекстовые ссылки, например, вместо связывания определенного слова в гипертексте с URL, мы должны будем связать слово с соответствующим идентификатором, который, в свою очередь, укажет на соответствующую ссылку или ссылки, которые относятся к нему.
- Трансляция идентификаторов может производиться и в вызовы действий/сервисов/методов (с параметрами), что аналогично предложениям естественного языка (например, "я написал письмо другу ручкой" подразумевает либо вызов "написал" с параметрами "письмо", "друг", "ручка", либо "написатьПисьмо" с двумя параметрами, либо "написатьРучкой"). Данный тип трансляции позволит: (1) ссылаться на разные идентификаторы, ресурсы, в зависимости от параметров, (2) более гибко связывать действия (например, страница может иметь идентификатор "написать письмо" без привязки к сервису или приложению), (3) использовать идентификаторы для помощи пользователю (например, инструкция вида "зайти в меню, выбрать в диалоге чекбокс, нажать ОК" может быть представлена в виде исполняемых идентификаторов) и т.п.
- Трансляция идентификаторов должна явно или неявно делегироваться (например, сначала к компьютеру пользователя, затем к более высоким уровням сетевой принадлежности: например, проект, отдел, компания, город, страна, глобальная сеть; как вариант делегация может идти по цепочке пакет приложений, приложение, библиотеки; или же используя контексты; т.е. от низкого к высшим уровням абстрагирования). Таким образом, (1) трансляция будет произведена на уровне, который способен обработать запрос, (2) трансляция может предоставлять разное понимание идентификатора из разных уровней, (3) возможно создание сетей серверов, которые будут отвечать за определенный набор идентификаторов (например, идентификаторы, относящиеся только к биологии и т.д.), (4) упростить обмен информацией (например, вы посылаете идентификатор "документ проекта" коллеге, он пытается его открыть, но операционная система сообщает, что данный документ доступен только на другой машине и предоставляет возможность сохранить его локально).
* Абстрагирование
- Явное представление результатов абстрагирования (например, статья о выпуске модели А машины марки Б должна абстрагироваться в условную фразу "выпуск модели А марки Б", которая состоит из идентификаторов "выпуск", "модель А", "марка Б", связанных между собой, где "модель А" включается в "марку Б", т.к. не может существовать независимо от нее, а "выпуск модели А марки Б" включает в себя все идентификаторы, т.к. является результатом их связывания). Типичным примером представления "идентификатор + абстрагирование" в современном мире является связка "ID + Имя", которая часто используется в приложениях, где первый элемент является компьютерным идентификатором, и второй - обычным.
- Абстрагирование форм языка, многие из которых являются историческими или же предназначены для стыковки разных форм в предложения определенного типа (например, "солнце встает" и "встающее солнце" должно быть представлено двумя одинаковыми идентификаторами, т.к. мы употребляем "встающее" обычно в ситуациях, когда необходимо употребить еще один глагол как в "встающее солнце светило ярко"; или же "плавание корабля" и "корабль плавал": "плавание" употребляется, когда нужно либо представить объединенное множество действий за определенный период времени, либо когда дальше в предложении будет употреблен глагол "плавание корабля привело к...").
- Поиск должен сначала использовать результаты абстрагирования (например, если слово "модель А" встречается в фразе "выпуск модели А марки Б", то это является более важным, чем, если это слово встречается в статье о всей продукции компании, что, в свою очередь, является более важным, чем, если это слово встречается в книге о машинах, но, если книга не о самой "модели А").
- Поиск должен абстрагировать результаты, группируя их на основе абстрактного сравнения (например, поиск по "модели А" должен давать такие группы как "проблемы с моделью А", "магазины, продающие модель А"), что уже делается современными поисковыми системами, но не всегда на регулярной основе. Данная группировка похожа на иерархии, широко применяемые ныне, но группировка является более произвольной, что более точно отражает реальное положение дел (т.к. практически любая иерархия, за малым исключением, является произвольной и зависит от того, как абстрагируется информация).
- Критерии важности, основаны на способе абстрагирования и фильтрации информации (что в современном интерфейсе выражается сортировкой и фильтрацией).
* Смысл
- Семантика должна быть явной и совместимой в приложениях (для чего и нужны идентификаторы). Информация должна быть упорядочена в виде структур, таких как списки, таблицы, графы, иерархии, использование отношений 1:1, 1:N, M:1, N:M (которые соответствуют разным структурам) и использовать объекты, действия, и отношения различного рода (пространственных, временных, возможность, планирование, цель, и т.п.), которые используются в естественном языке, но не всегда явно в мире компьютеров.
- Ассоциация информации с аттрибутами, категориями и т.п. (например, как это сейчас делается при помощи тегов и ключевых слов) заменяется на связность с идентификаторами, которые, за кулисами, могут быть связаны с другими идентификаторами (т.е. если вы связываете фотографию с идентификатором "отпуск", то не нужно ее связывать с идентификатором "отдых", т.к. эта трансляция уже будет сделана неявно). Причем, эта связь должна подразумевать только саму себя (т.е. "фотографии из отпуска" означает, что фотографии относятся только к отпуску, а не документы, которые упоминают фотографии и/или отпуск).
- Любой идентификатор является результатом абстрагирования, абстрактный идентификатор использует схожесть и обычно соответствует типу (например, "машина" может быть применен к очень большому количеству предметов), конкретный - идентичность и обычно соответствует переменной (например, "моя машина" уникально идентифицирует предмет). Т.е. в общем случае, в отличие от программирования, грань между типом и переменной размыта, можно говорить только о балансе между абстрактностью и конкретностью (обычно, чем больше используется идентификаторов, тем более конкретным становится содержание).
- Любое исключение должно использовать либо дополнительные конкретизирующие идентификаторы ("машина, но на двух колесах"), либо более абстрактный идентификатор ("это уже не машина, а транспортное средство"). Подобное до- и переопределение является выражением баланса между детерминированным и возможным, которое всегда присутствует в любой информации.