Концепции организации программной библиотеки libIM

Материал из Свод знаний по информационному моделированию
Перейти к навигации Перейти к поиску

Задачи бибилиотеки libIM

Библиотека libIM разматывается для решения нескольких задач:

  • Обеспечение трансформации данных одного формата в другой
  • Формирование стандартного интерфейса к национальной модели данных строительной отрасли
  • Обеспечение возможность чтения данных из форматов xml (в соотвествии со схемой МИНСТРОЯ), ifc, step
  • Обеспечение возможность экспорта в форматы step, ifc, xml (в соотвествии со схемой МИНСТРОЯ), sql
  • Обеспечение стандартного программного интерфейса api для использования различным по на различных Языка программирования.
  • Обеспечение поддержки языков программирования: Julia, Python, C, C#
  • Предоставление инструментов для работы в качестве элементов скриптов и просмотра модели
  • Обеспечение возможности редактирования модели данных национального формата
  • Обеспечение возможности формирования наборов данных в соотвествии со сценариями, этапами жизненного цикла
  • Обеспечение возможности проверки на соответствие требованиям
  • Обеспечение использования в различных программных средах
  • Поддержка Операционных систем Linux, windows
  • Обеспечение возможности донасыщения данными в соотвествии с требованиями заказчика
  • Предоставление возможности обращения к онтологии гражданского строительства через стандартный интерфейс sparql и gremlin (графовой базы)
  • Создания инструмента а-ля Jupiter notebook для формирования интерактивной проектной документации и пояснительных записок

Прообразом данной библиотеки является открытый инструмент ifcOpenShell одним из вариантов использования библиотеки видится возможность подключения этой библиотеки к ifcOpenShell для использования уже существующих возможностей blenderBIM Addon


Принципы построения библиотеки

Ядром работы библиотеки является единая модель данных строительной отрасли. Все другие модели данных приводятся к этой модели и после этого преобразовываются в другие модели данных, что позволяет добиться однозначного преобразования моделей данных и при этом постоянно называть единую модель данных. Чтобы единая модель данных могла решать обозначенные задачи в настоящее время существует возможность описания модели данных на основе онтологии. В качестве прототипа онтологии можно использовать онтологию разработанную финскими коллегами: https://digitalconstruction.github.io/v/0.5/index.html

Методология реализации

По поводу разработки программных библиотек для обработки модели данных IFC модно почитать в статье « IFC Import and Open Source» ведущего разработчика Компании Autodesk Jeremy Tammik

Условия распространения и использования программной библиотеки

Краткую информацию о сути открытых лицензий вы можете посмотреть в статье В чём разница между популярными Open Source лицензиями? Объясняет Github или на сайте GNU Как выбрать лицензию для своей собственной работы

Настоящяя библиотека распространяется по лицензии GNU Lesser General Public License v3.0

LGPLv3

План разработки