2015-03-25 3 views
1

Я новичок в концепции онтологий OWL/RDF и думаю, что было бы полезно преобразовать их в UML, чтобы затем сгенерировать скелеты классов с помощью моей IDE. Предполагая, что это разумная вещь, можете ли вы, пожалуйста, порекомендовать подход?OWL/RDF to UML Converter

Я знаю, что есть парнеры OWL/RDF like this one, но я не могу найти то, что будет конвертировать в UML.

EDIT:

На основе комментариев позвольте мне изменить вопрос:

При запуске нового проекта на основе существующей онтологии есть способ легко создавать классы скелетов в качестве отправной точки? Мне не нужно синхронизировать изменения между онтологией и классами - это одноразовая настройка, которая, как я ожидаю, займет значительное количество копий и вставки, что наводит меня на неправильный подход.

Если я правильно использую онтологии, не могли бы вы объяснить, в чем их цель (если таковая имеется) при разработке иерархии классов?

Вот пример того, что я хочу, чтобы реализовать (за исключением это только один датчик, и мне нужно реализовать несколько):

http://www.w3.org/2005/Incubator/ssn/XGR-ssn-20110628/#Smart_product_example

+0

'RDF' обычно используется в качестве динамического пучка' triples', а также [Wikidata] (http://en.wikipedia.org/wiki/Wikidata) использует очень динамичную структуру. Он используется для описания физических вещей, которые не так часто меняются, но модели программного обеспечения (классы UML), используемые компьютерами, могут меняться довольно часто. Если ваше программное обеспечение будет взаимодействовать с текущими динамическими реализациями, вам придется очень часто конвертировать и регенерировать код (во время выполнения?). Что вы ожидаете от конверсии (иначе, чем генератор кода, экономя время разработчика)? Можете ли вы предоставить некоторые примеры использования или истории пользователей? – xmojmr

+2

OWL может представлять собой кучу вещей, которые не будут очень легкими, если вообще возможно, для представления в UML. Однако есть много инструментов, которые визуализируют онтологию OWL. Protege очень популярен. Тем не менее, вопрос, вероятно, является нелогичным для Stack Overflow, поскольку (цитируя близкую причину), «вопросы, предлагающие нам рекомендовать или находить книгу, инструмент, библиотеку программного обеспечения, учебник или другой ресурс вне сайта, не соответствуют теме Stack Overflow, поскольку они склонны привлекать упрямые ответы и спам ». –

+1

«При запуске нового проекта, основанного на существующей онтологии, есть ли способ легко создавать классы скелета в качестве отправной точки?» Это действительно другой вопрос, чем визуализация. 1. Есть некоторые инструменты, которые делают это, но они, как правило, только смогут присоединиться к части онтологии. Они действительно существуют. 2. Для визуализации я думаю, что диаграмма в документе, с которой вы связаны, выглядит так, как это было создано с помощью [CMapTools] (http://cmap.ihmc.us/). –

ответ

-2

Мое понимание, что понятие «semantic web» по-прежнему в значительной степени на дальновидной стадии и не будет влиять на разработчиков в течение некоторого времени. Начальный applications, по-видимому, сосредоточен вокруг обмена знаниями между людьми, а не машинами. Надеюсь, что он движется к совместному использованию машин-машин, поскольку в настоящее время нет никакого интереса к этому.

+0

Хммм, учитывая, что у меня были разработчики, работающие над этим в 2015 году ...Если вы делаете что-либо с графами знаний (например, для пользовательских интерфейсов на основе речи, таких как Siri), вы, вероятно, работаете с RDF и OWL. –

+0

@DanBennett = Не могли бы вы разместить ссылку? Я не могу найти недавние проекты с открытым исходным кодом, используя RDF/OWL. – Charlie

+0

Есть наш: https://github.com/thomsonreuters/CM-Well Или https://permid.org со стороны данных Rya продолжает добиваться прогресса: http://incubator.apache.org/projects/ rya.html Как и http://brightstardb.com и http://orientdb.com Google представляет свою работу RDF на неделе ISWC после следующего https://iswc2017.semanticweb.org/program/keynotes/keynote-taylor / –

0

Отметьте для UML to OWL converter. Он преобразует UML в RDF/OWL, поэтому он выполняет работу в противоположном направлении, но его можно использовать в качестве шаблона для вашей задачи. Конвертер основан на подходе MDA, поэтому требуется знание его (MOF, ODM, Eclipse EMF, ATL), которое стоит иметь.