Pueden existir relaciones entre objetos espaciales, objetos no espaciales o entre objetos espaciales y no espaciales. Opcionalmente, al crear una clase de relación, puede especificar si la clase de relación tendrá atributos. Una clase de relación con atributos puede almacenar atributos adicionales y detalles sobre la propia relación.
Puede crear una clase de relación con atributos utilizando la herramienta de geoprocesamiento Crear clase de relación o De tabla a clase de relación en ArcGIS Pro.
Después de revisar cada herramienta de geoprocesamiento, las herramientas Crear clase de relación y De tabla a clase de relación son casi idénticas. Ambas herramientas crean una clase de relación, le permiten establecer el tipo y la cardinalidad de la clase de relación y designar los campos de clave principal y clave externa.
Sin embargo, estas herramientas difieren en los parámetros utilizados al crear una clase de relación con atributos.
La herramienta Crear clase de relación puede crear una clase de relación con atributos o sin atributos. La tabla intermedia se crea cuando se utiliza esta herramienta para crear una clase de relación con atributos. Sin embargo, solo contiene los campos obligatorios y no se rellena, ya que ArcGIS no asigna las asociaciones entre los objetos de origen y destino. Usar esta herramienta para crear una clase de relación con atributos significa rellenar la tabla intermedia manualmente.
Aquí está el parámetro adicional incluido con la herramienta Crear clase de relación:
- La clase de relación tiene atributos: cuando se activa este parámetro, se crea una tabla intermedia para usted, aunque solo generará los campos obligatorios.
Nota:
La clase de relación tiene atributos es un parámetro opcional de la herramienta Crear clase de relación y solo debe activarse si se crea una clase de relación con atributos.
- La clase de relación tiene atributos: cuando se activa este parámetro, se crea una tabla intermedia para usted, aunque solo generará los campos obligatorios.
La herramienta De tabla a clase de relación crea una clase de relación con atributos. La tabla intermedia para esta clase de relación con atributos se rellena en función de los campos de atributos seleccionados de una tabla de relaciones existente. Estos campos de atributos seleccionados contienen atributos de relación adicionales además de los requeridos al crear una clase de relación sin atributos. Se utilizan para almacenar atributos de la relación misma que no son atribuidos ni a la clase de origen ni a la de destino. Por ejemplo, en una clase de relación entre parcelas y propietarios, en la que los propietarios poseen parcelas y las parcelas son propiedad de los propietarios, el porcentaje de propiedad que tiene cada propietario en particular podría almacenarse como un atributo de relación.
Estos son los parámetros adicionales incluidos con la herramienta De tabla a clase de relación:
- Tabla de relaciones: una tabla existente que contiene atributos que se agregarán a la clase de relación.
- Campos de atributos: los nombres de los campos presentes en la Tabla de relaciones que contienen los valores de atributos que se agregarán a la tabla intermedia en la clase de relación con atributos.
Nota:
La Tabla de relaciones y los Campos de atributos son parámetros obligatorios cuando se utiliza la herramienta De tabla a clase de relación. Los atributos y los campos de atributos se agregarán a la clase de relación de atributos recién creada como tabla intermedia.
Antes de empezar a crear una clase de relación con atributos, revise las consideraciones para las clases de relación de geodatabase en Prepararse para crear una clase de relación.
Siga estos pasos para crear una clase de relación con atributos utilizando la herramienta Crear clase de relación:
Sugerencia:
- Las clases de relación se admiten en geodatabases de archivos, móviles y corporativas. Para crear una clase de relación con atributos, puede hacer clic con el botón derecho en una geodatabase existente o en un dataset de entidades dentro de una geodatabase. Si crea una clase de relación en una geodatabase corporativa, deberá conectarse a la geodatabase corporativa como usuario con privilegios para crear datos en la base de datos.
Para obtener más información sobre las clases de relación con atributos y ver cómo se pueden aplicar a un escenario del mundo real, consulte el artículo del blog de ArcGIS Explorar una clase de relación de muchos a muchos. Este blog proporciona una revisión más profunda de los pasos del flujo de trabajo e incluye los datos necesarios para crear una clase de relación de muchos a muchos para ayudar a mantener la validez de los datos sobre parques.
- Inicie ArcGIS Pro y abra un proyecto de ArcGIS Pro existente, o empiece sin una plantilla.
- En el panel Catálogo, haga clic con el botón derecho en una geodatabase existente y haga clic en Nuevo en el menú contextual.
- Seleccione Clase de relación .
El cuadro de diálogo de la herramienta de geoprocesamiento Crear clase de relación aparece con la configuración predeterminada.
Nota:
Como alternativa, la herramienta De tabla a clase de relación se puede utilizar para crear una clase de relación utilizando una tabla intermedia existente que contenga atributos de relación.
- Para Tabla de origen, puede seleccionar un dataset de la lista o utilizar el botón Examinar para seleccionarlo.
- Para Tabla de destino, puede seleccionar un dataset de la lista o usar el botón Examinar para seleccionarlo.
- Para Clase de relación de salida, haga clic en el botón Examinar y busque la geodatabase donde se almacenará la clase de relación. Para Nombre, proporcione un nombre para la clase de relación y haga clic en Guardar.
Para este ejemplo, las tablas de origen y destino están ubicadas en una geodatabase móvil denominada Wyoming Natural Assets.geodatabase. Por lo tanto, la clase de relación también debe residir en esta misma geodatabase móvil. Dado que la geodatabase móvil (.geodatabase) se crea sobre SQLite, el prefijo "main" se agrega automáticamente al nombre de la clase de relación para indicar que pertenece al esquema principal, que es el esquema predeterminado para una base de datos SQLite.
- Para Tipo de relación, seleccione Simple.
Para obtener más información sobre las diferencias entre una clase de relación simple y compuesta, consulte Tipos de clases de relación de geodatabase.
- Escriba etiquetas para los parámetros Etiqueta de ruta origen-destino y Etiqueta de ruta destino-origen para esta clase de relación.
El parámetro Etiqueta de ruta origen-destino describe la relación al navegar desde la clase de origen a la clase de destino. Por el contrario, el parámetro Etiqueta de ruta destino-origen describe la relación cuando se navega en la dirección opuesta, desde la clase de destino hasta la de origen. Consulte Parámetros de la herramienta Crear clase de relación para obtener más información sobre estas etiquetas.
- Seleccione Ninguno para Dirección del mensaje, ya que está creando una clase de relación simple.
El parámetro Dirección del mensaje describe cómo se transmiten los mensajes entre objetos relacionados. Este parámetro es aplicable si desea implementar comportamientos personalizados de actualización o eliminación en cascada para la clase de relación. Consulte Parámetros de la herramienta Crear clase de relación para obtener más información sobre los efectos de establecer el parámetro Dirección del mensaje para una clase de relación simple frente a una compuesta.
- Para Cardinalidad, seleccione la opción de cardinalidad adecuada para los datos que participan en su clase de relación.
La cardinalidad de una clase de relación describe cuántos objetos en el origen están relacionados con cuántos objetos hay en el destino. Las opciones de Cardinalidad admitidas para una clase de relación con atributos son las siguientes:
- Uno a uno (1:1): cada fila o entidad de la tabla de origen puede estar relacionada con cero o una fila o entidad de la tabla de destino. Esta es la configuración predeterminada.
- Uno a muchos (1:M): cada fila o entidad de la tabla de origen puede estar relacionada con una o varias filas o entidades de la tabla de destino.
- Muchos a muchos (M:N): varias filas o entidades de la tabla de origen pueden estar relacionadas con varias filas o entidades de la tabla de destino.
- Dependiendo de la herramienta que esté utilizando, haga lo siguiente:
- Si utiliza la herramienta Crear clase de relación, active la casilla junto al parámetro Clase de relación con atributos.
Si está utilizando la herramienta De tabla a clase de relación para el parámetro Tabla de relaciones, busque en la ubicación donde resida una tabla existente con los valores de atributos que pertenecen a la clase de relación.
Sugerencia:
En una relación con atributos, la Tabla de relaciones debe tener campos que actúen como claves externas para las tablas o clases de entidad de origen y de destino. Estas claves externas se relacionan con las claves principales de la clase de entidad de origen y destino o las claves principales de la tabla.Para Campos de atributos, seleccione los nombres de los campos del parámetro Tabla de relaciones que contienen los valores de atributos que desea agregar a la clase de relación. Los campos deben estar presentes en el valor del parámetro Tabla de relaciones y aparecerán en la tabla intermedia.
- Especifique los campos siguientes que la clase de relación con atributos utilizará como campos clave para asignar valores entre los campos Clave externa de origen y Clave externa de destino en la tabla intermedia, con la Clave principal de origen y la Clave principal de destino de las tablas de origen o clases de entidad relacionadas.
Clave principal de origen: en las clases de relación de muchos a muchos o con atributos, es el campo de la tabla de origen que se vincula con el campo Clave externa de origen de la tabla intermedia.
Clave externa de origen: en las clases de relación de uno a muchos o con atributos, es el campo de la tabla intermedia que se vincula con el campo Clave principal de origen de la tabla de origen.
- Clave principal de destino: el campo de la tabla de destino que se vincula con el campo Clave externa de destino de la tabla intermedia. Este valor es necesario para las clases de relación de muchos a muchos o con atributos.
- Clave externa de destino: el campo de la tabla intermedia que se vincula con el campo Clave principal de destino de la tabla de destino. Este valor es necesario para las clases de relación de muchos a muchos o con atributos.
Nota:
Los campos clave pueden tener nombres diferentes, pero deben ser del mismo tipo de datos de campo y contener el mismo tipo de información, como los Id. de parcela. Pueden ser campos clave los campos de todo tipo de datos, excepto objeto binario grande (BLOB), fecha y ráster.
- Haga clic en Ejecutar para crear la clase de relación con atributos.
Nota:
Puede hacer clic en el menú desplegable Ejecutar y seleccionar Programar ejecución para ejecutar la herramienta más adelante y, si lo desea, de forma recurrente.
Más información sobre cómo planificar las herramientas de geoprocesamiento
Aprenda a revisar y rellenar una tabla de clases de relación con atributos.