Kết quả trả về của phương thức GetMap WMS

Một phần của tài liệu (LUẬN văn THẠC sĩ) kiến trúc của một hệ thống GIS phân tán 002 (Trang 26 - 38)

Ta có thể chia yêu cầu trong phần cơ chế hoạt động của web như sau:

http - giao thức được sử dụng.

cgi-bin/mapserv.exe - chương trình chạy trên máy chủ để xử lý các yêu cầu. Các tham số được bắt đầu bằng dấu ? và được phân biệt bởi dấu &

version=1.1.1 - chỉ ra phiên bản của đặc tả WMS mà hệ thống đang

thực thi.

request=getmap - chỉ ra loại yêu cầu mà client cần server xử lý

(trong trường hợp này là GetMap)

layers= forest,railroad,airports - chỉ ra lớp thông tin trên server mà client cần lấy, có thể yêu cầu nhiều lớp thông tin cùng lần, giữa các lớp thông tin cách nhau một dấu “,”

srs=EPSG:4326 - chỉ ra kiểu phép chiếu được bản đồ sử dụng bbox=97.35,5.61,105.64,20.47 - phạm vi không gian cần tạo bản đồ

width=400 - độ rộng theo pixel của ảnh bản đồ height=600 - độ cao theo pixel của ảnh bản đồ

format=image/png - định dạng của ảnh bản đồ (Image/gif, image/jpg, image/svg+xml)

Phản hồi

Nếu quá trình xử lý yêu cầu từ Client không gặp lỗi bản đồ kết quả sẽ được trả về theo định dạng mà Client yêu cầu. Nhưng nếu có một lỗi xảy ra, Server sẽ gửi trả về một thông điệp lỗi được mã hoá bởi XML về Client.

Ví dụ, trong yêu cầu dưới đây, yêu cầu đã bị sai trong tham số format (thiếu chữ g) một lỗi sau sẽ được trả về:

<ServiceExceptionReport version="1.1.0"> <ServiceException code="InvalidFormat">

There is no support for creating maps in image/pn format </ServiceException>

GetCapabilities (bắt buộc): Yêu cầu GetCapabilities trả về các siêu dữ liệu mô

tả Web Map Server. Các mô tả bao gồm nội dung thông tin mà WMS có thể phục vụ, các tham số mà Web Map Server có thể nhận.

Yêu cầu này được gửi khi client muốn biết các thông tin về server như các lớp thông tin mà server phục vụ, các định dạng dữ liệu mà server hỗ trợ. Dưới đây là một ví dụ về một request GetCapabilities:

http://localhost:8080/geoserver/wms?%20version=1.1.0&request= getcapabilities

Kết quả của yêu cầu GetCapabilities server sẽ trả về một XML chứa các thông tin sau:

Các dịch vụ được hỗ trợ. Các định dạng được hỗ trợ. Các hệ tham chiếu không gian. Danh sách các lớp thông tin bản đồ.

SLD (Styles layer descriptor) Mô tả lớp bản đồ. Mã nhà cung cấp dịch vụ.

GetFeatureInfo (tuỳ chọn): Yêu cầu GetFeatureInfo trả về thông tin về đối

tượng địa lý cụ thể được hiển thị trên bản đồ. Nếu một Web Map Server hỗ trợ dịch vụ này thì bản đồ mà nó trả về được gọi là bản đồ có khả năng truy vấn thông tin và một Web Map Client có thể yêu cầu thông tin về đối tượng trên một bản đồ bằng cách thêm vào URL các tham số chỉ ra một vị trí (x,y) và số đối tượng có thể trả về thông tin.

Một Client có thể sử dụng yêu cầu này để tìm một đối tượng bản đồ tại một điểm trên bản đồ đang được hiển thị. Yêu cầu này giống như yêu cầu GetMap nhưng có thêm vị trí x, y theo toạ độ pixel tính từ phía trên bên trái của ảnh bản đồ và một tên lớp thông tin cần truy vấn.

http://localhost:8080/geoserver/wms?version=1.1.0&request=

getfeatureinfo&layers=topp:states&styles=population&SRS=EPSG:4326&bbox=-125,24,- 67,50&width=400&height=200&format=text/html& X=100&y=100 &query_layers=topp:states

Yêu cầu trên giống một yêu cầu GetMap, điểm khác biệt ở phần format chỉ ra định dạng kết quả trả về hoặc là text/html.

Kết quả trả về của yêu cầu trên sẽ là:

Results for FeatureType 'states':

---

the_geom = [GEOMETRY (MultiPolygon) with 153 points] STATE_NAME = Arizona STATE_FIPS = 04 SUB_REGION = Mtn STATE_ABBR = AZ LAND_KM = 294333.462 WATER_KM = 942.772 PERSONS = 3665228.0 FAMILIES = 940106.0 HOUSHOLD = 1368843.0 MALE = 1810691.0 FEMALE = 1854537.0 WORKERS = 1358263.0 DRVALONE = 1178320.0 CARPOOL = 239083.0 PUBTRANS = 32856.0 EMPLOYED = 1603896.0 UNEMPLOY = 123902.0 SERVICE = 455896.0

MANUAL = 185109.0 P_MALE = 0.494 P_FEMALE = 0.506 SAMP_POP = 468178.0

---

Web Feature Service (WFS)

Một Web Feature Server (WFS) cung cấp các đối tượng địa lý cho client. Nó cũng có thể cho phép các client thay đổi và thêm các đối tượng vào cơ sở dữ liệu. Khi WMS cung cấp một hình ảnh của dữ liệu thì WFS cung cấp dữ liệu thực được mã hóa trong GML.

Một WFS có thể:

Lấy thông tin hoặc truy vấn đến một lớp thông tin dựa theo vị trí không gian của một đối tượng được chọn.

Update một đối tượng - Cho phép người dùng thay đổi một số thuộc tính trên một đối tượng lựa chọn.

Xóa một đối tượng - nếu thông tin giá trị đối tượng đó không quá dài hoặc không có yêu cầu sử dụng thì có thể được xóa khỏi bộ dữ liệu.

Tạo mới một đối tượng - Cho phép người dùng thêm mới một đối tượng lên bản đồ.

Một WFS cung cấp 3 request:

GetCapabilities (bắt buộc) - Đây là request cơ bản cho phép Client nhận ra

các dịch vụ và kiểu dữ liệu do WFS hỗ trợ.

Yêu cầu

Format: Đây là tham số không bắt buộc, là tham số hỗ trợ cho yêu cầu

GetCapabilities trên WMS. Mọi server hỗ trợ định dạng mặc định text/xml. Nếu request mô tả định dạng không hỗ trợ bởi server, server sẽ trả về định dạng mặc định text/xml.

Version: Là tham số không bắt buộc, chỉ ra phiên bản WMS cung cấp. Service: Tham số này bắt buộc, nó chỉ ra các kiểu dịch vụ cho phép khi yêu

cấu đến Server.

Request: Tham số phải có, dùng để triệu gọi thao tác GetCapabilities. Giá

trị “GetCapabilities” sẽ sử dụng.

UpdateSequence: Tham số không bắt buộc.

Phản hồi

Khi gọi Web Map Service, trả về yêu cầu của GetCapabilities là một tài liệu XML chứa dịch vụ metadata định dạng mã hoá theo lược đồ XML. Lược đồ này đặc tả những nội dung thiết yếu hay không cần thiết của dịch vụ metadata và mô tả định dạng của nó. Tài liệu này có chứa một Root element với tên là WMS_Capabilities trong không gian.

DescribeFetuareType (bắt buộc) - Cho phép mô tả kiểu đối tượng. Khi bản đồ muốn thêm một đối tượng mới thì nó phải biết cấu trúc của đối tượng đó.

Yêu cầu

Hàm của DescribeFeatureType thao tác đến một lược đồ mô tả các kiểu dịch vụ Feature được WFS cung cấp. Ví dụ như một yêu cầu sau:

<DescribeFeatureType version="1.0.0" service="WFS" xmlns="http://www.opengis.net/wfs" xmlns:topp="http://www.openplans.org/topp" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd"> <TypeName>topp:bc_roads</TypeName>

Yêu cầu được xây dựng theo quy cách và như là một tài liệu XML và được gửi đến server bằng HTTP POST request. Mới nhìn qua thì ta thấy rất phức tạp nhưng thực ra chỉ có đoạn in đậm mới là key line. Ở đây chỉ rõ kiểu đối tượng mà ta đưa vào là: topp:bc_roads.

Phản hồi

Kết quả trả về từ ví dụ trên là:

<xs:schematargetNamespace="http://www.openplans.org/topp"

elementFormDefault="qualified"attributeFormDefault=

"unqualified"

version="1.0">

<xs:importnamespace="http://www.opengis.net/gml"

schemaLocation="http://localhost:8080/geoserver/data/

capabilities/

gml/2.1.2/feature.xsd"/>

<xs:complexTypename="bc_roads_Type"> <xs:complexContent>

<xs:extension base="gml:AbstractFeatureType"> <xs:sequence>

<xs:elementname="the_geom"minOccurs="0"

nillable="true"type="gml:MultiLineStringPropertyType"/> <xs:elementname="LENGTH"minOccurs="0"nillable="true"

type="xZs:double"/>

<xs:elementname="BTRN_BC_ID"minOccurs="0"

nillable="true"

</xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>

<xs:elementname="bc_roads"type="topp:bc_roads_Type"

substitutionGroup="gml:_Feature"/> </xs:schema>

GetFeartue (bắt buộc) - Đây là dữ liệu thật được trả về client sau request đã được nhận.

Cũng giống như WMS GetMap, nhưng GetFeature của WFS mô tả về dữ liệu thực. Đối với WMS thì dữ liệu sau khi được trả về là một định dạng ảnh hoặc text nhưng có thể convert một cách đơn giản trở thành ảnh còn đối với WFS thì dữ liệu được trả về là dữ liệu thực và được mô tả như một tài liệu XML. Một số tham biến đáng chú ý:

Version (required) - Tùy theo phiên bản là 1.0.0 hay là 1.1.0

Outputformat (optional) - Là định dạng dữ liệu được trả về trong

capabilities, mặc định là GML

Maxfeatures (optional) - Số lượng lớn nhất các Feature được trả về, mặc

định là unlimited.

Typename (required) - kiểu Feature muốn được trả về

TeatureVersion (optional) - Cung cấp để hỗ trợ cho việc lưu trữ Feature,

mặc định là newest

TropertyName (optional) - Đặc tính của từng Feature muốn lấy về tùy theo

từng Feature

Filter (optional) - Lọc lựa chọn các Feature trả về. Có thể lọc theo không

Sau đây là ví dụ:

<wfs:GetFeatureservice="WFS" version="1.0.0"

outputFormat="GML2" –=""we=""would=""like=""gml2=""as=""

the=""return=""format=""

xmlns:topp="http://www.openplans.org/topp" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd"> <wfs:QuerytypeName="topp:bc_roads">

<ogc:Filter>

<ogc:FeatureIdfid="bc_roads.1"/> </ogc:Filter>

</wfs:Query> </wfs:GetFeature>

Phản hồi

Phản hồi trả về từ Server là một GML mã hóa tập hợp Feature

<wfs:FeatureCollection xsi:schemaLocation="http://www.openplans.org/topp http://localhost:8080/geoserver/wfs/DescribeFeatureType ?typeName=topp:bc_roads http://www.opengis.net/wfs http://localhost:8080/geoserver/data/capabilities/wfs/1

.0.0/WFS-basic.xsd"> <gml:boundedBy>

<gml:BoxsrsName="http://www.opengis.net/gml/srs/eps g.xml#27354"> <gml:coordinates decimal="."cs=","ts=""> 494475.71056415,5433016.8189323 494982.7 0115662,5435041.95096618 </gml:coordinates> </gml:Box> </gml:boundedBy> <gml:featureMember>

<topp:bc_roads fid="bc_roads.1"> <topp:the_geom> <gml:MultiLineString–=""a="" multistring="" srsName="http://www.opengis.net/gml/srs/epsg.xml#27354"> <gml:lineStringMember> <gml:LineString> <gml:coordinates decimal="."cs=","ts=""> 494475.71056415,5433016.8189323 494982.70115662,5435041.95096618 </gml:coordinates> </gml:LineString> </gml:lineStringMember>

</gml:MultiLineString> </topp:the_geom> <topp:LENGTH>2163.48</topp:LENGTH> <topp:BTRN_BC_ID>13166</topp:BTRN_BC_ID> </topp:bc_roads> </gml:featureMember> </wfs:FeatureCollection>

Ngoài tài nguyên, dữ liệu GIS của hệ thống thì chúng ta cũng quan tâm cả đến Siêu dữ liệu (Metadata) hay còn gọi là Thông tin về dữ liệu. Các phân hệ sẽ nắm bắt được thông tin về dữ liệu của các phân hệ khác bằng cách tra cứu Metadata. Các đặc điểm về dữ liệu có tác động tổng thể đến tính hữu ích của dữ liệu, bao gồm các đặc điểm như độ chính xác vị trí, độ chính xác thuộc tính, tính hợp lý, tính toàn vẹn, tính thời gian, nguồn gốc, khả năng truy cập và chi phí trực tiếp, gián tiếp [10].

Hầu hết các yếu tố nội dung của Metadata đều liên quan đến chất lượng. Cần phải tạo cho người sử dụng dữ liệu sự tin tưởng rằng dữ liệu sẽ đáp ứng được những nhu cầu của họ và phù hợp với các tiêu chuẩn của họ.

Chất lượng dữ liệu là nhân tố quan trọng để thấy được giá trị của sự đầu tư vào dữ liệu. Sự hiểu biết đầy đủ và chính xác dữ liệu không gian trong GIS là rất quan trọng để có thể sử dụng dữ liệu cho công việc. Tiêu chuẩn chất lượng dữ liệu của tổ chức luôn phải ở mức độ chính xác có thể chấp nhận được trong suốt quá trình thu thập, chuyển đổi và phân tích dữ liệu.

Độ chính xác dữ liệu là thành phần quan trọng bậc nhất của những tiêu chuẩn chất lượng dữ liệu. Độ chính xác được phân thành 3 loại cơ bản sau:

Độ chính xác thuộc tính: Độ chính xác thuộc tính là độ chính xác của các thuộc tính phi không gian như tên tỉnh, huyện, xã hay giá trị tọa độ, độ cao… Đánh giá độ chính xác của những thực thể, thuộc tính và những giá trị thuộc tính trong tập dữ liệu. Việc đánh giá này được thực hiện thông quan việc nhận dạng và phân lớp các đối tượng thể hiện trên bản đồ.

Độ chính xác vị trí: Độ chính xác vị trí là độ sai lệch về vị trí của một đối tượng không gian trong tập dữ liệu so với vị trí thật của nó trên mặt đất. Độ tin cậy về vị trí của các đối tượng không gian là điều quan trọng đối với tất cả những người sử dụng

dữ liệu không gian. Độ chính xác của dữ liệu liên quan đến lưới chiếu, hệ thống tọa độ (toàn cầu hay cục bộ địa phương), tỉ lệ, đơn vị đo, …

Hai yếu tố để đánh giá độ chính xác vị trí là độ sai lệch hệ thống và độ sai lệch ngẫu nhiên. Thông thường độ sai lệch hệ thống phải bằng không, nghĩa là tập dữ liệu không có khuynh hướng sai lệch một cách hệ thống so với vị trí thực. Trong khi đó, độ sai lệch ngẫu nhiên ảnh hưởng trên từng vị trí và được đánh giá bằng cách tính độ lệch chuẩn của những điểm được chọn để kiểm tra.

Độ chính xác vị trí gián tiếp: Độ chính xác vị trí gián tiếp của các đối tượng không gian (như địa chỉ, cột mốc cây số) cũng phải được chú ý và đánh giá.

Nguồn gốc dữ liệu: Thông tin liên quan đến nguồn gốc dữ liệu, các qui trình xử lý để tạo ra dữ liệu. Bao gồm việc mô tả những thông tin về nguyên liệu đầu vào (nguồn gốc, thời gian tạo ra, cơ quan tạo ra) để có thể xác định được mức độ tin cậy của nguồn dữ liệu, phương pháp số hóa tạo dữ liệu (chuyển đổi lưới chiếu, ghép biên, …). Đây là một yếu tố then chốt của Metadata trong việc đánh giá sự thích hợp để sử dụng của tập dữ liệu.

Tính toàn vẹn: Tính toàn vẹn của tập dữ liệu cần phải được đánh giá, những thiếu sót bất kỳ trong dữ liệu đều phải được ghi chú cẩn thận.

2.2.2. Phân loại lớp dữ liệu

Trong hệ thống dữ liệu địa lý được phân thành hai nhóm là dữ liệu địa lý nền và dữ liệu địa lý chuyên ngành.

Dữ liệu địa lý nền là lớp dữ liệu dùng để tham chiếu, bao gồm dữ liệu vector và dữ liệu ảnh. Thông thường lớp dữ liệu này ít được cập nhật thường xuyên.

Vai trò của dữ liệu nền địa lý là đảm bảo cho dữ liệu chuyên ngành được đồng nhất về mặt to ̣a độ, lưới chiếu; là môi trường trao đổi dữ liệu, chia sẻ dữ liệu giữa các chuyên ngành; việc thiết lập một cơ sở dữ liệu nền còn góp phần tiết kiệm ngân sách một cách đáng kể vì các ngành, các cấp có thể sử dụng chung dữ liệu; và cuối cùng sau khi cơ sở dữ liệu nền được thiết lập các hệ thống cơ sở dữ liệu chuyên ngành có thể phát triển độc lập mà không cần theo trình tự truyền thống trước đây.

Dữ liệu địa lý chuyên ngành là dữ liệu được tạo bởi các phân hệ của hệ thông. Do việc mỗi phân hệ chỉ chia sẻ một phần dữ liệu của mình nên dữ liệu chuyên ngành sẽ được chia làm hai nhóm nhỏ là Dữ liệu địa lý chuyên ngành dùng chung và dữ liệu địa lý chuyên ngành dùng riêng. Dữ liệu địa lý chuyên ngành dùng chung là dữ liệu được phân hệ chia sẻ cho các phân hệ còn lại. Trong khi đó, dữ liệu địa lý chuyên

ngành dùng riêng là dữ liệu được phân hệ chỉ dùng cho công việc chuyên môn của mình.

2.2.3. Mô hình tổ chức dữ liệu

Việc tìm ra mô hình tổ chức dữ liệu cho hệ thống GIS phân tán đứng trước

Một phần của tài liệu (LUẬN văn THẠC sĩ) kiến trúc của một hệ thống GIS phân tán 002 (Trang 26 - 38)

Tải bản đầy đủ (PDF)

(56 trang)