|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
Как сделать ключ xs:key с двумя полями, где одно поле проверяет уникальность элементов уровня N (и позволяет на них сослаться xs:keyref), а другое поле проверяет уникальность элементов уровня N + M (и для ссылок), входящих в элементы, на которые указывает первое поле. Причем уникальность элементов уровня N+M только в пределах родительских элементов уровня N из первого поля. Пример XML, который надо проверить. В комментах указано, что надо проверить: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
Возможно такое? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 17:32 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSHВозможно такое?Легко Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 18:11 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
_Vasilisk_Легко Просто добавив только ключ Код: xml 1. 2. 3. 4. 5.
получаем ошибки: Код: plaintext 1. 2. 3.
на всех не первых элементах <Attr .../> каждого Entity/Attributes <Attributes> <Attr aname="Attr2_1" typeCode="qwerty"/> <Attr aname= "Attr2_1" typeCode="qwerty"/> <-- ошибка > <Attr aname= "Attr2_22" typeCode="qwerty"/> <-- ошибка > </Attributes> ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 18:41 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSHна всех не первых элементах <Attr .../> каждого Entity/AttributesДопустим. А так? Код: xml 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 18:54 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSHполучаем ошибки: Код: plaintext 1. 2. 3.
на всех не первых элементах <Attr .../> каждого Entity/Attributes кроме того, дает ошибку на существующей ссылке. вот полный xml с inline схемой Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 18:56 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
_Vasilisk_Допустим. А так? Код: xml 1. 2. 3. 4. 5.
а так ошибка на xpath, "../" - не предусмотренный вариант формата пути Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 18:59 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSHкроме того, дает ошибку на существующей ссылке. наверное ошибка о несуществовании ключа - это потому, что этой ошибке предшествовала ошибка Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 19:03 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSHа так ошибка на xpath, "../" - не предусмотренный вариант формата путиВижу. Ну тогда, похоже, задача не решается. И не потому, что элементы на разных уровнях, а потому, что должны быть именно пары полей для каждого ключа. А у Вас для разных @aname используется один @ename. Пар нет ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 19:10 |
|
xsd xs:key с несколькими полями разного уровня
|
|||
---|---|---|---|
#18+
MaratSH_Vasilisk_Допустим. А так? Код: xml 1. 2. 3. 4. 5.
а так ошибка на xpath, "../" - не предусмотренный вариант формата пути Код: plaintext
Код: xml 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2015, 19:45 |
|
|
start [/forum/topic.php?fid=14&fpage=9&tid=1332197]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
77ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 236ms |
total: | 411ms |
0 / 0 |