@ifc-lite/rules 0.6.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/filter/captured-scope.d.ts +34 -0
  2. package/dist/filter/captured-scope.d.ts.map +1 -0
  3. package/dist/filter/captured-scope.js +65 -0
  4. package/dist/filter/captured-scope.js.map +1 -0
  5. package/dist/filter/filter-evaluate.d.ts +1 -0
  6. package/dist/filter/filter-evaluate.d.ts.map +1 -1
  7. package/dist/filter/filter-evaluate.js +3 -3
  8. package/dist/filter/filter-evaluate.js.map +1 -1
  9. package/dist/filter/filter-match.d.ts.map +1 -1
  10. package/dist/filter/filter-match.js +3 -1
  11. package/dist/filter/filter-match.js.map +1 -1
  12. package/dist/filter/measure-units.d.ts +2 -1
  13. package/dist/filter/measure-units.d.ts.map +1 -1
  14. package/dist/filter/measure-units.js +4 -2
  15. package/dist/filter/measure-units.js.map +1 -1
  16. package/dist/filter/read-measure-subject.d.ts +10 -1
  17. package/dist/filter/read-measure-subject.d.ts.map +1 -1
  18. package/dist/filter/read-measure-subject.js +35 -17
  19. package/dist/filter/read-measure-subject.js.map +1 -1
  20. package/dist/filter/read-subject.d.ts +6 -3
  21. package/dist/filter/read-subject.d.ts.map +1 -1
  22. package/dist/filter/read-subject.js +2 -2
  23. package/dist/filter/read-subject.js.map +1 -1
  24. package/dist/filter/subject-match.d.ts +8 -6
  25. package/dist/filter/subject-match.d.ts.map +1 -1
  26. package/dist/filter/subject-match.js +4 -4
  27. package/dist/filter/subject-match.js.map +1 -1
  28. package/dist/ids/ids-facet-to-rules.d.ts.map +1 -1
  29. package/dist/ids/ids-facet-to-rules.js +2 -0
  30. package/dist/ids/ids-facet-to-rules.js.map +1 -1
  31. package/dist/ids/ids-regex.d.ts +5 -2
  32. package/dist/ids/ids-regex.d.ts.map +1 -1
  33. package/dist/ids/ids-regex.js +12 -30
  34. package/dist/ids/ids-regex.js.map +1 -1
  35. package/dist/ids/rule-set-to-ids.d.ts +1 -1
  36. package/dist/ids/rule-set-to-ids.d.ts.map +1 -1
  37. package/dist/ids/rule-set-to-ids.js +14 -1
  38. package/dist/ids/rule-set-to-ids.js.map +1 -1
  39. package/dist/index.d.ts +1 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +1 -0
  42. package/dist/index.js.map +1 -1
  43. package/package.json +8 -8
  44. package/dist/ids/ids-xml-writer.d.ts +0 -11
  45. package/dist/ids/ids-xml-writer.d.ts.map +0 -1
  46. package/dist/ids/ids-xml-writer.js +0 -172
  47. package/dist/ids/ids-xml-writer.js.map +0 -1
@@ -3,12 +3,14 @@
3
3
  * are read through `readSubject`, the reader validation already uses, so
4
4
  * the option means one thing in search, applicability and validation.
5
5
  *
6
- * `readSubject` reads the model as loaded. A live in-session edit is
7
- * applied to plain property rules through the mutation overlay
8
- * (`filter-evaluate-mutations.ts`), but not to a rule that sets one of these
9
- * options. Validation has the same limitation today (see `read-subject.ts`).
6
+ * Search passes the model's live `mutationView`, so an in-session edit
7
+ * reaches these rules through the same overlay plain property rules read
8
+ * (`filter-evaluate-mutations.ts`), with the edited value's unit kept for
9
+ * `valueUnit: 'si'`. Validation passes none and reads the model as loaded
10
+ * (see `read-subject.ts`).
10
11
  */
11
12
  import type { IfcDataStore } from '@ifc-lite/parser';
13
+ import type { MutablePropertyView } from '@ifc-lite/mutations';
12
14
  import type { PropertyRule, QuantityRule } from './filter-rules.js';
13
15
  import { type SubjectValue } from './read-subject.js';
14
16
  /**
@@ -17,11 +19,11 @@ import { type SubjectValue } from './read-subject.js';
17
19
  */
18
20
  export declare function toSiValues(subject: SubjectValue): SubjectValue;
19
21
  /** The subject's values as the rule compares them. */
20
- export declare function readRuleSubject(rule: PropertyRule | QuantityRule, store: IfcDataStore, expressId: number): SubjectValue;
22
+ export declare function readRuleSubject(rule: PropertyRule | QuantityRule, store: IfcDataStore, expressId: number, mutationView?: MutablePropertyView): SubjectValue;
21
23
  /**
22
24
  * Search semantics (`matchPropertyRule` / `matchQuantityRule`), read through
23
25
  * `readSubject`: presence ops ask whether any value exists, every other op
24
26
  * passes when ANY value satisfies it.
25
27
  */
26
- export declare function matchRuleThroughSubject(rule: PropertyRule | QuantityRule, store: IfcDataStore, expressId: number): boolean;
28
+ export declare function matchRuleThroughSubject(rule: PropertyRule | QuantityRule, store: IfcDataStore, expressId: number, mutationView?: MutablePropertyView): boolean;
27
29
  //# sourceMappingURL=subject-match.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subject-match.d.ts","sourceRoot":"","sources":["../../src/filter/subject-match.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGnE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAgB9D;AAED,sDAAsD;AACtD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,GAChB,YAAY,CAGd;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAcT"}
1
+ {"version":3,"file":"subject-match.d.ts","sourceRoot":"","sources":["../../src/filter/subject-match.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGnE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAgB9D;AAED,sDAAsD;AACtD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,mBAAmB,GACjC,YAAY,CAGd;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,YAAY,GAAG,YAAY,EACjC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,mBAAmB,GACjC,OAAO,CAcT"}
@@ -30,8 +30,8 @@ export function toSiValues(subject) {
30
30
  return converted ? { ...subject, values, unit: 'SI' } : subject;
31
31
  }
32
32
  /** The subject's values as the rule compares them. */
33
- export function readRuleSubject(rule, store, expressId) {
34
- const subject = readSubject(rule, { store, expressId });
33
+ export function readRuleSubject(rule, store, expressId, mutationView) {
34
+ const subject = readSubject(rule, { store, expressId, mutationView });
35
35
  return rule.valueUnit === 'si' ? toSiValues(subject) : subject;
36
36
  }
37
37
  /**
@@ -39,8 +39,8 @@ export function readRuleSubject(rule, store, expressId) {
39
39
  * `readSubject`: presence ops ask whether any value exists, every other op
40
40
  * passes when ANY value satisfies it.
41
41
  */
42
- export function matchRuleThroughSubject(rule, store, expressId) {
43
- const subject = readRuleSubject(rule, store, expressId);
42
+ export function matchRuleThroughSubject(rule, store, expressId, mutationView) {
43
+ const subject = readRuleSubject(rule, store, expressId, mutationView);
44
44
  if (rule.kind === 'quantity') {
45
45
  return subject.values.some((v) => numericOpMatches(rule.op, Number(v), rule.value));
46
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"subject-match.js","sourceRoot":"","sources":["../../src/filter/subject-match.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subject-match.js","sourceRoot":"","sources":["../../src/filter/subject-match.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ids-facet-to-rules.d.ts","sourceRoot":"","sources":["../../src/ids/ids-facet-to-rules.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,2BAA2B,CAAC;AAIjF,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AASlC,KAAK,IAAI,GAAG,eAAe,GAAG,aAAa,CAAC;AA8K5C,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,CA4BpE"}
1
+ {"version":3,"file":"ids-facet-to-rules.d.ts","sourceRoot":"","sources":["../../src/ids/ids-facet-to-rules.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,2BAA2B,CAAC;AAIjF,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AASlC,KAAK,IAAI,GAAG,eAAe,GAAG,aAAa,CAAC;AA+K5C,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,CA4BpE"}
@@ -54,6 +54,8 @@ function numericOps(c) {
54
54
  const lengthLike = [c.length, c.minLength, c.maxLength, c.totalDigits, c.fractionDigits];
55
55
  if (lengthLike.some((v) => v !== undefined))
56
56
  return 'length and digit restrictions have no rule equivalent';
57
+ if (c.temporalBounds !== undefined)
58
+ return 'a date, time or duration bound has no rule equivalent';
57
59
  const bounds = [c.minInclusive, c.minExclusive, c.maxInclusive, c.maxExclusive];
58
60
  if (bounds.some((v) => v !== undefined && !Number.isFinite(v)))
59
61
  return 'a bound that is not a finite number';
@@ -1 +1 @@
1
- {"version":3,"file":"ids-facet-to-rules.js","sourceRoot":"","sources":["../../src/ids/ids-facet-to-rules.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAS/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD;;;;GAIG;AACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAW,CAAC;AASxC,iEAAiE;AACjE,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAgB;IAChC,OAAO,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC;AAC/E,CAAC;AAED,2EAA2E;AAC3E,SAAS,QAAQ,CAAC,CAAgB;IAChC,OAAO,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,WAAW,CAAC,CAAgB;IACnC,IAAI,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,+DAA+D,CAAC;IACxF,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,aAAa;YAChB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACtC,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,SAAS,GAAG,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACjD,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;QACpH,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,sCAAsC,CAAC;YACzE,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACrC,OAAO,qBAAqB,CAAC,CAAC,IAAI,oDAAoD,CAAC;YACzF,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAClF,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,kDAAkD,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,gEAAgE;AAChE,SAAS,UAAU,CAAC,CAAgB;IAClC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,qBAAqB,CAAC;IACtD,IAAI,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,+DAA+D,CAAC;IACxF,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC;IACzF,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;QAAE,OAAO,uDAAuD,CAAC;IAC5G,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;IAChF,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,qCAAqC,CAAC;IAC7G,MAAM,GAAG,GAA4C,EAAE,CAAC;IACxD,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IACjF,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAChF,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IACjF,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAChF,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC;AACjD,CAAC;AAED,mFAAmF;AACnF,SAAS,WAAW,CAAC,CAAgB,EAAE,IAAY;IACjD,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACxE,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IACvF,CAAC;IACD,OAAO,GAAG,IAAI,aAAa,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC;AAClE,CAAC;AAED,yEAAyE;AACzE,SAAS,SAAS,CAAC,CAAgB,EAAE,IAAY;IAC/C,IAAI,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,IAAI,iEAAiE,CAAC;IACjG,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa;QAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO,GAAG,IAAI,uBAAuB,CAAC,CAAC,IAAI,gCAAgC,CAAC;QAClH,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,GAAG,IAAI,aAAa,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC;AAClE,CAAC;AAED,SAAS,WAAW,CAAC,KAA4C,EAAE,IAAU;IAC3E,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAC3B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,6FAA6F,EAAE,CAAC;IAC9H,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnE,MAAM,KAAK,GAAiB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACvH,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,cAAc,CAAC,KAA+C,EAAE,IAAU;IACjF,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACtC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAC5G,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IAC9B,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACrD,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YAClD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gFAAgF,EAAE,CAAC;QACjH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,IAAI,yBAAyB,EAAE,CAAC;QACrG,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACrE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;IACtH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IAClF,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QAC7E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,KAAK,OAAO,EAAE,EAAE,CAAC;IACrF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAC,KAA8C;IACnE,MAAM,MAAM,GAAG,6BAA6B,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;IACjD,yEAAyE;IACzE,qEAAqE;IACrE,mDAAmD;IACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzG,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC7G,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrG,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,GAAG,IAAI,IAAI,eAAe,QAAQ,cAAc,CAAC,EAAE,CAAC;AACvF,CAAC;AAED,SAAS,6BAA6B,CAAC,KAA8C;IACnF,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC/D,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,KAAK,GAAG;QACZ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAEzC,oEAAoE;IACpE,+DAA+D;IAC/D,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,oDAAoD,EAAE,CAAC;QAC7G,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,mBAAmB,EAAE,CAAC;YACzH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;QACpG,CAAC;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,KAAK,GAAG,EAAE,EAAE,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IAClI,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;IACvG,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,KAAK,GAAG,EAAE,EAAE,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IACvI,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,KAAK,OAAO,EAAE,EAAE,CAAC;IACtF,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7G,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACpE,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,YAAY,CAAC,KAAe,EAAE,IAAU;IACtD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAClC,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrC,KAAK,UAAU;YACb,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,sFAAsF,EAAE,CAAC;YACvH,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBACxD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,oCAAoC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACpH,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5F,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,oEAAoE;YACpE,sEAAsE;YACtE,IAAI,CAAC,KAAK,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,OAAO,EAAE,EAAE,CAAC;YACtF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACzE,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qEAAqE,EAAE,CAAC;IACxG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ids-facet-to-rules.js","sourceRoot":"","sources":["../../src/ids/ids-facet-to-rules.ts"],"names":[],"mappings":"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"}
@@ -37,8 +37,11 @@ export declare function jsRegexToIdsPattern(regex: JsRegex): RegexConversion;
37
37
  /**
38
38
  * Translate an IDS pattern into the rule operand that accepts the same
39
39
  * values: a `/^(?:…)$/u` literal (the `u` flag because XSD's `\d`, `\i`,
40
- * `\c` and `\w` translate to Unicode property escapes). XSD's `^` and `$`
41
- * are ordinary characters, so they are escaped first.
40
+ * `\c` and `\w` translate to Unicode property escapes). The pattern goes
41
+ * through the IDS checker's own translator unchanged, so `^` and `$` read
42
+ * exactly as the checker reads them: literal characters, except that a
43
+ * pattern-initial `^` and pattern-final `$` are redundant anchors and drop
44
+ * (`^US$` accepts `US`, `US$?` accepts `US` or `US$`).
42
45
  */
43
46
  export declare function idsPatternToJsRegex(xsd: string): RegexConversion;
44
47
  //# sourceMappingURL=ids-regex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ids-regex.d.ts","sourceRoot":"","sources":["../../src/ids/ids-regex.ts"],"names":[],"mappings":"AAkBA,MAAM,MAAM,eAAe,GACvB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAKlC,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED,oEAAoE;AACpE,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAM5F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAmBvD;AA2HD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAoCnE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAyBhE"}
1
+ {"version":3,"file":"ids-regex.d.ts","sourceRoot":"","sources":["../../src/ids/ids-regex.ts"],"names":[],"mappings":"AAkBA,MAAM,MAAM,eAAe,GACvB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAKlC,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED,oEAAoE;AACpE,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAM5F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAmBvD;AAiID;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAoCnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAUhE"}
@@ -129,6 +129,10 @@ function unwrapAnchoredGroup(source) {
129
129
  return depth === 0 ? inner : null;
130
130
  }
131
131
  const QUANTIFIER_END = new Set(['*', '+', '?', '}']);
132
+ /** JS `.` without the `s` flag in XSD syntax: XSD's `.` also matches the
133
+ * line and paragraph separators U+2028 (`\p{Zl}`) and U+2029 (`\p{Zp}`),
134
+ * which JS `.` does not. */
135
+ const JS_DOT_XSD = '[^\\n\\r\\p{Zl}\\p{Zp}]';
132
136
  /** Rewrite a JS regex body (no anchors) into XSD syntax, or say why not. */
133
137
  function jsBodyToXsd(body, unicode) {
134
138
  let out = '';
@@ -220,7 +224,8 @@ function jsBodyToXsd(body, unicode) {
220
224
  }
221
225
  if (QUANTIFIER_END.has(ch))
222
226
  afterQuantifier = true;
223
- out += ch;
227
+ // JS `.` (no `s` flag) excludes U+2028/U+2029; XSD `.` matches them.
228
+ out += ch === '.' ? JS_DOT_XSD : ch;
224
229
  }
225
230
  if (inClass)
226
231
  return { ok: false, reason: 'the pattern has an unterminated character class' };
@@ -289,37 +294,14 @@ export function jsRegexToIdsPattern(regex) {
289
294
  /**
290
295
  * Translate an IDS pattern into the rule operand that accepts the same
291
296
  * values: a `/^(?:…)$/u` literal (the `u` flag because XSD's `\d`, `\i`,
292
- * `\c` and `\w` translate to Unicode property escapes). XSD's `^` and `$`
293
- * are ordinary characters, so they are escaped first.
297
+ * `\c` and `\w` translate to Unicode property escapes). The pattern goes
298
+ * through the IDS checker's own translator unchanged, so `^` and `$` read
299
+ * exactly as the checker reads them: literal characters, except that a
300
+ * pattern-initial `^` and pattern-final `$` are redundant anchors and drop
301
+ * (`^US$` accepts `US`, `US$?` accepts `US` or `US$`).
294
302
  */
295
303
  export function idsPatternToJsRegex(xsd) {
296
- let literalAnchors = '';
297
- let inClass = false;
298
- let classStart = false;
299
- for (let i = 0; i < xsd.length; i++) {
300
- const ch = xsd[i];
301
- if (ch === '\\') {
302
- literalAnchors += ch + (xsd[i + 1] ?? '');
303
- i++;
304
- classStart = false;
305
- continue;
306
- }
307
- if (inClass) {
308
- if (ch === ']' && !classStart)
309
- inClass = false;
310
- classStart = false;
311
- literalAnchors += ch;
312
- continue;
313
- }
314
- if (ch === '[') {
315
- inClass = true;
316
- classStart = true;
317
- literalAnchors += ch;
318
- continue;
319
- }
320
- literalAnchors += ch === '^' || ch === '$' ? `\\${ch}` : ch;
321
- }
322
- const translated = translateXsdRegex(literalAnchors);
304
+ const translated = translateXsdRegex(xsd);
323
305
  if (!translated.supported)
324
306
  return { ok: false, reason: translated.reason };
325
307
  const source = `^(?:${translated.pattern})$`;
@@ -1 +1 @@
1
- {"version":3,"file":"ids-regex.js","sourceRoot":"","sources":["../../src/ids/ids-regex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ids-regex.js","sourceRoot":"","sources":["../../src/ids/ids-regex.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@
11
11
  * `exactClass`, `caseSensitive: false`, and model / model-tag targeting.
12
12
  * The per-condition mapping is in `rule-to-ids-facets.ts`.
13
13
  */
14
- import type { IDSDocument, IFCVersion } from '@ifc-lite/ids';
14
+ import { type IDSDocument, type IFCVersion } from '@ifc-lite/ids';
15
15
  import type { RuleSetFile } from '../rule-set/rule-set.js';
16
16
  import type { EvaluatorModel } from '../filter/filter-evaluate.js';
17
17
  export interface RuleSetToIdsOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"rule-set-to-ids.d.ts","sourceRoot":"","sources":["../../src/ids/rule-set-to-ids.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAoC,UAAU,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,KAAK,EAAmB,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAMnE,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,QAAQ,EAAE,WAAW,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,oEAAoE;IACpE,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAkGD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,GAAE,mBAAwB,GAAG,kBAAkB,CAqCrG"}
1
+ {"version":3,"file":"rule-set-to-ids.d.ts","sourceRoot":"","sources":["../../src/ids/rule-set-to-ids.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAe,KAAK,WAAW,EAA8C,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3H,OAAO,KAAK,EAAmB,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAKnE,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,QAAQ,EAAE,WAAW,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,oEAAoE;IACpE,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAkGD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,GAAE,mBAAwB,GAAG,kBAAkB,CAqCrG"}
@@ -1,9 +1,22 @@
1
1
  /* This Source Code Form is subject to the terms of the Mozilla Public
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
+ /**
5
+ * Export a rule set as an IDS 1.0 document (#5225), for the subset IDS can
6
+ * express. Every rule either becomes one specification that checks the
7
+ * same thing, or is refused with each reason named. Nothing is dropped or
8
+ * approximated silently: a rule-level setting IDS has no room for (a
9
+ * warning severity, a custom tolerance, case-insensitive matching) is a
10
+ * refusal too, because the exported check would give a different verdict.
11
+ *
12
+ * Refused outright: `unique`, `aggregate` and `compare` requirements,
13
+ * negated operators, OR (across groups or inside one), `ifcType` without
14
+ * `exactClass`, `caseSensitive: false`, and model / model-tag targeting.
15
+ * The per-condition mapping is in `rule-to-ids-facets.ts`.
16
+ */
17
+ import { writeIdsXml } from '@ifc-lite/ids';
4
18
  import { groupToFacets } from './rule-to-ids-facets.js';
5
19
  import { storedUnitScaleOf } from './stored-unit-scale.js';
6
- import { writeIdsXml } from './ids-xml-writer.js';
7
20
  /** The engine's default relative tolerance, which IDS 1.0 also fixes (bSI #418). */
8
21
  const IDS_TOLERANCE = 1e-6;
9
22
  /** Literal set/property names match case-insensitively in the rule engine, case-sensitively in IDS. */
@@ -1 +1 @@
1
- {"version":3,"file":"rule-set-to-ids.js","sourceRoot":"","sources":["../../src/ids/rule-set-to-ids.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rule-set-to-ids.js","sourceRoot":"","sources":["../../src/ids/rule-set-to-ids.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -32,6 +32,7 @@ export * from './filter/filter-iteration-source.js';
32
32
  export * from './filter/entity-predefined-type.js';
33
33
  export * from './filter/lens-material-names.js';
34
34
  export * from './filter/model-tag.js';
35
+ export { isCapturedEntityScope, resolveCapturedEntityScope, MAX_CAPTURED_SCOPE_MEMBERS, type CapturedEntityScope } from './filter/captured-scope.js';
35
36
  export * from './rule-set/rule-set.js';
36
37
  export * from './rule-set/rule-set-io.js';
37
38
  export * from './rule-set/rule-set-io-requirement.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;GAaG;AAGH,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,wBAAwB,EAAE,sBAAsB,EAChD,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,KAAK,mBAAmB,GAChF,MAAM,mCAAmC,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChG,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AAGtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;GAaG;AAGH,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,wBAAwB,EAAE,sBAAsB,EAChD,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,KAAK,mBAAmB,GAChF,MAAM,mCAAmC,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChG,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,0BAA0B,EACpF,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAG/D,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.js CHANGED
@@ -36,6 +36,7 @@ export * from './filter/filter-iteration-source.js';
36
36
  export * from './filter/entity-predefined-type.js';
37
37
  export * from './filter/lens-material-names.js';
38
38
  export * from './filter/model-tag.js';
39
+ export { isCapturedEntityScope, resolveCapturedEntityScope, MAX_CAPTURED_SCOPE_MEMBERS } from './filter/captured-scope.js';
39
40
  // ── `.rules.json` shape + parse/serialize (Node/browser-portable half) ─────
40
41
  export * from './rule-set/rule-set.js';
41
42
  export * from './rule-set/rule-set-io.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;;;GAaG;AAEH,+EAA+E;AAC/E,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAkB,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,wBAAwB,EAAE,sBAAsB,GAEjD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChG,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AAEtC,8EAA8E;AAC9E,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAE3C,8EAA8E;AAC9E,cAAc,yBAAyB,CAAC;AAExC,oFAAoF;AACpF,OAAO,EAAE,YAAY,EAAuE,MAAM,0BAA0B,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAgF,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;;;GAaG;AAEH,+EAA+E;AAC/E,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAkB,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,wBAAwB,EAAE,sBAAsB,GAEjD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChG,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,0BAA0B,EAC1D,MAAM,4BAA4B,CAAC;AAE/D,8EAA8E;AAC9E,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAE3C,8EAA8E;AAC9E,cAAc,yBAAyB,CAAC;AAExC,oFAAoF;AACpF,OAAO,EAAE,YAAY,EAAuE,MAAM,0BAA0B,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAgF,MAAM,0BAA0B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ifc-lite/rules",
3
- "version": "0.6.0",
3
+ "version": "0.7.2",
4
4
  "description": "Filter-rule vocabulary, evaluator and .rules.json information-validation engine for IFC-Lite",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,17 +13,17 @@
13
13
  }
14
14
  },
15
15
  "dependencies": {
16
- "@ifc-lite/ids": "3.2.0",
17
- "@ifc-lite/data": "6.1.0",
18
- "@ifc-lite/mutations": "3.1.0",
19
16
  "@ifc-lite/encoding": "2.3.0",
20
- "@ifc-lite/parser": "9.2.0",
21
- "@ifc-lite/regex-guard": "0.3.0"
17
+ "@ifc-lite/data": "6.2.0",
18
+ "@ifc-lite/ids": "3.3.2",
19
+ "@ifc-lite/mutations": "3.2.0",
20
+ "@ifc-lite/regex-guard": "0.3.0",
21
+ "@ifc-lite/parser": "9.5.0"
22
22
  },
23
23
  "devDependencies": {
24
- "@types/node": "^26.6.2",
24
+ "@types/node": "^26.6.4",
25
25
  "typescript": "^6.0.3",
26
- "vitest": "^5.0.2"
26
+ "vitest": "^5.0.3"
27
27
  },
28
28
  "license": "MPL-2.0",
29
29
  "author": "Louis True",
@@ -1,11 +0,0 @@
1
- /**
2
- * Serialise an `IDSDocument` as IDS 1.0 XML (#5225). Covers the subset of
3
- * the model `ruleSetToIds` produces: entity, attribute, property,
4
- * classification and material facets, with simple-value, pattern,
5
- * enumeration and numeric-bound constraints. Element order follows
6
- * `ids.xsd`, so `parseIDS` and `auditIDSDocument` read the result back.
7
- */
8
- import type { IDSDocument } from '@ifc-lite/ids';
9
- /** `doc` as an IDS 1.0 XML string. */
10
- export declare function writeIdsXml(doc: IDSDocument): string;
11
- //# sourceMappingURL=ids-xml-writer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ids-xml-writer.d.ts","sourceRoot":"","sources":["../../src/ids/ids-xml-writer.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAEV,WAAW,EAIZ,MAAM,eAAe,CAAC;AAuJvB,sCAAsC;AACtC,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAiBpD"}
@@ -1,172 +0,0 @@
1
- /* This Source Code Form is subject to the terms of the Mozilla Public
2
- * License, v. 2.0. If a copy of the MPL was not distributed with this
3
- * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
- const IDS_NS = 'http://standards.buildingsmart.org/IDS';
5
- const XS_NS = 'http://www.w3.org/2001/XMLSchema';
6
- const XSI_NS = 'http://www.w3.org/2001/XMLSchema-instance';
7
- const SCHEMA_LOCATION = `${IDS_NS} http://standards.buildingsmart.org/IDS/1.0/ids.xsd`;
8
- function escapeXml(text) {
9
- return text
10
- .replace(/&/g, '&amp;')
11
- .replace(/</g, '&lt;')
12
- .replace(/>/g, '&gt;')
13
- .replace(/"/g, '&quot;')
14
- .replace(/'/g, '&apos;');
15
- }
16
- class XmlLines {
17
- lines = [];
18
- depth = 0;
19
- open(tag, attrs = {}) {
20
- this.lines.push(`${this.indent()}<${tag}${renderAttrs(attrs)}>`);
21
- this.depth++;
22
- }
23
- close(tag) {
24
- this.depth--;
25
- this.lines.push(`${this.indent()}</${tag}>`);
26
- }
27
- leaf(tag, text, attrs = {}) {
28
- this.lines.push(`${this.indent()}<${tag}${renderAttrs(attrs)}>${escapeXml(text)}</${tag}>`);
29
- }
30
- empty(tag, attrs = {}) {
31
- this.lines.push(`${this.indent()}<${tag}${renderAttrs(attrs)}/>`);
32
- }
33
- indent() {
34
- return ' '.repeat(this.depth);
35
- }
36
- }
37
- function renderAttrs(attrs) {
38
- let out = '';
39
- for (const [key, value] of Object.entries(attrs)) {
40
- if (value !== undefined)
41
- out += ` ${key}="${escapeXml(value)}"`;
42
- }
43
- return out;
44
- }
45
- function writeConstraint(xml, tag, constraint) {
46
- xml.open(tag);
47
- switch (constraint.type) {
48
- case 'simpleValue':
49
- xml.leaf('simpleValue', constraint.value);
50
- break;
51
- case 'pattern':
52
- xml.open('xs:restriction', { base: constraint.base ?? 'xs:string' });
53
- xml.empty('xs:pattern', { value: constraint.pattern });
54
- xml.close('xs:restriction');
55
- break;
56
- case 'enumeration':
57
- xml.open('xs:restriction', { base: constraint.base ?? 'xs:string' });
58
- for (const value of constraint.values)
59
- xml.empty('xs:enumeration', { value });
60
- xml.close('xs:restriction');
61
- break;
62
- case 'bounds': {
63
- xml.open('xs:restriction', { base: constraint.base ?? 'xs:double' });
64
- const bounds = [
65
- ['xs:minInclusive', constraint.minInclusive],
66
- ['xs:minExclusive', constraint.minExclusive],
67
- ['xs:maxInclusive', constraint.maxInclusive],
68
- ['xs:maxExclusive', constraint.maxExclusive],
69
- ];
70
- for (const [facet, value] of bounds) {
71
- if (value !== undefined)
72
- xml.empty(facet, { value: String(value) });
73
- }
74
- xml.close('xs:restriction');
75
- break;
76
- }
77
- }
78
- xml.close(tag);
79
- }
80
- function writeFacet(xml, facet, cardinality) {
81
- switch (facet.type) {
82
- case 'entity':
83
- xml.open('entity');
84
- writeConstraint(xml, 'name', facet.name);
85
- if (facet.predefinedType)
86
- writeConstraint(xml, 'predefinedType', facet.predefinedType);
87
- xml.close('entity');
88
- return;
89
- case 'attribute':
90
- xml.open('attribute', { cardinality });
91
- writeConstraint(xml, 'name', facet.name);
92
- if (facet.value)
93
- writeConstraint(xml, 'value', facet.value);
94
- xml.close('attribute');
95
- return;
96
- case 'property':
97
- xml.open('property', { cardinality });
98
- writeConstraint(xml, 'propertySet', facet.propertySet);
99
- writeConstraint(xml, 'baseName', facet.baseName);
100
- if (facet.value)
101
- writeConstraint(xml, 'value', facet.value);
102
- xml.close('property');
103
- return;
104
- case 'classification':
105
- xml.open('classification', { cardinality });
106
- if (facet.value)
107
- writeConstraint(xml, 'value', facet.value);
108
- if (facet.system)
109
- writeConstraint(xml, 'system', facet.system);
110
- xml.close('classification');
111
- return;
112
- case 'material':
113
- xml.open('material', { cardinality });
114
- if (facet.value)
115
- writeConstraint(xml, 'value', facet.value);
116
- xml.close('material');
117
- return;
118
- case 'partOf':
119
- // `ruleSetToIds` never produces one (a rule's `parent` subject matches
120
- // an ancestor's Name, not its class); refusing here keeps the writer
121
- // honest if a caller hands it a document from elsewhere.
122
- throw new Error('writeIdsXml: partOf facets are not supported by this writer');
123
- }
124
- }
125
- function writeRequirement(xml, requirement) {
126
- // IDS 1.0 has no cardinality on an entity facet inside requirements.
127
- const cardinality = requirement.facet.type === 'entity' ? undefined : requirement.optionality;
128
- writeFacet(xml, requirement.facet, cardinality);
129
- }
130
- function writeSpecification(xml, spec) {
131
- xml.open('specification', {
132
- name: spec.name,
133
- ifcVersion: spec.ifcVersions.join(' '),
134
- identifier: spec.identifier,
135
- description: spec.description,
136
- instructions: spec.instructions,
137
- });
138
- const maxOccurs = spec.maxOccurs === undefined ? 'unbounded' : String(spec.maxOccurs);
139
- xml.open('applicability', { minOccurs: String(spec.minOccurs ?? 0), maxOccurs });
140
- for (const facet of spec.applicability.facets)
141
- writeFacet(xml, facet, undefined);
142
- xml.close('applicability');
143
- if (spec.requirements.length > 0) {
144
- xml.open('requirements');
145
- for (const requirement of spec.requirements)
146
- writeRequirement(xml, requirement);
147
- xml.close('requirements');
148
- }
149
- xml.close('specification');
150
- }
151
- /** `doc` as an IDS 1.0 XML string. */
152
- export function writeIdsXml(doc) {
153
- const xml = new XmlLines();
154
- xml.open('ids', {
155
- xmlns: IDS_NS,
156
- 'xmlns:xs': XS_NS,
157
- 'xmlns:xsi': XSI_NS,
158
- 'xsi:schemaLocation': SCHEMA_LOCATION,
159
- });
160
- xml.open('info');
161
- xml.leaf('title', doc.info.title);
162
- if (doc.info.description)
163
- xml.leaf('description', doc.info.description);
164
- xml.close('info');
165
- xml.open('specifications');
166
- for (const spec of doc.specifications)
167
- writeSpecification(xml, spec);
168
- xml.close('specifications');
169
- xml.close('ids');
170
- return `<?xml version="1.0" encoding="UTF-8"?>\n${xml.lines.join('\n')}\n`;
171
- }
172
- //# sourceMappingURL=ids-xml-writer.js.map