All Downloads are FREE. Search and download functionalities are using the official Maven repository.

bp-ogc.12-032r2.wami.xsd.wami_1_0_2.xsd Maven / Gradle / Ivy




	
	

	
	
	
	

	
	
	

	
	

	
	
	

	
	

	
	
	

	
	

	
	

	
	

	
	
	

	

	
	


	
	
	


	
		
			
				SPACE-separated List of dotted versions
			
		
		
	

	
		
			
				SPACE-separated List of strings (that don't contain spaces)
			
		
		
	

	
		
			
				SPACE-separated List of ISO 639-1 spoken language codes
			
		
		
	

	
		
			
				Pairs of 2D points
			
		
		
	

	
		
			
				Enumeration of allowable named values of commands for how to return exceptions
			
		
		
			
				
					
						Ignores the MIME type set in the Format parameter and returns exceptions
						in XML format. At least
						XML shall be supported.

						Example: A GetMap request in the Image Service request may set
						Format=image/jpeg but if
						Exceptions=XML, then in case of an exception the server implementation shall
						return a response
						content type of text/xml.

					
				
			
			
				
					
						Applicable only if MIME type of the Format parameter is of type
						image/[something]. It means if
						the request generates an exception, return the response as an image
						with the exception string
						embedded in the image.

						Example: If, in a GetMap request from an Image Service, Format=image/jpeg
						and Exceptions=IMAGE,
						then in case of an exception the server implementation shall return a
						response content type of
						image/jpeg that has the exception message string embedded in the image. The
						rendering of the
						text is governed by the server implementation or the specification.

						Warning: If MIME type of the response is text and
						Exceptions=IMAGE, this is not permitted. In
						this case, the server shall ignore the parameter and assume the
						default.
					
				
			
			
				
					
						In case of an exception just return the appropriate response header
						with no body.
					
				
			
			
				
					
						Same as XML, except this may be some other standard format. Shall be
						extensively document by the
						server implementation.
					
				
			
		
	

	
		
			
				Constrained Enumeration of request values for Depth in GetCollectionCount
			
		
		
			
			
		
	
	
		
			
				Constrained Enumeration of request values for Depth in GetCollections
			
		
		
			
			
			
		
	
	
		
			
				Constrained Enumeration of request values for ImageService calls which require
				mime-multipart responses.
			
		
		
			
			
			
		
	
	
		
			
				Usually references the definition of a CRS, as
				specified in [OGC Topic 2]. Such a CRS definition can be XML encoded
				using the gml:CoordinateReferenceSystemType in [GML 3.1]. For well
				known references, it is not required that a CRS definition exist at
				the location the URI points to.

				May also simply be EPSG:\d\d\d\d
			
		
		
		
	

	
		
			
				A generic way of specifying Duration in floating-point seconds.
				Namely 1/2 second is "0.5".. 50 seconds is "50.0".
				This allows you to specify arbitrary precision. The only thing it
				prevents is
				precise date-intervals that are not linearly proportional to a second (such
				as the number of seconds
				in a month or a year).
			
		
		
	

	
	
	


	
		
			
				A slight modification / simplification of ows:DCP / ows:HTTP such
				that simplifies
				alternate encoding methods such as JSON.
				This allows a given URL to be either get or post or both.
				Note ows:Constraint elements can optionally be applied and thereby
				linked.

				The Service Document (Capabilities) still uses DCP since that MUST be
				encoded in XML.
			
		
		
			
				
				
			
		
	

	
		
			
				This type contains a 1-to-many "Request" links that represent equally
				valid http service calls.
				The links should NOT contain any query-string parameters, but they may
				contain embedded URL stateful
				information.
			
		
		
			
		
	

	
		
			
				A named collection of web-service URLs (and whether they are
				post/get)
			
		
		
			
				
			
		
	


	
		
			
				This is the basic Collection-Service Node type, common to both
				intermediate Nodes, and leaf-nodes which contain
				collection-specific information.
			
		
		
			
				
					
						Description of the Collection Service Node / Collection itself
					
				
			

			
				
					
						One or more Image or Video Service URLs. Absent in inner and root
						nodes. This base URL is used to construct a GetCapabilities,
						GetMap, etc request.
					
				
			

			
				
					
						Structured metadata about this node.
					
				
			

			
				
					
						The outer or sub-node which contains an NID, URL(s) to serve it up
						from the Collection-Service, and in the case of collection-Nodes,
						URLs to service up the actual collection data (i.e. IS, VS, VCSS).
						Absent in leaf nodes.
					
				
			
		

		
		
			
				
					It is recommended to add ID references because it makes it easier for
					clients to search and
					discover with XPATH.
				
			
		
		
			
				
					A human readable name of this node
				
			
		
		
			
				
					NID of the parent node and a URL to serve it up. A root node does not
					have this member.
				
			
		
		
			
				
					Node Id – this is guaranteed to be unique within a collection-service.
					It SHOULD be globally unique (if a UUID is utilized) so that
					collection services can be aggregated together.
				
			
		
		
			
				
					Collection ID – this SHOULD be unique within a Collection Service. It may or
					may not be the same value as NID. This is the value that will be
					passed to IS, VS, VCSS operations as the C ID parameter. It may be
					a UUID.
				
			
		
		
			
				
					This may only be supported by a Node or by a Collection (represented by a node), by both, or neither. It is vendor specific because it represents the ability of
					the WAMI collection service to detect changes of different categories.

					If a Node supports updateSequence, then it should increase every time an add/remove/move of a child (or decendent) node occurs.
					Note this does NOT reflect changes to individual leaf-collections, only the existance / placement of said collection.

					If a Collection (represented here as a Node) supports updateSequence, then it should increase every time the metadata for a collection changes.
				
			
		
	


	
		
			
				Base of most HTTP response documents
			
		
		
	


	
		
			
				HTTP response documents mostly all contain a version (of the XSD) and
				the language of any human-readible
				text is translated (encoded as UTF-8).
			
		
		
			
				
					ISO 639-1 Language code of the response document text.
				
			
		
		
			
				
					Version of WAMI schema.
				
			
		
	


	
		
			
				A simple NVP where name is an attribute and value is the XML string
				body
			
		
		
			
				
			
		
	

	
		
			
				This is a base type that allows generalized vendor specific key-value
				pairs.
			
		
		
			
		
		
	

	
		
			
				The BoundingBox attributes indicate the limits of the bounding box
				in units of the specified coordinate reference system, and the
				resolution (or GSD) of each dimension.

				This is simplified/specialized for image viewers that may or may not
				need/understand significant detail
				geometric detail.
			
		
		
		
		
		
		
		
			
				
					The unit conversion for units in the x-dimension. If long/lat, then
					the number of pixels per degree.
					For meter based units, then the number of pixels per meter.
				
			
		
		
			
				
					Same as resx but in y-dimension
				
			
		
	
	
		
			
				This is a 1-to-many collection of BoundingBoxes with associated CRS's,
				as used in the Metadata section
			
		
		
			
		
		
			
				
					This is useful if more than one bounding box is specified, and thus
					lists multiple CRS's.
					Generally it is most efficient to make requests in the native CRC.
				
			
		
	

	
		
			
				This is a Metadata section which contains aggregate collection-wide
				information.
				Frame-based and TOA-based ranges are described, along with [average] temporal
				intervals and
				[max] temporal Jitter.
			
		
		
		
		
			
				
					The collection identifier of the the collection
				
			
		
		
			
				
					The frame-number of the first frame in the collection (typically 0 or
					1)
				
			
		
		
			
				
					The frame-number of the last frame in the collection.
				
			
		
		
			
				
					Simple count of the number of frames in the collection.
				
			
		


		
			
				
					The TOA of the first frame in the collection
				
			
		
		
			
				
					The TOA of the last frame in the collection
				
			
		
		
			
				
					Number of floating point seconds in the video, as defined by EndTime -
					StartTime.
				
			
		
		
			
				
					Number of floating point seconds between any given pair of frames.
					Trivial implementation may simply
					calculate this as timeSpan/frameCount. But it may utilize the sensor
					capture-rate which may or
					may not account for dropped frames.
				
			
		
		
			
				
					Number of floating point seconds that represents deviation from the
					normalized frameInterval.
					If specified, this can be used to define an expected
					tolerance/deviation from TOA_x to TOA_x+1
				
			
		
		
			
				
					If present and "true", then the collection is considered actively updating (or live).  Clients should assume the contents
					could change at any moment. This allows clients to decide which collections to actively poll.
				
			
		
	

	
		
			
				A per frame (or consistent per collection) affine transform
			
		
		
		

		
		

		
		

		
		
	


	
		
			
				
			
		
	

	
		
			
				In a IS_GetMapInfo, this is the individual image file info.
				In a CS_Collections node, this is file info about the whole collection
				of files if that is
				available/relevant.
				It should NOT refer to individual frame imagry.
			
		
		
			
			
				
					
						Well Known Text
					
				
			
			
		
		
		
		
		

		
		
		
			
				
					for example, image/nitf, image/jp2, image/jpeg, etc
				
			
		
		
		
		
			
				
					for example, signed, unsigned, floatingpoint
				
			
		
	

	
		
			
				
					This allows 3rd parties to link in their own XSD's to define any
					arbitrary complex metadata
					(e.g. non simple name-value pairs) through the use of XSD substitution
					groups.
					Ideally, each item has it's own named section, so as to minimize
					integration complexity
					(vendors only need to interpret custom XML elements that are needed for
					communication as opposed
					to validating an entire custom metadata sub-tree)
				
			
			
				
			
			
		
	

	
		
			
				We utilize multiple sections so that a query can specify a specific
				section header, or 'All'.
				It also allows substitution groups to replace a section element.
				Note ExtraMetadataSection SHOULD be grouped according to a metadata
				type.. For example
				geotiff and jp2 would be the name of sections containing key-value pairs
				associated with geotiff and jp2
				respectively.
			
		
		
			
			
			
				
					
						Time Of Acquisition for the associated Image/Video.
						It is listed as it's own section header so that the request
						parameter "sections=TOA" can be used
						to exclusively acquire a list of TOAs of a given collection.
					
				
			
			
				
					
						Relative Frame Number of an image within a Collection (both for IS, VS and
						VCSS).
						This is useful if you wish to make a sequence of ordered requests,
						where the TOA might otherwise
						have had too much jitter.
					
				
			
			
			
			
		
	


	
		
			
				This type is generated with mime-multipart documents, and serves as the
				root element
			
		
		
			
				
					
						
							
								GetMap will return a sequence of Reference/imageReference elements
								which
								refer to the mime-multipart attachments.
							
						
					

					
						
							
								If GetMap requests Metadata, then in addition to the
								imageReference links above,
								a sequence of Reference/imageReference , metadataReference pairs
								will be
								generated.
							
						
					
				
			
		
	

	
		
			
				
					This is the top-level WAMI service name.. There are a fixed number of
					possible values.
					Any addition of such services would likely require non-trivial
					extensions to this XSD and thus
					merrit a new version.
				
			
		
		
			
				
					The sub-request of the named service. Each Request/Response document
					will be correlated to
					a specific required value here.. Unfortunately, XSD doesn't allow
					overriding of this value as a
					fixed parameter, so XSD is unable to validate this.
				
			
		
		
			
				
					How should Exceptions be returned. Generally this will be
					application/xml as an ows:ExceptionReport
					But it could also be a JSON form. When acquiring imagry, the client
					may wish the exception be
					displayed as an image with embedded text - so that the viewer can determine
					there is a problem.
				
			
		

		
			
				
					SPACE-separated list of languages desired by the client for all human readable
					text in the
					response, in order of preference.
					For every element, the first matching language available from the
					server shall be present
					in the response. When not supported by server, return human readable
					text in a language of
					the server’s choice. Shall be implemented by multi-lingual servers and
					clients.
				
			
		
	

	
		
			
				
					
						
							WAMI allows multiple simultaneously running versions instances of a
							given service + request.
							This allows backward compatibility by having completely isolated
							XSDs, with the starting
							point
							being the URL (as specified in the GetCapabilities Request), and a
							version-number (specified
							here). In most cases, the URL for different versions of WAMI will be
							isolated, but this
							allows
							A) validation that a client does not accidentally hit the wrong URL
							with an expected Schema
							B) The possibility that a common back-end can parse multiple
							grammer versions.
						
					
				
				
					
						
							Any given Service Request may support multiple response formats /
							underlying content types.
							This field allows selection of say 'image/jpg' v.s. 'image/png'. Or
							'application/xml' v.s.
							'application/x-json'. ETC. A corresponding 'GetCapabilties' response document will
							outline
							the supported values for format for EACH service-request.
						
					
				
			
		
	

	
		
			
				
					
					
					
					
				
			
			
		
	
	
	
		
			
				
					
					
					
					
				
			
			
				
					
					
					
					
				
			
			
		
	

	
		

		
	

	
		
			
				
					Number of Requested Frames
				
			
		

		
			
				
					Number of floating point seconds of requested duration.
				
			
		
	

	
		
			
				A primitive BoundingBox; generally in pixel-space, where height is
				the y-axis and width is the x-axis.
			
		
		
		
	

	
		
			
				This is a common base class for all IS/VS GetMap style service-requests
			
		
		
			
				
					
						
							
								This allows vendor specific enhancements to the underlying suite of
								pre-defined request
								parameters.
							
						
					
				

				
				
					
						
							SPACE-separated list of section-names in the response Metadata document.
							If ommitted and the response document IS NOT an 'Info'/'Metadata'
							type request, then
							NO metdata SHAL be returned. If the response document IS an
							'Info'/'Metadata' type request,
							then ALL metadata sections SHAL be returned.
							The value 'All' (case sensitive) MAY be specified so as to force all
							known metadata sections
							to be returned, and in the case of natural binary response data
							(e.g. GetMap), the
							Content-Type of the document will be a MIME-MULTIPART containing a linkage
							XML document
							and associated Metadata and binary response bodies.
						
					
				

			
		
	

	
		
			
				Image/Video based GetMap requests require an extra view-port.
			
		
		
			
				
					
						
							
								Image/Video binary requests need to map the requested bounding-box to a
								fixed output viewport.
							
						
					
				
			
		
	

	
		
			
			
				
					
						The time of acquisition (either as frame-number of date-time).
					
				
			
			
				
					
						The time increment - specifying either the frames or seconds between
						this key AOI and the
						next key AOI.
						Thus, this is required for the first several AOI's, but not present for
						the last.
						This should correlate with the 'Time' element with respect to
						Frame-number v.s. date-time.
					
				
			
			
		
	

	
		
			
		
		
		
	

	
		
			
		
	


	
	
	


	
		
			
				This is intended to be used in the GetCapabilities Operation Metadata
				section when Operation method
				POST is supported. It specifies the allowed HTTP-header Content-Type's
				and any associated encoding.
				Note that if this metadata section isn't provided, then it is assumed to
				be
			
		
		
			
				
					
						
							This is associated with Content-Type
							"application/x-www-form-urlencoded".
							The POST data will be a URL-encoded KVP query-string.

							ALL WAMI services should support this encoding content type.
						
					
					

					

				
				
					
						
							This is associated with Content-Type "text/xml". The XML body conform
							to the named schema element as found in this XSD.
						
					
					
						
							
								
									This should be an element name of the form IS_GetMapRequest with no
									colon that is
									expected to be passed in.
								
							
						
					
				
			
		
	


	
	
	


	
		
			
				
				
				
					
						
							SPACE-separated Prioritized sequence of one or more specific versions that the
							client
							accepts, with preferred versions listed first. When omitted, return the
							latest supported
							version. MAY be implemented by clients. SHALL be implemented by servers.
						
					
				
				
					
						
							SPACE-separated list of HTTP response types the client prefers for this
							operation
							Example: "text/xml", "application/json", etc. This is analogous to
							AbstractRequestType
							format
							but, with GetCapabilities, you can't know for sure what the server
							supports yet.
						
					
				
				
					
						
							SPACE-separated un-ordered list of zero or more names of sections of service
							metadata
							document to be returned in service metadata document. May be implemented
							by client and
							server. If not implemented, expect/provide default response.
						
					
				
				
					
						
							Service metadata document version, value is “increased” whenever any
							change is
							made in complete service metadata document. May be implemented by
							client and server.
							If not implemented, expect/provide default response.
						
					
				
			
		
	


	
		
			
				This is based off OWS CapabilitiesBaseType. There was a bug in the spec
				that prevented 1 to many
				languages, so we don't actually extend that class here.
			
		
		
			
			
			
			
				
					IETF RFC 4646 lang code "en-US"

						The list of languages that this service is able to
						fully support. That is, if one of the listed languages is requested
						using the AcceptLanguages parameter in future requests to the
						server, all text strings contained in the response are guaranteed
						to
						be in that language. This list does not necessarily constitute a
						complete list of all languages that may be (at least partially)
						supported by the server. It only states the languages that are
						fully
						supported. If a server cannot guarantee full support of any
						particular language, it shall omit it from the list of supported
						languages in the capabilities document.
					
				
			
		
		
			
				Service metadata document version, having values that
					are "increased" whenever any change is made in service metadata
					document. Values are selected by each server, and are always opaque
					to
					clients. When not supported by server, server shall not return this
					attribute.
				
			
		
		
	


	
		
			
				
					
						
							Name of a help topic. A list of supported help topics shall be made
							available in the
							Capabilities response.
							This parameter shall specify a topic that the client chooses to
							request help on.
							The server shall support sending a valid response to all values it
							lists as allowed
							values to this parameter.
							The default format shall also be specified in the corresponding
							Capabilities response.
						
					
				
			
		
	

	
		
			
				This is returned on GetHelpRequest.. It contains arbitrary text/HTML,
				but also defines some XML
				attributes of the server. Service-Name / version
			
		
		
			
				
				
				
			
		
	


	
		
			
				This is the response to CS_GetCollectionsRequest.
			
		
		
			
				
					
						
							Description of the REQUEST, not the node
							
						
					

					
						
							
								Web service reference which allows a given GetCollections call to
								find it's parent node.
								If this is the root node, this this element isn't present.
							
						
						
							
								
									
										
											Web service reference which allows a given GetCollections call
											to find it's
											parent node.
											If this is the root node, this this element isn't present.
										
									
								
							
							
						
					

					
						
							
								This is the description of the Node referenced by the NID parameter.
							
						
					
				
				
					
						
							If supported, this represents a monotonicly increasing version-number of the entire contents of the collection-tree.
							This is significant because a GetCollections call may only request a subset of collections, thus this allows a client to see that
							changes potentially outside the scope of the request have changed.
						
					
				
			
		
	

	
		
			
				This is the response to CS_GetCollectionCountRequest
			
		
		
			
				
					
				
				
					
						
							The attribute root can be True or False.
							If root=True, it means the collection count information has been
							provided starting from the
							root node.
							If root=False, it means the specified node is either an inner node
							or leaf node.
						
					
				

				
					
						
							How deep this node is in the tree
						
					
				
				
					
						
							The attribute NID is the node ID of the collection node being
							queried.
							Its value is either the value of the NID parameter in the request
							(if it was set explicitly)
							or the node ID of the root node.
						
					
				
				
					
						
							The attribute childNodes holds the number of immediate children
							below this node.
							The value of childNodes shall be an integer ≥ 0.
							If childNodes=0, it means the given node is a leaf node and points
							to a valid collection.
							If childNode has a value ≥ 1, it means the given node is a root
							node or inner node.
						
					
				
				
					
						
							The attribute totalNodes holds the total number of nodes below the
							node specified in NID,
							including the node specified in NID.
							The value of totalNodes shall be an integer > 0.
							If Depth=1 in the request, then totalNodes shall be equal to
							childNodes+1.
						
					
				
				
					
						
							The attribute collections holds the total number of collections
							available below this node.
							The value of collections is an integer ≥ 0.
							If collections=0 and childNodes=0, it means the node specified in
							NID points to a
							collection.
							If collections=0, childNodes>0 in the response and Depth=1 in the
							request,
							it means the node specified in NID has child nodes that may have
							additional nodes under them
							that may have collections under them.
							If collections=0, childNodes>0 in the response and Depth=All in the
							request,
							it means there are no collections under the node specified in NID.
						
					
				
				
					
						
							The attribute edgeDepth holds the total number of edges or links
							from the node specified in
							NID to the deepest leaf in the sub-tree.
							The value of edgeDepth shall be an integer ≥ 0.
							A leaf node i.e. a node that points to a collection has
							edgeDepth=0.
							If Depth=1 in the request, then edgeDepth can be 1 or 0 in the
							response.
						
					
				
			
		
	

	
		
			

			
		
		
			
				
					
						
							
								Bbox specifies a bounding box in the reference system set by CRS. The request 
								filters selected nodes in the tree through this bounding box. The parameter 
								shall be implemented by both client and server. This parameter is optional. 
								The default value is “unbounded” to include all collections. If Bbox is set, 
								CRS shall be set. Setting Bbox without CRS, or setting CRS without Bbox 
								indicates error.
							
						
					
					
						
							
								Specifies one or more time values or time ranges. The request filters 
								selected nodes in the tree through the time values and ranges. The 
								parameter shall be implemented by both client and server. This parameter 
								is optional. The default value is all time. Time is set in ISO 8601:2004 
								format (not as frame numbers).
							
						
					
				
				
				
			
		
	

	
		
			
				
					
						
							
								Bbox specifies a bounding box in the reference system set by CRS. The request 
								filters selected nodes in the tree through this bounding box. The parameter 
								shall be implemented by both client and server. This parameter is optional. 
								The default value is “unbounded” to include all collections. If Bbox is set, 
								CRS shall be set. Setting Bbox without CRS, or setting CRS without Bbox 
								indicates error.
							
						
					
					
						
							
								Specifies one or more time values or time ranges. The request filters 
								selected nodes in the tree through the time values and ranges. The 
								parameter shall be implemented by both client and server. This parameter 
								is optional. The default value is all time. Time is set in ISO 8601:2004 
								format (not as frame numbers).
							
						
					
				
				
				
				
			
		
	

	
		
			
		
	

	
		
			
		
	

	
		
			
				
					
				
			
		
	

	
		
			
				This is returned BOTH in a GetMap request and a GetMapInfo request.
				For GetMap request, it is only returned if the metadata paramter is
				non-empty. It is referenced by
				a mime-multipart IS_Map document.
				Such documents will only ever contain 1 record.

				For GetMapInfo, 1 or more records may have been queried and thus this
				document will contain of all
				such images.
			
		
		
			
				
					
						
							
								The metadata for an individual requested frame.
							
						
					
				
			
		
	

	
		
			
		
	
	
		
			
		
	


	
		
			
				
					
					
				
				
				
				
				
				

			
		
	

	
		
			
				
					
					
				
				
			
		
	


	
		
			
				
					
				
				
				
				
				
			
		
	

	
		
			
				
					
				
			
		
	


	
		
			
				
					
					
				
				
				
				
				

				
			
		

	

	
		
			
				
					
				
				
				
				

				
			
		

	





© 2015 - 2024 Weber Informatics LLC | Privacy Policy