Este documento contém um manual de DSPL útil e de conceitos canônicos "receitas". Elas fornecem instruções passo a passo para vários tarefas que vão além dos recursos básicos de linguagem descritos no Tutorial e Guia para desenvolvedores. O conteúdo requer conhecimento dos documentos anteriores, então não deixe de ler antes de começar a cozinhar.
Cada roteiro começa com um objetivo seguido por uma lista específica de etapas para seguir. Muitos também incluem snippets DSPL ou links para exemplos externos. Se você tiver algum feedback sobre uma receita ou gostaria de sugerir outras, poste uma mensagem no Fórum DSPL (em inglês).
Receitas básicas
Como especificar nomes de exibição
Meta
Associar um "nome de exibição" com cada instância de uma dimensão conceito. Esses nomes aparecerão na interface do Explorador de dados públicos em vez de IDs de instância de conceito, que geralmente são mais curtos e mais difíceis para os usuários entender.
Etapas
- Aumente seu conceito
entity:entity. - Adicione uma coluna
nameà definição de conceito associada. tabela. - Preencha a última propriedade com o nome de cada instância.
Observações
- Não é necessário definir explicitamente uma propriedade
namena os metadados do conceito, essa definição é incluída automaticamente quando você estendementity:entity. - Você também pode adicionar
descriptioneinfo_urlpara fornecer descrições e URLs no nível da instância, respectivamente.
Como criar hierarquias de conceito
Meta
Criar uma hierarquia de conceitos (dimensão). Eles vão aparecer Interface do Explorador de dados públicos como uma árvore, permitindo que os usuários entendam os agrupamentos e navegar entre eles.
Etapas
- Definir um "pai" conceito (por exemplo,
region). - Defina um "filho" conceito (por exemplo,
subregion). - Adicione uma propriedade no filho que faça referência ao pai e inclua o
Atributo
isParent: , em que os pontos são substituídos pelo ID pai.<property concept="..." isParent="true"/>
- Na tabela de definição do filho, adicione uma coluna que faça referência ao pai
- Para cada instância filho, preencha a última com uma instância válida do conceito pai.
Observações
- Confira a relação
country/statena conjunto de dados do tutorial para é um exemplo disso. - Cada ID do pai referenciado do filho deve estar no tabela de definição. Caso contrário, o importador produzirá um erro.
- O pai e o filho podem ser o mesmo conceito (ou seja, uma autorreferência
hierarquia). Consulte o conceito
businessno Conjunto de dados de vendas de varejo dos EUA para ver um exemplo disso.
Como categorizar instâncias de conceito
Meta
Criar categorias para instâncias de conceito que serão exibidas como opções nos seletores de cores do Explorador de dados públicos.
Etapas
- Defina uma "categoria" conceito (por exemplo,
income_level). - Defina um "filho" conceito (por exemplo,
country). - Adicione uma propriedade no filho que faça referência ao conceito da categoria e
inclui um
Elemento
name: , em que o primeiro conjunto de pontos é substituído pelo ID do conceito da categoria e pelo o segundo conjunto é substituído pelo nome de exibição desejado para sua propriedade (por exemplo, "Nível de renda").<property concept="..."/> <info> <name><value>"..."</value></name> </info> </property> - Na tabela de definição do filho, adicione uma coluna que faça referência ao de categoria.
- Para cada instância filho, preencha a última com uma instância válida do o conceito de categoria.
Observações
- Um conceito pode ter várias propriedades que servem como categorias. neste caso, o usuário verá todas elas como opções nos seletores de cores.
- Uma das categorias também pode ser mãe para fins de organizar as instâncias hierarquicamente na IU. Consulte a anterior para mais detalhes.
Como especificar a ordem de classificação para instâncias de conceito
Meta
Especifique a ordem de classificação para instâncias de um conceito. Essa ordem é usada quando listando as instâncias na barra de navegação esquerda do Public Data Explorer de visualização de dados.
Etapas
- Faça seu conceito estender
entity:entityou um dos próprios filhos (por exemplo,geo:location). - Adicione um atributo
entity_orderaos metadados do conceito. - Defina o valor do anterior como
ALPHAouTABLEa primeira fará com que as instâncias sejam listadas ordem dos nomes de exibição, enquanto o último mantém as instâncias na mesma ordem em que aparecem na tabela de definição de conceitos.
Observações
ALPHAé o padrão atual, então, se você quiser usá-lo ordem, as etapas acima são opcionais.- Consulte a
entity:entitydocumentação para ver um exemplo.
Receitas de Tempo
Dados trimestrais
Meta
Conferir dados especificados em intervalos trimestrais.
Etapas
- Converta todos os trimestres dos seus dados de fração em meses (por exemplo, o primeiro mês do trimestre).
- Trate essa dimensão como um
time:monthna sua fatia XML
Dados semanais
Meta
Conferir dados especificados em intervalos semanais.
Etapas
- Converter todas as semanas dos dados de fração em dias (por exemplo, a primeira dia da semana).
- Trate essa dimensão como um
time:dayno XML da fração.
Receitas geográficas
Como usar country ou state
conceitos canônicos
Meta
Use os conceitos canônicos country ou state.
a importação de todos os valores de latitude/longitude etc., para que não precisem
definidos no conjunto de dados.
Etapas
- Verifique se todas as referências de país e/ou estado dos EUA na sua os CSVs de dados de fração são IDs válidos do país canônico e estado tabelas de definição.
- Adicionar
geo:countrye/ougeo_us:statecomo nas frações correspondentes. - Verifique se os nomes das colunas correspondem aos nomes
dos conceitos anteriores (sem incluir o nome do conjunto de dados importado, por exemplo,
country) ou, caso contrário, incluirmapDimensionna definição de fração. Exemplo:<slice id="..."> ... <dimension concept="geo:country"/> ... <mapDimension concept="geo:country" toColumn="my_country"/> </slice>
Usar apenas um subconjunto dos países canônicos ou estados
Meta
Use um subconjunto de um conceito geográfico canônico para que somente esse subconjunto (e não a lista inteira, por exemplo, todos os países do mundo) aparece na Comunidade Interface do Data Explorer.
Etapas
- Defina um conceito local que estenda o conceito de superconjunto. Exemplo:
<concept id="my_country_subset" extends="geo:country"> ... </concept>
- No CSV de definição de conceito associado, inclua apenas os IDs dos
superconjunto que você quer usar. Exemplo:
my_country_subset FR MX US
Observações
- Cada instância do conceito de subconjunto precisa ser uma instância válida do conceito de superconjunto não é possível "expandir" o conceito com novos instâncias.
Como definir seus próprios conceitos geográficos
Meta
Crie seus próprios conceitos geográficos que são exploráveis e mapeáveis, apenas como as canônicas, definidas pelo Google.
Etapas
- Crie um conceito que estenda
geo:location. - Na tabela de definição de conceito associada, inclua as colunas
name,latitudeelongitude. - Preencha as últimas propriedades para cada instância do seu conceito. as os valores de latitude e longitude são flutuantes com a convenção de que N e E são positivos e W e S são negativos.
Observações
- Não é necessário incluir explicitamente
name,latitudeelongitudena sua definição de conceito, já que são incluídos automaticamente ao estendergeo:location. - Veja a definição de
stateno conjunto de dados do tutorial para um exemplo.
Roteiros de métricas e unidades
Como usar porcentagens
Meta
Defina um conceito (métrica) que seja uma porcentagem de outra coisa.
Etapas
- Faça seu conceito estender
quantity:ratio. - Defina o atributo
is_percentagecomotrue.<attribute id="is_percentage"> <value>true</value> </attribute>
- Também é possível definir o atributo
percentage_ofcom base em que esse conceito é uma porcentagem. Exemplo:<attribute id="percentage_of"> <value>labor force</value> </attribute>
Usando unidades de currency
Meta
Defina um conceito (métrica) que tenha unidades monetárias (por exemplo, dólares americanos).
Etapas
- Faça com que sua métrica estenda
quantity:quantityou uma das próprias filhos, por exemplo,quantity:amount. - Adicione um atributo
unitque faça referênciaunit:currencye defina o valor dele como um ID da definição da moeda associada tabela. Exemplo:<concept id="..."> <attribute concept="unit:currency"> <value>EUR</value> </attribute> </concept>
Como criar uma unidade personalizada
Meta
Crie uma unidade personalizada para uma ou mais métricas.
Etapas
- Crie um conceito que estenda
unit:unit. - Adicione as colunas
unit_textesymbolao tabela de definições associada. Se quiser ajustar na posição do símbolosymbol_position, . - Preencha os valores das últimas propriedades para cada instância do
unidade. Exemplo de CSV para "área" unidades:
my_unit,unit_text,symbol,symbol_position SQKM,square kilometers,km²,END SQML,square miles,miles²,END
- Para usar o bloco recém-criado em um conceito (métrica), verifique se
último estende
quantity:quantityou um dos filhos dele. Depois, adicione um atributo que faça referência ao conceito de unidade. Exemplo:<concept id="..." extends="quantity:amount"> ... <attribute concept="my_unit"> <value>SQKM</value> </attribute> ... </concept>
Observações
- Se o conceito de unidade tiver apenas uma instância, você poderá omitir o ID
coluna da tabela de definição, bem como as tags
valuena as métricas que o utilizam. - Veja a definição da moeda canônica conceitual para um exemplo completo.