GetCapabilities: Respuesta
Descripción extendida de la respuesta a una operación GetCapabilities:
A) Títulos vs Nombres: Algunos elementos contienen tanto <Title> como <Name>.
Habitualmente, el nombre es una palabra simple usada en la comunicación máquina-
máquina mientras que el título es para provecho humano.
B) Metadatos de servicios generales <Service>: La primera parte del XML de
“Capabilities” contiene el elemento <Service>, que proporciona metadatos generales
para el servicio, como un todo. Debe incluir el nombre, título, URL del recurso en línea.
Opcionalmente, pueden proporcionar un resumen, una de lista de palabras claves,
información de contacto, el precio y restricciones de acceso. El significado de la
mayoría de esos elementos está definido en ISO 19115.
Los elementos de que consta el elemento <Service> son:
<Name> El nombre de servicio.
<Title> El título del servicio es a elección del proveedor, y debería ser
breve aunque suficientemente descriptivo para identificar este
servicio.
<Abstract> Permite una narración descriptiva que proporciona más
información sobre el objeto descrito.
<OnlineResource> Dentro del elemento servicio puede ser utilizado, por ejemplo,
para apuntar al sitio Web del proveedor del servicio. Hay otros
elementos <OnlineResource> utilizados por el prefijo de la URL
de cada operación soportada.
<KeywordList> Una lista de claves o frases claves que debería incluirse para
ayudar a la búsqueda en el catálogo. Actualmente, no se ha
definido un vocabulario controlado.
<ContactInformation> Se especifica la información de contacto.
<Fees> La palabra reservada “none” debe usarse si no hay tarifa o
restricciones de acceso, como sigue: <Fees>none</Fees>.
<AccessConstraints> Si no hay restricciones se utiliza:
<AccessConstraints>none</AccessConstraints>.
No se ha definido una sintaxis precisa para los elementos
implicados, cuando se imponen restricciones.
C) Metadatos de capacidad <Capabilities>: Dentro del elemento se definen las
operaciones que son soportadas por la instancia de servicio.
<Request> Describe las operaciones del WMS (GetCapabilities, GetMap,
GetFeatureInfo), el formato de salida ofrecido por esas operaciones, y el
prefijo URL de cada operación. También pueden incluirse operaciones de
proveedor específicos que no están definidos en la petición. Un WMS SLD
(Styled Layer Descriptor) incluirá también un elemento
<UserDefinedSymbolization> y URL para una solicitud HTTP POST.
<Exception> Cuando se produce un error, este se indica con una “Exception”. Por
ejemplo, un servidor lanza una excepción (code=“LayerNotDefined”) si se
solicita una capa no válida.
<Layer Dentro de este elemento, se definen las “Capas y los Estilos”. Es la parte
queryable> más crítica del XML de “Capabilities” del WMS. Cada mapa u ortofoto se
define con un elemento <Layer>. Un Layer padre puede contener un
1
IGN & UPM-LatinGEO (Spain)
Esta obra está bajo una Licencia de Creative Commons.
GetCapabilities: Respuesta
número indeterminado de capas. Algunas propiedades definidas en una
capa padre son heredadas por sus capas hijas. Estas propiedades
heredadas pueden ser redefinidas o añadidas por las hijas. Un servidor de
mapas debe incluir al menos un elemento <Layer> por cada capa de mapa
ofrecida. Si se desea, las capas pueden ser repetidas en diferentes
categorías cuando sean relevantes.
No se ha definido ningún vocabulario controlado, así que actualmente los
nombres de capas y estilos, títulos y claves son arbitrarios.
Propiedades de las Capas
El elemento <Layer> puede contener elementos hijos que proporcionan
información sobre la capa. Los valores de algunos de esos elementos son
heredados.
<Title>
El Título es obligatorio para todas las capas; identificará el mapa en el
visualizador. El título no es heredado por las capas hijas.
<Name>
Sí, y solo sí, una capa tiene un <Name>, entonces es una capa de mapa
que puede solicitarse usando ese nombre en el parámetro LAYERS de una
solicitud GetMap. Si la capa tiene título pero no nombre, entonces esa
capa es sólo un título clasificatorio para todas las capas anidadas dentro.
Un servidor de mapas que publica una capa que contiene un elemento
Nombre debe ser capaz de aceptar ese nombre como valor del argumento
LAYERS en una petición GetMap y devolver el mapa correspondiente. Un
cliente no debe intentar solicitar una capa que tiene título pero no nombre.
El nombre no se hereda por los hijos.
<Abstract> y <KeywordList>
Se recomienda el uso de estos elementos. El elemento <Abtract> es una
descripción de la capa del mapa y la lista de palabras claves contiene cero
o más palabras claves para ayudar a las búsquedas por catálogo. Estos
elementos no se heredan por las capas hijas.
<Style>
Pueden definirse algunos estilos para una capa o colección de capas
utilizando este elemento, cada uno de los cuales deben tener los
elementos <Name> y <Title>. El Nombre del estilo se usa en el parámetro
STYLES de la solicitud de mapas. Si sólo hay un estilo disponible, ese
estilo se reconoce como el estilo por defecto y el servidor no necesita
definirlo. Las declaraciones de estilos son heredadas por las capas hijas.
Un hijo no debe definir un estilo con el mismo nombre que otro heredado
de su padre. Un hijo puede definir un nuevo estilo con un nuevo nombre si
éste no está disponible en la capa padre.
<LegendURL>
Contiene la localización de la imagen de la leyenda de mapa apropiada al
estilo donde está contenida. Un elemento <Format> en LegendURL indica
el tipo MIME del icono, y los atributos “height” y “width” indican el tamaño
de la imagen en píxeles.
<SRS>
Cada capa debe tener al menos un elemento <SRS> declarado
explícitamente o heredado de su capa padre. El elemento raíz <Layer>
debe incluir una secuencia de cero o más elementos SRS que liste todos
2
IGN & UPM-LatinGEO (Spain)
Esta obra está bajo una Licencia de Creative Commons.
GetCapabilities: Respuesta
los SRS que son comunes a todas las capas subsidiarias. Las capas
pueden opcionalmente añadir más a la lista global de SRS, o a la lista
heredada desde la capa padre. Cualquier duplicación debe ser ignorada
por los clientes. Para definir los SRS se utilizan los códigos EPSG,
[Link].
<LatLonBoundingBox>
Este elemento debe estar definido para cada capa, ya sea explícitamente o
heredado de la capa padre. Índica el rectángulo límite de los datos de
mapa en el Sistema de Coordenadas Geográficas, EPSG:4326. Contiene
los atributos minx, miny, maxx y maxy que indican el borde de un
rectángulo envolvente, en grados decimales. Su propósito es facilitar las
búsquedas geográficas sin requerir transformaciones geográficas para
dicho proceso.
<BoundingBox>
Las capas pueden tener cero o más elementos <BoundingBox> que son
indicados explícitamente o heredados de la capa padre. Indica el
rectángulo límite de los datos de mapa en un Sistema de Referencia
Espacial; el atributo SRS indica el SRS que se aplica. Los atributos minx,
miny, maxx, maxy indican los valores del bounding box especificados en el
SRS correspondiente. Los atributos opcionales resx y resy indican la
resolución espacial de los datos en las mismas unidades.
Una capa puede tener múltiples elementos BoundingBox, pero cada uno
de ellos debe indicar un SRS diferente. La capa hereda los valores
BoundingBox definidos por sus padres. El BoundingBox heredado de la
capa padre para un SRS dado es reemplazado por una declaración de la
misma en la capa hija. Un elemento de capa simple no puede contener
más de un BoundingBox para el mismo SRS.
NOTA: <LatLonBoundingBox> es efectivamente a <BoundingBox> donde
el atributo SRS=”EPSG:4326” está implícito. Además
<LatLonBoundingBox> no incluye los atributos resx y resy.
<ScaleHint>
Indica las escalas máxima y mínima para las que es apropiado mostrar una
determinada capa. Es un rango de escalas recomendado. ScaleHint es
heredado por las capas hijas. Una declaración ScaleHint en el hijo
reemplaza la declaración heredada desde el padre.
<Dimension> y Extent>
Los elementos opcionales <Dimension> y <Extent> encierran metadatos
para datos multidimensionales. Las declaraciones de Dimensión y
Extensión son heredades de las capas padres. Una nueva declaración en
el hijo, en el caso de la Dimensión es añadida a la lista heredada desde el
padre y en el caso de la Extensión reemplaza el valor declarado por el
padre.
<MetadataURL>
Un servidor de mapas debería usar uno o más elementos <MetadataURL>
para proporcionar metadatos detallados y estandarizados sobre los datos.
El atributo “type” indica el estándar del metadato:
- ISO 19115 de ISO/TC 211
- FGDC-STD-001-1988 de FGDC
El elemento <Format> indica el tipo MIME de formato de fichero del
3
IGN & UPM-LatinGEO (Spain)
Esta obra está bajo una Licencia de Creative Commons.
GetCapabilities: Respuesta
registro de metadatos. Los elementos MetadatoURL no son heredados por
las capas hijas.
<Attribution>
Proporciona una manera de identificar la fuente de los datos del mapa
usados en una capa o colección de capas. Contiene los siguientes
elementos opcionales:
- <OnlineResource> indica la URL del proveedor de datos.
- <Title> cadena legible que nombra el proveedor de datos
- <LogoURL> es la URL de un icono. Incluye un elemento <Format>
con el formato de la imagen del LogoURL y <width> y <height> que
indican el tamaño de la imagen en píxeles.
El elemento Attribution es heredado por las capas hijas, del padre.
Cualquier redefinición de un hijo reemplaza el valor heredado.
<Identifier> y <AuthorityURL>
Se pueden definir cero o más elementos <Identifier> como listas de
números de ID o etiquetas definidas para una Autoridad dada. El atributo
“authority” del elemento Identifier corresponde al atributo “name” de un
elemento <AuthorityURL> aislado. AuthorityURL incluye un elemento
<OnlineResource> que indica la URL de un documento donde están
definidos los valores del elemento <Identifier>.
Atributos de las capas
Un <Layer> puede tener cero o más de los siguientes atributos: queryable
(interrogable), cascaded (retransmitida en cascada), opaque (opaco), noSubsets
(divisible), fixedWidth (ancho fijo), fixedHeight (altura fija). Todos estos atributos son
opcionales y por defecto es igual a 0. Cada uno de estos atributos puede ser heredado
o reemplazado por las capas subsidiarias. En la siguiente tabla se resume el significado
de cada atributo:
Atributo Valores Definición (el valor por defecto es igual a 0)
permitidos
queryable 0, 1 0: no interrogable; 1: interrogable
cascaded 0, entero 0: la capa no ha sido retransmitida mediante un Cascading
positivo Map Server; n: la capa ha sido retransmitida n veces
opaque 0, 1 0: los datos del mapa representan entidades que
probablemente no rellenan el espacio completamente; 1: los
datos del mapa son completamente opacos
noSubsets 0, 1 0: El WMS puede representar una parte del mapa; 1: El WMS
solo puede representa un bounding box completamente.
fixedWidth 0, entero 0: EL WMS puede reajustar la anchura del mapa
positivo arbitrariamente;
Nocero: El mapa tiene un ancho fijo que no puede ser
cambiado.
fixedHeight 0, entero 0: El WMS puede reajustar la altura del mapa arbitrariamente;
positivo Nocero: El mapa tiene una altura fija que no puede ser
cambiada.
4
IGN & UPM-LatinGEO (Spain)
Esta obra está bajo una Licencia de Creative Commons.