@nahisaho/musubix-sdd-ontology 1.0.0

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 (42) hide show
  1. package/dist/index.d.ts +14 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +21 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/loader/index.d.ts +6 -0
  6. package/dist/loader/index.d.ts.map +1 -0
  7. package/dist/loader/index.js +6 -0
  8. package/dist/loader/index.js.map +1 -0
  9. package/dist/loader/ontology-loader.d.ts +38 -0
  10. package/dist/loader/ontology-loader.d.ts.map +1 -0
  11. package/dist/loader/ontology-loader.js +87 -0
  12. package/dist/loader/ontology-loader.js.map +1 -0
  13. package/dist/modules/c4.d.ts +32 -0
  14. package/dist/modules/c4.d.ts.map +1 -0
  15. package/dist/modules/c4.js +52 -0
  16. package/dist/modules/c4.js.map +1 -0
  17. package/dist/modules/core.d.ts +24 -0
  18. package/dist/modules/core.d.ts.map +1 -0
  19. package/dist/modules/core.js +33 -0
  20. package/dist/modules/core.js.map +1 -0
  21. package/dist/modules/ears.d.ts +28 -0
  22. package/dist/modules/ears.d.ts.map +1 -0
  23. package/dist/modules/ears.js +93 -0
  24. package/dist/modules/ears.js.map +1 -0
  25. package/dist/modules/traceability.d.ts +32 -0
  26. package/dist/modules/traceability.d.ts.map +1 -0
  27. package/dist/modules/traceability.js +58 -0
  28. package/dist/modules/traceability.js.map +1 -0
  29. package/dist/types.d.ts +106 -0
  30. package/dist/types.d.ts.map +1 -0
  31. package/dist/types.js +6 -0
  32. package/dist/types.js.map +1 -0
  33. package/dist/validator/index.d.ts +6 -0
  34. package/dist/validator/index.d.ts.map +1 -0
  35. package/dist/validator/index.js +6 -0
  36. package/dist/validator/index.js.map +1 -0
  37. package/dist/validator/ontology-validator.d.ts +23 -0
  38. package/dist/validator/ontology-validator.d.ts.map +1 -0
  39. package/dist/validator/ontology-validator.js +120 -0
  40. package/dist/validator/ontology-validator.js.map +1 -0
  41. package/package.json +50 -0
  42. package/ttl/sdd-core.ttl +493 -0
@@ -0,0 +1,106 @@
1
+ /**
2
+ * @fileoverview SDD Ontology type definitions
3
+ * @traceability REQ-SDD-ONTO-001
4
+ */
5
+ /**
6
+ * Ontology module metadata
7
+ */
8
+ export interface OntologyModule {
9
+ id: string;
10
+ name: string;
11
+ namespace: string;
12
+ version: string;
13
+ description: string;
14
+ dependencies: string[];
15
+ filePath: string;
16
+ }
17
+ /**
18
+ * EARS requirement types
19
+ */
20
+ export type EarsPatternType = 'ubiquitous' | 'event-driven' | 'state-driven' | 'unwanted' | 'optional';
21
+ /**
22
+ * EARS requirement structure
23
+ */
24
+ export interface EarsRequirement {
25
+ id: string;
26
+ pattern: EarsPatternType;
27
+ trigger?: string;
28
+ condition?: string;
29
+ system: string;
30
+ response: string;
31
+ priority: 'P0' | 'P1' | 'P2';
32
+ }
33
+ /**
34
+ * C4 diagram level
35
+ */
36
+ export type C4Level = 'context' | 'container' | 'component' | 'code';
37
+ /**
38
+ * C4 element structure
39
+ */
40
+ export interface C4Element {
41
+ id: string;
42
+ level: C4Level;
43
+ name: string;
44
+ type: string;
45
+ description: string;
46
+ technology?: string;
47
+ parent?: string;
48
+ relationships: C4Relationship[];
49
+ }
50
+ /**
51
+ * C4 relationship
52
+ */
53
+ export interface C4Relationship {
54
+ target: string;
55
+ description: string;
56
+ technology?: string;
57
+ }
58
+ /**
59
+ * Traceability link types
60
+ */
61
+ export type TraceLinkType = 'satisfies' | 'implements' | 'tests' | 'derives-from' | 'refines';
62
+ /**
63
+ * Traceability link
64
+ */
65
+ export interface TraceLink {
66
+ source: string;
67
+ target: string;
68
+ type: TraceLinkType;
69
+ rationale?: string;
70
+ }
71
+ /**
72
+ * Validation result
73
+ */
74
+ export interface ValidationResult {
75
+ valid: boolean;
76
+ errors: ValidationError[];
77
+ warnings: ValidationWarning[];
78
+ }
79
+ /**
80
+ * Validation error
81
+ */
82
+ export interface ValidationError {
83
+ code: string;
84
+ message: string;
85
+ location?: string;
86
+ }
87
+ /**
88
+ * Validation warning
89
+ */
90
+ export interface ValidationWarning {
91
+ code: string;
92
+ message: string;
93
+ suggestion?: string;
94
+ }
95
+ /**
96
+ * Supported languages for i18n
97
+ */
98
+ export type SupportedLanguage = 'en' | 'ja';
99
+ /**
100
+ * Localized string
101
+ */
102
+ export interface LocalizedString {
103
+ en: string;
104
+ ja?: string;
105
+ }
106
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,YAAY,GACZ,cAAc,GACd,cAAc,GACd,UAAU,GACV,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,cAAc,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,YAAY,GACZ,OAAO,GACP,cAAc,GACd,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,CAAC,EAAE,MAAM,CAAC;CACb"}
package/dist/types.js ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview SDD Ontology type definitions
3
+ * @traceability REQ-SDD-ONTO-001
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Ontology validator module
3
+ * @traceability TSK-SDD-ONTO-006
4
+ */
5
+ export { OntologyValidator } from './ontology-validator.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Ontology validator module
3
+ * @traceability TSK-SDD-ONTO-006
4
+ */
5
+ export { OntologyValidator } from './ontology-validator.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @fileoverview Ontology validator for TTL syntax and semantics
3
+ * @traceability TSK-SDD-ONTO-006, REQ-SDD-ONTO-001-F006
4
+ */
5
+ import type { ValidationResult } from '../types.js';
6
+ /**
7
+ * Ontology validator
8
+ */
9
+ export declare class OntologyValidator {
10
+ /**
11
+ * Validate TTL content (basic syntax check)
12
+ */
13
+ validateTTL(content: string): ValidationResult;
14
+ /**
15
+ * Validate EARS requirement text
16
+ */
17
+ validateEarsText(text: string): ValidationResult;
18
+ /**
19
+ * Validate C4 element ID format
20
+ */
21
+ validateC4ElementId(id: string): ValidationResult;
22
+ }
23
+ //# sourceMappingURL=ontology-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontology-validator.d.ts","sourceRoot":"","sources":["../../src/validator/ontology-validator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAsC,MAAM,aAAa,CAAC;AAExF;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB;IA+C9C;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAwChD;;OAEG;IACH,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB;CA2BlD"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * @fileoverview Ontology validator for TTL syntax and semantics
3
+ * @traceability TSK-SDD-ONTO-006, REQ-SDD-ONTO-001-F006
4
+ */
5
+ /**
6
+ * Ontology validator
7
+ */
8
+ export class OntologyValidator {
9
+ /**
10
+ * Validate TTL content (basic syntax check)
11
+ */
12
+ validateTTL(content) {
13
+ const errors = [];
14
+ const warnings = [];
15
+ // Check for required prefixes
16
+ if (!content.includes('@prefix')) {
17
+ errors.push({
18
+ code: 'MISSING_PREFIX',
19
+ message: 'TTL file must contain @prefix declarations',
20
+ });
21
+ }
22
+ // Check for unclosed quotes
23
+ const quoteMatches = content.match(/"/g);
24
+ if (quoteMatches && quoteMatches.length % 2 !== 0) {
25
+ errors.push({
26
+ code: 'UNCLOSED_QUOTE',
27
+ message: 'TTL file contains unclosed string literal',
28
+ });
29
+ }
30
+ // Check for statement termination
31
+ const lines = content.split('\n');
32
+ for (let i = 0; i < lines.length; i++) {
33
+ const line = lines[i].trim();
34
+ if (line && !line.startsWith('#') && !line.startsWith('@')) {
35
+ // Non-empty, non-comment, non-directive line should end with . , or ;
36
+ if (!line.endsWith('.') && !line.endsWith(',') && !line.endsWith(';')) {
37
+ // Could be multi-line - just a warning
38
+ if (i === lines.length - 1 || !lines[i + 1].trim().match(/^[.,;]/)) {
39
+ warnings.push({
40
+ code: 'POSSIBLE_UNTERMINATED',
41
+ message: `Line ${i + 1} may be unterminated`,
42
+ suggestion: 'Check statement termination with . , or ;',
43
+ });
44
+ }
45
+ }
46
+ }
47
+ }
48
+ return {
49
+ valid: errors.length === 0,
50
+ errors,
51
+ warnings,
52
+ };
53
+ }
54
+ /**
55
+ * Validate EARS requirement text
56
+ */
57
+ validateEarsText(text) {
58
+ const errors = [];
59
+ const warnings = [];
60
+ // Check for EARS keywords
61
+ const hasEarsKeyword = /^(THE|WHEN|WHILE|IF)\s/i.test(text);
62
+ if (!hasEarsKeyword) {
63
+ errors.push({
64
+ code: 'MISSING_EARS_KEYWORD',
65
+ message: 'EARS requirement must start with THE, WHEN, WHILE, or IF',
66
+ });
67
+ }
68
+ // Check for SHALL
69
+ if (!text.includes('SHALL')) {
70
+ errors.push({
71
+ code: 'MISSING_SHALL',
72
+ message: 'EARS requirement must contain SHALL',
73
+ });
74
+ }
75
+ // Check for ambiguous words
76
+ const ambiguousWords = ['might', 'could', 'should', 'may'];
77
+ for (const word of ambiguousWords) {
78
+ if (new RegExp(`\\b${word}\\b`, 'i').test(text)) {
79
+ warnings.push({
80
+ code: 'AMBIGUOUS_WORD',
81
+ message: `Requirement contains ambiguous word: ${word}`,
82
+ suggestion: `Consider using SHALL or SHALL NOT instead of ${word}`,
83
+ });
84
+ }
85
+ }
86
+ return {
87
+ valid: errors.length === 0,
88
+ errors,
89
+ warnings,
90
+ };
91
+ }
92
+ /**
93
+ * Validate C4 element ID format
94
+ */
95
+ validateC4ElementId(id) {
96
+ const errors = [];
97
+ const warnings = [];
98
+ // ID should be alphanumeric with hyphens
99
+ if (!/^[a-z][a-z0-9-]*$/i.test(id)) {
100
+ errors.push({
101
+ code: 'INVALID_C4_ID',
102
+ message: 'C4 element ID must start with letter and contain only alphanumeric characters and hyphens',
103
+ });
104
+ }
105
+ // Warn if ID is too long
106
+ if (id.length > 50) {
107
+ warnings.push({
108
+ code: 'LONG_C4_ID',
109
+ message: 'C4 element ID is longer than 50 characters',
110
+ suggestion: 'Consider using a shorter, more descriptive ID',
111
+ });
112
+ }
113
+ return {
114
+ valid: errors.length === 0,
115
+ errors,
116
+ warnings,
117
+ };
118
+ }
119
+ }
120
+ //# sourceMappingURL=ontology-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontology-validator.js","sourceRoot":"","sources":["../../src/validator/ontology-validator.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@nahisaho/musubix-sdd-ontology",
3
+ "version": "1.0.0",
4
+ "description": "MUSUBIX SDD Ontology - Turtle modules for EARS, C4, Traceability",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ },
13
+ "./ttl/*": "./ttl/*"
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "ttl"
18
+ ],
19
+ "scripts": {
20
+ "build": "tsc",
21
+ "test": "vitest run",
22
+ "clean": "rm -rf dist",
23
+ "typecheck": "tsc --noEmit",
24
+ "validate-ttl": "node dist/cli/validate.js"
25
+ },
26
+ "keywords": [
27
+ "musubix",
28
+ "ontology",
29
+ "sdd",
30
+ "ears",
31
+ "c4model",
32
+ "traceability",
33
+ "turtle"
34
+ ],
35
+ "author": "nahisaho",
36
+ "license": "MIT",
37
+ "repository": {
38
+ "type": "git",
39
+ "url": "https://github.com/nahisaho/MUSUBIX.git",
40
+ "directory": "packages/sdd-ontology"
41
+ },
42
+ "dependencies": {},
43
+ "devDependencies": {
44
+ "typescript": "^5.7.0",
45
+ "vitest": "^3.0.0"
46
+ },
47
+ "peerDependencies": {
48
+ "@nahisaho/musubix-ontology-mcp": "^1.0.0"
49
+ }
50
+ }