МПЗиО_13_17_СемантичВеб (1185832)
Текст из файла
ПРЕДСТАВЛЕНИЕЗНАНИЙ:ФОРМАЛЬНЫЕ ЯЗЫКИдляSemantic WebСОДЕРЖАНИЕ1.Концепции Semantic Web и Linked Data2.Понятие URI3.Форматы RDF4.Средства RDFS : словари5.Язык запросов SPARQL6.Язык описания онтологий OWL7.Заключение2ПОИСК И СЕМАНТИЧЕСКИЙ ВЕБРазвитие Интернета: Web-1 – 1989 г. – веб документов Web-2 – 2000 гг. – структурированный исоциализированный веб Web-3 – 2020г.? – семантический вебКомпьютерная программа не способна, загрузив произвольныйдокумент (веб-страница, файл) понять его содержаниеЦелью проекта Semantic Web является создание средств: снабжающих ресурсы сети Интернет метаинформацией позволяющих пользователю осуществлять семантическуюнавигацию и поиск внутри аннотированных ресурсов обеспечивающих поиск и интеграцию информациипрограммными агентамиВ идеальном варианте, все информационные ресурсы вИнтернете должны описываться на двух языках:для человека и для программных агентов3Semantic Web и Linked DataSemantic Web – расширение Web, в рамках которогоинформация представляется в форматах,обеспечивающих семантический поиск на базеаннотированных (метаинформацией) ресурсов ИнтернетSemantic Web позволит пользователю быстро получатьответы на сложные запросы«Онтологии – ведущая парадигма структурированияинформационного контента»Основа Semantic Web – концепция Linked Data, 2006 г.,Тим Бернес-ЛиПредставление данных в структурированном виде,пригодном для машинной обработки (семантические сети и др.)Набор приемов опубликования и соединенияструктурированных данныхОсновные понятия:HTTP URI , RDF,SPARQL4Web и Linked Data:СРАВНЕНИЕWorld Wide WebLinked DataДанные для людей документы в форматеHTMLДанные для машин в формате RDFДокументы в сетиименуются с помощьюURLПроизвольныесущности именуютсяс помощьюHTTP URIHTTP – Hyper Text Transfer Protocol(протокол передачи данных по сети)5ПОНЯТИЯ URI, URL и URNURI (Uniform Resource Identifier) – символьная строка,позволяющая идентифицировать какую-либосущностьПонятие возникло вместе с понятием URL (WWW,1989)Способы именования произвольных сущностей:URL – включает местонахождение сущностиURN – идентифицирует в некотором пространствеимен, но не указывает местонахождение сущности(например, ISBN:0-395-36341-1 идентифицирует книгу)URI – это либо URL, либо URNПримеры:http://www.w3с.org/People/Berners-Lee/mailto:timbl@w3.org6ПОНЯТИЕ HTPP URIHTTP URI – HTTP Uniform Resource IdentifierHTTP URI используются для именования сущностейв Linked Data, позволяют получать информацию попротоколу HTTPДля извлечения информации из разыменованного URIсущности используются стандарты RDF и SPARQLHTTP URIhttp://ru.wikipedia.orgURLftp://myname:mypass@myhost.comURIurn:issn:1535-36137HTTP URI И СУЩНОСТИHTTP URI позволяет ссылаться на произвольныесущности, в том числе понятия(онтологии, модели ПО)FOAF (Friend of a Friend) –проект по созданию модели ПЗ для машинночитаемых домашних страниц и социальных сетейПримеры используемых понятий:Person –name–http://xmlns.com/foaf/0.1/nameknows–http://xmlns.com/foaf/0.1/knowshttp://xmlns.com/foaf/0.1/Person8ПРИНЦИПЫ Linked DataДля именования сущностей и понятийиспользуются HTTP URIДля получения данных применяется протокол HTTPПо данному URI предоставляется информация(в удобном формате)о сущности, на которую указывает URIВ описания сущностей включаются ссылки надругие сущности, чтобы сделать знания/данныесвязаннымиЯзык RDF применяется для описания сущностейи их связей (отношений)9ЯЗЫК RDFRDF : Resource Description FrameworkСхема, формат представления данных и метаданныхСтандарт (де факто) для семантического вебаВозможные метаданные (данные о данных)Запись на RDF – множество триплетов (троек) вида<subject, predicate, object>Метаданные файлов: расширение, размер...Заголовки баз данныхОнтологииСубъект (subject) – URI или переменная (Blank node)Предикат (predicate)– URIОбъект (object) – URI , Blank node или константа (литерал)Для описания данных в RDF используютсясловари (онтологии) классов и отношений (связей, свойств)10ГРАФ ДАННЫХ RDFЗапись на RDF – множество триплетов – может бытьпредставлена графически,в виде семантической сети:Джон знает Майка.Фамилия Джона – Нельсон.Джон знает человека, который родился 21 апреля.ex:Johnknowsex:Mikeknows"Nelson"birthday"04-21"11ФОРМАТЫ RDFНесколько форматов (синтаксисов) записи триплетовXML – используется для хранения и передачиданных по сетиДжона знает человека, который родился 21 апреля:<foaf:Personrdf:about="http://example.org/Person#John"><foaf:knows><foaf:Person foaf:birthday="04−21"/></foaf:knows></foaf:Person>N-Triple – последовательно записываются три HTTP URI,заключенные в угловые скобки, в конце – точкаДжон знает Майка:<http://example.org/Person#John><http://xmlns.com/foaf/0.1/knows><http://example.org/Person#Mike> .12ФОРМАТЫ RDF: NOTATION 3Notation 3 – используются префиксы,определяемые заранее (ex, foaf, др.):@prefix ex: <http://example.org/Person#> .@prefix foaf: <http://xmlns.com/foaf/0.1/> .В результате их использования – более короткаязапись, например:Джон знает Майкаex:John foaf:knows ex:Mike .Если вершина неизвестна, используется знак ?Джон знает человека, который родился 21 апреляex:John foaf:knows? .?foaf:birthday "04-21" .13NOTATION 3: СОКРАЩЕНИЕ ЗАПИСИНесколько троек с одним и тем же пустым узломможно записать в квадратных скобках,сам пустой узел указывать в этом случае не нужно:Джон знает человека, который родился 21 апреля[ ex:John foaf:knows ; foaf:birthday "04−21" .
]Несколько троек с одним и тем же субъектом можнозаписать через точку с запятой, указав субъект толькоодин раз:Джон знает Майка, фамилия Джона – Нельсонex:Johnfoaf:knowsex:Mike ;foaf:familyName"Nelson" .Если тройки с одним субъектом и предикатом, тообъекты можно записать через запятую:ex:Alicefoaf:knows ex:Mike , ex:John .14RDF-СЛОВАРЬ FOAFFOAF – Friend of a FriendКлассы:AgentPersonProjectOrganizationGroupDocumentImage…(онтология без аксиом)Свойства:Отношения:nameagetitlebirthdayfamilyNamegivenNamemember…knowsbased_nearmadedepictsisPrimaryTopicOfcurrentProjectworkplaceHomepage…Каждому понятию соответствует определенный HTTP URI :http://xmlns.com/foaf/0.1/knows15ПРИМЕР RDF-ГРАФАВершинами графа являются субъекты и объекты,ребра – свойства и отношения16RDF-СЛОВАРИFOAF (Friend of a Friend)vCard (visiting Card) - для описания физических июридических лиц, а также фактов, кто с кем знакомGoodRelations - для описания товаров в магазинахSIOC (Semantically-Interlinked Online Communities) для описания информации из блогов и форумовSKOS (Simple Knowledge Organization System)для описания тезаурусов и таксономийDOAP (Description of a Project) - для описанияopen-source проектовDublin Core - простой набор элементов метаданных17СОЗДАНИЕ НОВЫХ СЛОВАРЕЙRDFS : RDF Scheme,RDF Vocabulary Definition Language – языкописания RDF-словарейRDFS – расширение RDF, позволяющееописывать простые (легкие) онтологии:классификации с некоторымидополнительными отношениямиOWL : Web Ontology Language –язык описания веб-онтологий, позволяетописывать более сложные онтологии18RDFS: ОПИСАНИЕ ОНТОЛОГИЙДля описания используются компоненты: rdfs:Class отношения rdf:type и rdfs:subClassOfПример описания классов:ex:MotorVehicle rdf:type rdfs:Class .ex:PassVehicle rdf:type rdfs:Class .Пример взаимосвязи (вложения) классов:ex:PassVehicle rdfs:subClassOf ex:MotorVehicle(Пассажирский автомобиль является механическимтранспортным средством)Используются стандартные префиксы:@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .19RDFS: ОПИСАНИЕ ОТНОШЕНИЙДля описания используются: класс rdf:Property, свойство rdfs:subPropertyOf отношение rdfs:domain –накладывает ограничение на субъект отношение rdfs:range –накладывает ограничение на объектПример описания отношения hasMother снакладыванием ограничений на субъект и объект:ex:hasMotherex:hasMotherex:hasMotherexstaff:Johnrdf:typerdfs:domainrdfs:rangeex:hasMotherrdf:Property .ex:Person .ex:Female .exstaff:Jessica .20RDF: ЛОГИЧЕСКИЙ ВЫВОДRDF-данные можно интерпретироватьс помощью описанных онтологий и получатьлогические заключенияОписание отношения hasMother :ex:hasMother rdf:typerdf:Property .ex:hasMother rdfs:domainex:Person .ex:hasMother rdfs:range ex:Female .Известно: У Джона есть мать Джессикаexstaff:Johnex:hasMother exstaff:Jessica .Значит, Джон – человек, а Джессика – женщина:exstaff:John rdf:typeex:Person .exstaff:Jessica rdf:typeex:Female .21ЯЗЫК SPARQLSPARQL Protocol and RDF Query Language – языкзапросов к данным, представленным в виде RDF,а также протокол для передачи этих запросов и ответовЗапрос – шаблон графа + условие фильтрацииШаблон графа включает шаблонные триплетыШаблонный триплет, пример:Переменные начинаются либо с ?, либо с $Суперпозиции шаблонных триплетов:••••?X :name "John" .{ P1 P2 }\\ перечисление триплетов (&){ P1 } UNION { P2 }\\ дизъюнкция{ P1 OPTIONAL { P2 } } \\ отношения из Р2 не обязательны{ P1 FILTER ( R ) }\\ фильтрация выводимых данныхВозможны префиксы:PREFIX foaf: <http://xmlns.com/foaf/0.1/>22SPARQL: ВИДЫ ЗАПРОСОВSELECT – возвращает всевозможныезначения переменных в запросеCONSTRUCT – строит RDF-граф,подставляя значения переменныхASK – булевский запрос, удовлетворяет лиRDF-граф заданному шаблонуDESCRIBE – возвращает структурусоответствующего RDF-хранилища(набора триплетов)23ПРИМЕР ЗАПРОСА SELECTSELECT ?N ?Eмножество переменныхWHERE{шаблон графа?X :name ?N ;:email ?E .?X :friendOf ?Y .?Y :name"Ruth Garrido“ .}Знак ; означает продолжение использования того же субъекта24ВЫРАЗИТЕЛЬНОСТЬ SPARQLВыразительность языка:• Группировка• Опциональные части• Вложенность• Объединение шаблонов• ФильтрацияРазвитие:Регулярные выраженияСемантика языка:отображения(mappings)25ЯЗЫК OWLОнтологии – средство структурированияинформационного контентаOWL : Web Ontology Language - язык описанияонтологий для семантического вебаДве функции : описательная: представление знаний (онтологии) логическая: получение выводов из знаний)Модель знаний, ключевые понятия: классы свойства экземпляры (индивиды) аксиомы26OWL: КЛАССЫ и СВОЙСТВАДва предопределенных класса: owl:Thing (сущность), owl:Nothing (ничто);Каждый класс являетсяродительским для owl:Nothing идочерним для owl:ThingПример объявления класса (XML):<owl:Class rdf:ID=“Human”/>Отношение Класс-Подкласс (Род-Вид, наследование):rdfs:subClassOfДва класса свойств owl:Property: Связывание объектов-индивидов друг с другом:owl:ObjectProperty Свойства типов данных: связывают индивидов сзначениями типов данных: owl:DatatypeProperty27OWL: АКСИОМЫ КЛАССОВОбъявления классов:owl:Class – объявление классаowl:SubClassOf – объявление подклассаowl:equivalentClass – эквивалентные классыowl:disjointWith – классы не пересекаютсяОграничения на значения:owl:allValuesFrom – все значения свойства –экземпляры указанного класса, если в качествесубъекта выступает данный класс (∀)owl:someValuesFrom – существует (∃)owl:hasValue – имеет значениеОграничения на мощность:owl:maxCardinality – максимальное значениеowl:minCardinality – минимальное значениеowl:cardinality – значение мощности задается явно28OWL: ПРИМЕР ОПИСАНИЯ КЛАССАОписание класса «Футбольная команда»::ФутбольнаяКоманда rdf:type owl:Class ;:ФутбольнаяКоманда rdfs:subClassOf ? ;? rdf:type owl:Restriction ;? owl:onProperty :Игрок ;? owl:cardinality 11 .owl:Restriction – класс OWL, позволяющийзадавать ограничения: owl:onProperty задает ограничение свойства owl:cardinality – ограничение на мощностькласса: количество значений для заданногосвойства29OWL: АКСИОМЫ СВОЙСТВСоотношение данного свойства с другим:owl:equivalentProperty – эквивалентные свойстваowl:inverseOf – первое свойство является обратнымдля второго свойстваГлобальные ограничения на мощность свойств:owl:FunctionalProperty – функциональное:уникальность субъектов во всех тройкахowl:InverseFunctionalProperty – уникальностьобъектов во всех тройкахЛогические характеристики свойств:owl:TransitiveProperty – транзитивностьowl:SymmetricProperty – симметричность30OWL: СИНТАКСИС И СЕМАНТИКА5 официальных форматов синтаксиса(в том числе RDF-based)Две официальные семантики (согласованы): Direct-семантика: Основана на логике первого порядка Прямые соответствия:Классы → множестваСвойства → отношенияЭлементы → константы и переменныепроблемной области RDF-based семантика31OWL: ДИАЛЕКТЫТри версии языка OWL: OWL Full – язык RDFS с расширенным синтаксисом нет различий между классами и экземплярами классов:(Например, Спаниель – имя класса и экземпляра) не различаются объектные свойства и свойства типов неразрешимость логического выводаOWL DL – описание на основе Дескриптивных Логик различает классы, типы данных, свойства типов данных,объектные свойства и индивиды запрещено использовать почти все элементы RDFSOWL Lite – для проектирования простых таксономий снекоторыми дополнительными отношениями сохранение всех ограничений OWL DL + дополнительные запрещается использовать ограниченияowl:hasValue и owl:disjointWith32OWL Lite: ПРОФИЛИOWL ELOWL QLполиномиальные алгоритмы для всехстандартных задач (классификации и проверкисуществования экземпляров)применяется для очень больших онтологийдопускает конъюктивные запросы с использованиемтехнологии реляционной базы данныхприменяется при относительно легких онтологиях, сбольшим количеством индивидовOWL RLприменяется для легких онтологий с большимколичеством индивидов, когда необходимо работатьнепосредственно на данных в форме RDF-триплета33ЗАКЛЮЧЕНИЕПоследнее десятилетие:быстрое развитие проекта Semantic Web,рассмотренных формальных языков,изучение их семантики и логическое обоснование,поиск диалектов с приемлемой вычисл.
сложностьюПроект Semantic Web аккумулирует результаты,полученные рамках всех известных моделей ПЗ(рассмотренных в курсе)Linking Open Data project :цель – развитие концепции Linked Dataвыявление наборов данных, доступных под открытымилицензиямиконвертирование этих данных в формат RDFпубликация в Web, согласно принципам Linked Data34ДОМАШНЕЕ ЗАДАНИЕ № 9Сформулировать основные отличия средствобъектно-ориентированного программированияот фреймовой модели представления знаний.Ограничение :– не более 5 пунктов отличий(а реально может быть и меньше)– не более 1500 знаков текста (без пробелов)(≈ 3-5 баллов)Контрольный срок сдачи задания – 12 маяСдавать задание в письменном/распечатанномвиде35Linked Data 200836Linked Data 201137.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.