Changeset 989
- Timestamp:
- 23/05/06 16:50:19 (15 years ago)
- Location:
- TI07-MOLES/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TI07-MOLES/trunk/v1Schema/Schemae/ndgmetadata1.2.4.xsd
r895 r989 10 10 addition of dgDataQuality to dgDataSummary; 11 11 addition of dgDataUseNotice to dgDataQuality; 12 modification of dgTemporalCoverageType to allow text as well as a set of ranges OR single values 13 modification of dgSpatialCoverageType to allow text as well as a set of ranges OR single values 12 14 addition of dgPolygon2D to dgSpatialCoverage; 13 15 addition of dgCourse2D to dgSpatialCoverage/dgCourse; 14 16 modification of dgDataGranule/accessControlPolicy to make life easier for programmers; 17 modification of dgDataGranule/instance/instanceComment; 15 18 correction of dgRelatedDataGranuleID to dgRelatedDataEntity; 16 19 extension of dgSecurityConditionType to allow plain English explanatory text. 17 20 requirement for a deployment to have an end date removed; 18 21 correct spelling of "principal"; 19 correct spelling of "DataProvenance" to "dgMetadataProvenance". 22 correct spelling of "DataProvenance" to "dgMetadataProvenance"; 23 creation of dgMetadataRecordType. 20 24 --> 21 25 <xs:element name="dgMetadata"> … … 25 29 <xs:complexType> 26 30 <xs:sequence minOccurs="0"> 27 <xs:element name="dgMetadataRecord" minOccurs="0" maxOccurs="unbounded"> 28 <xs:complexType> 29 <xs:sequence> 30 <xs:element ref="dgMetadataID"/> 31 <xs:element name="dgMetadataDescription" type="dgMetadataDescriptionType"/> 32 <xs:element name="name" type="xs:string"/> 33 <xs:element name="abbreviation" type="xs:string"> 34 <xs:annotation> 35 <xs:documentation>Software should default name and abbreviation to (at least a truncated version of) the other, if only one is filled in.</xs:documentation> 36 </xs:annotation> 37 </xs:element> 38 <xs:choice> 39 <xs:element name="dgActivity"> 40 <xs:complexType> 41 <xs:sequence> 42 <xs:element name="relatedActivity" minOccurs="0" maxOccurs="unbounded"> 43 <xs:complexType> 44 <xs:sequence> 45 <xs:element name="activityRelation" type="dgStructuredKeywordType"/> 46 <xs:element name="relatedActivityID" type="dgMetadataIDType"/> 47 </xs:sequence> 48 </xs:complexType> 49 </xs:element> 50 <xs:choice maxOccurs="unbounded"> 51 <xs:element name="dgActivityDataCollection"/> 52 <xs:element name="dgActivityDataProject"/> 53 <xs:element name="dgActivityDataCampaign"/> 54 <xs:element name="dgActivityDataInvestigation"> 55 <xs:complexType> 56 <xs:choice> 57 <xs:element name="dgFlight"/> 58 <xs:element name="dgCruise"/> 59 </xs:choice> 60 </xs:complexType> 61 </xs:element> 62 </xs:choice> 63 <xs:element name="dgActivityRole"> 64 <xs:annotation> 65 <xs:documentation>Note that this is a part of the "abstract class" dgRoles</xs:documentation> 66 </xs:annotation> 67 <xs:complexType> 68 <xs:sequence> 69 <xs:element name="dgInvestigator"> 70 <xs:complexType> 71 <xs:sequence> 72 <xs:element name="dgPrincipalInvestigator" type="dgRoleType" maxOccurs="unbounded"/> 73 <xs:element name="dgCoInvestigator" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/> 74 </xs:sequence> 75 </xs:complexType> 76 </xs:element> 77 <xs:element name="dgTechnicalContact" type="dgRoleType" minOccurs="0"/> 78 <xs:element name="dgProjectManager" type="dgRoleType" minOccurs="0"/> 79 </xs:sequence> 80 </xs:complexType> 81 </xs:element> 82 <xs:element name="ActivityDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 83 <xs:element name="dgActivityCoverage" type="dgCoverageType" minOccurs="0"/> 84 <xs:element name="ActivityDuration" minOccurs="0"> 85 <xs:complexType> 86 <xs:sequence> 87 <xs:element name="startDate" type="xs:date"/> 88 <xs:element name="endDate" type="xs:date" minOccurs="0"/> 89 </xs:sequence> 90 </xs:complexType> 91 </xs:element> 92 </xs:sequence> 93 </xs:complexType> 94 </xs:element> 95 <xs:element name="dgDataEntity"> 96 <xs:complexType> 97 <xs:sequence> 98 <xs:element name="dgDataSetType"> 99 <xs:annotation> 100 <xs:documentation>Simulation, analysis, or measurement</xs:documentation> 101 </xs:annotation> 102 <xs:complexType> 103 <xs:choice> 104 <xs:element name="dgSimulation"/> 105 <xs:element name="dgAnalysis"/> 106 <xs:element name="dgMeasurement"/> 107 </xs:choice> 108 </xs:complexType> 109 </xs:element> 110 <xs:element name="dgDataObjectType"> 111 <xs:annotation> 112 <xs:documentation>Profile etc. </xs:documentation> 113 </xs:annotation> 114 <xs:complexType> 115 <xs:choice> 116 <xs:element name="dgBasicData"> 117 <xs:complexType> 118 <xs:choice> 119 <xs:element name="dgEnsemble"/> 120 <xs:element name="dgLaGrangianPath"/> 121 <xs:element name="dgN-DimensionalDataset"/> 122 <xs:element name="dgSample"/> 123 <xs:element name="dgProfile"/> 124 <xs:element name="dgSection"/> 125 </xs:choice> 126 </xs:complexType> 127 </xs:element> 128 <xs:element name="dgDerivedData"> 129 <xs:complexType> 130 <xs:sequence> 131 <xs:element name="dgInputDataGranuleID" type="dgMetadataIDType" maxOccurs="unbounded"> 132 <xs:annotation> 133 <xs:documentation>Existence of these indicates a derived datatype, although I suppose a "unknown" DE will have to be registered...</xs:documentation> 134 </xs:annotation> 135 </xs:element> 136 <xs:choice> 137 <xs:element name="dgClimatology"/> 138 <xs:element name="dgTimeSeries"/> 139 <xs:element name="dgIntegration"/> 140 </xs:choice> 141 </xs:sequence> 142 </xs:complexType> 143 </xs:element> 144 </xs:choice> 145 </xs:complexType> 146 </xs:element> 147 <xs:element name="dgDataGranule" maxOccurs="unbounded"> 148 <xs:annotation> 149 <xs:documentation>Link to DataModel. Could also hold summary of Andrew's "data descriptor"</xs:documentation> 150 </xs:annotation> 151 <xs:complexType> 152 <xs:sequence> 153 <xs:element name="dataModelID" type="dgMetadataIDType"> 154 <xs:annotation> 155 <xs:documentation>See IDIssues page on Wiki</xs:documentation> 156 </xs:annotation> 157 </xs:element> 158 <xs:element name="instance" minOccurs="0" maxOccurs="unbounded"> 159 <xs:complexType> 160 <xs:sequence> 161 <xs:element name="URI" type="xs:anyURI"/> 162 <xs:element name="format" type="xs:string"> 163 <xs:annotation> 164 <xs:documentation>Should be from a "supported formats" list IDC</xs:documentation> 165 </xs:annotation> 166 </xs:element> 167 </xs:sequence> 168 </xs:complexType> 169 </xs:element> 170 <xs:element name="accessControlPolicy" minOccurs="0"> 171 <xs:annotation> 172 <xs:documentation>Contains either a text file giving the access control policy to the actual data granule, or a URL that points to such a document. In the long run, this is likely to be an XACML document. Note the assumption that there will be only one definitive source for such a policy.</xs:documentation> 173 </xs:annotation> 174 <xs:complexType> 175 <xs:choice> 176 <xs:element name="accessControlPolicyURL" type="xs:anyURI"/> 177 <xs:element name="accessControlPolicyText" type="xs:string"/> 178 <xs:element name="dgSecurityCondition" type="dgSecurityConditionType" maxOccurs="unbounded"/> 179 </xs:choice> 180 </xs:complexType> 181 </xs:element> 182 </xs:sequence> 183 </xs:complexType> 184 </xs:element> 185 <xs:element name="dgDataSummary"> 186 <xs:complexType> 187 <xs:sequence> 188 <xs:element name="dgParameterSummary" type="dgParameterType" maxOccurs="unbounded"/> 189 <xs:element name="dgDataCoverage" type="dgCoverageType" minOccurs="0"/> 190 <xs:element name="dgDatasetStatus" minOccurs="0"> 191 <xs:complexType> 192 <xs:sequence> 193 <xs:element name="dgDatasetClosure"> 194 <xs:simpleType> 195 <xs:restriction base="xs:string"> 196 <xs:enumeration value="no_data"/> 197 <xs:enumeration value="complete"/> 198 <xs:enumeration value="updating"/> 199 <xs:enumeration value="incomplete"/> 200 </xs:restriction> 201 </xs:simpleType> 202 </xs:element> 203 <xs:element name="dgUpdateFrequency" type="dgStructuredKeywordType" minOccurs="0"/> 204 </xs:sequence> 205 </xs:complexType> 206 </xs:element> 207 <xs:element name="dgDatasetProvenance" minOccurs="0"> 208 <xs:annotation> 209 <xs:documentation>Another placeholder for when the data provenance issue has been addressed</xs:documentation> 210 </xs:annotation> 211 </xs:element> 212 <xs:element name="dgDataEntityQuality" minOccurs="0"> 213 <xs:complexType> 214 <xs:sequence> 215 <xs:element name="DQStatementReference" type="dgCitationType" minOccurs="0" maxOccurs="unbounded"/> 216 </xs:sequence> 217 </xs:complexType> 218 </xs:element> 219 </xs:sequence> 220 </xs:complexType> 221 </xs:element> 222 <xs:element name="dgDataRoles"> 223 <xs:annotation> 224 <xs:documentation>Note that this is a part of the "abstract and unimplemented class" dgRoles</xs:documentation> 225 </xs:annotation> 226 <xs:complexType> 227 <xs:sequence> 228 <xs:element name="dgDataCreator" type="dgRoleType" minOccurs="0"/> 229 <xs:element name="dgDataCurator" type="dgRoleType"/> 230 <xs:element name="dgDataOtherRoles" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/> 231 </xs:sequence> 232 </xs:complexType> 233 </xs:element> 234 <xs:element name="RelatedDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 235 <xs:element name="dgRelatedDataEntity" minOccurs="0" maxOccurs="unbounded"> 236 <xs:annotation> 237 <xs:documentation>Relations other than Input...</xs:documentation> 238 </xs:annotation> 239 <xs:complexType> 240 <xs:sequence> 241 <xs:element name="RelatedDataGranuleID" type="dgMetadataIDType"/> 242 <xs:element name="RelationID" type="dgStructuredKeywordType"/> 243 </xs:sequence> 244 </xs:complexType> 245 </xs:element> 246 </xs:sequence> 247 </xs:complexType> 248 </xs:element> 249 <xs:element name="dgDataProductionTool"> 250 <xs:annotation> 251 <xs:documentation>Needs a link to a "Capabilities" list. OGC capabilities is the place to start? Note that knowledge of the instrument or model used can influence the intepretation of the data produced.</xs:documentation> 252 </xs:annotation> 253 <xs:complexType> 254 <xs:sequence> 255 <xs:element name="contactDetails" type="dgContactDetailType"/> 256 <xs:choice> 257 <xs:element name="dgModel"> 258 <xs:complexType/> 259 </xs:element> 260 <xs:element name="dgInstrument"> 261 <xs:annotation> 262 <xs:documentation>This is a "starter set" and will change radically and often as the domain specialists conrtibute.</xs:documentation> 263 </xs:annotation> 264 <xs:complexType> 265 <xs:sequence> 266 <xs:element name="dgInstrumentComponentID" type="dgMetadataIDType" minOccurs="0" maxOccurs="unbounded"> 267 <xs:annotation> 268 <xs:documentation>References to significant sub-parts of an instrument</xs:documentation> 269 </xs:annotation> 270 </xs:element> 271 <xs:choice> 272 <xs:element name="dgObserver"> 273 <xs:complexType> 274 <xs:choice> 275 <xs:element ref="dgOrganisation"/> 276 <xs:element ref="dgPerson"/> 277 </xs:choice> 278 </xs:complexType> 279 </xs:element> 280 <xs:element name="dgLidar" type="xs:anySimpleType"/> 281 <xs:element name="dgRadar" type="xs:anySimpleType"/> 282 <xs:element name="dgSonde" type="xs:anySimpleType"/> 283 <xs:element name="dgNavigation" type="xs:anySimpleType"/> 284 <xs:element name="dgGasChromatograph" type="xs:anySimpleType"/> 285 <xs:element name="dgSpectrometer" type="xs:anySimpleType"/> 286 <xs:element name="dgMassSpectrometer" type="xs:anySimpleType"/> 287 <xs:element name="dgMetSensor" type="xs:anySimpleType"/> 288 <xs:element name="dgDOAS" type="xs:anySimpleType"/> 289 <xs:element name="dgASOZ" type="xs:anySimpleType"/> 290 <xs:element name="dgRadiometer" type="xs:anySimpleType"/> 291 <xs:element name="dgFAGE" type="xs:anySimpleType"/> 292 <xs:element name="dgImager" type="xs:anySimpleType"/> 293 <xs:element name="dgFilter" type="xs:anySimpleType"/> 294 <xs:element name="dgParticleCounter" type="xs:anySimpleType"/> 295 <xs:element name="dgSampler" type="xs:anySimpleType"/> 296 <xs:element name="dgOtherInstrumentType" type="xs:anySimpleType"/> 297 </xs:choice> 298 </xs:sequence> 299 </xs:complexType> 300 </xs:element> 301 </xs:choice> 302 <xs:element name="dgDPTRoles" minOccurs="0"> 303 <xs:annotation> 304 <xs:documentation>DPT = Data Production Tool</xs:documentation> 305 </xs:annotation> 306 <xs:complexType> 307 <xs:complexContent> 308 <xs:extension base="dgRoleType"> 309 <xs:sequence> 310 <xs:element name="dgDPTOperationTeam"> 311 <xs:annotation> 312 <xs:documentation>OK, this is another placeholder and an example of the kind of role hierarchies that exist.</xs:documentation> 313 </xs:annotation> 314 </xs:element> 315 <xs:element name="dgDPTOtherRoles" type="dgRoleType" minOccurs="0"/> 316 </xs:sequence> 317 </xs:extension> 318 </xs:complexContent> 319 </xs:complexType> 320 </xs:element> 321 <xs:element name="DPTDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 322 </xs:sequence> 323 </xs:complexType> 324 </xs:element> 325 <xs:element name="dgObservationStation"> 326 <xs:annotation> 327 <xs:documentation>IDC, may want to add info about the type and number of instruments that can be deployed... Also, really don't like the name "ObservationStation...</xs:documentation> 328 </xs:annotation> 329 <xs:complexType> 330 <xs:sequence> 331 <xs:element name="contactDetails" type="dgContactDetailType"/> 332 <xs:choice> 333 <xs:element name="dgStationaryPlatform"> 334 <xs:complexType> 335 <xs:sequence> 336 <xs:element name="position"> 337 <xs:complexType> 338 <xs:sequence> 339 <xs:element name="positionLatitude" type="xs:decimal"> 340 <xs:annotation> 341 <xs:documentation>North is positive ;-)</xs:documentation> 342 </xs:annotation> 343 </xs:element> 344 <xs:element name="positionLongitude" type="xs:decimal"> 345 <xs:annotation> 346 <xs:documentation>East is positive</xs:documentation> 347 </xs:annotation> 348 </xs:element> 349 </xs:sequence> 350 </xs:complexType> 351 </xs:element> 352 <xs:choice> 353 <xs:element name="dgLandStation"/> 354 <xs:element name="dgMooring"> 355 <xs:complexType> 356 <xs:sequence> 357 <xs:element name="dateStart" type="xs:date"/> 358 <xs:element name="dateEnd" type="xs:date"/> 359 <xs:element name="deployingCruise" type="dgMetadataIDType"> 360 <xs:annotation> 361 <xs:documentation>Pointer to cruise that deployed the platform</xs:documentation> 362 </xs:annotation> 363 </xs:element> 364 <xs:element name="dgStationGrouping" type="dgMetadataIDType" minOccurs="0"> 365 <xs:annotation> 366 <xs:documentation>Pointer to the OS of type dgStationGroup at which the mooring was deployed, if any.</xs:documentation> 367 </xs:annotation> 368 </xs:element> 369 </xs:sequence> 370 </xs:complexType> 371 </xs:element> 372 <xs:element name="dgStationGroup"> 373 <xs:annotation> 374 <xs:documentation>The solution to the Great Station Controvesy! This is a known and defined location at which temporary observation stations, such as moorings, can be located. Note that current thinking is that it can't have data of its own. The apparently redundant grouping is to allow the dgStationGroup to have other elements attached in the future</xs:documentation> 375 </xs:annotation> 376 <xs:complexType> 377 <xs:sequence> 378 <xs:element name="dgGroupedStations" minOccurs="0"> 379 <xs:complexType> 380 <xs:sequence> 381 <xs:element name="dgGroupedStation" type="dgMetadataIDType" maxOccurs="unbounded"> 382 <xs:annotation> 383 <xs:documentation>Pointer to mooring or similar at this location.</xs:documentation> 384 </xs:annotation> 385 </xs:element> 386 </xs:sequence> 387 </xs:complexType> 388 </xs:element> 389 </xs:sequence> 390 </xs:complexType> 391 </xs:element> 392 </xs:choice> 393 </xs:sequence> 394 </xs:complexType> 395 </xs:element> 396 <xs:element name="dgMovingPlatform"> 397 <xs:annotation> 398 <xs:documentation>Used to contain "trajectory", this has been replaced by the "Coverage" element of a deployment. However, adding a "history" element may well be useful, to include trips not linked to data etc.</xs:documentation> 399 </xs:annotation> 400 <xs:complexType> 401 <xs:sequence> 402 <xs:choice> 403 <xs:element name="dgShip"> 404 <xs:complexType> 405 <xs:sequence> 406 <xs:element name="callSign" type="xs:string" minOccurs="0"/> 407 <xs:element name="operatingCountry" type="xs:string"> 408 <xs:annotation> 409 <xs:documentation>Contents ISO 3166-1 and 3166-3, using 2 character code as key</xs:documentation> 410 </xs:annotation> 411 </xs:element> 412 <xs:element name="vesselType" type="xs:string"> 413 <xs:annotation> 414 <xs:documentation>Values from WMO vocabulary at http://www.wmo.int/web/www/ois/pub47/pub47-home.htm</xs:documentation> 415 </xs:annotation> 416 </xs:element> 417 </xs:sequence> 418 </xs:complexType> 419 </xs:element> 420 <xs:element name="dgAircraft"/> 421 <xs:element name="dgSatellite"/> 422 </xs:choice> 423 </xs:sequence> 424 </xs:complexType> 425 </xs:element> 426 </xs:choice> 427 <xs:element name="ObsStationDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 428 </xs:sequence> 429 </xs:complexType> 430 </xs:element> 431 </xs:choice> 432 <xs:element ref="dgStructuredKeyword" maxOccurs="unbounded"/> 433 <xs:element name="dgMetadataProvenance" minOccurs="0"> 434 <xs:complexType> 435 <xs:sequence> 436 <xs:element name="RecordCreation"> 437 <xs:complexType> 438 <xs:sequence> 439 <xs:element name="CreatedDate" type="xs:date"/> 440 <xs:element name="CreatedBy" type="xs:string"/> 441 </xs:sequence> 442 </xs:complexType> 443 </xs:element> 444 <xs:element name="RecordUpdate" minOccurs="0" maxOccurs="unbounded"> 445 <xs:complexType> 446 <xs:sequence> 447 <xs:element name="UpdateDate" type="xs:date"/> 448 <xs:element name="UpdatedBy" type="xs:string"/> 449 <xs:element name="UpdateSummary" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 450 </xs:sequence> 451 </xs:complexType> 452 </xs:element> 453 <xs:element name="RecordReview" minOccurs="0"> 454 <xs:complexType> 455 <xs:sequence> 456 <xs:element name="ReviewDate" type="xs:date"/> 457 <xs:element name="ReviewContact" type="xs:string" minOccurs="0"/> 458 </xs:sequence> 459 </xs:complexType> 460 </xs:element> 461 </xs:sequence> 462 </xs:complexType> 463 </xs:element> 464 <xs:element name="dgMetadataSecurity" minOccurs="0"> 465 <xs:annotation> 466 <xs:documentation>Indicates security applied, if any, to the metadata record itself</xs:documentation> 467 </xs:annotation> 468 <xs:complexType> 469 <xs:sequence> 470 <xs:element name="dgSecurityCondition" type="dgSecurityConditionType" maxOccurs="unbounded"/> 471 </xs:sequence> 472 </xs:complexType> 473 </xs:element> 474 </xs:sequence> 475 </xs:complexType> 476 </xs:element> 31 <xs:element name="dgMetadataRecord" type="dgMetadataRecordType" minOccurs="0" maxOccurs="unbounded"/> 477 32 <xs:element ref="dgPerson" minOccurs="0" maxOccurs="unbounded"/> 478 33 <xs:element ref="dgOrganisation" minOccurs="0" maxOccurs="unbounded"/> … … 806 361 </xs:element> 807 362 <xs:element name="dgCourse" minOccurs="0" maxOccurs="unbounded"> 363 <xs:annotation> 364 <xs:documentation>Note that there's only a 2D course in there at the moment. In principle you might want a 2D course and a 3D course (e.g. track of aircraft on ground and trajectory through air)</xs:documentation> 365 </xs:annotation> 808 366 <xs:complexType> 809 367 <xs:choice> … … 832 390 <xs:documentation>All values, except verticalExtentText, are assumed to be in metres unless otherwise stated</xs:documentation> 833 391 </xs:annotation> 834 <xs:element name="dgVerticalExtentLevel" m axOccurs="unbounded">392 <xs:element name="dgVerticalExtentLevel" minOccurs="0" maxOccurs="unbounded"> 835 393 <xs:complexType> 836 394 <xs:sequence> … … 840 398 </xs:complexType> 841 399 </xs:element> 842 <xs:element name="dgVerticalExtentRange" m axOccurs="unbounded">400 <xs:element name="dgVerticalExtentRange" minOccurs="0" maxOccurs="unbounded"> 843 401 <xs:complexType> 844 402 <xs:sequence> … … 849 407 </xs:complexType> 850 408 </xs:element> 851 <xs:element name="dgVerticalExtentText" type="dgStructuredKeywordType" maxOccurs="unbounded">852 <xs:annotation>853 <xs:documentation>Note that these terms should all be from the same vocab.</xs:documentation>854 </xs:annotation>855 </xs:element>856 409 </xs:choice> 410 <xs:element name="dgVerticalExtentText" type="dgStructuredKeywordType" minOccurs="0" maxOccurs="unbounded"> 411 <xs:annotation> 412 <xs:documentation>Note that these terms should all be from the same vocab.</xs:documentation> 413 </xs:annotation> 414 </xs:element> 857 415 </xs:sequence> 858 416 </xs:complexType> … … 896 454 <xs:sequence> 897 455 <xs:choice> 898 <xs:element name="DateRange" m axOccurs="unbounded">456 <xs:element name="DateRange" minOccurs="0" maxOccurs="unbounded"> 899 457 <xs:annotation> 900 458 <xs:documentation>Note that a single year/month will be dealt with as a date range</xs:documentation> … … 907 465 </xs:complexType> 908 466 </xs:element> 909 <xs:element name="DateSingle" type="xs:date" maxOccurs="unbounded"/> 910 <xs:element name="dgChronostratigraphicTerm" type="dgStructuredKeywordType" maxOccurs="unbounded"> 911 <xs:annotation> 912 <xs:documentation>Keyword for palaeo temporal eras covered by data. Will be from a specific vocab</xs:documentation> 913 </xs:annotation> 914 </xs:element> 467 <xs:element name="DateSingle" type="xs:date" minOccurs="0" maxOccurs="unbounded"/> 915 468 </xs:choice> 469 <xs:element name="dgChronostratigraphicTerm" type="dgStructuredKeywordType" minOccurs="0" maxOccurs="unbounded"> 470 <xs:annotation> 471 <xs:documentation>Keyword for palaeo temporal eras covered by data. Will be from a specific vocab</xs:documentation> 472 </xs:annotation> 473 </xs:element> 916 474 <xs:element name="dgTemporalResolution" type="dgResolutionType" minOccurs="0"/> 917 475 </xs:sequence> … … 1146 704 <xs:element name="point2D" type="dgPoint2DType" minOccurs="2" maxOccurs="unbounded"/> 1147 705 </xs:sequence> 1148 <xs:attribute name="isInclusive" type="xs:boolean" use="optional" default="true"/>1149 706 </xs:complexType> 1150 707 <xs:complexType name="dgPoint2DType"> … … 1212 769 <xs:attributeGroup ref="dgSpatialInclusionAttrGrp"/> 1213 770 </xs:complexType> 771 <xs:complexType name="dgMetadataRecordType"> 772 <xs:sequence> 773 <xs:element ref="dgMetadataID"/> 774 <xs:element name="dgMetadataDescription" type="dgMetadataDescriptionType"/> 775 <xs:element name="name" type="xs:string"/> 776 <xs:element name="abbreviation" type="xs:string"> 777 <xs:annotation> 778 <xs:documentation>Software should default name and abbreviation to (at least a truncated version of) the other, if only one is filled in.</xs:documentation> 779 </xs:annotation> 780 </xs:element> 781 <xs:choice> 782 <xs:element name="dgActivity"> 783 <xs:complexType> 784 <xs:sequence> 785 <xs:element name="relatedActivity" minOccurs="0" maxOccurs="unbounded"> 786 <xs:complexType> 787 <xs:sequence> 788 <xs:element name="activityRelation" type="dgStructuredKeywordType"/> 789 <xs:element name="relatedActivityID" type="dgMetadataIDType"/> 790 </xs:sequence> 791 </xs:complexType> 792 </xs:element> 793 <xs:choice maxOccurs="unbounded"> 794 <xs:element name="dgActivityDataCollection"/> 795 <xs:element name="dgActivityDataProject"/> 796 <xs:element name="dgActivityDataCampaign"/> 797 <xs:element name="dgActivityDataInvestigation"> 798 <xs:complexType> 799 <xs:choice> 800 <xs:element name="dgFlight"/> 801 <xs:element name="dgCruise"/> 802 </xs:choice> 803 </xs:complexType> 804 </xs:element> 805 </xs:choice> 806 <xs:element name="dgActivityRole"> 807 <xs:annotation> 808 <xs:documentation>Note that this is a part of the "abstract class" dgRoles</xs:documentation> 809 </xs:annotation> 810 <xs:complexType> 811 <xs:sequence> 812 <xs:element name="dgInvestigator"> 813 <xs:complexType> 814 <xs:sequence> 815 <xs:element name="dgPrincipalInvestigator" type="dgRoleType" maxOccurs="unbounded"/> 816 <xs:element name="dgCoInvestigator" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/> 817 </xs:sequence> 818 </xs:complexType> 819 </xs:element> 820 <xs:element name="dgTechnicalContact" type="dgRoleType" minOccurs="0"/> 821 <xs:element name="dgProjectManager" type="dgRoleType" minOccurs="0"/> 822 </xs:sequence> 823 </xs:complexType> 824 </xs:element> 825 <xs:element name="ActivityDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 826 <xs:element name="dgActivityCoverage" type="dgCoverageType" minOccurs="0"/> 827 <xs:element name="ActivityDuration" minOccurs="0"> 828 <xs:complexType> 829 <xs:sequence> 830 <xs:element name="startDate" type="xs:date"/> 831 <xs:element name="endDate" type="xs:date" minOccurs="0"/> 832 </xs:sequence> 833 </xs:complexType> 834 </xs:element> 835 </xs:sequence> 836 </xs:complexType> 837 </xs:element> 838 <xs:element name="dgDataEntity"> 839 <xs:complexType> 840 <xs:sequence> 841 <xs:element name="dgDataSetType"> 842 <xs:annotation> 843 <xs:documentation>Simulation, analysis, or measurement</xs:documentation> 844 </xs:annotation> 845 <xs:complexType> 846 <xs:choice> 847 <xs:element name="dgSimulation"/> 848 <xs:element name="dgAnalysis"/> 849 <xs:element name="dgMeasurement"/> 850 </xs:choice> 851 </xs:complexType> 852 </xs:element> 853 <xs:element name="dgDataObjectType"> 854 <xs:annotation> 855 <xs:documentation>Profile etc. </xs:documentation> 856 </xs:annotation> 857 <xs:complexType> 858 <xs:choice> 859 <xs:element name="dgBasicData"> 860 <xs:complexType> 861 <xs:choice> 862 <xs:element name="dgEnsemble"/> 863 <xs:element name="dgLaGrangianPath"/> 864 <xs:element name="dgN-DimensionalDataset"/> 865 <xs:element name="dgSample"/> 866 <xs:element name="dgProfile"/> 867 <xs:element name="dgSection"/> 868 </xs:choice> 869 </xs:complexType> 870 </xs:element> 871 <xs:element name="dgDerivedData"> 872 <xs:complexType> 873 <xs:sequence> 874 <xs:element name="dgInputDataGranuleID" type="dgMetadataIDType" maxOccurs="unbounded"> 875 <xs:annotation> 876 <xs:documentation>Existence of these indicates a derived datatype, although I suppose a "unknown" DE will have to be registered...</xs:documentation> 877 </xs:annotation> 878 </xs:element> 879 <xs:choice> 880 <xs:element name="dgClimatology"/> 881 <xs:element name="dgTimeSeries"/> 882 <xs:element name="dgIntegration"/> 883 </xs:choice> 884 </xs:sequence> 885 </xs:complexType> 886 </xs:element> 887 </xs:choice> 888 </xs:complexType> 889 </xs:element> 890 <xs:element name="dgDataGranule" maxOccurs="unbounded"> 891 <xs:annotation> 892 <xs:documentation>Link to DataModel. Could also hold summary of Andrew's "data descriptor"</xs:documentation> 893 </xs:annotation> 894 <xs:complexType> 895 <xs:sequence> 896 <xs:element name="dataModelID" type="dgMetadataIDType"> 897 <xs:annotation> 898 <xs:documentation>See IDIssues page on Wiki</xs:documentation> 899 </xs:annotation> 900 </xs:element> 901 <xs:element name="instance" minOccurs="0" maxOccurs="unbounded"> 902 <xs:complexType> 903 <xs:sequence> 904 <xs:element name="URI" type="xs:anyURI"/> 905 <xs:element name="format" type="xs:string"> 906 <xs:annotation> 907 <xs:documentation>Should be from a "supported formats" list IDC</xs:documentation> 908 </xs:annotation> 909 </xs:element> 910 <xs:element name="instanceComment" minOccurs="0"/> 911 </xs:sequence> 912 </xs:complexType> 913 </xs:element> 914 <xs:element name="accessControlPolicy" minOccurs="0"> 915 <xs:annotation> 916 <xs:documentation>Contains either a text file giving the access control policy to the actual data granule, or a URL that points to such a document. In the long run, this is likely to be an XACML document. Note the assumption that there will be only one definitive source for such a policy.</xs:documentation> 917 </xs:annotation> 918 <xs:complexType> 919 <xs:choice> 920 <xs:element name="accessControlPolicyURL" type="xs:anyURI"/> 921 <xs:element name="accessControlPolicyText" type="xs:string"/> 922 <xs:element name="dgSecurityCondition" type="dgSecurityConditionType" maxOccurs="unbounded"/> 923 </xs:choice> 924 </xs:complexType> 925 </xs:element> 926 </xs:sequence> 927 </xs:complexType> 928 </xs:element> 929 <xs:element name="dgDataSummary"> 930 <xs:complexType> 931 <xs:sequence> 932 <xs:element name="dgParameterSummary" type="dgParameterType" maxOccurs="unbounded"/> 933 <xs:element name="dgDataCoverage" type="dgCoverageType" minOccurs="0"/> 934 <xs:element name="dgDatasetStatus" minOccurs="0"> 935 <xs:complexType> 936 <xs:sequence> 937 <xs:element name="dgDatasetClosure"> 938 <xs:simpleType> 939 <xs:restriction base="xs:string"> 940 <xs:enumeration value="no_data"/> 941 <xs:enumeration value="complete"/> 942 <xs:enumeration value="updating"/> 943 <xs:enumeration value="incomplete"/> 944 </xs:restriction> 945 </xs:simpleType> 946 </xs:element> 947 <xs:element name="dgUpdateFrequency" type="dgStructuredKeywordType" minOccurs="0"/> 948 </xs:sequence> 949 </xs:complexType> 950 </xs:element> 951 <xs:element name="dgDatasetProvenance" minOccurs="0"> 952 <xs:annotation> 953 <xs:documentation>Another placeholder for when the data provenance issue has been addressed</xs:documentation> 954 </xs:annotation> 955 </xs:element> 956 <xs:element name="dgDataEntityQuality" minOccurs="0"> 957 <xs:complexType> 958 <xs:sequence> 959 <xs:element name="DQStatementReference" type="dgCitationType" minOccurs="0" maxOccurs="unbounded"/> 960 </xs:sequence> 961 </xs:complexType> 962 </xs:element> 963 </xs:sequence> 964 </xs:complexType> 965 </xs:element> 966 <xs:element name="dgDataRoles"> 967 <xs:annotation> 968 <xs:documentation>Note that this is a part of the "abstract and unimplemented class" dgRoles</xs:documentation> 969 </xs:annotation> 970 <xs:complexType> 971 <xs:sequence> 972 <xs:element name="dgDataCreator" type="dgRoleType" minOccurs="0"/> 973 <xs:element name="dgDataCurator" type="dgRoleType"/> 974 <xs:element name="dgDataOtherRoles" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/> 975 </xs:sequence> 976 </xs:complexType> 977 </xs:element> 978 <xs:element name="RelatedDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 979 <xs:element name="dgRelatedDataEntity" minOccurs="0" maxOccurs="unbounded"> 980 <xs:annotation> 981 <xs:documentation>Relations other than Input...</xs:documentation> 982 </xs:annotation> 983 <xs:complexType> 984 <xs:sequence> 985 <xs:element name="RelatedDataGranuleID" type="dgMetadataIDType"/> 986 <xs:element name="RelationID" type="dgStructuredKeywordType"/> 987 </xs:sequence> 988 </xs:complexType> 989 </xs:element> 990 </xs:sequence> 991 </xs:complexType> 992 </xs:element> 993 <xs:element name="dgDataProductionTool"> 994 <xs:annotation> 995 <xs:documentation>Needs a link to a "Capabilities" list. OGC capabilities is the place to start? Note that knowledge of the instrument or model used can influence the intepretation of the data produced.</xs:documentation> 996 </xs:annotation> 997 <xs:complexType> 998 <xs:sequence> 999 <xs:element name="contactDetails" type="dgContactDetailType"/> 1000 <xs:choice> 1001 <xs:element name="dgModel"> 1002 <xs:complexType/> 1003 </xs:element> 1004 <xs:element name="dgInstrument"> 1005 <xs:annotation> 1006 <xs:documentation>This is a "starter set" and will change radically and often as the domain specialists conrtibute.</xs:documentation> 1007 </xs:annotation> 1008 <xs:complexType> 1009 <xs:sequence> 1010 <xs:element name="dgInstrumentComponentID" type="dgMetadataIDType" minOccurs="0" maxOccurs="unbounded"> 1011 <xs:annotation> 1012 <xs:documentation>References to significant sub-parts of an instrument</xs:documentation> 1013 </xs:annotation> 1014 </xs:element> 1015 <xs:choice> 1016 <xs:element name="dgObserver"> 1017 <xs:complexType> 1018 <xs:choice> 1019 <xs:element ref="dgOrganisation"/> 1020 <xs:element ref="dgPerson"/> 1021 </xs:choice> 1022 </xs:complexType> 1023 </xs:element> 1024 <xs:element name="dgLidar" type="xs:anySimpleType"/> 1025 <xs:element name="dgRadar" type="xs:anySimpleType"/> 1026 <xs:element name="dgSonde" type="xs:anySimpleType"/> 1027 <xs:element name="dgNavigation" type="xs:anySimpleType"/> 1028 <xs:element name="dgGasChromatograph" type="xs:anySimpleType"/> 1029 <xs:element name="dgSpectrometer" type="xs:anySimpleType"/> 1030 <xs:element name="dgMassSpectrometer" type="xs:anySimpleType"/> 1031 <xs:element name="dgMetSensor" type="xs:anySimpleType"/> 1032 <xs:element name="dgDOAS" type="xs:anySimpleType"/> 1033 <xs:element name="dgASOZ" type="xs:anySimpleType"/> 1034 <xs:element name="dgRadiometer" type="xs:anySimpleType"/> 1035 <xs:element name="dgFAGE" type="xs:anySimpleType"/> 1036 <xs:element name="dgImager" type="xs:anySimpleType"/> 1037 <xs:element name="dgFilter" type="xs:anySimpleType"/> 1038 <xs:element name="dgParticleCounter" type="xs:anySimpleType"/> 1039 <xs:element name="dgSampler" type="xs:anySimpleType"/> 1040 <xs:element name="dgOtherInstrumentType" type="xs:anySimpleType"/> 1041 </xs:choice> 1042 </xs:sequence> 1043 </xs:complexType> 1044 </xs:element> 1045 </xs:choice> 1046 <xs:element name="dgDPTRoles" minOccurs="0"> 1047 <xs:annotation> 1048 <xs:documentation>DPT = Data Production Tool</xs:documentation> 1049 </xs:annotation> 1050 <xs:complexType> 1051 <xs:complexContent> 1052 <xs:extension base="dgRoleType"> 1053 <xs:sequence> 1054 <xs:element name="dgDPTOperationTeam"> 1055 <xs:annotation> 1056 <xs:documentation>OK, this is another placeholder and an example of the kind of role hierarchies that exist.</xs:documentation> 1057 </xs:annotation> 1058 </xs:element> 1059 <xs:element name="dgDPTOtherRoles" type="dgRoleType" minOccurs="0"/> 1060 </xs:sequence> 1061 </xs:extension> 1062 </xs:complexContent> 1063 </xs:complexType> 1064 </xs:element> 1065 <xs:element name="DPTDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 1066 </xs:sequence> 1067 </xs:complexType> 1068 </xs:element> 1069 <xs:element name="dgObservationStation"> 1070 <xs:annotation> 1071 <xs:documentation>IDC, may want to add info about the type and number of instruments that can be deployed... Also, really don't like the name "ObservationStation...</xs:documentation> 1072 </xs:annotation> 1073 <xs:complexType> 1074 <xs:sequence> 1075 <xs:element name="contactDetails" type="dgContactDetailType"/> 1076 <xs:choice> 1077 <xs:element name="dgStationaryPlatform"> 1078 <xs:complexType> 1079 <xs:sequence> 1080 <xs:element name="position"> 1081 <xs:complexType> 1082 <xs:sequence> 1083 <xs:element name="positionLatitude" type="xs:decimal"> 1084 <xs:annotation> 1085 <xs:documentation>North is positive ;-)</xs:documentation> 1086 </xs:annotation> 1087 </xs:element> 1088 <xs:element name="positionLongitude" type="xs:decimal"> 1089 <xs:annotation> 1090 <xs:documentation>East is positive</xs:documentation> 1091 </xs:annotation> 1092 </xs:element> 1093 </xs:sequence> 1094 </xs:complexType> 1095 </xs:element> 1096 <xs:choice> 1097 <xs:element name="dgLandStation"/> 1098 <xs:element name="dgMooring"> 1099 <xs:complexType> 1100 <xs:sequence> 1101 <xs:element name="dateStart" type="xs:date"/> 1102 <xs:element name="dateEnd" type="xs:date"/> 1103 <xs:element name="deployingCruise" type="dgMetadataIDType"> 1104 <xs:annotation> 1105 <xs:documentation>Pointer to cruise that deployed the platform</xs:documentation> 1106 </xs:annotation> 1107 </xs:element> 1108 <xs:element name="dgStationGrouping" type="dgMetadataIDType" minOccurs="0"> 1109 <xs:annotation> 1110 <xs:documentation>Pointer to the OS of type dgStationGroup at which the mooring was deployed, if any.</xs:documentation> 1111 </xs:annotation> 1112 </xs:element> 1113 </xs:sequence> 1114 </xs:complexType> 1115 </xs:element> 1116 <xs:element name="dgStationGroup"> 1117 <xs:annotation> 1118 <xs:documentation>The solution to the Great Station Controvesy! This is a known and defined location at which temporary observation stations, such as moorings, can be located. Note that current thinking is that it can't have data of its own. The apparently redundant grouping is to allow the dgStationGroup to have other elements attached in the future</xs:documentation> 1119 </xs:annotation> 1120 <xs:complexType> 1121 <xs:sequence> 1122 <xs:element name="dgGroupedStations" minOccurs="0"> 1123 <xs:complexType> 1124 <xs:sequence> 1125 <xs:element name="dgGroupedStation" type="dgMetadataIDType" maxOccurs="unbounded"> 1126 <xs:annotation> 1127 <xs:documentation>Pointer to mooring or similar at this location.</xs:documentation> 1128 </xs:annotation> 1129 </xs:element> 1130 </xs:sequence> 1131 </xs:complexType> 1132 </xs:element> 1133 </xs:sequence> 1134 </xs:complexType> 1135 </xs:element> 1136 </xs:choice> 1137 </xs:sequence> 1138 </xs:complexType> 1139 </xs:element> 1140 <xs:element name="dgMovingPlatform"> 1141 <xs:annotation> 1142 <xs:documentation>Used to contain "trajectory", this has been replaced by the "Coverage" element of a deployment. However, adding a "history" element may well be useful, to include trips not linked to data etc.</xs:documentation> 1143 </xs:annotation> 1144 <xs:complexType> 1145 <xs:sequence> 1146 <xs:choice> 1147 <xs:element name="dgShip"> 1148 <xs:complexType> 1149 <xs:sequence> 1150 <xs:element name="callSign" type="xs:string" minOccurs="0"/> 1151 <xs:element name="operatingCountry" type="xs:string"> 1152 <xs:annotation> 1153 <xs:documentation>Contents ISO 3166-1 and 3166-3, using 2 character code as key</xs:documentation> 1154 </xs:annotation> 1155 </xs:element> 1156 <xs:element name="vesselType" type="xs:string"> 1157 <xs:annotation> 1158 <xs:documentation>Values from WMO vocabulary at http://www.wmo.int/web/www/ois/pub47/pub47-home.htm</xs:documentation> 1159 </xs:annotation> 1160 </xs:element> 1161 </xs:sequence> 1162 </xs:complexType> 1163 </xs:element> 1164 <xs:element name="dgAircraft"/> 1165 <xs:element name="dgSatellite"/> 1166 </xs:choice> 1167 </xs:sequence> 1168 </xs:complexType> 1169 </xs:element> 1170 </xs:choice> 1171 <xs:element name="ObsStationDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/> 1172 </xs:sequence> 1173 </xs:complexType> 1174 </xs:element> 1175 </xs:choice> 1176 <xs:element ref="dgStructuredKeyword" maxOccurs="unbounded"/> 1177 <xs:element name="dgMetadataProvenance" minOccurs="0"> 1178 <xs:complexType> 1179 <xs:sequence> 1180 <xs:element name="RecordCreation"> 1181 <xs:complexType> 1182 <xs:sequence> 1183 <xs:element name="CreatedDate" type="xs:date"/> 1184 <xs:element name="CreatedBy" type="xs:string"/> 1185 </xs:sequence> 1186 </xs:complexType> 1187 </xs:element> 1188 <xs:element name="RecordUpdate" minOccurs="0" maxOccurs="unbounded"> 1189 <xs:complexType> 1190 <xs:sequence> 1191 <xs:element name="UpdateDate" type="xs:date"/> 1192 <xs:element name="UpdatedBy" type="xs:string"/> 1193 <xs:element name="UpdateSummary" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 1194 </xs:sequence> 1195 </xs:complexType> 1196 </xs:element> 1197 <xs:element name="RecordReview" minOccurs="0"> 1198 <xs:complexType> 1199 <xs:sequence> 1200 <xs:element name="ReviewDate" type="xs:date"/> 1201 <xs:element name="ReviewContact" type="xs:string" minOccurs="0"/> 1202 </xs:sequence> 1203 </xs:complexType> 1204 </xs:element> 1205 </xs:sequence> 1206 </xs:complexType> 1207 </xs:element> 1208 <xs:element name="dgMetadataSecurity" minOccurs="0"> 1209 <xs:annotation> 1210 <xs:documentation>Indicates security applied, if any, to the metadata record itself</xs:documentation> 1211 </xs:annotation> 1212 <xs:complexType> 1213 <xs:sequence> 1214 <xs:element name="dgSecurityCondition" type="dgSecurityConditionType" maxOccurs="unbounded"/> 1215 </xs:sequence> 1216 </xs:complexType> 1217 </xs:element> 1218 </xs:sequence> 1219 </xs:complexType> 1214 1220 </xs:schema>
Note: See TracChangeset
for help on using the changeset viewer.