intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 5

Chia sẻ: Cao Tt | Ngày: | Loại File: PDF | Số trang:18

79
lượt xem
10
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 3. Web Feature Service (WFS) 3.7.2.2. Mô tả các thuộc tính Thuộc tính hadle dùng để gán một tên dễ nhớ cho thành phần tương ứng với nó. Ngoài ra nó còn giúp cho việc báo lỗi đến ứng dụng client được dễ hiểu hơn. Khi lỗi xảy ra, WFS sẽ dùng thuộc tính handle để định vị lỗi nhằm phát sinh ra biệt lệ một cách chính xác. Nếu thuộc tính này không được xác định, WFS sẽ cố gắng thông báo vị trí của biệt lệ tương ứng...

Chủ đề:
Lưu

Nội dung Text: Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 5

  1. Chương 3. Web Feature Service (WFS) 3.7.2.2. Mô tả các thuộc tính Thuộc tính hadle dùng để gán một tên dễ nhớ cho thành phần tương ứng với nó. Ngoài ra nó còn giúp cho việc báo lỗi đến ứng dụng client được dễ hiểu hơn. Khi lỗi xảy ra, WFS sẽ dùng thuộc tính handle để định vị lỗi nhằm phát sinh ra biệt lệ một cách chính xác. Nếu thuộc tính này không được xác định, WFS sẽ cố gắng thông báo vị trí của biệt lệ tương ứng với lỗi trong request của Transaction dựa trên số dòng hoặc một cơ chế nào khác. Giả sử WFS có hỗ trợ operation LockFeature và/hoặc operation GetFeatureWithLock, thì thuộc tính releaseAction được dùng để điều khiển việc giải phóng các feature đã khóa khi request của Transaction hoàn thành. Nếu thuộc tính này có giá trị ALL thì chỉ ra rằng tất cả các khóa của các feature bị khóa với định danh khóa sẽ được giải phóng khi giao tác chấm dứt, bất chấp trong số các feature đang bị khóa vẫn còn có feature đang được truy cập. Nếu thuộc tính này có giá trị SOME thì chỉ ra rằng chỉ những khóa của các feature có trong request của Transaction sẽ được giải phóng, và khi đó, thuộc tính releaseAction của thành phần hoặc sẽ được trả về giá trị “0” sau khi kết thúc giao tác. Giá trị mặc định của releaseAction là ALL. 62
  2. Chương 3. Web Feature Service (WFS) 3.7.2.3. Thành phần Thành phần có thể không chứa hoặc chứa nhiều các thành phần , , , chúng mô tả các thao tác thêm, cập nhật, xóa các thể hiện của feature. Một thành phần trống vẫn hợp lệ song sẽ không có ích. Thành phần tùy chọn chỉ ra rằng giao tác sẽ thực hiện trên các thể hiện feature đã được khóa nào. Nếu WFS không hỗ trợ khả năng khóa feature thì thành phần sẽ bị bỏ qua. Nếu WFS có hỗ trợ khóa và có một định danh khóa không hợp lệ thì WFS sẽ gửi ra một biệt lệ và giao tác sẽ chấm dứt. Thành phần đã được định nghĩa ở mục “Các thành phần mở rộng”. 3.7.2.4. Thành phần Thành phần được dùng để thêm mới các thể hiện của feature. Trong một operation Transaction có thể có nhiều thành phần và với mỗi thành phần có thể được dùng để tạo mới nhiều thể hiện của feature. Trong response trả về cho giao tác , WFS sẽ trả về một danh sách các định danh feature mới được gán cho các thể hiện của feature được thêm mới. Các định danh feature được hiển thị theo đúng trình tự được thực hiện trong thành phần của giao tác. Ví dụ: Giao tác sau sẽ tạo mới hai thể hiện của kiểu feature INWATERA_1M.
  3. Chương 3. Web Feature Service (WFS) http://www.someserver.com/wfs/cwwfs.cgi? request=describefeaturetype&typename=INWATERA_1M.xsd http://www.opengis.net/wfs ../wfs/1.0.0/WFS-transaction.xsd"> -98.54,24.26 ... 150 ABCDE 152 250 111 -99.99,22.22 ... gml:outerBoundaryIs> 111 64
  4. Chương 3. Web Feature Service (WFS) FGHIJ 222 333 444 3.7.2.5. Thành phần Thành phần được dùng để cập nhật các thể hiện của feature. Trong một operation Transaction có thể có nhiều thành phần và với mỗi thành phần có thể được dùng để cập nhật nhiều thể hiện của feature. Thành phần chứa một hoặc nhiều thành phần cho biết tên và giá trị cập nhật của thuộc tính của kiểu feature được định danh bằng thuộc tính typeName. Thành phần trong thành phần chỉ ra tên thuộc tính cần cập nhật. Thành phần tùy chọn chỉ ra giá trị cập nhật cho thuộc tính đó. Nếu thành phần này không được định nghĩa thì giá trị NULL sẽ được gán cho thuộc tính này. Nếu thuộc tính này không được phép có giá trị NULL thì WFS sẽ đưa ra môt biệt lệ. Phạm vi của thành phần được ràng buộc bởi thành phần . Nó được dùng để giới hạn phạm vi của giao tác cập nhật. Ví dụ: Ví dụ sau cho thấy giao tác cập nhật thuộc tính POPULATION của định danh feature BUILTUPA_1M.1013
  5. Chương 3. Web Feature Service (WFS) xsi:schemaLocation="http://www.opengis.net/wfs ../wfs/1.0.0/WFS-transaction.xsd"> POPULATION 4070000 Cập nhật thuộc tính POPULATION_TYPE của danh sách các feature sau với giá trị mới là “CITY”. Các feature cần cập nhật có các định danh feature sau: BUILTUPA_1M.1013, BUILTUPA_1M.34, BUILTUPA_1M.24256 POPULATION_TYPE CITY 66
  6. Chương 3. Web Feature Service (WFS) 3.7.2.6. Thành phần Thành phần dùng để chỉ ra rằng một hoặc nhiều thể hiện feature sẽ bị xóa đi. Phạm vi của giao tác xóa được giới hạn bởi thành phần . Ví dụ: Xóa một feature đơn. 67
  7. Chương 3. Web Feature Service (WFS) Xóa một tập các thể hiện feature. Xóa một tập các thể hiện của feature INWATERA_1M nằm trong miền đa giác được chỉ định. Thành phấn được dùng để ràng buộc phạm vi của giao tác va đa giác được biểu diễn bằng GML.
  8. Chương 3. Web Feature Service (WFS) xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs ../wfs/1.0.0/WFS-transaction.xsd"> WKB_GEOM -95.7,38.1 -97.8,38.2 ... 3.7.3. Response Trong response trả về cho request của Transaction, WFS trả về một tài liệu XML mô tả trạng thái kết thúc của giao tác. Tài liệu XML mã hóa cho response được mô tả bằng đoạn lược đồ XML sau.
  9. Chương 3. Web Feature Service (WFS) minOccurs="0" maxOccurs="unbounded"/> 70
  10. Chương 3. Web Feature Service (WFS) Thành phần có thể không chứa hoặc chứa nhiều thành phần và chứa một thành phần . Thành phần chứa một hoặc nhiều định danh feature mới được thêm vào. Một thành phần tương ứng với một thành phần trong câu request. Kết quả của toàn bộ giao tác được mô tả trong thành phần . Thành phần này phải chứa một thành phần và có thể chứa thành phần và . Trong đó, thành phần mô tả trạng thái hoàn thành của giao tác. Còn thành phần chỉ ra phần nào trong giao tác bị lỗi. Ngoài ra còn thành phần dùng để báo các thông điệp lỗi. Ví dụ: Giả sư có giao tác tạo mới các thể hiện của feature “STMT1”, “STMT2”, “STMT3”. Response cho giao tác này như sau: 71
  11. Chương 3. Web Feature Service (WFS) 3.7.4. Biệt lệ Khi xảy ra một lỗi trong request của operation Transaction thì WFS sẽ gửi ra một biệt lệ. 3.8. GetCapabilities 3.8.1. Giới thiệu Một WFS phải mô tả được khả năng của nó. Cụ thể là WFS phải tạo được một tài liệu Capabilities XML để mô tả khả năng của nó. 3.8.2. Request Thành phần dùng để yêu cầu WFS gửi tài liệu Capabilities XML của nó. Request này được định nghĩa bằng đoạn lược đồ XML sau: Trong đó thuộc tính service đã được định nghĩa trong mục “Các thành phần chung”. 72
  12. Chương 3. Web Feature Service (WFS) 3.8.3. Response Tài liệu mô tả khả năng của WFS gồm các phần sau. 1) Dịch vụ: phần này cung cấp thông tin về bản thân dịch vụ. 2)Chả năng: phần này chỉ ra danh sách các request mà WFS có thể thực hiện. 3)Danh sách kiểu feature: phần này định nghĩa các kiểu feature và các giao tác có thể có trên mỗi feature. Ngoài ra còn có một số thông tin phụ thêm chẳng hạn như SRS. 4)Khả năng của bộ lọc: phần này là tùy chọn. Nếu có phần này, WFS sẽ thực hiện thêm các bộ lọc trong đó, còn nếu không WFS chỉ thực hiện các bộ lọc mặc định tối thiểu mà thôi. Thuộc tính version để chỉ ra lược đồ nào được áp dụng. Định dạng của nó có thể gồm một, hai hoặc ba con số được phân cách nhau bằng dấu chấm: “x” hoặc “x.y” hoặc “x.y.z” với số ngoài cùng bên tay trái là số có nghĩa nhất. 3.8.4. Biệt lệ Khi xảy ra lỗi trong request của GetCapabilities, WFS sẽ trả về một biệt lệ. 73
  13. Chương 4. Bộ lọc (Filter) Chương 4. Bộ lọc (Filter) 4.1. Giới thiệu: Một biểu thức Filter là 1 điều kiện ràng buộc về giá trị của các thuộc tính của 1 loại đối tựong nào đó, mục đích của Filter là để xác định 1 tập các đối tượng để thực hiện các thao tác. Filter được cài đặt tuân theo các đặc tả của XML Điều này sẽ rất thuận lợi, bởi vì ngày nay đã có rất nhiều công cụ hỗ trợ đọc, ghi … XML. Ta có thể chuyển 1 Filter được cài đặt theo chuẩn XML thành 1 mệnh đề WHERE trong câu lệnh SQL để thực hiện truy vấn dữ liệu từ cơ sở dữ liệu. Tương tự, 1 Filter được cài đặt theo chuẩn XML sẽ có thể được chuyển sang các biểu thức XPath hoặc XPointer để lấy dữ liệu từ 1 tài liệu XML. 4.2. Sử dụng Filter: Filter có thể được sử dụng trong nhiều dịch vụ web khác nhau theo các chuẩn của OGC , trong bài báo cáo này thì Filter được dùng để tạo ra các ràng buộc đối với các Feature cần lấy về trong request GetFeature của WFS. 4.3. Đặc tả của Filter: Thành phần gốc của 1 biếu thức Filter, tức là thành phần , được mô tả bởi đoạn lược đồ XML sau đây: 74
  14. Chương 4. Bộ lọc (Filter) Các thành phần , , và tương ứng với các phép toán logic, phép toán không gian và phép toán so sánh. Ngoài ra, nếu sử dụng thành phần thì 1 Filter có thể chỉ đến 1 hoặc 1 số đối tượng cụ thể. 4.4. Các phép toán không gian (Spatial Operators) 4.4.1. Mục đích Các phép toán không gian này được dùng để kiểm tra xem các tham số của nó có thỏa mãn 1 mối quan hệ về mặt không gian nào đó hay không. Phép toán này có kết quả là TRUE nếu như các tham số đó có quan hệ, ngược lại là FALSE. 4.4.2. Mô tả Các phép toán không gian này được mô tả bằng đoạn lược đồ XML sau:
  15. Chương 4. Bộ lọc (Filter) type="ogc:BinarySpatialOpType" substitutionGroup="ogc:spatialOps"/> 76
  16. Chương 4. Bộ lọc (Filter) Một phép toán không gian được dùng để kiểm tra xem giữa 1 thuộc tính địa lý, được chỉ ra bởi tên thuộc tính, và 1 đối tượng địa lý (1 hình chữ nhật hoặc 1 đa giác…) có thỏa mãn mối quan hệ được chỉ ra bởi phép toán đó không. Chẳng hạn có thể sử dụng phép toán để kiểm tra xem 1 thuộc tính có kiểu dữ liệu là Polygon (đa giác) có cắt 1 hình chữ nhật được chỉ ra trong tham số của phép toán đó không. 77
  17. Chương 4. Bộ lọc (Filter) Các phép toán Equals, Disjoint, Touches, Within, Overlaps, Crosses, Contains cũng có ý nghĩa tương tự. Ta có thể suy ra từ nghĩa của các tên của các phép toán này. Thành phần BBOX chính là ràng buộc về hình chữ nhật bao. Nó tương đương với phép toán .. , nghĩa là nó xác định các đối tượng địa lý có quan hệ cắt nhau với 1 hình chữ nhật xác định nào đó. Các phép toán và kiểm tra xem giá trị địa lý của 1 thuộc tính có nằm trong 1 đối tượng địa lý hoặc là nằm cách đối tượng địa lý này 1 khoảng cách xác định được chỉ ra hay không. Khoảng cách này được chỉ ra bởi thành phần . 4.5. Các phép toán so sánh (Comparison operators) 4.5.1. Giới thiệu: Các phép toán này được dùng để đánh giá phép so sánh về mặt toán học giữa 2 tham số. Nếu các tham số này thỏa điều kiện của phép so sánh này thì phép toán trả về TRUE, ngược lại phép toán trả về FALSE. 4.5.2. Mô tả: Dưới đây là đoạn lược đồ XML mô tả các phép toán so sánh này: 78
  18. Chương 4. Bộ lọc (Filter) 79
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
6=>0