Commit 32aaca8
committed
Support XMP lang-alt and xmpRights in portable XMP
Decode and emit XMP language-alt (rdf:Alt) items and add xmpRights namespace support. xmp_decode: validate and append xml:lang attributes to property paths (e.g. title[@xml:lang=x-default]) and set frame flags for Alt containers. xmp_dump: recognize xmpRights namespace, parse/validate lang-alt property names, track generated shapes and lang-alt keys, claim existing lang-alt entries, and emit rdf:Alt groups with rdf:li xml:lang entries. Adds data structures and logic to prefer/replace x-default alt text when canonicalizing managed namespaces, respects limits and safe-lang validation, and integrates lang-alt handling into the portable property collection/emission pipeline. Tests updated/added to cover decoding, dumping, and transfer behaviors for lang-alt, xmpRights, and canonicalization cases.1 parent ebbe735 commit 32aaca8
6 files changed
Lines changed: 978 additions & 65 deletions
File tree
- src
- include/openmeta
- openmeta
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
86 | | - | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
87 | 89 | | |
88 | 90 | | |
89 | 91 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
| 174 | + | |
174 | 175 | | |
175 | 176 | | |
176 | 177 | | |
| |||
306 | 307 | | |
307 | 308 | | |
308 | 309 | | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
309 | 362 | | |
310 | 363 | | |
311 | 364 | | |
| |||
396 | 449 | | |
397 | 450 | | |
398 | 451 | | |
| 452 | + | |
399 | 453 | | |
400 | 454 | | |
401 | 455 | | |
| |||
463 | 517 | | |
464 | 518 | | |
465 | 519 | | |
466 | | - | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
467 | 529 | | |
468 | 530 | | |
469 | 531 | | |
| |||
0 commit comments