- - - - tabel met meta-informatie, waarin de topologische structuur wordt beschre ven. Deze topologische meta-informa- tie kan dan zowel binnen het DBMS (back-end) als buiten het DBMS (front end of middleware) worden gebruikt. Over het algemeen bevat meta-infor- matie (of systeem-catalogi) van een DBMS beschrijvende informatie over de feitelijk opgeslagen gegevens, zoals de tabel attributen en hun typen, en soms ook beschrijvingen van de be schikbare typen en operatoren. Dit maakt dan dynamisch SQL mogelijk: eerst worden de metadata gelezen, deze 'kennis' wordt dan aan de eindge bruiker getoond, die dan aangeeft, via bijvoorbeeld muisklikken, welke feite lijke SQL-queries worden gemaakt. Een standaardvoorbeeld is het gebruik van metadata om een overzicht van de be schikbare tabellen (en attributen) in een Oracle DBMS te verkrijgen: SELECT owner,table_name, columnJd,column_name,data_type FROM all_tab_columns ORDER BY owner,table_name, columnjd Oracle spatial gebruikt overigens ook specifieke metadata-tabellen om de geometrische attributen meer in de tail te beschrijven: USER_SDO_GEOM_ METADATA, die informatie bevat over de dimensie, het bereik/domein en de resolutie hierbinnen. In het geval dat de (relationele) DBMS topologie mana- Tabel 1. Overzicht van de verschillende topo logische structuren. gement moet ondersteunen, moet de structuurinformatie worden opgeslagen en beschikbaar zijn voor de applicatie: bijvoorbeeld de naam van de topologische laag, welke tabel de rol van de edge speelt, welke tabel de rol van de face speelt en welke attributen binnen deze tabellen de rele vante geometrische en topologische structuurinformatie bevatten. De topologische structuur 'kennis' wordt dus in een metadata-tabel vastgelegd. Er moet hier dus worden aangegeven welke tabel welke rol speelt en welke attributen de topologische informatie dragen. Een voorbeeld van een uitbreiding gebaseerd op een topologie metadata-tabel in het DBMS is gegeven in de context van GEO++ (geo_dyn_info tabel) in [13]. Hieronder volgt de definitie van een iets gene- riekere topologie metadata-tabel. Dit is tevens het model dat we als basis van onze oplossing voorstellen: create table topo_meta_data( topol_layer_name varchar(32) topol_type node_table_name nodejnfo edge_table_name edgejnfo PRIMARY KEY, integer, varchar(32), varehar (256), varchar(32), varchar(256), face_table_name varchar(32), facejnfo varchar(256), volume_table_name varchar(32), volumejnfo varchar(256)); voorbeeld record voor winged-edge topologie van Kadaster LKI insert into topo_meta_data values 'parcel layer', 222, NULL, NULL, 'lki_boundary', 'object_id,l_obj_id,r_obj_id, fr_line_id,lr_line_id, geo_polyline', 'lki_parcel', 'object_id,line_idr, NULL, NULL); De topologiesoort is gecodeerd in een getal en opgeslagen in het metadata-attribuut 'topol_type'. Weten welke tabel welke topologierol speelt, is niet voldoende. Het moet ook bekend zijn welke attributen in deze tabellen de topologi sche structuur dragen: identificatoren, verwijzingen, geo- Topologische code Dimensie Primitieven Topologische tabellen Expliciete relaties Aantal tabellen Regels TIN 221 2D node, edge node, edge 2 Planaire Partitie Winged-edge (ketting) 222 2D edge, face edge, face 2 Planaire Partitie Wiel 223 2D edge, face edge, face 2 Planaire Partitie 3DFDS 381 3D node, arc, edge, face arc, edge, face node-on-face node-in-volume arc-partof-line arc-on-face arc-in-volume 8 Ruimte Partitie TEN 352 3D node, arc, triangle, tetrahedron arc, triangle, tetrahedron tri-partof-surf arc-partof-line 5 Ruimte Partitie Cell-tuple 313 3D O-cell, 1-cell 2-cell, 3-cell cells 1 Ruimte Partitie SSS 364 3D Node, face face,line surface, volume node-in-volume face-in-volume 6 Ruimte Partitie GEODESIA 2003-2

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

(NGT) Geodesia | 2003 | | pagina 19