XML формат для Инженерной геологии
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > XML формат для Инженерной геологии

XML формат для Инженерной геологии

Ответ
Поиск в этой теме
Непрочитано 09.04.2011, 20:42 #1
XML формат для Инженерной геологии
trir
 
Регистрация: 18.12.2010
Сообщений: 5,115

Хочу разработать xml формат для обмена геологической информацией. Я видел одну прогу где это реализовано, но там это было криво сделано.
Вопрос в том какие ещё варианты подобного формата существует. И что в нём должно содержатся.

Последний раз редактировалось trir, 07.12.2011 в 18:08.
Просмотров: 11367
 
Непрочитано 09.04.2011, 21:10
#2
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от trir Посмотреть сообщение
Хочу разработать xml формат для обмена геологической информацией.
Никто не запрещает, главное, чтобы ты сам чётко представлял какую информацию собираешься передавать.
Цитата:
Сообщение от trir Посмотреть сообщение
Я видел одну прогу где это реализовано, но там это было криво сделано.
И все на форуме сразу поняли о какой "кривизне" речь - все ведь телепаты...
Цитата:
Сообщение от trir Посмотреть сообщение
Вопрос в том какие ещё варианты подобного формата существует. И что в нём должно содержатся.
"Сам-то понял о чём спросил?"(с)...

Из xml можно слепить всё что угодно. Складывается впечатление, что топикстартер чего-то хочет, но пока сам не понял чего...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 09.04.2011, 21:24
#3
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


помимо того что xml вещь весьма полезная и сделать можно все что угодно, дак она еще и модная - так что стоит начинать.
Советую книгу
Троелсена
и WPF основы Чарльз Петзольд
если есть основы программирования на .NET то можно Троелсена пропустить.
Если работать с xml собираетесь из lisp, то смотреть блог kpblc-а, там зачатки api для работы с xml, а дальше прямой путь на болото, там уже все придумано, до нас причем давно. =)
Sleekka вне форума  
 
Непрочитано 09.04.2011, 21:26
#4
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Sleekka Посмотреть сообщение
Советую книгу
Троелсена
и WPF основы Чарльз Петзольд
Это из пушки по воробьям.


если .Net, то однозначно:
1. Автор должен сначала сам чётко понять, чего он хочет.
2. Xml.
3. Xml-схемы.
4. Linq to XML
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:

Последний раз редактировалось hwd, 09.04.2011 в 21:35.
hwd вне форума  
 
Автор темы   Непрочитано 09.04.2011, 21:28
#5
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


Тема про то как представит Инженерно-геологические данные в xml
А вы тут флуд разводите
trir вне форума  
 
Непрочитано 09.04.2011, 21:37
#6
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от trir Посмотреть сообщение
Тема про то как представит Инженерно-геологические данные в xml
А вы тут флуд разводите
Флуд?
Ок, более топик не смотрю.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 09.04.2011, 21:52
#7
MeshIN

Изыскания и САПР
 
Регистрация: 05.07.2008
Ижевск
Сообщений: 297


trir, а какие данные будете передавать? ОГМ, полосную модель или по плоскому разрезу? А может данные лаборатории или зондировок? Кто будет работать с разработанным форматом? Думаете разработчики Кредо Геология, или Геодирект? А может Юнисервис или СПЛИТ?
Пока больше вопросов.
MeshIN вне форума  
 
Автор темы   Непрочитано 09.04.2011, 22:04
#8
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


Для начала полевые материалы (фактически - буровой журнал).
А работать буду сам, дело в том, что я разработал БД для хранения этих данных. И возник вопрос с обменным форматом - то есть на работе стоит MySQL с базой. Надо в поле забить данные и в конторе загрузить в базу или перекинуть из одной базы в другую.
Просто не хочется изобретать велосипед - если есть хороший формат, надо его взять и не мучится.
trir вне форума  
 
Непрочитано 09.04.2011, 22:42
#9
MeshIN

Изыскания и САПР
 
Регистрация: 05.07.2008
Ижевск
Сообщений: 297


trir, txt или xls
MeshIN вне форума  
 
Автор темы   Непрочитано 09.04.2011, 22:48
#10
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


Цитата:
Сообщение от MeshIN Посмотреть сообщение
trir, txt или xls
Это плохой ответ, потому что сразу возникает вопрос о структуре представления данных в этих форматах.
trir вне форума  
 
Непрочитано 09.04.2011, 23:50
#11
MeshIN

Изыскания и САПР
 
Регистрация: 05.07.2008
Ижевск
Сообщений: 297


trir, да с чего это плохой? В геодезических инструментах куча информации с прибора передается в обычном текстовом формате, просто прописаны дескрипторы. Да и в Автокад загнать проще информацию.
MeshIN вне форума  
 
Непрочитано 10.04.2011, 08:16
#12
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
на работе стоит MySQL с базой. Надо в поле забить данные и в конторе загрузить в базу или перекинуть из одной базы в другую.
Для этого XML совершенно не обязателен. Если работает сервер MySQL, то для обмена с другой БД (пусть не MySQL) используется универсальный язык баз данных - SQL. C любой клиент-серверной БД всегда работают с помощью какой-то специализированной или универсальной программы.

Специализированная - это наподобие, например, движка этого форума (Vbulletin или просто "Вобла"). Админ, при желании, может экспортировать хоть всю БД, хоть отдельные таблицы, в SQL-файл, а потом, "выполнив" этот SQL, перегнать данные в другую БД.

Универсальная - это наподобие HeidiSQL ("standalone") или PhpMyAdmin (из браузера), с помощью которой можно сделать с БД этого форум что угодно.

XML для импорта-экспорта данных БД тоже применяется. Здесь, в основном, используются две технологии - Microsoft и Borland (не одна - потому что из вредности, просто пиписками меряются). Они предназначены, в основном, для того, чтобы динамически создавать на локальной машине часть БД, редактировать, отключившись от сервера, а потом синхронизировать данные с сервером. Но такие XML могут использоваться и как самостоятельные таблицы.

Есть и БД, которые все данные в XML-формате держат, Cache, например.

У меня есть собственная программа ruXmlDbEdit. Это программа для локальной работы, наподобие Access. В ней есть возможности экспорта/импорта в разные другие форматы (DBF, SQL, XLS, HTML, CSV, TXT). В ней используется специальный вариант XML - XMLdb, разработанный Jan Verhoven и расширенный мною. Такой XML, т.е. не двоичный файл, позволяет использовать данные независимо от технологий Microsoft или Borland, писать программы в любой среде и любой ОС. В то же время он обладает свойствами, необходимыми для любого "DataSet", т.е. его можно присоединить к любым визуальным элементам (DbGrid, DbEdits и т.п.). Разумеется, при подключеии специального модуля. XML хорош тем, что с ним любой программист разберется, даже не имея документации. А подключив дополнительно стили можно отображать XML в "человеческой" форме прямо в браузере.

Именно эту программу сделал для того, чтобы данные из нее можно было использовать в любых программах, не умеющих работать с SQL. Например, для Mapinfo есть экспорт в её родной MIF/MID формат, а AutoCAD у меня обучен прямо из XMLdb создавать свои таблицы.

Так что реализация идеи об использовании XML в "геологических" таблицах зависит исключительно от квалификации программиста.

При использовании данных с геодезических приборов - от "толковости" формата этих данных. То, что он "текстовый" - совершенно не страшно. Да все БД на "больших" ЭВМ данные в текстовом формате держали, благодаря этому после их моральной смерти данные не пропали. Вот если бы они были в двоичных форматах давно сгинувшей фирмы - "тады ой".

Но текстовый формат может быть изначально ориентирован на БД, а может быть и неструктурированным или плохо структурированным. Тогда могут понадобиться хитрые преобразования. Здесь все зависит от дальновидности авторов формата.

Последний раз редактировалось ShaggyDoc, 10.04.2011 в 08:22.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 10.04.2011, 09:42
#13
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


SQL хорош, но существуют разные диалекты
Основная причина выбора XML в том, что структура у меня получается иерархическая:
1.Проект
2. Скважины
2.1. Интервалы
2.2. Пробы
Здесь каждый элемент хранится с свой таблице.
trir вне форума  
 
Непрочитано 10.04.2011, 10:59
#14
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от trir Посмотреть сообщение
SQL хорош, но существуют разные диалекты
Основная причина выбора XML в том, что структура у меня получается иерархическая:
1.Проект
2. Скважины
2.1. Интервалы
2.2. Пробы
Здесь каждый элемент хранится с свой таблице.
"Диалекты" появляются, когда используется конкретная СУБД. В одной могут быть хранимые процедуры, триггеры и т.п., а в другой нет. Сами же данные описываются стандартно.

Иерархические структуры пректрасно описываются в БД. БД - это совокупность таблиц, обычно связанных "отношениями".

В XML таблиц вообще нет - есть только элементы и атрибуты. С помощью XML можно описать любую информацию, но она будет заведомо избыточная, как по объему, так и по целостности.

Думайте, изучайте, выбирайте. Но не бросайтесь сходу именно на XML потому, что "это модно". И учитывайте, что если хотите иметь программу, в которой надо визуально, а не при помощи Notepad, редактировать данные, то для XML это сделать довольно сложно. Придется многое делать с нуля, то, что при использовании БД делается "за шесть секунд".

Сам "формат" придумывать не надо. Это просто формат XML с его синтаксисом. Придумывать придется иерархию, элементы и атрибуты, их типы, возможные значения и прочее. И как со всем этим потом управляться.

Вот простейший пример - таблица в формате XMLdb:

Код:
[Выделить все]
<?xml version="1.0" encoding="windows-1251" ?>
<table>
  <summaryinfo Title="Ведомость чертежей основного комплекта" Subject="Рабочий проект гостиницы Каир в г. Черноморске" Author="ShaggyDoc" LastAuthor="ShaggyDoc" Create_DTM="23.04.2007 11:56:48" RevNumber="4"/>
  <Mapinfo MifVersionStr="Version 600" MifCharsetStr="Charset &quot;WindowsCyrillic&quot;" MifDelimiterStr="Delimiter &quot;|&quot;" MifCoordSysStr="CoordSys Earth Projection 8, 1001, &quot;m&quot;, 63, 0, 1, 11500000, 0 Bounds (11400000, 5900000) (11950000, 6350000)" MifGeometryTemplate="%MIF_GEOMETRY_DIR%\Муниципальные районы.mift"/>
  <fields>
    <PAGE type="string" displayname="Лист" size="22" visible="1" columnwidth="132" displayformat="" columnorder="1" columnwidth_mm="20" columnsumm="0"/>
    <NAME type="string" displayname="Наименование" size="252" visible="1" columnwidth="609" displayformat="" columnorder="2" columnwidth_mm="135" columnsumm="0"/>
    <NOTE type="string" displayname="Примечание" size="50" visible="1" columnwidth="169" displayformat="" columnorder="3" columnwidth_mm="30" columnsumm="0"/>
  </fields>
  <rows>
    <row>
      <PAGE>1</PAGE>
      <NAME>Общие данные</NAME>
      <NOTE/>
    </row>
    <row>
      <PAGE>2</PAGE>
      <NAME>План на отм. 0.000</NAME>
      <NOTE/>
    </row>
  </rows>
</table>
Здесь описана и структура таблицы, и типы данных, и информация для визуального отображения, и данные для рисования в AutoCAD.

Этот XML браузер Internet Explorer отобразит по-своему - в виде "живого" дерева, другой браузер - иначе, а программа ruXmlDbEdit - по своему. Данные будут и в виде "сетки", и в виде "формы", будет обеспечиваться правильность редактирования. Даже могут "справочники" данных для полей здесь же описаны. Но никакая другая программа этого уже сделать не сможет. А был бы это обычный DBF-файл - с ним могли бы работать десятки программ.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 21.04.2011, 21:18
#15
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


У меня получилась вот такая схема:
Код:
[Выделить все]
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema">
 <element name="project">
  <complexType>
   <attribute name="prj_name" type="string"/>
   <attribute name="shifr" type="string"/>
   <attribute name="sk" type="string"/>
   <attribute name="prj_date" type="date"/>
   <attribute name="koment" type="string"/>
   <sequence>
    <element name="point" minOccurs="0" maxOccurs="unbounded" type="pointType"/>    
   </sequence> 
  </complexType>
 </element>

 <complexType name="pointType">
  <attribute name="p_name" type="string"/>
  <attribute name="p_date" type="date"/>
  <attribute name="aftor" type="string"/>
  <attribute name="N" type="double"/>
  <attribute name="E" type="double"/>
  <attribute name="H" type="double"/>
  <attribute name="water1" type="double"/>
  <attribute name="water2" type="double"/>
   <sequence>
    <element name="interval" minOccurs="0" maxOccurs="unbounded" type="intervalType"/>
    <element name="proba" minOccurs="0" maxOccurs="unbounded" type="probaType"/>
   </sequence> 
 </complexType>

 <complexType name="intervalType">
  <attribute name="ot" type="double"/>
  <attribute name="do" type="double"/>
  <attribute name="g_name" type="string"/>
  <attribute name="koment" type="string"/>
 </complexType>

 <complexType name="probaType">  
  <attribute name="PolNumber" type="integer"/>
  <attribute name="LabNumber" type="integer"/>
  <attribute name="glubina" type="double"/>
  <attribute name="g_name" type="string"/>
 </complexType>

</schema>
Вот прога для работы с этим форматом:

XML_GeoMaster.rar

P.S. newproject.xml - не трогать, это шаблон для нового проекта.
trir вне форума  
 
Непрочитано 22.04.2011, 08:24
#16
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Вот прога для работы с этим форматом:
"Прога" нерабочая. Она сразу выдает ошибку (см. рисунок).

Видимо допущена kinder_error_04 - не учитывается, что могут быть установлены разные разделители целой и дробной частей чисел.

Зачем тебе вообще xsd-файл? Только потому, что "по теории"? Как полезно он используется? В нем нет ничего, что нельзя было бы поместить в XML "базу данных". И нет ничего, что без "схемы" нельзя было бы сделать. А у тебя явно и форма вручную, индивидуально сделана.

Ведь это же простая "плоская" таблица.
Миниатюры
Нажмите на изображение для увеличения
Название: xml_geomaster_01.png
Просмотров: 71
Размер:	5.3 Кб
ID:	58115  
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 22.04.2011, 19:40
#17
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


1. Проблема не в проге, а в данных - поменяй в xml разделитель и всё будет в порядке.
2. Схема нужна для понимания структуры файла, а ещё delphi мне удобную оболочку, по ней сделала
3. Там три связанных таблицы.

Последний раз редактировалось trir, 23.04.2011 в 10:09.
trir вне форума  
 
Непрочитано 23.04.2011, 11:39
#18
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Проблема не в проге, а в данных - поменяй в xml разделитель и всё будет в порядке.
И на каждом компьютере влезать в данные и менять разделители? Так это программист обязан написать программу так, чтобы она не зависела от разделителей в данных.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 23.04.2011, 11:48
#19
trir


 
Регистрация: 18.12.2010
Сообщений: 5,115


Вы это AutoDESK скажите :=)
Прога сохраняет данные в XML с разделителем указанным в настройках ОС. Если разделитель другой - то данные неправильные.
trir вне форума  
 
Непрочитано 23.04.2011, 12:49
#20
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от trir Посмотреть сообщение
Вы это AutoDESK скажите :=)
Прога сохраняет данные в XML с разделителем указанным в настройках ОС. Если разделитель другой - то данные неправильные.
В поддержку ShaggyDoc:
Это проблемы не пользователя, и не Autodesk, а того, кто написал эту "софтину". Если знаешь о проблеме - решай её сам, а не напрягай юзера своими "объяснениями" - они ему нахрен не нужны, и его позиция абсолютно верна. Тем более, что сия "проблема" решается элементарно на программном уровне в одну строку кода.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:

Последний раз редактировалось hwd, 23.04.2011 в 12:57.
hwd вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > XML формат для Инженерной геологии



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фундаментная плита без геологии Filя Основания и фундаменты 70 23.01.2011 03:36
Неправильный формат в ячейке таблицы при вставке строки Vildar AutoCAD 8 17.11.2010 15:31
структурированный список Holon Программирование 22 11.09.2007 14:09
фаилы формата dwg (формат Autocad) в формат pdf Zilot AutoCAD 4 02.12.2003 03:02