Skip to content

Commit 4e788ed

Browse files
committed
Initial support for XML Schema
1 parent 541a845 commit 4e788ed

47 files changed

Lines changed: 8909 additions & 2608 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ dist/
55
.vscode/
66
.scannerwork/
77
ts/test.ts
8-
test.xml
98
notes/
109
catalog/
1110
tests/

dtd-test-report.json

Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
{
2+
"validXML": {
3+
"passed": 133,
4+
"failed": 31,
5+
"tests": [
6+
{
7+
"file": "094.xml",
8+
"success": false,
9+
"error": "Canonical form mismatch",
10+
"duration": 0
11+
},
12+
{
13+
"file": "104.xml",
14+
"success": false,
15+
"error": "Canonical form mismatch",
16+
"duration": 0
17+
},
18+
{
19+
"file": "106.xml",
20+
"success": false,
21+
"error": "Canonical form mismatch",
22+
"duration": 0
23+
},
24+
{
25+
"file": "107.xml",
26+
"success": false,
27+
"error": "Canonical form mismatch",
28+
"duration": 0
29+
},
30+
{
31+
"file": "110.xml",
32+
"success": false,
33+
"error": "Canonical form mismatch",
34+
"duration": 0
35+
},
36+
{
37+
"file": "115.xml",
38+
"success": false,
39+
"error": "Canonical form mismatch",
40+
"duration": 0
41+
},
42+
{
43+
"file": "001.xml",
44+
"success": false,
45+
"error": "Canonical form mismatch",
46+
"duration": 0
47+
},
48+
{
49+
"file": "002.xml",
50+
"success": false,
51+
"error": "Canonical form mismatch",
52+
"duration": 0
53+
},
54+
{
55+
"file": "004.xml",
56+
"success": false,
57+
"error": "Canonical form mismatch",
58+
"duration": 0
59+
},
60+
{
61+
"file": "005.xml",
62+
"success": false,
63+
"error": "Canonical form mismatch",
64+
"duration": 0
65+
},
66+
{
67+
"file": "006.xml",
68+
"success": false,
69+
"error": "Canonical form mismatch",
70+
"duration": 0
71+
},
72+
{
73+
"file": "007.xml",
74+
"success": false,
75+
"error": "Canonical form mismatch",
76+
"duration": 0
77+
},
78+
{
79+
"file": "008.xml",
80+
"success": false,
81+
"error": "Canonical form mismatch",
82+
"duration": 0
83+
},
84+
{
85+
"file": "009.xml",
86+
"success": false,
87+
"error": "Canonical form mismatch",
88+
"duration": 0
89+
},
90+
{
91+
"file": "011.xml",
92+
"success": false,
93+
"error": "Canonical form mismatch",
94+
"duration": 0
95+
},
96+
{
97+
"file": "012.xml",
98+
"success": false,
99+
"error": "Canonical form mismatch",
100+
"duration": 0
101+
},
102+
{
103+
"file": "013.xml",
104+
"success": false,
105+
"error": "Canonical form mismatch",
106+
"duration": 0
107+
},
108+
{
109+
"file": "014.xml",
110+
"success": false,
111+
"error": "Canonical form mismatch",
112+
"duration": 0
113+
},
114+
{
115+
"file": "003.xml",
116+
"success": false,
117+
"error": "Canonical form mismatch",
118+
"duration": 0
119+
},
120+
{
121+
"file": "017.xml",
122+
"success": false,
123+
"error": "Canonical form mismatch",
124+
"duration": 0
125+
},
126+
{
127+
"file": "018.xml",
128+
"success": false,
129+
"error": "Canonical form mismatch",
130+
"duration": 0
131+
},
132+
{
133+
"file": "019.xml",
134+
"success": false,
135+
"error": "Canonical form mismatch",
136+
"duration": 0
137+
},
138+
{
139+
"file": "020.xml",
140+
"success": false,
141+
"error": "Canonical form mismatch",
142+
"duration": 0
143+
},
144+
{
145+
"file": "021.xml",
146+
"success": false,
147+
"error": "Canonical form mismatch",
148+
"duration": 0
149+
},
150+
{
151+
"file": "022.xml",
152+
"success": false,
153+
"error": "Canonical form mismatch",
154+
"duration": 0
155+
},
156+
{
157+
"file": "023.xml",
158+
"success": false,
159+
"error": "Canonical form mismatch",
160+
"duration": 0
161+
},
162+
{
163+
"file": "024.xml",
164+
"success": false,
165+
"error": "Canonical form mismatch",
166+
"duration": 0
167+
},
168+
{
169+
"file": "025.xml",
170+
"success": false,
171+
"error": "Canonical form mismatch",
172+
"duration": 0
173+
},
174+
{
175+
"file": "031.xml",
176+
"success": false,
177+
"error": "Canonical form mismatch",
178+
"duration": 0
179+
}
180+
]
181+
},
182+
"invalidXML": {
183+
"passed": 2,
184+
"failed": 4,
185+
"tests": []
186+
},
187+
"notWellFormed": {
188+
"passed": 125,
189+
"failed": 72,
190+
"tests": []
191+
},
192+
"performance": {
193+
"totalDuration": 218,
194+
"averagePerTest": 1
195+
}
196+
}

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "typesxml",
33
"productName": "TypesXML",
4-
"version": "1.11.0",
4+
"version": "2.0.0",
55
"description": "Open source XML library written in TypeScript with DTD validation and default attribute support",
66
"keywords": [
77
"XML",
@@ -15,9 +15,9 @@
1515
"Default Attributes"
1616
],
1717
"scripts": {
18-
"build": "tsc",
19-
"test": "npm run build && node tests/comprehensive-test-suite.js",
20-
"test:setup": "node tests/setup-test-suite.js"
18+
"build": "tsc && cp ts/grammar/*.json dist/grammar/",
19+
"testDtd": "npm run build && node dist/tests/DTDTestSuite.js",
20+
"testSchema": "npm run build && node dist/tests/XMLSchemaTestSuite.js"
2121
},
2222
"author": {
2323
"name": "Rodolfo M. Raya",

terminology.docx_review_es.xlf

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<xliff srcLang="en" xmlns:mtc="urn:oasis:names:tc:xliff:matches:2.0" version="2.1" xmlns:gls="urn:oasis:names:tc:xliff:glossary:2.0" xmlns:mda="urn:oasis:names:tc:xliff:metadata:2.0" trgLang="es" xmlns="urn:oasis:names:tc:xliff:document:2.0">
3+
<file original="/Users/rmraya/Desktop/terminology.docx" canResegment="no" id="1">
4+
<?metadata {"data":[{"meta":[{"type":"userName","value":"rmray"},{"type":"comment","value":"File comment"}],"id":"gc1"}]}?>
5+
<mda:metadata>
6+
<mda:metaGroup category="format">
7+
<mda:meta type="datatype">x-office</mda:meta>
8+
</mda:metaGroup>
9+
<mda:metaGroup category="document">
10+
<mda:meta type="original">word/document.xml</mda:meta>
11+
</mda:metaGroup>
12+
<mda:metaGroup category="tool">
13+
<mda:meta type="tool-id">OpenXLIFF</mda:meta>
14+
<mda:meta type="tool-name">OpenXLIFF Filters</mda:meta>
15+
<mda:meta type="tool-version">4.9.0 20251010_1435</mda:meta>
16+
</mda:metaGroup>
17+
<mda:metaGroup category="PI">
18+
<mda:meta type="encoding">UTF-8</mda:meta>
19+
</mda:metaGroup>
20+
<mda:metaGroup category="sourceFile">
21+
<mda:meta type="sourceFile">terminology.docx</mda:meta>
22+
</mda:metaGroup>
23+
<mda:metaGroup category="reviewProject">
24+
<mda:meta type="Swordfish">5.14.2</mda:meta>
25+
<mda:meta type="id">1760118656238</mda:meta>
26+
</mda:metaGroup>
27+
</mda:metadata>
28+
<unit id="0">
29+
<?metadata {"data":[{"meta":[{"type":"category","value":"Other"},{"type":"severity","value":""},{"type":"appliesTo","value":""},{"type":"userName","value":"Rodolfo M. Raya"},{"type":"comment","value":"First comment at segment element"}],"id":"uc1"}]}?>
30+
<segment state="initial" id="0">
31+
<source xml:space="preserve">A terminology management system should have the following features:</source>
32+
</segment>
33+
</unit>
34+
<unit id="1">
35+
<?metadata {"data":[{"meta":[{"type":"category","value":""},{"type":"severity","value":""},{"type":"appliesTo","value":""},{"type":"userName","value":"rmray"},{"type":"comment","value":"Segment level comment #2"}],"id":"uc1"}]}?>
36+
<segment state="initial" id="1">
37+
<source xml:space="preserve">Term management: The ability to create, edit, and delete terms, as well as categorize them into various subject areas.</source>
38+
</segment>
39+
</unit>
40+
<unit id="2">
41+
<segment state="initial" id="2">
42+
<source xml:space="preserve">Term relationships: The ability to establish relationships between terms, such as synonyms, antonyms, translations, and hierarchical relationships.</source>
43+
</segment>
44+
</unit>
45+
<unit id="3">
46+
<segment state="initial" id="3">
47+
<source xml:space="preserve">Multi-lingual support: The ability to work with terms in multiple languages and provide translations where necessary.</source>
48+
</segment>
49+
</unit>
50+
<unit id="4">
51+
<segment state="initial" id="4">
52+
<source xml:space="preserve">Search and navigation: A user-friendly interface that allows users to search for terms, browse through categories and relationships, and view term details.</source>
53+
</segment>
54+
</unit>
55+
<unit id="5">
56+
<segment state="initial" id="5">
57+
<source xml:space="preserve">Import/Export capabilities: The ability to import and export term data from/to various formats, such as CSV, XML, and terminology exchange standards like TBX.</source>
58+
</segment>
59+
</unit>
60+
<unit id="6">
61+
<segment state="initial" id="6">
62+
<source xml:space="preserve">User management: The ability to assign roles and permissions to different users and manage their access to the terminology database.</source>
63+
</segment>
64+
</unit>
65+
<unit id="7">
66+
<segment state="initial" id="7">
67+
<source xml:space="preserve">Approval workflows: A system for managing and approving changes to terms, such as proposing new terms, modifying existing terms, or retiring outdated terms.</source>
68+
</segment>
69+
</unit>
70+
<unit id="8">
71+
<segment state="initial" id="8">
72+
<source xml:space="preserve">Integration with other tools: The ability to integrate with other tools and systems, such as content management systems, translation memory tools, and machine translation systems.</source>
73+
</segment>
74+
</unit>
75+
<unit id="9">
76+
<segment state="initial" id="9">
77+
<source xml:space="preserve">Reporting and analytics: The ability to generate reports on term usage and trends, as well as track changes and usage statistics over time.</source>
78+
</segment>
79+
</unit>
80+
<unit id="10">
81+
<segment state="initial" id="10">
82+
<source xml:space="preserve">Scalability and stability: The ability to handle large volumes of terms and provide stable performance and accessibility, even as the terminology database grows.</source>
83+
</segment>
84+
</unit>
85+
</file>
86+
</xliff>

0 commit comments

Comments
 (0)