Este documento contiene una guía de soluciones de DSPL y un concepto canónico útiles "recetas". Estas proporcionan instrucciones paso a paso para una variedad de tareas que van más allá de las funciones básicas del lenguaje descritas en el Instructivo y Guía para desarrolladores. El contenido a continuación supone que ya conoces los documentos anteriores, así que asegúrate de leer antes de empezar a cocinar.
Cada receta comienza con un objetivo seguido de una lista específica de pasos en las conversaciones que sigues. Muchos también incluyen fragmentos de DSPL o vínculos a ejemplos externos. Si tienes algún comentario acerca de una receta o quieres sugerir otras, publícalo un mensaje en el foro de DSPL.
Recetas básicas
Especificación de nombres visibles
Objetivo
Asocia un “nombre visible” con cada instancia de una (dimensión) concepto. Estos nombres aparecerán en la IU de Public Data Explorer en lugar de los IDs de instancia de concepto, que suelen ser más cortos y difíciles de y comprenderlos.
Pasos
- Haz que tu concepto se extienda
entity:entity.
- Agrega una columna
name
a la definición del concepto asociado. desde una tabla de particiones. - Propaga la última propiedad con el nombre de cada instancia.
Notas
- No es necesario definir explícitamente una propiedad
name
en los metadatos de tus conceptos; esta definición se incluye automáticamente cuando extiendeentity:entity
. - También puedes agregar
description
yinfo_url
para proporcionar descripciones y URLs a nivel de instancia, respectivamente.
Crea jerarquías de conceptos
Objetivo
Crea una jerarquía de conceptos (dimensión). Aparecerán en la La IU de Public Data Explorer como un árbol, lo que permite a los usuarios comprender las agrupaciones y navegar entre ellas.
Pasos
- Define un elemento "superior" (p.ej.,
region
). - Cómo definir un elemento "secundario" (p.ej.,
subregion
). - Agrega una propiedad en el elemento secundario que haga referencia al elemento superior y que incluya el elemento
Atributo
isParent
: . En este caso, los puntos se reemplazan por el ID superior.<property concept="..." isParent="true"/>
- En la tabla de definiciones del elemento secundario, agrega una columna que haga referencia al superior.
- Para cada instancia secundaria, propaga esta última con una instancia válida de el concepto principal.
Notas
- Consulta la relación
country
/state
en la conjunto de datos del instructivo un ejemplo de esto. - Cada ID superior al que se haga referencia desde el secundario debe estar en el definición de la tabla de definiciones. De lo contrario, el importador producirá un error.
- El elemento superior y el secundario pueden ser el mismo concepto (es decir, un modelo de autorreferencia
jerarquía). Consulta el concepto de
business
en la Conjunto de datos de ventas minoristas en EE.UU. para ver un ejemplo de esto.
Categoriza instancias de conceptos
Objetivo
Crea categorías para instancias de conceptos que se mostrarán como opciones en los selectores de color de Public Data Explorer.
Pasos
- Define una "categoría" (p.ej.,
income_level
). - Cómo definir un elemento "secundario" (p.ej.,
country
). - Agrega una propiedad en el elemento secundario que haga referencia al concepto de categoría y
incluye un
Elemento
name
: : Aquí se reemplaza el primer conjunto de puntos por el ID de concepto de categoría y el El segundo conjunto se reemplaza por el nombre visible deseado de tu propiedad. (p.ej., "Nivel de ingresos").<property concept="..."/> <info> <name><value>"..."</value></name> </info> </property>
- En la tabla de definiciones del elemento secundario, agrega una columna que haga referencia al de categoría.
- Para cada instancia secundaria, propaga esta última con una instancia válida de el concepto de categoría.
Notas
- Un concepto puede tener varias propiedades que sirvan como categorías. en esta el usuario las verá como opciones en los selectores de color.
- Una de las categorías también puede ser la madre o el padre para los fines de de forma jerárquica en la IU. Consultar las anteriores receta para obtener detalles.
Especifica el orden de clasificación para las instancias de conceptos
Objetivo
Especifica el orden de clasificación para las instancias de un concepto. Este orden se usa cuando mostrar una lista de las instancias en el panel de navegación izquierdo de Public Data Explorer de visualización de datos.
Pasos
- Haz que tu concepto extienda
entity:entity
o uno de sus hijos (p.ej.,geo:location
). - Agrega un atributo
entity_order
a tus metadatos de concepto. - Establece el valor del anterior en
ALPHA
.TABLE
; el primero hará que las instancias se enumeren en de sus nombres visibles, mientras que este último mantendrá las instancias en el mismo orden en que aparecen en la tabla de definición de conceptos.
Notas
ALPHA
es el valor predeterminado actual, así que, si quieres usarlo, los pasos anteriores, los pasos anteriores son opcionales.- Consulta la
entity:entity
documentación para ver un ejemplo.
Recetas de tiempo
Datos trimestrales
Objetivo
Visualiza los datos que se especifican en intervalos trimestrales.
Pasos
- Convierte en meses todos los trimestres de tus porciones (p.ej., la primer mes del trimestre).
- Trata esta dimensión como una
time:month
en tu porción. XML.
Datos semanales
Objetivo
Visualizar los datos que se especifican en intervalos semanales
Pasos
- Convertir todas las semanas de los datos de tus porciones en días (por ejemplo, la primera día de la semana).
- Trata esta dimensión como una
time:day
en tu XML de porción.
Recetas con ubicación geográfica
Usa country
o state
conceptos canónicos
Objetivo
Usa los conceptos canónicos country
o state
.
importar todos los valores de latitud y longitud, etc., para que estos
definidos dentro del conjunto de datos.
Pasos
- Asegúrese de que todas las referencias de país o estado de EE.UU. en su los archivos CSV de datos de porciones son ID válidos del country canónico y estado de tablas de definiciones.
- Agregar
geo:country
ogeo_us:state
como dimensiones en las porciones correspondientes. - Asegúrate de que los nombres de las columnas coincidan con los
de los conceptos anteriores (sin incluir el nombre del conjunto de datos importado, p.ej.,
country
) o, si no, incluyemapDimension
sentencias en la definición de tu porción. Ejemplo:<slice id="..."> ... <dimension concept="geo:country"/> ... <mapDimension concept="geo:country" toColumn="my_country"/> </slice>
Usar solo un subconjunto de los países canónicos o estados
Objetivo
Usar un subconjunto de un concepto geográfico canónico para que solo este subconjunto (y no la lista completa, p.ej., todos los países del mundo) aparece en la lista IU del Explorador de datos.
Pasos
- Define un concepto local que extienda el concepto de superconjunto. Ejemplo:
<concept id="my_country_subset" extends="geo:country"> ... </concept>
- En el archivo CSV de definición de concepto asociado, solo incluye los IDs del
de un superconjunto nuevo que quieres usar. Ejemplo:
my_country_subset FR MX US
Notas
- Cada instancia de tu concepto de subconjunto debe ser una instancia válida del concepto de superconjunto; no se puede "expandir" el concepto con nuevos individuales.
Define tus propios conceptos geográficos
Objetivo
Crea tus propios conceptos geográficos que se puedan explorar y asignar con solo como las canónicas y definidas por Google.
Pasos
- Crea un concepto que extienda
geo:location
. - En la tabla de definición de conceptos asociada, incluye las columnas
name
,latitude
ylongitude
. - Propaga las últimas propiedades para cada instancia de tu concepto. el valores de latitud y longitud son números de punto flotante con la convención de que N y E son positivas, y W y S son negativas.
Notas
- No es necesario incluir explícitamente el
name
,latitude
ylongitude
propiedades en tu de concepto, ya que se incluyen automáticamente cuando se extiendengeo:location
- Consulta la definición de
state
en el conjunto de datos del instructivo para obtener un ejemplo.
Recetas de métricas y unidades
Usa porcentajes
Objetivo
Define un concepto (de métrica) que sea un porcentaje de algo más.
Pasos
- Haz que tu concepto extienda
quantity:ratio
. - Establece el atributo
is_percentage
entrue
.<attribute id="is_percentage"> <value>true</value> </attribute>
- De manera opcional, configura el atributo
percentage_of
según es un porcentaje de este concepto. Ejemplo:<attribute id="percentage_of"> <value>labor force</value> </attribute>
Usando currency
unidades
Objetivo
Define un concepto (de métrica) que tenga unidades monetarias (p.ej., dólares estadounidenses).
Pasos
- Haz que tu métrica extienda
quantity:quantity
o uno de sus secundarios, p.ej.,quantity:amount
- Agrega un atributo
unit
que haga referenciaunit:currency
y establece su valor en un ID del definición de moneda asociada de la tabla. Ejemplo:<concept id="..."> <attribute concept="unit:currency"> <value>EUR</value> </attribute> </concept>
Cómo crear una unidad personalizada
Objetivo
Crea una unidad personalizada para una o más de tus métricas.
Pasos
- Crea un concepto que extienda
unit:unit
. - Agrega las columnas
unit_text
ysymbol
a la en la tabla de definiciones asociada. De forma opcional, si deseas ajustar la posición del símbolo, también puedes agregar unasymbol_position
. - Completa los valores de las últimas propiedades para cada instancia de tu
unidad. Ejemplo de archivo CSV para "area" unidades:
my_unit,unit_text,symbol,symbol_position SQKM,square kilometers,km²,END SQML,square miles,miles²,END
- Para usar la unidad que acabas de crear en un concepto (métrica), asegúrate de que
el último extiende
quantity:quantity
o uno de sus elementos secundarios. Luego, agrega un atributo que haga referencia al concepto de tu unidad. Ejemplo:<concept id="..." extends="quantity:amount"> ... <attribute concept="my_unit"> <value>SQKM</value> </attribute> ... </concept>
Notas
- Si el concepto de tu unidad tiene una sola instancia, puedes omitir el ID.
de su tabla de definiciones, así como las etiquetas
value
de las métricas que lo usan. - Consulta la definición de la moneda canónica conceptual para obtener un ejemplo completo.