Cree metadatos para múltiples conjuntos de datos simultáneamente en ArcGIS 10

11

Estoy tratando de encontrar una manera de crear metadatos a través de Arc Catalog para múltiples conjuntos de datos simultáneamente. Estoy trabajando dentro de una geodatabase de archivos, que se compone de múltiples clases de entidad y rásteres. Los datos tienen un tema común, por lo que me gustaría crear una plantilla de metadatos para un elemento y luego completar otros conjuntos de datos con la misma información de metadatos. Estoy planeando usar la plantilla de metadatos estándar ISO.

He investigado un poco y parece que hay tres opciones (pero ninguna de ellas ha tenido éxito hasta ahora): - use la herramienta 'Importador de metadatos' dentro de la Caja de herramientas de conversión (sin embargo, podré copiar metadatos uno a uno solo base) - X-tools pro tiene la opción 'Edición de metadatos por lotes' disponible, pero después de configurar los parámetros dentro de ArcMap no puedo ver estos canges a través de Arc Catalog - la tercera opción es agregar 'Importador de lotes' ( http: //edndoc.esri .com / arcobjects / 9.0 / Samples / Metadata / Importers / Batch_Importer / Batch_Importer.htm ). Logré agregarlo a ArcCatalog pero no puedo ejecutarlo (aparece el mensaje de error 'ICommand_OnClick ()).

Estoy trabajando con ArcGIS 10.

Magda
fuente
Traté de hacer los pasos como dijo Oliver y tiene sentido, pero no sé qué hacer con la iso, porque él dijo (el sistema Por supuesto ...) "el conjunto de datos arcgis a iso 19139 no existe o no apoyado "Probé la opción all pero no funciona. Trabajo con arcinfo 10.0 / sp5 súplicas por correo electrónico: [email protected]

Respuestas:

4

Lamento decir que no encontrará una forma rápida de hacerlo a partir del SP2; principalmente porque los metadatos están muy dañados en ArcGIS 10. Realmente no esperaría que el código de muestra que ves funcione correctamente, sospecho que incluso podría dañar los metadatos. Su única opción real será hacerlo manualmente.

Realizamos un importante proyecto de actualización de metadatos en los últimos 2 meses y debido a los problemas en ArcGIS 10 tuvimos que realizarlo manualmente; capa por capa.

Desearía que hubiera mejores noticias para ti; Te deseo suerte.

DEWright
fuente
Gracias por tu respuesta. Afortunadamente, el conjunto de datos en el que estoy trabajando no es demasiado extenso, por lo que puedo hacerlo manualmente en unas pocas horas. Pero la pregunta surge cuando el conjunto de datos es grande. Algo en lo que Esri debe pensar ...
Magda
Entiendo, o qué pasa con la capacidad de establecer ciertas opciones globales para un lote de archivos, digamos actualizaciones a la información de contacto, o sus descargos de responsabilidad. Ese tipo de cosas es algo que ayudaría a tantos usuarios.
DEWright
Creo que lo descifré con algunas modificaciones a las herramientas existentes. Avísame si estás interesado
Oliver Burdekin
@ Magda ¿Ya has probado la herramienta?
Oliver Burdekin
5

Acabo de crear metadatos simultáneamente para algunos rásteres. Estaban en un espacio de trabajo de archivos en lugar de un espacio de trabajo de geodatabase, así que no estoy seguro de si eso será un problema. Si entiendo correctamente, está tratando de crear metadatos genéricos para múltiples archivos. Esto es lo que hice:

Abra arcCatalog y actualice los metadatos de uno de los archivos.

Sea genérico para que el texto se aplique a todos los archivos

Exporte los metadatos a la misma carpeta. (Tengo la especificación de implementación de metadatos ISO 19139 seleccionada en mis opciones de arcCatalog).

El archivo se exportará como un archivo .xml.

Abra la siguiente herramienta: Herramientas de conversión> Metadatos> Importar metadatos ... ábralo con un clic derecho y elija "lote" (es el que tiene el símbolo del generador de modelos al lado)

Ahora puede agregar su archivo .xml de metadatos exportados como fuente y navegar a todos los archivos para aplicarlos como destino.

De acuerdo, es un poco incómodo hacer esto para grandes conjuntos de datos (navegando a cada archivo, por ejemplo), pero como este es un modelo, podría modificarlo fácilmente para que funcione como una herramienta. Elija la opción recursiva y agregará todos los archivos dentro de una carpeta para adjuntar los metadatos. De hecho, podría hacer eso ahora y publicarlo aquí.

* Actualización *

He creado una herramienta que sirve para actualizar la sección DESCRIPCIÓN de un archivo. Si desea utilizarlo, hágamelo saber. Tiene peculiaridades pero funciona.

Oliver Burdekin
fuente
Terminé usando 'Importar metadatos' en modo por lotes. @Oliver, sí, ¡estaría muy interesado en ver esta herramienta!
Magda
@Magda, puede enviarme un correo electrónico a [email protected] Sería bueno probar este modelo con los datos de otra persona.
Oliver Burdekin
Hola @Oliver, me gustaría usar tu herramienta. Entonces no necesito volver a intentarlo solo. Gracias :-)
Shiuli Pervin
Hola @ShiuliPervin Por favor envíeme un correo electrónico a [email protected] con una muestra de sus datos y sus requisitos exactos. Incluya su versión de ArcGIS. Gracias.
Oliver Burdekin
0

Sí, hice este pequeño script que ejecuté desde el cuaderno Jupyter. Simplemente cambie según sea necesario las variables metadatain y metawriter . Agregará recursivamente metadatos a todos los archivos con una extensión (por ejemplo, shp) dentro de un directorio.

import os
import xml.etree.ElementTree as ET
metadatain = ET.parse(r'ADDRESS\TO\METADATA.xml')
root = metadatain.getroot()

def metawriter(folder_path, extension):
    for path, subdirs, files in os.walk(folder_path):
        for name in files:
            file_extension = os.path.splitext(name)[-1]
            if(extension in file_extension):
            #if(file_extension.lower() in name.lower()):
                file_path = os.path.join(path,name)
                file_name = os.path.splitext(file_path)[0]
                print(file_path)
                print(file_name)
                metafile = file_name + extension + ".xml"
                print(metafile)
                metadatain.write(metafile)



metawriter(r'ADDRESS\TO\FOLDER', '.FILEXTENSION')

* Tenga en cuenta las barras invertidas

Roberto Zeeland
fuente