1.0.17 • Published 7 months ago

@opentemplate/scl-lib v1.0.17

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

scl-lib

Library for IEC 61850 standard

license(MIT) npm (scoped) Coverage

Usage

Install:

npm i @opentemplate/scl-lib

LibWorkspace

This project was generated with Angular CLI version 14.1.3.

scl-lib

Library for IEC 61850 standard

license(MIT) npm (scoped) Coverage

Usage

Install:

npm i @opentemplate/scl-lib
Context

context screenshot

Usage

You can import the library files from TypeScript:

import { ScllibService, _SCLType } from '@opentemplate/scl-lib';
Example
  • Marshal Document use case
const namespaces: any = {
  namespacePrefixes: {
    "http://www.iec.ch/61850/2003/SCL": "",
    "http://www.w3.org/2001/XMLSchema": "xs"
  },
  mappingStyle : "simplified"
};
...
constructor(private scllibService: ScllibService) {
    this.scllibService.setContext(namespaces);
}
...
const scl: _SCLType = {
  release: 4,
  revision: "B",
  version: "2007",
  header: {
    id: uuid.v4()
  }
};
...
this.scllibService.marshalDocument({SCL: scl})

marshalDocument screenshot

  • _SCLType interface and others generated by Jsonix tool.
  • ScllibService use a Javascript compiler generated by the cxsd tool.

API Reference:

Jsonix

After fixing this https://github.com/highsource/jsonix/pull/266 we published 3.0.0-next.0 to npm as @opentempl/jsonix.

  • Jsonix (JSON interfaces for XML) is a JavaScript library which allows you to convert between XML and JSON structures.
  • With Jsonix you can parse XML into JSON (this process is called unmarshalling) or serialize JSON in XML form (this is called marshalling).
  • These conversions are based on declarative XML/JSON mappings which can be written manually or generated from an XML Schema.

Jsonix advantages:

  • Strongly structured
  • Type-safe
  • Bidirectional
  • (Optionally) XML Schema-driven

cxsd

  • cxsd is a streaming XSD parser and XML parser generator for Node.js and (optionally but highly recommended) TypeScript. It automatically downloads all referenced .xsd files and outputs two files for each defined namespace:
    • .js JavaScript code for Node.js containing a compact state machine table for the cxml parser.
    • .d.ts TypeScript definition with JSDoc comments to help editors with tab completion, type verification and tooltips.

Supported Versions

Information about supported @opentempl/scl-lib versions.

VersionSupportedScope
<= 0.1.24:x:opentempl
> 0.1.24 & <= 0.1.32:white_check_mark:opentempl

We published 0.2.0 to npm as @opentemplate/scl-lib and will continue to publish updates there.

VersionSupportedScopeScope
>= 0.2.0:white_check_mark:opentemplateAngular 14
= 1.0.5:white_check_mark:opentemplateAngular 15
>= 1.0.6:white_check_mark:opentemplateAngular 16
1.0.1

8 months ago

1.0.17

7 months ago

1.0.0

8 months ago

1.0.9

7 months ago

1.0.7

7 months ago

1.0.6

8 months ago

1.0.5

8 months ago

1.0.3

8 months ago

0.2.10

8 months ago

1.0.11

7 months ago

1.0.10

7 months ago

0.2.9

8 months ago

1.0.12

7 months ago

0.2.4-rc.2

1 year ago

0.2.4-0

1 year ago

0.2.4-rc.3

1 year ago

0.2.4-rc.0

1 year ago

0.2.4-rc.1

1 year ago

0.2.7

1 year ago

0.2.6

1 year ago

0.2.8

1 year ago

0.2.5

1 year ago

0.2.4

1 year ago

0.2.3

2 years ago

0.2.2

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago