series of geoprocessing tools which facilitate the automation of
complex or repetitive tasks - graphical interface allows users to easily create models using existing tools and data - Requires no programming experience Any tool, script or data can be included in the model by dragging and dropping Output from one tool may be used as input to other Model Benefits Models provide an easy way to interpret visual representation of the workflow Models can be reused and shared, and are easy to modify if necessary Models arc much more convenient than running many tools individually Models can be useful in project documentation Parameters Any information used by a tool is a parameter Parameters can be hardcoded or set so a user can enter values, For example, it is often a good idea to set tool _inputs as parameters to make models more flexible It is also useful to make variables for some tool inputs and expose them as parameters for user input All tool parameters can be set using the Open... option on the tool's context menu Some models have no parameters Tips Working in the model builder application vs.using the model as a tool Keep vs. delete intermediate data Run vs. Run Entire Model CUSTOMISATION IN ARCGIS Two levels of Customization Customizingthelnterface - To create more efficient user interfaces - For yourself (e.g. grouping frequently used tools) - For specialized applications (e.g. simplified interface for data entry) - To access capabilities not on the standard interface Supplied as part of ArcGlS but not on the standard interface Downloaded from the web Developed by you Developing Additional Capabilities Automating repetitive tasks Creating new analytical procedures Options for Developing Additional Capabilities Modelbuilder - Multi-step, seguentigl processing of ArcTooIs, using a visual development environment which comes as part of ArcGlS Python, Jscript and VBScript - standardized and relatively simple scripting languages for repetitive processing, including loops and decision trees, using ArcTools - Python scripts can be generated from Modelbuilder Visual Basic for Applications - Permits writing of VB macros for sophisticated customization and development within standard ArcGlS (ArcMap/ArcCatalog) interface (and thus requires license for these) - may incorporate Arc0bjects, the COM compliant software objects out of which ArcGlS is constructed. ArcGIS Engine Set of embeddable GIS components (Arc0bjects software gbfcts) for use in building custom applications, independent of ArcGlS int ace - Runs under windows, Unix and Linux, with support for Java, C++, COM and.NET Examples Code for Fixed Zoom-In Dim pDoc As IMxDocument Dim pEnv As lEnvelope Set pDoc = ThisDocument Set pEnv = pDoc.ActiveView.Extent pEnv.Expand 0.5, 0.5, True pDoc.ActivatedView.Extent = pEnv pDoc.ActivatedView.Refresh
DATABASE MANAGEMENT SYSTEM (DBMS)
DBMS is a collection of data (database) and programs to access that data. The goal of DBMS is to store, retrieve, and display information Key characteristics of DBMS are: performance, store large volume of database, share data (access), provide security (authorization), remove redundancy (normalization) and provide concurrent access (different users at the same time). Why we need database? Without database GIS is cartography (electronic map) No database No spatial analysis Data abstraction Physical level: Describe how the data are actually store (word or bytes) Conceptual level: Describe what data are actually stored in the database (Structure). it gives Schematic representation of phenomena Instance of schemes The collection of database at a particular moment is called the instance of the database. The overall design of the database is called the database scheme Types of database models Data model is a collection of conceptual tools for describing data, data relationship, data semantics, and consistency constraints. There are mainly three types of models Object-based logical models Are used to describe data at the conceptual and view level. Example of these the Entity-Relationship model and object-oriented model Record-based logical models Are used to describe data at the conceptual and view level. Example of these are: Network model, Hierarchical model, and relational model. Physical data models Are used to describe data at the physical level (bytes and words). It is mainly deal with hardware. Object oriented uses objects rather than records to manage data. An object is a collection of data elements and operations that together are considered a single entity An object has associated with it a set of variables that contain the data for the object, a set of messages to which the object respond, and a method which response to the message Once the structure is setup, the details of it need not be user visible This approach has the attraction that query is very natural A geographic data handling systems employ this model are:TIGRIS, DAPLEX, and PROBE lts application in GIS is recommended Objects are typed and the format and operations of an object instance are the same as some object prototype Example of an object might be a lake: List of border chain: Cl, C2. C3. Cn ' List of nodes: NI, N2. N3. Nn ' Attribute: Depth, soil type The basic unit that an object-oriented (OO-DBMS) manages is the object. It is based on four basic concepts of abstraction: Classification Generalization Association Aggregation Generalization Group several classes which have the same properties in common (roads, railway)transportation network. The terms subclass and superclass characterize generalization and refer to object types which are related by a relation. For example, the object type residence is a building, residence is a subclass of building, while building is its superclass Association Relation between similar objects is considered a higher level set object. The term set is used to describe the association, and the associated objects are called members For example, a subdivision divides one parcel into several parcels Aggregation Objeets which consist of several other objects (Composed objects) .composit object describes the higher-level object, while subpart or component refers to the parts Qf the composit object example, the class building is an aggregate of all walls, windows. doors. and roofs Relational model A relational database consists of a collection of tables, each of which is assigned a unique name. The relational models differs from network and hierarchical models in that it does not use pointers or links. Instead , the relational model relate records by the value they contain.This freedom from the use of pointers allows formal mathematical foundation to be defined. Examples of RDBMS are Oracle, lnformix, Reasons to use Relational Model Independence of the physical data storage and logical database structure. Results in users do not need to understand the underlying physical layout of the data to access data from a logical structure, such as a table Variable and easy access to all data. Results in access to data is not predefined as in hierarchical databases in which users must understand and navigate through the hierarchy to retrieve data Flexible in database design. i.e C0mpl)t objects are expressed as simple tables and relationships Applying relational design methods reduces data redundancy (Normalization) and storage requirements Aspects of an RDBMS Structures: Well defined objects Operations: Clearly defined actions - Integrity Rules: Rules that control which operations are allowed on the data and structures of the database Components of a Relational Database Table: collection of rows all containing the same columns Row: Horizontal components of a table.Consists of values for each column. Each row is equivalent to a record Column: Vertical component of a table. Each column in the record is often referred to as a field Relational Database Rules
- Each column in a table must be unique -The order of rows in table is
not meaningful The order of the columns in a table is not meaningful All data in a column must be the same type every table has a primary key, each column in the primary key must have a value Primary Key and Foreign Key
Relational database use primary keys and foreign keys to allow
mapping of information from one table to another A foreign key is column or group of columns in a table whose value matches those of the primary key of another table Values in primary key column must be unique e.g. social security number (SSN) Relationships between Tables One-to-One One-to-Many Many-to-One Many-to-Many