В документе Section 6.4 «Структура описания ресурса (RDF): понятия и абстрактный синтаксис» говорится, что «Ссылка URI в графе RDF (ссылка на URI RDF) ... создала бы допустимую последовательность символов URI (по RFC2396, разделы 2.1) , представляющий абсолютный URI с необязательным идентификатором фрагмента ... «Является ли «строка запроса» разрешенной в URI, используемой в RDF?
RFC 2396, раздел 2.1 касается только кодирования отдельных символов. Он не говорит о том, какие разделы стандартного URI разрешены в RDF.
В некоторых документах RDF, которые я видел, термин «абсолютный URI», по-видимому, относится только к форме domain.tld/path/name # optionalFragment URI, но без упоминания о том, является ли строка запроса (? Key1 = value1 & key2 = value2) (иногда называемый CGI-данными) разрешен или запрещен. Другая документация RDF использует термин «абсолютный URI» в отличие от относительного URI (/ just/a/path).
Поиск «строки запроса RDF URI» изобилует ложными ударами по таким вещам, как SPARQL.
Итак, мой вопрос: разрешена ли стандартная строка HTML-запроса в URI, используемом в RDF или RDFa?
Если нет, то почему бы и нет? Я понимаю, что URI не является URL-адресом и не обязательно будет использоваться для извлечения веб-страницы с сервера. Тем не менее, RDF-процессоры читают эти URI, и я думаю, что они могут оказать некоторую помощь в виде дополнительных метаданных, которые могут быть переданы через эти строки запроса.
[Обновить 2/9/2012] Вот мой вопрос: я ищу способ указать «силу» соединения. Например, не все foaf: одинаково хорошо знают всех. Возможно, мы только что встретились в течение нескольких минут на конференции. Или я, возможно, жил с кем-то годами. Все дело в ФАО. Однако, если бы я смог написать foaf: знает? Force = + 50, то процессоры, которые не знают, что делать с ключом прочности, могут игнорировать его, а те, которые являются «осведомленными о силе», будут иметь ценные дополнительные метаданные. Я мог бы создать словарь, который включает в себя термин «agreesWith», а затем значение силы = ключевое значение может варьироваться от 0 до 100 (с указанием процентов от соглашения). Затем я бы рассмотрел весь диапазон соглашений с одним термином словаря. {Примечание. Я подумал о том, чтобы диапазон варьировался от -100 до +100, чтобы охватить ряд разногласий. Однако для обратной совместимости нам понадобится термин «не согласен с», так что процессоры, которые не являются «осведомленными о силе», все равно будут знать разницу между «соглашением» и «несогласием».}
Как сейчас, кажется, что там не является оправдателем RDF, чтобы знать разницу между «едва встреченными» и «знает его лучше, чем он сам знает». Решение относиться к каждому разному URI предиката с другим значением в паре ключ-значение как совершенно отдельный и полностью несвязанный предикат, похоже, выбрасывает почти всю самую ценную информацию о соединении, все из-за простой записи кода и быстрой обработки.
Могут быть другие ценные использования для пар ключ-значение в строка запроса, кроме создания n полностью отдельный объект, предикат или объект: их можно было использовать для указания того, кто добавил конкретный объект в совместно отредактированный файл .RDF. Как известно, все рассудители RDF знают, что существует тройка, где-то там? У него нет дополнительной информации, на основе которой можно обосновать свои рассуждения. Зашифрованные парольные фразы могут использоваться для проверки достоверности источника, а не просто для того, чтобы доверять или не доверять всему домену.
Итак, если бы я должен был написать RDF-процессор, который обрабатывал бы любые URI с идентичными domainName.tld/path/name/частями как идентичные объекты, а затем обрабатывал любую строку запроса как просто дополнительные метаданные о конкретном соединении, то этот RDF-процессор было бы вне спецификации? Как вы думаете, будет ли интерес к RDF-процессору, который работал таким образом? Я не вижу логики при обработке example.com/foo/bar, как совершенно не связанной с example.com/foo/bar#x, чем просто упрощает программирование. RDF может быть намного богаче, чем эта система. – GrantRobertson
Если вы применили какой-то степени нормализации это спорно. Однако игнорирование строки запроса определенно неверно. Предположим, что 'http: //example.com/? Personid = xxx' были идентичны для всех' xxx'. Но вы можете сделать явное выражение: вставить отношение (т. Е. Тройное), связанное с 'http: // example.com /'; или вы можете создать собственную функцию эквивалентности SPARQL 'ex: sameIgnoringQuery (x, y)'. – user205512
ОК, я думаю, теперь я могу раскрыть свой секретный план. : ^) См. Мой оригинальный пост для получения дополнительной информации. – GrantRobertson