Manipulación de metadatos¶
Hay dos formas posibles de manipular metadatos adicionales en el geonodo:
a través del Editor de metadatos (asistente y avanzado)
a través de API de descanso
Editor de metadatos (asistente/avanzado):¶
La sección de metadatos se coloca debajo de la sección METADATOS OPCIONALES disponible para todos los recursos de GeoNode.
Los metadatos deben seguir dos reglas específicas para guardarse en el recurso:
Siempre debe ser una lista de JSON.Esto permite agregar más de un metadato para cada recurso.
El JSON debe seguir el esquema definido en settings.py para el recurso seleccionado.
Por ejemplo, para mi recurso de documentos, puedo tener algo como lo siguiente:
Menú del asistente de edición avanzada¶
Después de presionar el botón guardar, el sistema realizará las siguientes comprobaciones:
Compruebe si el texto proporcionado es un JSON válido.En caso de entrada de formato incorrecto, se muestra el siguiente error:
error JSON no válido¶
Compruebe si se proporciona el esquema de metadatos para el recurso; de lo contrario, se generará el siguiente error
falta error de esquema¶
Compruebe si el esquema de metadatos es coherente con el esquema definido en la configuración.En caso de entrada de formato incorrecto, el error imprimirá las claves JSON que faltan
error de esquema no válido¶
Filtrado de facetas¶
Automáticamente, la interfaz web creará dinámicamente las facetas si hay al menos 1 metadato definido para el recurso.
Supongamos que un recurso tiene los siguientes metadatos:
[
{
"field_name": "bike",
"field_label": "KTM",
"field_value": "ktm",
"filter_header": "Sports Parameters"
},
{
"field_name": "mountain",
"field_label": "Monte bianco",
"field_value": "monte_bianco",
"filter_header": "Italian Mountains"
}
]
De forma predeterminada, GeoNode convertirá esta información de metadatos en facetas disponibles para el recurso.
La faceta convertirá: - filter_header: usado como filtro de encabezado - field_value: usado para realizar la búsqueda - field_name: usado para calcular los valores únicos (junto con field_value)
Después de dicho eso, la faceta será la siguiente: