Разрешена ли «строка запроса» в URI, используемом в RDF? - PullRequest
5 голосов
/ 07 февраля 2012

Документ "Структура описания ресурсов (RDF): концепции и абстрактный синтаксис" Раздел 6.4 гласит, что "ссылка на URI в графе RDF (ссылка на RDF URI) ... создаст действительный URI последовательность символов (согласно RFC2396, разделы 2.1) , представляющая абсолютный URI с необязательным идентификатором фрагмента ... "

RFC 2396 , в разделе 2.1 говорится только о кодировании отдельных символов. Это не говорит о том, какие разделы стандартного URI разрешены в RDF.

В некоторых документах RDF, которые я видел, термин «абсолютный URI», по-видимому, относится только к форме URI domain.tld / path / name # optionFragment, но без упоминания о том, является ли строка запроса (? Key1 = value1 & key2 = значение2) (иногда называемое данными CGI) разрешено или запрещено. В другой документации RDF термин «абсолютный URI» используется только в отличие от относительного URI (/ just / a / path).

Поиск «строки запроса RDF URI» изобилует ложными попаданиями в такие вещи, как SPARQL.

Итак, мой вопрос: допустима ли стандартная строка запроса HTML в URI, используемом в RDF или RDFa?

Если нет, то почему? Я понимаю, что URI не является URL-адресом и не обязательно будет использоваться для получения веб-страницы с сервера. Однако процессоры RDF читают эти URI, и я думаю, что они могли бы получить некоторую помощь в виде дополнительных метаданных, которые могли бы передаваться через эти строки «запроса».

[Обновление 2/9/2012] Вот смысл моего вопроса: я ищу способ указать «силу» соединения. Например, не все глупы: все знают одинаково хорошо. Возможно, мы только что встретились на конференции несколько минут. Или я, возможно, жил с кем-то годами. Это все то же самое для ФАОФ. Однако, если бы я смог написать foaf: знает? Сила = + 50, то процессоры, которые не знают, что делать с ключом силы, могли бы игнорировать его, в то время как те, которые "знают о силе", имели бы ценные дополнительные метаданные. Я мог бы создать словарь, который включает в себя термин «согласен», а затем разрешить значение силы = ключа в диапазоне от 0 до 100 (указывая процент согласия). Тогда я бы охватил весь спектр соглашений одним термином словаря. {Примечание: я думал о том, чтобы разрешить диапазон от -100 до +100, чтобы охватить диапазон разногласий. Однако для обратной совместимости нам понадобится термин «не согласен», чтобы процессоры, которые не «знают о силе», все равно знали разницу между «согласен» и «не согласен».}}

В нынешнем виде кажется, что у мыслителя РДФ нет способа узнать разницу между «едва встретившимся» и «знает его лучше, чем он сам». Решение рассматривать каждый отдельный URI предиката с различным значением в паре ключ-значение как совершенно отдельный и совершенно не связанный предикат, по-видимому, выбрасывает почти всю наиболее ценную информацию о соединении, все ради простоты. написание кода и быстрая обработка.

Могут быть и другие ценные варианты использования пар ключ-значение в строке запроса, помимо создания совершенно отдельного субъекта, предиката или объекта: они могут использоваться для указания того, кто добавил конкретную сущность в совместно отредактированный файл .RDF. В сущности, все, что думает RDF, это то, что где-то существует тройка? У него нет дополнительной информации, на которой можно основывать свои рассуждения. Зашифрованные парольные фразы можно использовать для проверки надежности источника, а не просто принимать решение доверять или не доверять всему домену.

Ответы [ 2 ]

7 голосов
/ 07 февраля 2012

Да.

(Что, ты хочешь больше?)

RDF относится к вещам, использующим то, что в разговорной речи называется «URL». Если вы хотите быть более точным, используйте IRI (по сути, это способ включить в URL больше, чем просто ascii, поэтому вы можете использовать экзотические символы в панели браузера). Самый точный ответ слишком утомителен, чтобы относиться к нему, поэтому предположим, что IRI.

RDF использует абсолютные ссылки. Его синтаксисы могут использовать относительные ссылки (например, foo/bar), но они разрешаются относительно базы документа, чтобы стать абсолютными. Точно так же, как ссылки HTML, на самом деле.

Помимо синтаксиса, RDF не имеет отношения к внутренним элементам этих ссылок. Вы просто сравниваете их по буквам. Как следствие:

Обратите внимание, что вы даже не получите нормализацию.

И, в частности, RDF не видит в части запроса ничего особенного.

4 голосов
/ 07 февраля 2012

Чтобы подтвердить ответ выше, да.

URI являются чисто синтаксическими, поэтому применяются перечисленные выше правила.

URI, использующие фрагмент, не имеют разыменования, и когда агент пытается разыменовать один,он разрешает его в другой URI (который является URL) путем удаления фрагмента.

Наконец, рекомендуется использовать IRI (Internationalized Resource Identifiers) вместо URI, где это возможно

http://www.ietf.org/rfc/rfc3987.txt

Это специфицирует различные синтетические ограничения и ограничения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...