OGC 표준 소개 7
다음은 점, 선, 면 데 이 터 를 포함 하 는 GML 의 간단 한 예 입 니 다. 이 예 를 통 해 GML 의 조직 상황 을 볼 수 있 습 니 다.
<?xml version="1.0" encoding="UTF-8"?>
<gml:FeatureCollection xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:fme="http://www.safe.com/gml/fme"
xsi:schemaLocation="http://www.safe.com/gml/fme MyGML.xsd">
<gml:boundedBy>
<gml:Envelope srsName="EPSG:4326" srsDimension="2">
<gml:lowerCorner>-0.012611143330844 -0.050087654172727</gml:lowerCorner>
<gml:upperCorner>0.051158411625351 0.019154661096934</gml:upperCorner>
</gml:Envelope>
</gml:boundedBy>
<gml:featureMember>
<fme:point gml:id="id9e2fb700-bbdb-48a5-8d99-f68b89886f4a">
<fme:Id>0</fme:Id>
<gml:pointProperty>
<gml:Point srsName="EPSG:4326" srsDimension="2">
<gml:pos>0.027363801567048 -0.028672505120255</gml:pos>
</gml:Point>
</gml:pointProperty>
</fme:point>
</gml:featureMember>
<gml:featureMember>
<fme:line gml:id="id4e0efc7b-d652-4d3c-8466-1a2419bca6d2">
<fme:Id>0</fme:Id>
<gml:curveProperty>
<gml:LineString srsName="EPSG:4326" srsDimension="2">
<gml:posList>0.051158411625351 0.019154661096934 0.039736998797366 -0.050087654172727</gml:posList>
</gml:LineString>
</gml:curveProperty>
</fme:line>
</gml:featureMember>
<gml:featureMember>
<fme:polygon gml:id="idf9b78df6-c402-4bc9-afd4-22762401c565">
<fme:Name>0</fme:Name>
<gml:surfaceProperty>
<gml:Surface srsName="EPSG:4326" srsDimension="2">
<gml:patches>
<gml:PolygonPatch>
<gml:exterior>
<gml:LinearRing>
<gml:posList>0.016656227040926 -0.024151529209121 0.003569191508859 0.005829679464227 -0.012611143330844 -0.01177833197886 -0.004283029810438 -0.042473378954071 0.018321849744836 -0.049373815870979 0.016656227040926 -0.024151529209121</gml:posList>
</gml:LinearRing>
</gml:exterior>
</gml:PolygonPatch>
</gml:patches>
</gml:Surface>
</gml:surfaceProperty>
</fme:polygon>
</gml:featureMember>
</gml:FeatureCollection>
이 예 에서 GML 의 Feature Collection 을 묘 사 했 습 니 다. 이것 은 FME 에서 내 보 낸 데이터 이기 때문에 'fme' 의 네 임 스페이스 와 'fme: point', 'fme: line', 'fme: polygon' 유형 도 포함 되 어 있 습 니 다. 이런 유형 은 이 XML 에 포 함 된 XSD 에서 묘 사 했 습 니 다. 실제 대응 하 는 유형 은 GML 기준 을 바탕 으로 하 는 점, 선, 면 입 니 다.
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:fme="http://www.safe.com/gml/fme"
targetNamespace="http://www.safe.com/gml/fme"
elementFormDefault="qualified">
<import namespace="http://www.opengis.net/gml" schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/gml.xsd"/>
<element name="point" type="fme:pointType" substitutionGroup="gml:_Feature"/>
<complexType name="pointType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="Id" minOccurs="0" type="integer"/>
<element ref="gml:pointProperty" minOccurs="0"/>
<element ref="gml:multiPointProperty" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="line" type="fme:lineType" substitutionGroup="gml:_Feature"/>
<complexType name="lineType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="Id" minOccurs="0" type="integer"/>
<element ref="gml:curveProperty" minOccurs="0"/>
<element ref="gml:multiCurveProperty" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="polygon" type="fme:polygonType" substitutionGroup="gml:_Feature"/>
<complexType name="polygonType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="Name" minOccurs="0">
<simpleType>
<restriction base="string">
<maxLength value="30"/>
</restriction>
</simpleType>
</element>
<element ref="gml:surfaceProperty" minOccurs="0"/>
<element ref="gml:multiSurfaceProperty" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>
데이터 범 위 를 설명 하 는 'gml: boundedBy' 속성 은 'gml: Envelope' 형식의 대상 이 직접 설명 합 니 다.또한 데이터 의 좌표 노드, 공간 참고 등 속성 은 GML 의 유형 에 의 해 직접 설명 된다.
좀 더 간단 하 다. 만약 에 우리 가 지리 데 이 터 를 묘사 하기 위해 GML 을 써 야 한다 면 쓴 파일 의 내용 은 이 럴 수 있다.
<City><!-- -->
<gml:boundedBy>
<gml:Envelope>
<gml:pos>100 200</gml:pos>
<gml:pos>230 250</gml:pos>
</gml:Envelope>
</gml:boundedBy>
<gml:featureMember>
<Bridge gml:id="bridge 1"><!-- -->
<span>100</span><!-- : -->
<height>200</height><!-- : -->
<gml:curveProperty><!-- -->
<gml:LineString gml:id="line 24">
<gml:pos>100 200</gml:pos>
<gml:pos>200 200</gml:pos>
</gml:LineString>
</gml:curveProperty>
</Bridge>
</gml:featureMember>
</City>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker를 사용한 React 및 .NET Core 6.0 샘플 프로젝트 - 1부이 기사에서는 Entity Framework Core Code First 접근 방식을 사용하는 ASP.NET Core 6.0 WEP API의 CRUD(만들기, 읽기, 업데이트 및 삭제) 작업에 대해 설명합니다. 웹 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.