Partager via


Bibliothèque de client Azure Model Analyseur pour JavaScript - version 1.0.0-beta.2

Utilisez cette bibliothèque pour analyser vos modèles DTDL et vérifier que leur structure est conforme à la spécification DTDL.

Le langage DTDL (Digital Twin Definition Language) définit un schéma JSON-LD pour la création de modèles Digital Twin. À mesure que la spécification DTDL évolue, cet analyseur est mis à jour en conséquence. L’une des principales caractéristiques d’Azure Digital Twins est la possibilité de définir votre propre vocabulaire et à créer votre graphique de jumeau dans les termes définis par votre entreprise. Cette fonctionnalité est fournie via les modèles spécifiés par l’utilisateur. Vous pouvez considérer les modèles comme des noms dans une description de votre monde.

En savoir plus sur DTDL ici.

Prise en main

Environnements actuellement pris en charge

Pour plus d’informations, consultez notre politique de support .

Prérequis

Aucun.

Installez le package @azure/dtdl-parser

Installez la bibliothèque cliente de l’analyseur de modèle Digital Twins pour JavaScript avec npm:

npm install @azure/dtdl-parser

Accéder au référentiel de modèles DTDL public

Si vous n’avez pas encore écrit de modèle DTDL, vous pouvez accéder au référentiel complet des modèles DTDL disponibles publiquement ici : Github : Dépôt de modèles IoT Plug-and-Play à l’aide de DTDL

Prise en charge des navigateurs

Ensemble JavaScript

Pour utiliser cette bibliothèque cliente dans le navigateur, vous devez d’abord utiliser un bundler. Pour plus d’informations sur la procédure à suivre, reportez-vous à notre documentation sur le regroupement.

Concepts clés

Analyseur DTDL

DTDL (Digital Twins Definition Language) définit un contrat pour interagir avec des modèles d’appareils Digital Twin Plug and Plan. L’analyseur DTDL est un analyseur langauge partiellement écrit à la main, partiellement généré en fonction d’une définition de schéma DTDL, qui peut vérifier si une chaîne fournie est conforme aux définitions de langauge DTDL.

Vous pouvez en savoir plus sur DTDL pour les modèles en lisant « En savoir plus sur les modèles de jumeaux et comment les définir dans (Azure Digital Twins](https://docs.microsoft.com/azure/digital-twins/concepts-models)

Exemples

Analyser un modèle DTDL

Pour analyser un exemple de modèle DTDL, commencez par celui que vous avez déjà écrit ou utilisez-en un situé dans la base de données DTDL publique. Récupérons un exemple de modèle à partir du référentiel de modèles :

// 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); 
});

Résolution des problèmes

Journalisation

REMARQUE : Ce package ne prend actuellement pas en charge la journalisation Azure, mais il sera pris en charge par la version en disponibilité générale.

L’activation de la journalisation peut vous aider à mieux comprendre les échecs. Pour avoir un journal des requêtes et réponses HTTP, définissez la variable d’environnement AZURE_LOG_LEVEL sur info. Vous pouvez également activer la journalisation au moment de l’exécution en appelant setLogLevel dans @azure/logger :

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

setLogLevel("info");

Pour obtenir des instructions plus détaillées sur l’activation des journaux, consultez les documents relatifs au package @azure/logger.

Étapes suivantes

Consultez le répertoire d’exemples pour obtenir des exemples détaillés qui montrent comment utiliser les bibliothèques clientes.

Contribution

Si vous souhaitez contribuer à cette bibliothèque, lisez le guide de contribution pour en savoir plus sur la génération et le test du code.

Impressions