JavaScript용 Azure Model Parser 클라이언트 라이브러리 - 버전 1.0.0-beta.2
이 라이브러리를 사용하여 DTDL 모델을 구문 분석하고 해당 구조가 DTDL 사양을 준수하는지 유효성을 검사합니다.
DTDL(디지털 트윈 정의 언어)은 디지털 트윈 모델을 만들기 위한 JSON-LD 기반 스키마를 정의합니다. DTDL 사양이 발전함에 따라 이 파서는 그에 따라 업데이트됩니다. Azure Digital Twins의 주요 특징은 고유한 어휘를 정의하고 자체 정의된 비즈니스 조건에서 트윈 그래프를 작성하는 기능입니다. 이 기능은 사용자 제공 모델을 통해 제공됩니다. 사용자 설명에서 모델을 명사로 간주할 수 있습니다.
DTDL에 대한 자세한 내용은 여기를 참조하세요.
시작
현재 지원되는 환경
- Node.js의 LTS 버전
- 최신 버전의 Safari, Chrome, Edge, Firefox.
자세한 내용은 지원 정책을 참조하세요.
사전 요구 사항
없음
@azure/dtdl-parser
패키지를 설치합니다.
를 사용하여 JavaScript용 Digital Twins 모델 파서 클라이언트 라이브러리를 npm
설치합니다.
npm install @azure/dtdl-parser
공용 DTDL 모델 리포지토리에 액세스
DTDL 모델을 아직 작성하지 않은 경우 Github: DTDL을 사용하여 IoT 플러그 앤 플레이 모델의 리포지토리에서 공개적으로 사용 가능한 DTDL 모델의 전체 리포지토리에 액세스할 수 있습니다.
브라우저 지원
JavaScript 번들
브라우저에서 이 클라이언트 라이브러리를 사용하려면 먼저 번들러를 사용해야 합니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 번들링 설명서를 참조하세요.
주요 개념
DTDL 파서
DTDL(Digital Twins 정의 언어)은 디지털 트윈 플러그 앤 플랜 디바이스의 모델과 상호 작용하기 위한 계약을 정의합니다. DTDL 파서는 DTDL 스키마 정의를 기반으로 부분적으로 생성된 부분적으로 손으로 작성된 langauge 파서로, 제공된 문자열이 DTDL langauge 정의를 준수하는지 확인할 수 있습니다.
모델에 대한 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 로깅을 지원하지 않지만 GA 릴리스에서 지원됩니다.
로깅을 사용하도록 설정하면 실패에 대한 유용한 정보를 파악하는 데 도움이 될 수 있습니다. HTTP 요청 및 응답 로그를 보려면 AZURE_LOG_LEVEL
환경 변수를 info
로 설정합니다. 또는 @azure/logger
에서 setLogLevel
을 호출하여 런타임에 로깅을 사용하도록 설정할 수 있습니다.
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
로그를 사용하는 방법에 대한 자세한 내용은 @azure/logger package docs를 참조하세요.
다음 단계
클라이언트 라이브러리를 사용하는 방법을 보여 주는 자세한 예제는 샘플 디렉터리를 참조하세요.
참여
이 라이브러리에 기여하려면 기여 가이드 를 참조하여 코드를 빌드하고 테스트하는 방법에 대해 자세히 알아보세요.
관련된 프로젝트
Azure SDK for JavaScript