Biblioteca de clientes do Analisador de Modelos do Azure para JavaScript – versão 1.0.0-beta.2

Use essa biblioteca para analisar seus modelos DTDL e validar sua estrutura em conformidade com a especificação DTDL.

A DTDL (Linguagem de Definição de Gêmeo Digital) define um esquema baseado em JSON-LD para a criação de modelos de Gêmeo Digital. À medida que a especificação DTDL evolui, esse analisador será atualizado adequadamente. Uma característica importante dos Gêmeos Digitais do Azure é que você pode definir um vocabulário próprio e criar um grafo de gêmeos nos termos definidos por sua empresa. Esse recurso funciona por meio de modelos fornecidos pelo usuário. Os modelos são como os substantivos em uma descrição do seu mundo.

Saiba mais sobre o DTDL aqui.

Introdução

Ambientes com suporte no momento

Confira nossa política de suporte para mais detalhes.

Pré-requisitos

Nenhum.

Instalar o pacote @azure/dtdl-parser

Instale a biblioteca de clientes do Analisador de Modelo dos Gêmeos Digitais para JavaScript com npm:

npm install @azure/dtdl-parser

Acessar o repositório de modelo DTDL público

Se você ainda não tiver escrito um modelo DTDL, poderá acessar o repositório completo de modelos DTDL disponíveis publicamente aqui: Github: Repositório de modelos de IoT Plug and Play usando DTDL

Suporte ao navegador

Pacote JavaScript

Para usar essa biblioteca de clientes no navegador, primeiro você precisa usar um empacotador. Para obter detalhes sobre como fazer isso, consulte nossa documentação de agrupamento.

Principais conceitos

Analisador DTDL

O DTDL (Linguagem de Definição de Gêmeos Digitais) define um contrato para interagir com modelos de dispositivos Plug e Plan do Gêmeo Digital. O Analisador DTDL é um analisador langauge parcialmente escrito à mão, parcialmente gerado com base em uma definição de esquema DTDL, que pode validar se uma cadeia de caracteres fornecida a ele está em conformidade com as definições de langauge DTDL.

Saiba mais sobre o DTDL para modelos lendo "Saiba mais sobre modelos gêmeos e como defini-los no (Gêmeos Digitais do Azure](https://docs.microsoft.com/azure/digital-twins/concepts-models)

Exemplos

Analisar um modelo DTDL

Para analisar um modelo DTDL de exemplo, comece com um que você já escreveu ou use um localizado no banco de dados DTDL público. Vamos pegar um modelo de exemplo do repositório de modelos:

// example.js
async function main() {
  const client = new ModelsRepositoryClient();
  const dtmi = "dtmi:com:example:TemperatureController;1";
  const models = await client.getModels(dtmi);

  const modelParser = createParser(ModelParsingOption.PermitAnyTopLevelElement);
  modelParser.options = ModelParsingOption.PermitAnyTopLevelElement;
  Object.entries(models).forEach(([key, value]) => {
    console.log(`dtmi: ${key}`);
    const modelDict = await modelParser.parse([value]);
    Object.entries(modelDict).forEach(([key2, value2]) => {
      console.log(key2);
    });
  });
}

main().catch((err) => {
  console.error("The sample encountered an error:", err); 
});

Solução de problemas

Log

OBSERVAÇÃO: atualmente, esse pacote não dá suporte ao Registro em Log do Azure, mas terá suporte da versão ga.

A habilitação do log pode ajudar a descobrir informações úteis sobre falhas. Para ver um log de solicitações e respostas HTTP, defina a variável de ambiente AZURE_LOG_LEVEL como info. Como alternativa, o log pode ser habilitado no runtime chamando setLogLevel em @azure/logger:

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

Para obter instruções mais detalhadas sobre como habilitar logs, veja os documentos do pacote @azure/logger.

Próximas etapas

Dê uma olhada no diretório de exemplos para obter exemplos detalhados que demonstram como usar as bibliotecas de cliente.

Contribuição

Se você quiser contribuir com essa biblioteca, leia o guia de contribuição para saber como criar e testar o código.

Impressões