-- for all types currently called GMLTYPE, we need to decide what version to support here (GML, GML profile for PIDF-LO, 29.572, 33.108)
-- for simplicity of the structure, unless otherwise indicated I stole 29.572 and adapted it to things we already have defined
-- we could adjust the name accordingly or make Polygon a choice of FORMATS
-- it is also worth noting that GML supports doubles instead of integers for both uncertainty, altitude and angles, should we define our defs the same way
-- GMLPolygons support interior borders as well. Do we thing we need to support this?
GMLPolygon ::= SEQUENCE
{
pointList [1] SEQUENCE (SIZE (3..15)) OF GeoPoint
}
GMLCircle ::= SEQUENCE
{
centerPoint [1] GeoPoint,
radiusMeters [2] UncertaintyMeters
}
GMLEllipse ::= SEQUENCE
{
centerPoint [1] GeoPoint,
semiMajor [2] UncertaintyMeters,
semiMinor [3] UncertaintyMeters,
orientation [4] AngleDecimalDegrees
}
-- This is not 29.572, but is closer to GML
GMLArcBand ::= SEQUENCE
{
centerPoint [1] GeoPoint,
innerRadius [2] UncertaintyMeters,
outerRadius [3] UncertaintyMeters,
startAngle [4] AngleDecimalDegrees,
openingAngle [5] AngleDecimalDegrees
}
-- This is not 29.572 but is closer to the GML profile for PIDF-LO
GMLPIDFProfileEllipsoid ::= SEQUENCE
{
centerPoint [1] GeoPoint,
semiMajor [2] UncertaintyMeters,
semiMinor [3] UncertaintyMeters,
verticalAxis [4] UncertaintyMeters
orientation [5] AngleDecimalDegrees
}
GMLPrism ::= SEQUENCE
{
pointList [1] SEQUENCE (SIZE (3..15)) OF GeoPoint,
height [2] UncertaintyMeters
}
FixMode ::= ENUMERATED
{
unknown(0),
@@ -169,4 +226,41 @@ FixMode ::= ENUMERATED
MACAddress ::= OCTET STRING (SIZE(6))
-- This was taken from 33.128, which copied 29.572. We may want to take the format from one of the other standards.
CivicAddress ::= SEQUENCE
{
country [1] UTF8String,
a1 [2] UTF8String OPTIONAL,
a2 [3] UTF8String OPTIONAL,
a3 [4] UTF8String OPTIONAL,
a4 [5] UTF8String OPTIONAL,
a5 [6] UTF8String OPTIONAL,
a6 [7] UTF8String OPTIONAL,
prd [8] UTF8String OPTIONAL,
pod [9] UTF8String OPTIONAL,
sts [10] UTF8String OPTIONAL,
hno [11] UTF8String OPTIONAL,
hns [12] UTF8String OPTIONAL,
lmk [13] UTF8String OPTIONAL,
loc [14] UTF8String OPTIONAL,
nam [15] UTF8String OPTIONAL,
pc [16] UTF8String OPTIONAL,
bld [17] UTF8String OPTIONAL,
unit [18] UTF8String OPTIONAL,
flr [19] UTF8String OPTIONAL,
room [20] UTF8String OPTIONAL,
plc [21] UTF8String OPTIONAL,
pcn [22] UTF8String OPTIONAL,
pobox [23] UTF8String OPTIONAL,
addcode [24] UTF8String OPTIONAL,
seat [25] UTF8String OPTIONAL,
rd [26] UTF8String OPTIONAL,
rdsec [27] UTF8String OPTIONAL,
rdbr [28] UTF8String OPTIONAL,
rdsubbr [29] UTF8String OPTIONAL
}
-- This could also be REAL, but I think we avoid that for some reason