The MapGuide GIS system asked for help. An error was reported when connecting the SDF file with FDO. The solution was not found in a few days. mapguidesdf
Currently, there is very little information about the GIS system on the Internet. However, most people use WebGIS. Here, MapGuide is used for GIS presentation and MapWindow is used for layers in the background, and the establishment of the Pipe Network. This is the geographic pipe information displayed on the page,
Now I have encountered a problem: an error is reported when I use FDO to connect to the SDF file,
The sorting result is as follows. Here, I will also post some technical points and questions about GIS system projects on my blog.
1.1.1. FDO Data Structure
Feature(Element ): ElementsIs the abstraction of objects in the real world. OneElementsDirectly or indirectly related geographic location information. OneSpatial ElementsHas one or more geometric attributes. For example, a road can be abstracted as a curve, and a fire hydrant can be abstracted as a point;Non-spatial elementsThere is no geometric information, but it corresponds toSpatial ElementsAssociated. For example, if a road can contain a person's Street, there is no geometric information on the sidewalk.Non-spatial elements.
Schema(Data framework ):SchemaIs a description of the data structure used to model the real world.SchemaIt is not the data itself, but the data that describes the data (that isMetadata). For example,SchemaContains a road class, a road class also contains the "name" attribute, etc. The definition of the road and other related classes constituteSchema. In actual application, you canSchemaIt is understood as a table structure associated with elements.
FeatureClass(Element class ):A set of similar elementsElement. OneElementWith the sameSchemaIt contains a name and a seriesAttributeContains 0 or moreGeometric Properties.
Property(Attribute ):OneElementContains severalAttribute. Each entryAttributeAll have specific types, which can beSimple Type, Such as string and double, can also beComplex typesSuch as the address (the address itself consists of a series of attributes, such as street name and house number ).
Data Property(Data attributes ):Data attributesNon-spatial attributes. OneData attributesValues can be boolean, byte, date/time, decimal, single, double, Int16, Int32, Int64, string, binary large object, character large object, and so on.
Geometric Property(Geometric attribute ):Geometric PropertiesIs an object type, descriptionElements. OneGeometric PropertiesYou can use only one shape, such as a vertex, or multiple dimension shapes. For example, one object is a point, and the other object is a line. The combination of shapes is also allowed. DefaultGeometric PropertiesIt can represent any of the points, lines, faces, and bodies.
One geometric attribute can have only oneCoordinate Dimension. The default value is XY. Optional values include Z and M.
Geometry(Geometric shape ):Geometric ShapeIt is defined by a series of XY or XYZ coordinate points.Geometric ShapeThere are the following types:
- Point
- Line (one or more connected line segments are defined by the positions of a series of vertices)
- Curve (a set of connected line segments and arc segments)
- Polygon (a surface with an outer boundary can have 0 or more inner rings; the inner ring is closed, and the connected line segments are defined by the positions of a series of vertices)
- Curve polygon (a surface with an outer boundary can have 0 or more inner rings; the inner ring is closed and the connected curve)
- Multiple key points (multiple points can be non-Intersecting)
- Multi-line (multi-line, can be non-Intersecting)
- Multiple curves (multiple curves can be non-Intersecting)
- Multiple multilateral lines (multiple polygon, which can be non-Intersecting)
- Multiple Curve polygon (Multiple Curve polygon, which can be non-Intersecting)
- Multiple geometric shapes (a set of multiple geometric shapes that can be non-Intersecting)
Currently, FDO does not support the object type (3D shape ).
FdoIConnection: GetGeometryCapabilities () can be used to query whether a specific data provider supports the specified shape type and coordinate dimension.
Object Property(Object Attributes ):Object AttributesIs a complexAttribute typeCan contain several basic types or object types. As mentioned above, the address type is a complex type.
Spatial Context(Space reference ):Spatial ReferenceIs used to describe the basic element setMetadataAnd parameter information.Spatial ReferenceIt generally includes the definition of the coordinate system, the elliptical parameter, the unit, and the spatial range.
Data Store(Data Storage ):Data StorageIs a container for storing objects.Data StorageIt can contain data with one Schma or multiple Schma types (related to specific providers ).
1.1.2. FDO Data Operations
Command(Command ):Use FDOCommandTo perform operations on elements, including access, update, query, and analysis. EveryCommandObject To perform a specific type of operation.Data ProviderYou can expand existing commands and add new commands for the Provider.CommandThe execution targets a specificConnectionCan also be included inTransactions.
Expression(Expression ):ExpressionUsed to construct a filter. OneExpressionIt can be a filter or a largeExpressionClause.
Filter(Filter ):FilterFor program recognitionData StorageThe subset of objects in. For example, you can use a filter to identify all the elements of the road type that contain 2 dry track in the 200-meter range. Many FDOCommandUseFilterTo operate on specific elements.
Locking(Locked ):You can useLockExclude other users from using the data and update the data.LockDividedTransaction lockAndContinuous lock.Transaction lockIt is temporary and only valid within the scope of the transactionLock.Continuous lockKeepLockStatus until the user is releasedLock, Or revoke other authorized usersLock.
Transaction(Transaction ):TransactionsUse a certain methodDataMake changes. PairData StorageWill be recorded inTransactions. For example,AtomProperty indicates whether all changes have occurred. PairData StorageFor example,TransactionsPut a seriesCommandAs an independent, inseparable (atomic) change. AllCommandOr all operations are successful, or all operations are canceled. Program passedSubmitMake a series of operations take effect, or passRollbackCancels a series of operations.Data StorageWill automatically detectTransactionsAnd automaticallyRollbackOperation.TransactionsHas the following attributes:
Atomic(Atomic):OneTransactionsMediumCommandWhether any changes have occurred.
Consistent(Continuous ):To ensure the stability of system parameters and other data integrity rules, TransactionEnableData StorageMaintain a continuous state, that is, each change is visible to the outside world.
Isolated (Isolated): TransactionInSubmitThe changes made by this user are invisible to other users.
Durable (Persistent): TransactionSuccessfulSubmitWill be saved on the hard disk, no matter the program is damaged or the processing fails, the changes will not be lost.