
اجزاي پایگاه داده مکانیESRI
فضاي کاري[1]
فضاي کاري دربرگیرنده دادههای مکانی و غیر مکانی همانند کلاس عارضه ، مجموعه داده رستري[2] ، و جداول میباشد. فضاهاي کاري به سه گروه تقسیم میشوند:
Shape File : FileSystemWorkspace ها نمونهای از این نوع میباشند. LocalDatabaseWorkspace: پایگاه داده مکانی تک کاربره نمونهای از این نوع میباشند.
RemoteDatabaseWorkspace: پایگاه داده مکانی که از پایگـاه ه اي داده تجاري (RDBMS) همانند Oracle و SQL Server استفاده میکنند نمونهای از این نوع میباشند
که با استفاده از ArcSDE این پایگاهها قابلدسترسی میباشند. فضاي کاري در این تحقیق از این نوع میباشد.
دیاگرام مدل داده در ژئودیتابیس
مجموعه داده[3]
مجموعه دادهها کلاسهای انتزاعی[4] هستند کـه دربرگیرنده مجموعهای از کلاسهاي عارضه[5] ، کلاسهای ارتباطی[6] ، شبکه هندسی[7] و توپولوژي[8] میباشند. کلیه دادههای مکانی در یک مجموعه داده داراي سیستم مختصات یکسان هستند.
جدول[9] ، کلاس شیء[10] ، کلاس عارضه
جداول مجموعهای از سطر و ستونها هستند که براي هر سـتون مقـادیري در سطر هـا برحسب نوع داده تعریفشده براي ستون درج میشود.
کلاس شیء نوعی جدول میباشد که سطرهای آن نمایانگر موجودیت غیر مکانی بوده و اشیاء را با خصوصیات و رفتارهاي آنها مدلسازی میکند.
کلاس عارضه نوعی کلاس شیء میباشد که اشیاء آن موجودیت مکانی دارنـد . بنابراین میتوان گفت کلاسهای عارضه مجموعهای از موجودیتهای مکـانی هسـتند کـه اشـیاء را با خصوصیات و رفتارهاي آنها مدلسازی میکنند . هـر کـلاس عارضـه داراي یـک فیلـد از نوع هندسی میباشند که این فیلد نوع هندسه عوارض (نقطه ، خط ، پلیگون) را ذخیره میکند.
کلاس رابطه[11]
عوارض در جهان واقعی ، همانند یک شبکه گاز یا برق غالباً داراي ارتباطات خاصـی با یکدیگر هستند. این نوع ارتباطات بین عوارض در پایگاه داده مکانی رابطه[12] نامیده میشوند.
این ارتباطات میتوانند بین عوارض مکانی ، عوارض غیر مکانی و یا بین عوارض مکـانی و غیـر مکانی وجود داشته باشند. این ارتباطات میتوانند یکبهیک ، یک به چند و یا چند بـه چند باشند. بهعنوانمثال در یک شبکه گاز ، چندین مشترك ممکن اسـت از یـک علمـک جهـت تأمین گاز مصرفی خود اسـتفاده کننـد. ارتباطـات در پایگـاه داده مکـانی در کلاسهای رابطـه ذخیره میشوند.
چندین نوع از رابطهها در پایگاه داده مکانی وجود دارد:
رابطه ساده[13]
در این نوع ارتباط دو یا چند عارضه در پایگاه داده بـا یکـدیگر در ارتبـاط و وابسته به همدیگر هستند. در یک ارتباط بین عارضه A و عارضه B ، درصورتیکه عارضـهA از پایگاه داده حذف شود ، عارضه B در پایگاه داده باقی میماند. بدین معنی که حذف یکی از عوارض منجر به حذف عارضه وابسته نخواهد شد.
رابطه ترکیبی[14]
در این نوع ارتباط حذف یا تغییر یکی از عوارض منجر به حذف یا تغییـر کلیـه عوارض مرتبط با آن خواهد شد.
شبکه هندسی[15]
شبکه هندسی روشی بـراي مدلسازی و تحلیل شبکههای تأسیسـاتی در نرمافزارArcGIS میباشد . شبکههای توزیع آب ،فاضلاب ، گاز ، برق ، مخابرات ، شبکههای آبیاري و آبراهههای طبیعی نمونههای روشنی هستند که قابل مدلسازی و تحلیل با استفاده از شبکه هندسی میباشند.
شبکه هندسی مجموعهای از یالها[16] و تقاطعها [17]همراه با قواعد پیوستگی[18] میباشد که برای نمایش و مدلسازی رفتارهاي موجود در شبکههای تأسیساتی به کار میرود. از کلاسهای عارضه براي تعریف منابع اصلی شبکه هندسی استفاده میشود.
یک یال عارضه ایست که داراي طول بوده و قابلیت هدایت جریانهای شـبکه را دار است.
این عارضهها از کلاسهای عارضه خطی در داخل یک کلاس عارضه ساختهشده و بهعنوان یال در مدل منطقی شبکه شناخته میشود. از نمونههای بارز یال میتوان به لولههای گاز اشاره نمود.
یک تقاطع عارضه ایست که موجب اتصال بین دو یال شده و انتقال جریان بـین یالها را تسهیل میکنند. این المانها از کلاسهای عارضه نقطهای در داخل یک مجموعـه داده ایجـاد و بهعنوان تقاطع در مدل منطقی شبکه شناخته میشوند. از نمونههای بارز تقاطعها میتوان به والوها ، ایستگاههای تنظیم فشار و منهول ها اشاره نمود.
قواعد اعتبار سنجی[19] ، دامنه[20] و زیر کلاس[21][22]
قواعد وابسته به کلاس اشیاء هستند و هنگام اعتبار سنجی اشیاء در یـک کـلاس شـیء مورداستفاده قرار میگیرند و شامل سه گروه عمده هستند:
قواعد توصیفی٤: این نوع از قواعد جهت اختصاص مقادیر مجـاز (دامنـه ) بـه یـک فیلد استفاده میشود. دامنهها مقادیري هستند که یک کلاس عارضه ، جـدول یـا زیر کلاس میتواند به خود اختصاص دهد. استفاده از دامنه یکی از روشهای اختصاص رفتارها به عوارض میباشد بهطوریکه یک کلاس عارضه یا جدول تنها مجاز به استفاده از مقادیر دامنه میباشد.
این نوع رفتارها در پایگاه داده مکانی از ورود مقادیر اشـتباه توسـط کـاربر در هنگـام ویرایش عوارض جلوگیري مینماید. درصورتیکه فیلدي حاوي زیر کلاس باشد ، با ازاي هر زیر کلاس میتوان دامنه جداگانهای اختصاص داد.
زیر کلاسها روشی براي تقسیم کلاسهای عارضه یا جداول بـه گروههای منطقـی بـر مبناي ارزشهای توصیفی میباشند. بهعنوانمثال درصورتیکه یـک کـلاس عارضـه بـه نـام»خط لوله « داشته باشیم میتوان با استفاده از قابلیت زیر کلاس دو نوع لوله از نوع پلی اتـیلنو فولادي براي این کلاس عارضه تعریف نمود که هرکدام از ایـن نوعها میتواننـد دارای رفتارهای جداگانه باشند.
قواعد ارتباطی[23][24]: این نوع رولها تعداد ارتباطات مجاز دو زیر کلاس که با یک کلاس رابطهای با همدیگر در ارتباط هستند ، کنترل میکند.
قواعد پیوستگی٢: این نوع رول بر روي شبکه هندسی اعمال میشود و تعـداد اتصالات بین یالها ها و تقاطعها را کنترل میکند. در مواقعی که نمیخواهیم هر یال بهتمامی تقاطعها متصل و یا هر یک از تقاطعها بهتمامی یالها ها متصل باشد از قواعد پیوسـتگی در شبکه هندسی استفاده میشود. بهعنوانمثال در یک خط لوله گاز یا آب ممکن است به لولههای با قطر 8 اینچ تنها لولههای 6 اینچ و با یک اتصال از نوع تبدیل قادر به اتصال باشند یا از یک خط لوله به تعـداد مشخصـی( بهعنوانمثال 100انشـعاب ) بایـد انشـعاب گرفـت. این محدودیتها بهصورت قوانینی تحت عنوان قواعد پیوستگی بر روي شـبکه اعمـال میشود و در هنگام تعدي از هرکدام از رولهای تعیینشده پس از اعتبار سنجی سیستم به کـاربر هشدار خواهد داد.
توسعه گر کلاس[25]
توسعه گر کلاس ، توسعهدهندگان را قادر میسازد تا نسبت به شخصیسازی و توسعه توابع پیشرفته پایگاه داده مکانی اقدام کنند. توسعه گر کلاس به توسعهدهندگان اجـازه پیادهسازی و اختصاص رفتارهاي خاص یک عارضه که بهصورت پیشفرض در پایگـاه داده مکـانی وجود ندارد ، میدهد. توسعهدهندگان میتوانند واسطهای توسعه گر کـلاس زیـر را برای توسعه پایگاه داده مکانی بکار ببرند:
از واسطIObjectInspector جهـت توسـعه و کاربرپسند نمـودن فـرم پیشفرضObjectInspector که براي ویرایش اطلاعات توصیفی عوارض و کلاسهای رابطه بکـار میرود
،استفاده گردیده است. بهعنوانمثال میتوان بهقرار دادن ابزار تقویم جهت ورود تاریخ اشاره کرد.
از واسطIObjectClassValidation جهت بررسی صحت ورود اطلاعات و رعایـت
مسائلی که در هنگام ورود و یا ویرایش دادههای مکانی یا توصیفی باید رعایت گردد ، استفاده گردیده است. با استفاده از این واسط میتوان نسبت به توسعه یـک اعتبـار سـنجی شخصی اقدام کرد. بهعنوانمثال میتوان به عدم اتصال یک خط لوله 6 اینچ به خط لوله 2 اینچ بدون استفاده از یک تبدیل اشاره نمود که با این واسط میتوان از این اتصال جلوگیري نمود.
از واسط IRelatedObjectClassEvents جهت کنتـرل رفتـار عـوارض پـس از ایجاد عارضه مرتبط در کلاس رابطه استفاده گردیده است. بهعنوانمثال درصورتیکه عارضه شیر و عارضه منهول داراي یک کلاس رابطه باشند ، پس از ایجاد عارضه شیر درصورتیکه شـیر در داخل منهول ایجادشده باشد بدون دخالت کاربر بین منهول و شیر رابطه برقرار میگردد.
از واسطIRelatedObjectClassEvents جهـت کنتـرل رفتـار در کـلاس شـیء پـس از تغییر یا حرکت شیء یا اشیاء مرتبط در یک کلاس رابطه استفاده گردیده است. بهعنوانمثال درصورتیکه بین عارضه مصرفکننده گاز و جدول مصارف مصرفکنندگان گاز کلاس رابطه برقرار باشد با هرگونه تغییر در رکورد مرتبط با هر مصرفکننده ، میـزان مصـرف بـراي آن مصرفکننده دوباره محاسبه گردد.
از واسطIObjectClassEvents جهت اختصاص رفتارهاي عوارض و اشیاء پس از ایجاد[26] ، تغییر[27] یا حذف[28] شیء استفاده میشود. بهعنوانمثال قرار دادن یک عارضه شیر بر روي خط لوله ، اطلاعاتی مانند جنس و قطر شیر بدون دخالت کاربر از لوله استخراج گردد.
-
– Workspace ↑
-
-Raster Dataset ↑
-
– Dataset ↑
-
– Abstract Class ↑
-
– Feature Class ↑
-
– Relationship Class ↑
-
– Geometric Network ↑
-
– Topology ↑
-
– Table ↑
-
– Object class ↑
-
– Relationship class ↑
-
– Relationship ↑
-
– Simple Relationship ↑
-
– Composite Relationship ↑
-
– Geometric Network ↑
-
– Edges ↑
-
– Junctions ↑
-
– Connectivity Rule ↑
-
-validation rules ↑
-
– Domains ↑
-
– Attribute Rule ↑
-
– Subtype ↑
-
– Connectivity Rule ↑
-
– Relationship Rule ↑
-
– Class Extensions ↑
-
– OnCreate ↑
-
– OnChange ↑
-
– OnDelete ↑