Voorbeeld (constitutief/regulatief) leder CAD-pakket beschikt over functionaliteit om sym bolen (bijvoorbeeld een symbool voor klinkerverharding) te creëren en vervolgens te plaatsen. In veel gevallen wordt een symbool eerst gedefinieerd, geconstrueerd en opgeslagen in een bibliotheek. Bij het plaatsen van een symbool op een specifieke locatie in het bestand wordt een kopie gemaakt van het symbool uit de bibliotheek; deze wordt vervolgens in het bestand vastgelegd. Wan neer een beheerder een dergelijk symbool in het bestand muteert (bijvoorbeeld met het commando „drop complex cell"), bestaat geen juiste relatie meer met de biblio theek. Sterker nog, de resterende geometrische elemen ten voldoen niet meer aan de definitie. In een dergelijke situatie is sprake van een constitutieve beperking, omdat dit soort regels bepalend is voor de gegevensstructuur. Over het algemeen beschikt elk symbool in een biblio theek over een unieke naam. Wanneer door het pakket geen regels zijn gesteld aan de naamgeving, lijkt dit flexibiliteit-bevorderend. Echter wanneer de gebruiker het zinvol vindt dat de namen voldoen aan een specifieke ver zameling, dan dienen extra functies ervoor te zorgen dat dit wordt afgedwongen of gecontroleerd. Een dergelijke beperking noemen we regulatief. Een beperking is regu latief wanneer zij ontstaat doordat er aanvullende afspra ken zijn gemaakt, die niet constitutief zijn (niet bepalend voor gegevensstructuur). consistentieregels voor het verwijderen van objecten zijn bijzonder complex; simpele consistentieregels moeten vaak gedurende trans acties tijdelijk worden uitgeschakeld om mutaties mogelijk te maken; consistentieregels dienen te worden toegevoegd aan de verzameling objectoperaties. Voorbeeld (model-inherent/model-extern) Een beperking is model-inherent wanneer die door de toepassing van het bijbehorende gegevensmodel auto matisch wordt gewaarborgd. Is dit niet het geval, dan noemen we een beperking model-extern. De model- inherente beperkingen kunnen op grond van complexiteit worden onderscheiden (gebaseerd op het uitgebreide relationele principe): controle van gegevenstypen; controle op eenduidigheid van identificaties; controle van de referentiële integriteit (dynamisch waardenbereik); controle op relaties (bijvoorbeeld 1 n, n m relatie); controle op generaliseringsvoorschriften. Een voorbeeld van een model-inherente beperking is dat een geometrisch primitief lijnstuk (line) is opgebouwd uit twee coördinatenparen. Dit volgt direct uit het gegevens model en wordt ondersteund door de programmatuur. Het programma staat bijvoorbeeld niet toe dat drie coör dinatenparen worden ingevuld. Een model-externe be perking is dat begin- en eindpunt niet mogen samen vallen (identiek). Dit wordt meestal niet door de structuur gecontroleerd. Voorbeeld (primair/secundair) Een beperking is primair wanneer na elke elementaire operatie op een tupel (tabelregel) een conceptuele relatie moet bestaan. Voorbeelden hiervan zijn te vinden in de simpele mutatiebewerkingen van een gegevensbank (toevoegen, wijzigen en verwijderen). Een beperking is secundair wanneer meerdere elementaire operaties no dig zijn om dit te realiseren (bijvoorbeeld coördinaattrans formatie). Een object in een lokaal stelsel, dat wordt beschreven door vier lijnstukken, wordt niet als object ge transformeerd, maar door alle punten individueel te be handelen. Na afloop van de transformatie bestaat de rela tie tussen punten weer zoals in de oude toestand (lokale stelsel). De problematiek van dit soort regels is voor een belangrijk deel ondervangen in het principe van de enti teitenlevenscyclus (dynamische regels). In [15] wordt een nadere uitwerking gegeven aan de verschillende stappen of elementaire operaties in het mutatieproces van vlakobjecten. Voor een toelichting op het begrip elementaire operatie wordt verwezen naar het eerste kader in dit artikel. Overigens zijn „atomaire actie" en „transactie" synoniemen van het begrip elementaire operatie. Voorbeeld (toestand/overgang) Er is sprake van een toestandsregel als wordt vastgesteld dat objecten met een specifieke classificatie alleen wor den gedefinieerd in het RD-coördinatenstelsel. Van ande re objecten (bijvoorbeeld in de categorie plantopografie) wordt toegestaan dat deze over een lokale geometrische positiebeschrijving beschikken (lokaal stelsel). In ver schillende toepassingen blijkt duidelijk dat het begrip „overgang" moeilijk is te hanteren. Een voorbeeld hier van is het omzetten van de meetgegevens van een punt naar de coördinaten in een specifiek stelsel. Er is sprake van een toestandsregel wanneer deze in absolute zin de verschijningsvorm van mogelijke toe standen in de gegevensbank beperkt. Van een over- gangsregel is sprake wanneer de regel afhankelijk wordt gemaakt van een specifieke uitgangssituatie (verschij ningsvorm) in de gegevensbank. Voorbeeld (sterk/zwak) Dit onderscheid wordt gemaakt wanneer sprake is van een regel die in operaties altijd (sterk) moet worden toe gepast (bijvoorbeeld elke mutatie leidt direct tot aan passing van het attribuut „datum laatste mutatie"). Een regel is zwak wanneer deze in specifieke operaties niet behoeft te worden toegepast (bijvoorbeeld het toepassen van een schaalfactor voor correctie van afstandmeting). De relatie tussen de hier genoemde categorieën regels kan als volgt worden samengevat: constitutieve regels zijn altijd van het type primair, model-inherent, sterk en toestand; model-inherente regels zijn altijd van het type toe stand; overgangsregels zijn niet te onderscheiden naar pri mair of secundair. Implementatie en complexiteit Als we bovenstaand overzicht bestuderen, is de verlei ding groot om over te gaan tot het experimenteren en een aantal van dit soort regels te implementeren. Dit blijkt echter in een interactief-grafische omgeving voor ruimte lijke objecten niet altijd eenvoudig. Iedere klasse of cate gorie zal om een eigen benadering en wellicht oplossing vragen. Zo zijn de model-inherente regels, in tegenstel ling tot de definitie van relaties in het model, veelal niet eenvoudig en niet efficiënt af te handelen (bijvoorbeeld inter-tabelregels). 260 NGT GEODESIA 93 - 6

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

(NGT) Geodesia | 1993 | | pagina 4