Vers. 20100924 national spatial data infrastructure training program Serving Transportation Data Through the NSDI Features, GML, and Application Schemas.

Slides:



Advertisements
Similar presentations
XML: Extensible Markup Language
Advertisements

CIT731: Database Development Object Oriented Modeling (OOM)
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Object-Oriented Analysis and Design
UML – Class Diagrams.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Introduction to XLink Transparency No. 1 XML Information Set W3C Recommendation 24 October 2001 (1stEdition) 4 February 2004 (2ndEdition) Cheng-Chia Chen.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Unified Modeling Language (UML)
Lecture 6 & 7 System Models.
Common Mechanisms in UML
Object-Based Vector Data Model
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
1 CIM User Group Conference Call december 8th 2005 Using UN/CEFACT Core Component methodology for EIC/TC 57 works and CIM Jean-Luc SANSON Electrical Network.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
SEG4110 – Advanced Software Design and Reengineering
Why XML ? Problems with HTML HTML design - HTML is intended for presentation of information as Web pages. - HTML contains a fixed set of markup tags. This.
Neminath Simmachandran
XP 1 CREATING AN XML DOCUMENT. XP 2 INTRODUCING XML XML stands for Extensible Markup Language. A markup language specifies the structure and content of.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
GeoUML a conceptual data model for geographical data conformant to ISO TC 211 Main GeoUML constructs Alberto BelussiNovembre 2004.
Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 2/1 Copyright © 2004 Please……. No Food Or Drink in the class.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
XHTML1 Building Document Structure Chapter 2. XHTML2 Objectives In this chapter, you will: Learn how to create Extensible Hypertext Markup Language (XHTML)
What is XML?  XML stands for EXtensible Markup Language  XML is a markup language much like HTML  XML was designed to carry data, not to display data.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
6. Simple Features Specification Background information UML overview Simple features geometry.
Processing of structured documents Spring 2002, Part 2 Helena Ahonen-Myka.
EuroRoadS for JRC Workshop Lars Wikström, Triona Editor of EuroRoadS deliverables D6.3, D6.6, D6.7.
Lecture2: Database Environment Prepared by L. Nouf Almujally & Aisha AlArfaj 1 Ref. Chapter2 College of Computer and Information Sciences - Information.
Chapter 7 System models.
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Lecture2: Database Environment Prepared by L. Nouf Almujally 1 Ref. Chapter2 Lecture2.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
A Prototype Spatial Object Transfer Format (SOTF) Peter Woodsford Laser-Scan Ltd., Cambridge, UK. 6th EC-GI & GIS.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Rupa Tiwari, CSci5980 Fall  Course Material Classification  GIS Encyclopedia Articles  Classification Diagram  Course – Encyclopedia Mapping.
When you read a sentence, your mind breaks it into tokens—individual words and punctuation marks that convey meaning. Compilers also perform tokenization.
Tutorial 13 Validating Documents with Schemas
Design? !… When it needs? To understand, to communicate with customers Complex problem What is good design? Separate What to do?(Policy) and How to do(mechanism)
1 Class Diagrams. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are for visualizing, specifying and documenting.
ESDI Workshop on Conceptual Schema Languages and Tools
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
UML and Object Modeling Elements
WIGOS Data model – standards introduction.
Entity-Relation Model. E-R Model The Entity-Relationship (ER) model was originally proposed by Peter in 1976 ER model is a conceptual data model that.
UML Basics and XML Basics Navigating the ISO Standards.
UML Part 1: Class Diagrams. Introduction UML stands for Unified Modeling Language. It represents a unification of the concepts and notations presented.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Data Design and Implementation. Definitions Atomic or primitive type A data type whose elements are single, non-decomposable data items Composite type.
 To explain why the context of a system should be modelled as part of the RE process  To describe behavioural modelling, data modelling and object modelling.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
Rendering XML Documents ©NIITeXtensible Markup Language/Lesson 5/Slide 1 of 46 Objectives In this session, you will learn to: * Define rendering * Identify.
Vers national spatial data infrastructure training program An introduction to the Federal Geographic Data Committee (FGDC) Framework Data Standard.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
Understanding the Value and Importance of Proper Data Documentation 5-1 At the conclusion of this module the participant will be able to List the seven.
The Semantic Web By: Maulik Parikh.
Object-Oriented Analysis and Design
Business Process Measures
UML to XSD.
UML Class Diagrams: Basic Concepts
Chapter 20 Object-Oriented Analysis and Design
Session 3: Information Modelling and Information Communities
Presentation transcript:

vers national spatial data infrastructure training program Serving Transportation Data Through the NSDI Features, GML, and Application Schemas Features and the Geography Markup Language

national spatial data infrastructure training program Features and the Geography Markup Language 1 Learning Objectives After completing this lesson, you will be able to:  Define a Feature  Explain what an application schema is  Interpret simple UML diagrams  Describe the elements of the Geography Markup Language

national spatial data infrastructure training program Features and the Geography Markup Language 2 Features A feature is an abstraction of a real world phenomenon. A feature is geographic if it is associated with a location relative to the Earth. A digital representation of the real world can be thought of as a set of features. Discrete data entities whose position in space is described by geometric primitives such as points, lines or polygons, or topological primitives such as nodes, edges or faces, are features.

national spatial data infrastructure training program Features and the Geography Markup Language 3 Feature Attributes Features are defined by a set of descriptive attributes Attributes are defined by: name value data type  simple data types (integer, real, string, boolean, category)  more complex aggregated types (e.g., an array of integers)  other features

national spatial data infrastructure training program Features and the Geography Markup Language 4 Features that have the same attribute names and attribute types are said to be of the same Feature Type (or Class) Feature types are fully characterized by their name the names and types of their attributes Feature Types Road Green Road Orange Street Feature Type: Road

national spatial data infrastructure training program Features and the Geography Markup Language 5 Feature Instances A Feature Instance is a single representation or occurrence of a particular feature type: an “actual object” rather than a “kind of object” Feature instances are fully characterized by their feature type the values of their attributes Road Green Road Orange Street Feature Instances: Specific Roads

national spatial data infrastructure training program Features and the Geography Markup Language 6 Subclasses and Inheritance New feature types can be created from existing ones by adding more attributes This is one mechanism of creating subclasses of the original feature types Then the new feature type has new characteristics, and a new name, but it also still has the same attributes as the old one The new feature type is said to inherit those original attributes from the original class, or simply to inherit from the original class

national spatial data infrastructure training program Features and the Geography Markup Language 7 Instantiation and Abstract Classes The process of creating a feature instance from a feature type is called instantiation Some feature types may not be instantiated, but their subclasses may be instantiated This pattern arises quite frequently Classes that cannot be instantiated are referred to as abstract

national spatial data infrastructure training program Features and the Geography Markup Language 8 Example: Why Abstract Classes Suppose a model for transportation requires that routes of travel be divided into segments, where each type of segment represents the physical infrastructure for each mode of transport (rail, road, public transit, …) The segments have a number of attributes in common, e.g. length and alignment, but also several attributes that are particular to each mode of transport It may be desirable and efficient to create one feature type that contains only the attributes that are common among all the transportation modes However, it makes no sense to instantiate such a feature type, since it cannot actually represent a physical segment of a route of travel But it does make sense to instantiate subclasses that represent the physical characteristics of real-world segments for the various modes of transportation

national spatial data infrastructure training program Features and the Geography Markup Language 9 Feature Collections A Feature Collection is a collection of Features that can itself be regarded as a Feature it has its own feature type and distinct attributes in addition to the features it contains therefore, attributes can have values that are feature collections

national spatial data infrastructure training program Features and the Geography Markup Language 10 Geometry and Location Features can have attributes that represent shape (frequently called “geometry”) and location, often but not always, the shape and location of the feature itself In the models we consider, geometry and location are simply attributes like any other, and have no special status A feature is not require to have geometry A feature may have more than one geometry different shapes may be desirable for viewing at different scales, or for different kinds of analysis

national spatial data infrastructure training program Features and the Geography Markup Language 11 More About Geometry and Features Geographic features are those with properties that may be geometry-valued and are associated with a location on the Earth Simple features are features whose geometric properties are restricted to “simple” geometries, for which coordinates are defined in two dimensions and the curves are expressed as chains of linear segments (polylines)

vers national spatial data infrastructure training program Serving Transportation Data Through the NSDI Application Schemas

national spatial data infrastructure training program Features and the Geography Markup Language 13 An application schema Provides the formal description of the data structure and content required by one or more applications Consists of a set of feature types (classes) and their relationships Specifies the operations for manipulating and processing data by these applications Is expressed using a schema modeling language  e.g., Unified Modeling Language UML, a graphical, conceptual representation  or XML Schema, a text-based representation for XML implementations that emphasizes the data structure of an application schema Application Schema: Definition

national spatial data infrastructure training program Features and the Geography Markup Language 14 Application schemas help with Determining the necessary transformations between two datasets Translating semantics of transferred datasets with respect to users’ local data Assisting users of applications with similar data requirements in creating a common application schema for the interface between their systems and data. The Framework Data Standard is an application schema Application Schemas and the FDS

national spatial data infrastructure training program Features and the Geography Markup Language 15 A Brief Intro: the UML Class Diagram The Universal Modeling Language (UML) is a graphical language that assists with the design and analysis of object-oriented software systems The UML Class Diagram enables the depiction of feature types (classes) and their relationships The Class Diagram consists of symbols that represent the classes and a variety of connectors between the symbols that designate the type of relationship they have

national spatial data infrastructure training program Features and the Geography Markup Language 16 UML Class Diagram: Class Symbol > Class Name +attribute1_name: attribute1 type +attribute2_name: attribute2 type … Symbol for a Class (Feature Type) The UML symbol for a feature type (class) is simply a series of two or three boxes stacked one above the other, with text describing the class in the boxes The stereotype tells whether the class is a feature type, or abstract, or some other designation. The class name is written in italics if it is abstract, regular text otherwise. The third box lists the operations supported by the class. These are not relevant to the cases described in this material, so this box is usually not depicted. The second box lists the names and types of the feature’s attributes, separated by a colon. Note: the “+” sign at the beginning of an attribute simply indicates that it applies to all members of the class.

national spatial data infrastructure training program Features and the Geography Markup Language 17 UML Class Diagram: Relationships Class C Class D A relationship between two features in UML is indicated by a line between them. The type of relationship is indicated by the symbol at the end of the line. Class A Class B Class E Class F There is an association between class A and class B Class D is a subclass of class C Class E instances contain one or more class F instances

national spatial data infrastructure training program Features and the Geography Markup Language 18 Example: Simple Application Schema UML is frequently used to describe and document an application schema The following diagram depicts a simple application schema for a road network * Route RoadSegment Transportation Segment * Please note: this schema is purely instructional; it does NOT accurately depict any portion of the FDS model. However, it does borrow some names and notions from the FDS roads model. This application schema says that the RoadSegment feature type is a subclass of TransportationSegment, and that a Route is an aggregate of RoadSegments

national spatial data infrastructure training program Features and the Geography Markup Language 19 UML Helpful but Not Enough UML is used extensively in the FDS documents to illustrate concepts and relationships of which the model is composed Lesson 3 in this series refers to the UML diagrams in FDS Parts 7 and 7c to help explain the design of the model However, software systems in general cannot read UML diagrams, which are quite conceptual The actual information passed among computer systems is encoded in a text-based language

vers national spatial data infrastructure training program Serving Transportation Data Through the NSDI Geography Markup Language

national spatial data infrastructure training program Features and the Geography Markup Language 21 Geography Markup Language The Geography Markup Language (GML) is a text-based language developed to describe geographic features and related entities GML is built upon the Extensible Markup Language (XML) the student is encouraged to review the basics of XML if they are not already familiar for XML review materials, see GML has been widely accepted as a standard for communicating information about geographic features for consumption by humans - and between software systems GML is an OGC Standard, currently (June 2010) at version GML is also ISO Standard

national spatial data infrastructure training program Features and the Geography Markup Language 22 Attributes: A Note About Terminology The term “attribute” has two meanings in the context of the material we are now discussing, so it is important to clarify how it is used in these lessons Attributes as discussed thus far are feature attributes, which document the characteristics and state of a feature feature attributes are characterized by a name and a type feature attributes are sometimes referred to as “feature properties,” or just “properties” In the context of XML, the term “attribute” is a syntactical construct that describes an XML element, and is indicated using its own notation We will use the term “XML element attributes” to distinguish them from feature attributes GML uses a few XML element attributes, and we shall encounter some of them in this material

national spatial data infrastructure training program Features and the Geography Markup Language 23 GML Instance and Schema Documents GML documents can describe feature instances, not just classes Such documents are called GML instance documents, or simply instance documents When your data are delivered to your customers, they will be delivered as GML instance documents GML documents that define classes (GML feature types) are written in the XML Schema language Also simply called “XML Schema” XML Schema is itself written in XML The GML schema for the FDS is written as XML Schema

national spatial data infrastructure training program Features and the Geography Markup Language 24 GML and XML Schema GML itself is an XML Schema These lessons will not attempt an overview or even an instructional introduction to XML Schema However, some understanding of XML Schema is important for understanding GML, and to understand the FDS Transportation Schemas Therefore, later lessons provide a few examples to help the student understand how to read and use the XML Schema documents that describe the FDS and GML itself It is also recommended that the student refer to for a tutorial and links to further documentation about the XML Schema language

national spatial data infrastructure training program Features and the Geography Markup Language 25 Some Notes About GML GML defines a variety of object types Features Coordinate reference systems Geometry (simple and complex) Topology Time Units of Measure Generalized values An GML object cannot contain another object directly - it must have a property (a feature attribute) that contains that object as a value. This is similar to the class-property model employed by another modeling language, the Resource Description Framework (RDF) It is also similar to the entity-relationship pattern typically used in Relational Database Management System (RDBMS) design and analysis

national spatial data infrastructure training program Features and the Geography Markup Language 26 More Notes About GML As in UML or in the abstract, the state of a GML feature is defined by the values of its properties A property may be geometric and geolocated A GML feature may have multiple geometric properties, or none Semantics (meaning) are provided by context of application, not inherent to the GML document however, it is good practice to name a property according to the role of its value or the relationship it defines

national spatial data infrastructure training program Features and the Geography Markup Language 27 GML Application Schemas The GML language provides base types only Feature types for a particular application are defined in an XML Schema document that defines a language - a GML Application Schema - of interest to a particular information community e.g., the Framework Data Standard The conceptual role of an application schema is to define a catalog of feature types relevant to the information community. The operational role of an application schema is to validate XML instance documents containing information of interest to the community. this will be an optional but worthwhile step in implementing your data as part of the NSDI this topic is presented in Lesson 4 An application schema need not import GML in its entirety. guidelines on how to use just a subset of GML, and stylesheets for automating the process (written in XSLT, an XML-based transformation language), are provided in an appendix to the GML specification document.

national spatial data infrastructure training program Features and the Geography Markup Language 28 Example: A GML Instance Document <RoadSeg xmlns:roads=“ xmlns:gml=“ id="RS1" > T13:00 open Here we have a GML document that describes the length and location of a Road Segment named “RS1.” Snippets from this document appear in the following slides

national spatial data infrastructure training program Features and the Geography Markup Language 29 GML Instance Document: General Notes xmlns:roads=“ xmlns:gml=“ An XML version line must be included in every XML document, including GML instance documents, so that software knows how to interpret it: The object name at the beginning of many of the XML elements is preceded by its namespace identifier and a colon. Namespaces eliminate the danger of confusion in case the same object name is used in more than one schema. Namespace identifiers are defined in each document via “xmlns” declarations. The syntax is demonstrated in the following snippet. More information about these general issues may be found in any comprehensive XML tutorial, such as

national spatial data infrastructure training program Features and the Geography Markup Language 30 Feature Definition and XML Attributes <RoadSeg xmlns:roads=“ xmlns:gml=“ id="RS1" > …. The definition of a GML feature starts with the name of the feature, followed by XML element attributes as required by the application. Note the notation for XML element attributes: an attribute name, followed by the attribute value in quotation marks, within the same set of angle brackets as the feature type name, immediately following the feature type name. Multiple XML attributes within a single element are separated by whitespace. The opening type declaration is followed by the various feature attributes of the feature (not shown in above snippet), The declaration ends with the closing symbol for the feature, a slash followed by the feature type name, all enclosed in angle brackets.

national spatial data infrastructure training program Features and the Geography Markup Language 31 Feature Attributes and XML Attributes … T13:00 open … Elements declaring the feature attributes (properties and their values) of the feature occupy the center of the feature declaration The meanings of these attributes will be discussed in the next Module Do note, however, that several of the feature attribute elements include XML element attributes, such as “uom,” which declares the unit of measure (in this case, feet) in which the associated length is reported

national spatial data infrastructure training program Features and the Geography Markup Language 32 LineString, srsName, and Dimension … … The geometry of the Road Segment described in our example is a LineString, a sequence of straight lines connected at the coordinates given in the posList, or position list The spatial reference system to which the coordinates refer is declared in the XML attribute “srsName,” in the form of an EPSG code The “dimension” XML attribute tells software or human readers that the coordinates in the position list (the gml:posList) are to be interpreted as coordinate pairs, not as triplets as they would be for a three-dimensional LineString

national spatial data infrastructure training program Features and the Geography Markup Language 33 About GML Revisions The GML standard has undergone a few revisions The current version is GML GML is identical to ISO Standard Many products support one or more versions of the GML 2 series These lessons deal mostly with the Simple Features profile of GML 3, otherwise known as GML 3 Level 0 (GML3L0)

national spatial data infrastructure training program Features and the Geography Markup Language 34 Resources Many resources are available on the Web The Wikipedia article on GML is informative, accurate, and current (as of June 2010) age A particularly useful site for explaining GML and related topics (in the context of a different application schema), is ome

national spatial data infrastructure training program Features and the Geography Markup Language 35 The Framework Data Standard, Part 7: Transportation Next Lesson