Клиентская библиотека средства синтаксического анализа моделей Azure для JavaScript версии 1.0.0-beta.2
Используйте эту библиотеку для анализа моделей DTDL и проверки их структуры на соответствие спецификации DTDL.
Язык определения цифровых двойников (DTDL) определяет схему на основе JSON-LD для создания моделей цифровых двойников. По мере развития спецификации DTDL это средство синтаксического анализа будет обновляться соответствующим образом. Основной особенностью Azure Digital Twins является возможность определять собственный словарь и создавать граф двойников с использованием самостоятельно определяемых бизнес-терминов. Эта возможность реализуется на основе предоставляемых пользователем моделей. Такие модели можно рассматривать как существительные, описывающие окружающий вас мир.
Дополнительные сведения о DTDL см. здесь.
Начало работы
Поддерживаемые в настоящее время среды
- LTS версии Node.js
- Последние версии Safari, Chrome, Edge и Firefox.
Чтобы получить дополнительные сведения, ознакомьтесь с нашей политикой поддержки.
Предварительные требования
Нет.
Установите пакет @azure/dtdl-parser
.
Установите клиентскую библиотеку средства синтаксического анализа моделей Digital Twins для JavaScript с помощью npm
:
npm install @azure/dtdl-parser
Доступ к общедоступному репозиторию моделей DTDL
Если вы еще не написали модель DTDL, вы можете получить доступ к полному репозиторию общедоступных моделей DTDL здесь: GitHub: Репозиторий IoT Plug and Play моделей с использованием DTDL
Поддержка браузеров
Пакет JavaScript
Чтобы использовать эту клиентную библиотеку в браузере, сначала необходимо использовать средство пакетной установки. Дополнительные сведения о том, как это сделать, см. в документации по объединениям.
Основные понятия
Средство синтаксического анализа DTDL
DTDL (язык определения цифровых двойников) определяет контракт для взаимодействия с моделями устройств Digital Twin Plug and Plan. Средство синтаксического анализа DTDL — это средство синтаксического анализа langauge, частично написанное вручную, частично созданное на основе определения схемы DTDL, которое может проверить соответствие предоставленной ему строки определениям langauge DTDL.
Дополнительные сведения о DTDL для моделей см. в статье Сведения о моделях двойников и их определении в (Azure Digital Twins](https://docs.microsoft.com/azure/digital-twins/concepts-models)
Примеры
Анализ модели DTDL
Чтобы проанализировать пример модели DTDL, начните с уже написанной модели или используйте модель, расположенную в общедоступной базе данных DTDL. Давайте заберем пример модели из репозитория моделей:
// 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);
});
Устранение неполадок
Ведение журнала
ПРИМЕЧАНИЕ. В настоящее время этот пакет не поддерживает ведение журнала Azure, но будет поддерживаться в общедоступном выпуске.
Включение ведения журнала может помочь выявить полезные сведения о сбоях. Чтобы просмотреть журнал HTTP-запросов и ответов, задайте для переменной среды AZURE_LOG_LEVEL
значение info
. Кроме того, ведение журнала можно включить во время выполнения, вызвав setLogLevel
в @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Более подробные инструкции по включению журналов см. в документации по пакету @azure и средства ведения журнала.
Дальнейшие действия
Подробные примеры использования клиентских библиотек см. в каталоге примеров .
Участие
Если вы хотите вносить изменения в эту библиотеку, ознакомьтесь с руководством по внесению изменений, в котором содержатся сведения о создании и тестировании кода.
Связанные проекты
Azure SDK for JavaScript