Проверка файлов gml с помощью xsd-схем

Не знаете, где задать вопрос? Задавайте здесь.
cruiser
Интересующийся
Сообщения: 39
Зарегистрирован: 06 апр 2020, 15:16
Репутация: 9
Откуда: остазия

Проверка файлов gml с помощью xsd-схем

Сообщение cruiser » 09 апр 2021, 13:29

Добрый день. Пытаемся проверить файлы gml с помощью схем xsd, схемы с ФГИС ТП и прочих ресурсов (c opengis и W3.org) выгрузили, немного подправили (потому что иначе на локальном компьютере не проверить, нужно поправить пути) вроде проверяет, но выдает ошибки. Есть у кого опыт проверки, можете подсказать как Вы это делали?

Используем Notepad++, XML-notepad 2007 ,xml spear.

Цель задачи - проверять документы терпланирования перед загрузкой на ФГИС ТП на соответствии той или иной XSD-схеме.

Ну и заодно подскажите в принципе инструменты для проверки готового gml файла на соответствие XSD схемам. Для формирования упор сделали на панораму, вроде как технически там довольно все просто сделать через комплекс градостроительных задач.
Но есть разработчики документов терпланирования, которые пользуются сторонними программами. И были прецеденты, что файл совершенно не соответствовал схеме, но при этом загружался во ФГИС ТП и корректно там отображается на карте. А ФГИС закручивает гайки потихоньку, так что хотелось бы иметь дело со 100% инструментами

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 376
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 139
Откуда: Орск
Контактная информация:

Re: Проверка файлов gml с помощью xsd-схем

Сообщение ginpetr » 12 апр 2021, 13:51

Здравствуйте!
а можете показать фрагмент GML, выгруженного Панорамой? Хотя бы заголовок и первые несколько объектов.

cruiser
Интересующийся
Сообщения: 39
Зарегистрирован: 06 апр 2020, 15:16
Репутация: 9
Откуда: остазия

Re: Проверка файлов gml с помощью xsd-схем

Сообщение cruiser » 12 апр 2021, 14:26

<?xml version="1.0" encoding="utf-8"?>
<Doc.20201010000 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://fgistp file:/" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" xmlns="http://fgistp"><FeatureCollection>
<gml:FeatureCollection gml:id="ID90046480">
<gml:boundedBy>
<gml:Envelope srsName="EPSG:4326" srsDimension="2">
<gml:lowerCorner>55.1798787097144 36.4430161429119</gml:lowerCorner>
<gml:upperCorner>55.2425272176289 36.5596713657077</gml:upperCorner>
</gml:Envelope>
</gml:boundedBy>
<gml:featureMember>
<AdmBorder gml:id="LAYERID1">
<GLOBALID>8D035A86-B631-4D10-934C-566AD79444B2</GLOBALID>
<CLASSID>601010306</CLASSID>
<STATUS_ADM>1</STATUS_ADM>
<CLASSID>601010306</CLASSID>
<gml:LineString gml:id="OBJECTID1" srsName="urn:ogc:def:crs:EPSG:4326">
<gml:coordinates>36.46407999,55.23904867 36.47403278,55.23844523 36.48788192,55.23756886 36.48808918,55.23760263 36.48837780,55.23776473 36.48854162,55.23788987 36.48863141,55.23804031 36.48866411,55.23828339 36.48872624,55.23850934 36.48889233,55.23869931 36.49048232,55.23770364 36.49313191,55.23790579 36.49483137,55.23830538 36.49818308,55.23825313 36.49958149,55.23822488 36.50145017,55.23805812 36.50343624,55.23790231 36.51098532,55.23499866 36.51213010,55.23456404 36.51477952,55.23746644 36.51464627,55.23756575 36.51469302,55.23797525 36.51650470,55.23996017 36.51679119,55.23999251 36.51770856,55.24099918 36.51795757,55.24100453 36.51821263,55.24074043 36.51857312,55.24049788 36.51948450,55.24028058 36.51994926,55.24002214 36.52049296,55.24027201 36.52118726,55.24027357 36.52163002,55.24017252 36.52235173,55.24021875 36.52264840,55.24004411 36.52266391,55.23963229 36.52232481,55.23918602 36.52244986,55.23845896 36.52168303,55.23818854 36.52065664,55.23804967 36.52037679,55.23782541 36.52060787,55.23764379 36.52057867,55.23752429 36.52014061,55.23730344 36.52005463,55.23701977 36.52139985,55.23536167 36.52310265,55.23385762 36.52372908,55.23326856 36.52465658,55.23267685 36.53186962,55.22996422 36.53299927,55.23052089 36.53344489,55.23065916 36.53430119,55.23061784 36.53459995,55.23074786 36.53614426,55.23141025 36.54245275,55.23294045 36.54480632,55.23319543 36.55319258,55.23425155 36.55059843,55.23222452 36.55003736,55.23195131 36.54969701,55.23159083 36.54950476,55.23097295 36.54968749,55.22948395
Вот "огрызок" скажем так. Для эксперимента пока взяли слой адм.тер.границ, 2 объекта всего. До конца не стал копировать, очень много координат там.

Если что есть тот же объект, только в EPSG 3857 в метрах

Vadim
Завсегдатай
Сообщения: 297
Зарегистрирован: 03 июн 2015, 10:19
Репутация: 72

Re: Проверка файлов gml с помощью xsd-схем

Сообщение Vadim » 12 апр 2021, 14:48

Самому недавно приходилось загружать во ФГИС ТП gml. Там форматно-логический контроль проверяет его состав и выводит ошибки. Обязательно должны присутствовать все поля (соответствующие тэги в gml), указанные в 10-м приказе. Обязательные для заполнения - следующие поля:
1. CLASSID
2. NAME
3. GLOBALID
4. VOLTAGE
5. OBJECTNAME
6. STATUS

Есть некритическая ошибка, вроде "выходит за пределы" РФ - это связано со спецификой проверки, как я понимаю. По крайней мере GML у меня был в EPSG 3857 (в квантуме ложится "на место").
Ошибки можно править в notepad++, используя замены или регулярные выражения.

cruiser
Интересующийся
Сообщения: 39
Зарегистрирован: 06 апр 2020, 15:16
Репутация: 9
Откуда: остазия

Re: Проверка файлов gml с помощью xsd-схем

Сообщение cruiser » 12 апр 2021, 14:56

Vadim писал(а):
12 апр 2021, 14:48
Есть некритическая ошибка, вроде "выходит за пределы" РФ - это связано со спецификой проверки, как я понимаю. По крайней мере GML у меня был в EPSG 3857 (в квантуме ложится "на место").
Ошибки можно править в notepad++, используя замены или регулярные выражения.
Насчет этого немного помогу. Списывался на форуме панорамы с разработчиками. Там дело в том, что в ФГИС ТП обратный порядок осей. Они сейчас в последней версии приложения "Комплекс градостроительных задач" сделали галочку "Развернуть координаты" и в дальнейшем обещали для 3857 автоматический разворот.
Это касается только 3857, 4326 вроде как без разворотов нормально ложится. По крайней мере грузили файлы туда и они уже корректно на карте отображаются.

Vadim
Завсегдатай
Сообщения: 297
Зарегистрирован: 03 июн 2015, 10:19
Репутация: 72

Re: Проверка файлов gml с помощью xsd-схем

Сообщение Vadim » 12 апр 2021, 15:00

cruiser писал(а):
12 апр 2021, 14:56
Это касается только 3857, 4326 вроде как без разворотов нормально ложится.
Спасибо.

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 376
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 139
Откуда: Орск
Контактная информация:

Re: Проверка файлов gml с помощью xsd-схем

Сообщение ginpetr » 12 апр 2021, 15:07

Спасибо за фрагмент!
Никак не могу загрузить свои GML. Проанализирую Ваш и постараюсь понять в чём дело.

cruiser
Интересующийся
Сообщения: 39
Зарегистрирован: 06 апр 2020, 15:16
Репутация: 9
Откуда: остазия

Re: Проверка файлов gml с помощью xsd-схем

Сообщение cruiser » 12 апр 2021, 15:10

ginpetr писал(а):
12 апр 2021, 15:07
Спасибо за фрагмент!
Никак не могу загрузить свои GML. Проанализирую Ваш и постараюсь понять в чём дело.
А у Вас другой заголовок и структура? И ошибки какие выдает? Там же есть еще ошибки, не связанные со структурой (всякие атрибутивные и геометрические например)

Vadim
Завсегдатай
Сообщения: 297
Зарегистрирован: 03 июн 2015, 10:19
Репутация: 72

Re: Проверка файлов gml с помощью xsd-схем

Сообщение Vadim » 12 апр 2021, 15:17

Там на 4-м этапе, если не ошибаюсь, топологию проверяет.
пространственный анализ.png
пространственный анализ.png (18.71 КБ) 6591 просмотр

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 376
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 139
Откуда: Орск
Контактная информация:

Re: Проверка файлов gml с помощью xsd-схем

Сообщение ginpetr » 12 апр 2021, 19:21

Я вообще не понимаю что ещё нужно исправить. Какие были ошибки, связанные с самопересечениями, неправильным описанием многоконтурных полигонов я исправил. Сейчас, видимо, что-то в заголовке не устраивает, окно Ошибок просто пустое.

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<Doc.20204010000 gml:id="01c4c364-cebc-41d4-aae5-4513d95b2d0b" xmlns="http://fgistp" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://fgistp file:/">
<gml:FeatureCollection>
<gml:boundedBy>
  <gml:Envelope srsName="EPSG:3857">
    <gml:lowerCorner>5458199.32 6873536.4</gml:lowerCorner>
    <gml:upperCorner>5625179.09 7040905.4</gml:upperCorner>
  </gml:Envelope>
</gml:boundedBy>
<gml:featureMember>
	<AdmeNP>
		<gml:MultiPolygon>
			<gml:polygonMember>
				<gml:Polygon>
					<gml:exterior>
						<gml:LinearRing>
							<gml:pos> 5535793.61 6995236.61 </gml:pos>
							<gml:pos> 5535901.53 6995230.94 </gml:pos>
					...
						</gml:LinearRing>
					</gml:exterior>
				</gml:Polygon>
			</gml:polygonMember>
		</gml:MultiPolygon>
		<GLOBALID>3d78d117-295c-4a6a-ae7d-572ae4cce6d6</GLOBALID>
		<CLASSID>601020400</CLASSID>
		<NAME>с. Александровка</NAME>
		<OKTMO>12343000111</OKTMO>
		<SETTL_LVL>5</SETTL_LVL>
		<SETTL_TYPE>9</SETTL_TYPE>
		<POPULATION>0</POPULATION>
		<SOURCE></SOURCE>
		<STATUS_ADM>1</STATUS_ADM>
	</AdmeNP>
</gml:featureMember>
<gml:featureMember>
...
</gml:featureMember>
...
</gml:FeatureCollection>
</Doc.20204010000>
image.png
image.png (19 КБ) 6527 просмотров
Служба поддержки не отвечает - походу я их достал уже.

Vadim
Завсегдатай
Сообщения: 297
Зарегистрирован: 03 июн 2015, 10:19
Репутация: 72

Re: Проверка файлов gml с помощью xsd-схем

Сообщение Vadim » 14 апр 2021, 09:51

ginpetr, оно не пустое, разверните его, щёлкнув на бордовое поле.

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 376
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 139
Откуда: Орск
Контактная информация:

Re: Проверка файлов gml с помощью xsd-схем

Сообщение ginpetr » 14 апр 2021, 10:23

не понял, куда именно щёлкнуть?
проверить уже не смогу, материалы пролезли-таки через ФЛК! Добавил потерянные мной обязательные gml:id у некоторых элементов и заменил MultiPolygon на MultiSurface.

Vadim
Завсегдатай
Сообщения: 297
Зарегистрирован: 03 июн 2015, 10:19
Репутация: 72

Re: Проверка файлов gml с помощью xsd-схем

Сообщение Vadim » 14 апр 2021, 10:28

На само бордовое поле: оно должно раскрыться, как drop-down list.
Так он у Вас ругался на структуру (схему) GML?

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 376
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 139
Откуда: Орск
Контактная информация:

Re: Проверка файлов gml с помощью xsd-схем

Сообщение ginpetr » 14 апр 2021, 11:27

Трудно сказать, на что -- из-за пустого окна часто действовал вслепую, анализируя чужие файлы и документацию по GML. Сначала были ошибки "нарушен единый подход при описании типа геометрии" и ошибки топологии, а после их устранения началась эта ерунда с пустым окном.

cruiser
Интересующийся
Сообщения: 39
Зарегистрирован: 06 апр 2020, 15:16
Репутация: 9
Откуда: остазия

Re: Проверка файлов gml с помощью xsd-схем

Сообщение cruiser » 14 апр 2021, 15:13

ginpetr писал(а):
14 апр 2021, 10:23
материалы пролезли-таки через ФЛК!
Ну ФЛК у них еще не на полную катушку работает насколько я понял. Так как туда пролезали файлы ни разу не похожие на структуру. Видимо постепенно включают те или иные параметры проверки. Коли бы все разом включили - работа бы встала и пропустились все мыслимые и немыслимые строки.
В ближайшее время буду связываться с техподдержкой ФГИС, накопилось определенное количество вопросов.
Постараюсь отписать в этой теме, если будет что-то по технической теме gml

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: Amazon [Bot] и 9 гостей