All possible DGP objects are described by the following INTERLIS 2 data model:
INTERLIS 2.2;
MODEL DGP10 =
DOMAIN
SwissCoord = COORD
480000.000 .. 850000.000,
70000.000 .. 310000.000,
ROTATION 2 -> 1;
STRUCTURE DataProduct =
!! name of data product, i.e. INTERLIS1, INTERLIS2
ProductName: MANDATORY TEXT*20;
!! data model name
ModelName: MANDATORY TEXT*80;
!! selected topics as comma separated list or *
TopicNames: MANDATORY TEXT*1024;
!! geographic range as polygon
Range: MANDATORY SURFACE WITH (STRAIGHTS) VERTEX SwissCoord;
END DataProduct;
STRUCTURE Customer =
Name1: MANDATORY TEXT*40;
Name2: TEXT*40;
Street: MANDATORY TEXT*80;
Zip: MANDATORY TEXT*20;
City: MANDATORY TEXT*40;
EMail: MANDATORY TEXT*40;
END Customer;
STRUCTURE Order =
Customer: MANDATORY Customer;
Product: MANDATORY DataProduct;
END Order;
STRUCTURE MetaData =
ModelName: MANDATORY TEXT*255;
!! DatasetName has to be unique for a given DataServer / ModelName.
DatasetName: MANDATORY TEXT*255;
!! Range is a bounding polygon around the dataset
Range: MANDATORY SURFACE WITH (STRAIGHTS) VERTEX SwissCoord;
END MetaData;
CLASS Request (ABSTRACT) =
User: MANDATORY TEXT*20;
Password: MANDATORY TEXT*20;
END Request;
CLASS Response (ABSTRACT) =
END Response;
TOPIC DataServer =
!! CalculatePrice Message
CLASS CalculatePriceRequest EXTENDS Request =
Product: MANDATORY DataProduct;
END CalculatePriceRequest;
CLASS CalculatePriceResponse EXTENDS Response =
Price: MANDATORY 0.0 .. 1000000.0;
Currency: MANDATORY TEXT*3; !! always CHF at the moment
END CalculatePriceResponse;
!! ExecuteProduct Message
CLASS ExecuteOrderRequest EXTENDS Request =
Order: MANDATORY Order;
END ExecuteOrderRequest;
CLASS ExecuteOrderResponse EXTENDS Response =
!! Dataset contains the dataset zipped and base64 encoded.
!! Dataset will be modelled by BLACKBOX BINARY with INTERLIS 2.3.
Dataset: MANDATORY TEXT*1024;
END ExecuteOrderResponse;
!! Error Messages
CLASS ErrorResponse EXTENDS Response =
Message: MANDATORY TEXT*1024;
END ErrorResponse;
END DataServer;
TOPIC PortalServer =
!! MetadataUpload Message
CLASS MetadataUploadRequest EXTENDS Request =
Metadata: MANDATORY MetaData;
END MetadataUploadRequest;
CLASS MetadataUploadResponse EXTENDS Response =
END MetadataUploadResponse;
!! MetadataDelete Message
CLASS MetadataDeleteRequest EXTENDS Request =
ModelName: MANDATORY TEXT*255;
DatasetName: MANDATORY TEXT*255;
END MetadataDeleteRequest;
CLASS MetadataDeleteResponse EXTENDS Response =
END MetadataDeleteResponse;
!! Error Message
CLASS ErrorResponse EXTENDS Response =
Message: MANDATORY TEXT*1024;
END ErrorResponse;
END PortalServer;
END DGP10.