Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±Π΅Π· структурированного ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π³Π΄Π΅ язык XML Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² срСдС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ описания ΠΈΡ… структуры, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ содСрТится Π² Ρ„Π°ΠΉΠ»Π°Ρ… с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ XSD (XML Schema Definition). Π‘Π΅Π· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ этой схСмы ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ смоТСт Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ входящих Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ сопоставлСниС ΠΏΠΎΠ»Π΅ΠΉ.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° XSD Π² 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ систСмным администраторам, Π±ΡƒΡ…Π³Π°Π»Ρ‚Π΅Ρ€Π°ΠΌ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΈ настройкС ΠΎΠ±ΠΌΠ΅Π½Π° с внСшними сСрвисами, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Π­Π”Πž (Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΎΠ±ΠΎΡ€ΠΎΡ‚), государствСнныС ΠΏΠΎΡ€Ρ‚Π°Π»Ρ‹ ΠΈΠ»ΠΈ банковскиС ΡˆΠ»ΡŽΠ·Ρ‹. Часто ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ситуациСй, ΠΊΠΎΠ³Π΄Π° систСма Π²Ρ‹Π΄Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΎ нСсоотвСтствии Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, хотя сам Ρ„Π°ΠΉΠ» XML выглядит ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ. Π’ этом ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ схСмы, особСнности Ρ€Π°Π±ΠΎΡ‚Ρ‹ со встроСнными инструмСнтами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ диагностики распространСнных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, БухгалтСрия ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ ΠΈΠ»ΠΈ Π£Π’ 11) интСрфСйс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ отличия. Однако Π»ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Β«XML-схСма» остаСтся Π΅Π΄ΠΈΠ½ΠΎΠΉ для всСй экосистСмы 1Π‘. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° схСмы β€” это Π½Π΅ просто ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°, Π° созданиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Ρ„Π°ΠΉΠ»Π° схСмы XSD ΠΊ ΠΈΠΌΠΏΠΎΡ€Ρ‚Ρƒ

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² интСрфСйсС 1Π‘ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² цСлостности ΠΈ коррСктности самого Ρ„Π°ΠΉΠ»Π° схСмы. Часто ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… источников, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ссылки Π½Π° внСшниС рСсурсы ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, нСсовмСстимыС с Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой. Π˜Π΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ локальной ΠΊΠΎΠΏΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ UTF-8 Π±Π΅Π· BOM, Ρ‡Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ отсутствиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с русскоязычными названиями элСмСнтов.

Если схСма слоТная ΠΈ ссылаСтся Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ (Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π΅Π³ <xs:include> ΠΈΠ»ΠΈ <xs:import>), всС зависимыС XSD Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ основной Ρ„Π°ΠΉΠ». Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ чтСния 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΎ нСвозмоТности Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ структуру Ρ„Π°ΠΉΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, ΡƒΠ±Π΅Π΄ΠΈΠ²ΡˆΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ элСмСнт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ объявлСн ΠΈ namespaces (пространства ΠΈΠΌΠ΅Π½) ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ трСбованиям ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ стороны.

πŸ’‘

ΠŸΠ΅Ρ€Π΅Π΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ XSD Ρ„Π°ΠΉΠ» Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² ΠΏΠ΅Ρ€Π²Ρ‹Ρ… строках Π½Π΅ Π±Ρ‹Π»ΠΎ странных символов β€” это ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, которая сломаСт ΠΈΠΌΠΏΠΎΡ€Ρ‚ Π² 1Π‘.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях поставщики услуг ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ схСмы Π² Π²ΠΈΠ΄Π΅ ZIP-Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ². НС ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ² Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ β€” сначала ΠΈΠ·Π²Π»Π΅ΠΊΠΈΡ‚Π΅ содСрТимоС. Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: слишком ΠΎΠ±ΡŠΠ΅ΠΌΠ½Ρ‹Π΅ схСмы ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ увСличСния рСсурсов сСрвСра ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΉ компиляции ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, хотя для Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΎΠ±ΠΌΠ΅Π½Π° это Ρ€Π΅Π΄ΠΊΠΎΡΡ‚ΡŒ.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° XSD Ρ‡Π΅Ρ€Π΅Π· ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ инструмСнтом для добавлСния Π½ΠΎΠ²ΠΎΠΉ XML-схСмы Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… являСтся Ρ€Π΅ΠΆΠΈΠΌ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€. ИмСнно здСсь ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ становятся доступны Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Β«ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅Β». Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ процСсс, запуститС 1Π‘ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π° с ΠΏΡ€Π°Π²Π°ΠΌΠΈ администратора.

Π’ Π΄Π΅Ρ€Π΅Π²Π΅ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π²Π΅Ρ‚ΠΊΡƒ, ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ для вашСй Π·Π°Π΄Π°Ρ‡ΠΈ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ схСмы Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠžΠ±Ρ‰ΠΈΠ΅Β» β†’ Β«XML-схСмы», Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… конфигурациях ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ привязаны ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ подсистСмам ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. НаТмитС ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ Π½Π° ΡƒΠ·Π΅Π» Β«XML-схСмы» ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ Β«Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΒ». ΠžΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ΡΡ ΠΎΠΊΠ½ΠΎ свойств Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ схСмС понятноС имя (синоним), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π½ΠΎ Π² спискС, ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° английском языкС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SchemaInvoice). Π’ Π½ΠΈΠΆΠ½Π΅ΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹ находится ΠΏΠΎΠ»Π΅ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»Π°. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²Ρ‹Π±ΠΎΡ€Π° Ρ„Π°ΠΉΠ»Π° ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΡŒ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌΡƒ .xsd Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ. БистСма автоматичСски ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ структуру ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Π΄Π΅Ρ€Π΅Π²ΠΎ элСмСнтов схСмы Π² сосСднСй ΠΏΠ°Π½Π΅Π»ΠΈ.

β˜‘οΈ Алгоритм Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π² ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

ПослС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ «Ошибки» (Ссли ΠΎΠ½Π° доступна Π² вашСй вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹). Если синтаксичСский Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ΅Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ список Ρ‚ΠΈΠΏΠΎΠ² ΠΈ элСмСнтов, доступных для использования. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ вступили Π² силу.

Π˜ΠΌΠΏΠΎΡ€Ρ‚ схСмы Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ

НС всСгда Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ доступ ΠΊ Ρ€Π΅ΠΆΠΈΠΌΡƒ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π°. Π’ соврСмСнных вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ 1Π‘ (начиная с 8.3.10 ΠΈ Π²Ρ‹ΡˆΠ΅) Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML-схСмами частично вынСсСн Π² Ρ€Π΅ΠΆΠΈΠΌ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ, особСнно Π² подсистСмах администрирования ΠΈ настроСк ΠΎΠ±ΠΌΠ΅Π½Π°. Π­Ρ‚ΠΎ позволяСт бизнСс-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π±Π΅Π· участия программиста.

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π² этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π°Π·Π΄Π΅Π» «АдминистрированиС» ΠΈΠ»ΠΈ «Настройки», Π³Π΄Π΅ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ Β«Π€ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ²Β» ΠΈΠ»ΠΈ Β«Π‘Ρ…Π΅ΠΌΡ‹ XMLΒ». Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ 1Π‘:БухгалтСрия ΠΈΠ»ΠΈ 1Π‘:Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΡ€Π³ΠΎΠ²Π»Π΅ΠΉ. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ дСйствиС Β«Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°Β» ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΡŒ ΠΊ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ XSD.

БистСма ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ использования схСмы: для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ входящих Ρ„Π°ΠΉΠ»ΠΎΠ², для формирования исходящих ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ для ΠΎΠ±ΠΎΠΈΡ… случаСв сразу. Π’Π°ΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ‚ Π½Π΅Π³ΠΎ зависит, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…. ПослС подтвСрТдСния систСма создаст Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ схСмы ΠΈ свяТСт Π΅Π³ΠΎ с Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ сСссиСй ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° схСм Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли это ΠΏΡ€Π°Π²ΠΎ явно прСдоставлСно вашСй Ρ€ΠΎΠ»ΠΈ бСзопасности. Если ΠΊΠ½ΠΎΠΏΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π°, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ администратору Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях, особСнно ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Π΅Π±-сСрвисами, схСма загруТаСтся автоматичСски ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊ Π²Π½Π΅ΡˆΠ½Π΅ΠΌΡƒ источнику ΠΏΠΎ WSDL. Однако ручная Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° трСбуСтся, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π±Π΅Π· использования стандартных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² описания сСрвисов.

πŸ“Š Π“Π΄Π΅ Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚Π΅ XSD схСмы?
Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€
Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ
Π§Π΅Ρ€Π΅Π· внСшниС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
Π‘Ρ…Π΅ΠΌΠ° загруТаСтся автоматичСски

Валидация XML Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠΉ схСмС

ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° XSD Π³Π»Π°Π²Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ становится ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… XML-Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° соотвСтствиС этой структурС. ВстроСнныС срСдства 1Π‘ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ ΠΊΠ°ΠΊ Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π§Ρ‚Π΅Π½ΠΈΠ΅XML Π² связкС с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ XMLΠ‘Ρ…Π΅ΠΌΠ°.

Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с Ρ‚ΠΈΠΏΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌΠΈ ΠΎΠ±ΠΌΠ΅Π½Π°, функция Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ часто встроСна Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Β». ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ систСма свСряСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° с ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ, описанными Π² вашСй XSD. Π­Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (число, Π΄Π°Ρ‚Π°, строка), ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ Π΄Π»ΠΈΠ½Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² доступСн ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для Ρ€ΡƒΡ‡Π½ΠΎΠΉ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π‘Ρ…Π΅ΠΌΠ° = XMLΠ‘Ρ…Π΅ΠΌΡ‹.ΠœΠΎΡΠ—Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Π°ΡΠ‘Ρ…Π΅ΠΌΠ°;

Π§Ρ‚Π΅Π½ΠΈΠ΅ = Новый Π§Ρ‚Π΅Π½ΠΈΠ΅XML;

Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΠ€Π°ΠΉΠ»("ΠŸΡƒΡ‚ΡŒΠšΠ€Π°ΠΉΠ»Ρƒ.xml");

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°

Π§Ρ‚Π΅Π½ΠΈΠ΅.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ‘Ρ…Π΅ΠΌΡƒ(Π‘Ρ…Π΅ΠΌΠ°);

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π€Π°ΠΉΠ» соотвСтствуСт схСмС");

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ: " + ОписаниСОшибки());

ΠšΠΎΠ½Π΅Ρ†ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ;

ИспользованиС Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ критичСски Π²Π°ΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Π² рСгистры ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Ошибка Π² ΠΎΠ΄Π½ΠΎΠΌ символС ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ вСсь ΠΏΠ°ΠΊΠ΅Ρ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ стороной, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅Ρ‚ Π·Π° собой простои Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΎΡ‚Π΄Π΅Π»Π°.

πŸ’‘

Валидация ΠΏΠΎ XSD β€” это СдинствСнный Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ способ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π°Ρ систСма (Π½Π°Π»ΠΎΠ³, Π±Π°Π½ΠΊ, ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€) ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ ваш Ρ„Π°ΠΉΠ» Π±Π΅Π· ошибок синтаксиса.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с XSD Π² 1Π‘

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ соблюдСнии всСх инструкций ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с тСхничСскими ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. Одной ΠΈΠ· самых частых ошибок являСтся сообщСниС «НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ объявлСниС пространства ΠΈΠΌΠ΅Π½Β». Π­Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° Π² XML-Ρ„Π°ΠΉΠ»Π΅ ΡƒΠΊΠ°Π·Π°Π½ прСфикс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ сопоставлСн с URI Π² Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠΉ схСмС.

Другая распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° связана с вСрсиями стандартов. Если ваша схСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ конструкции XSD 1.1, Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ совмСстимости со старыми вСрсиями ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ парсСр, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒΡΡ Π½Π΅ΡƒΠ΄Π°Ρ‡Π΅ΠΉ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ свойства схСмы Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ ΠΈ ΠΏΡ€ΠΈ нСобходимости ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ структуру ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ.

Π’Π°ΠΊΠΆΠ΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ошибки ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° русскиС символы Π² названиях Ρ‚Π΅Π³ΠΎΠ² ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ «кракозябры». Π­Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ пСрСсохранСниСм XSD Ρ„Π°ΠΉΠ»Π° Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ UTF-8 с использованиСм ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Notepad++ ΠΈΠ»ΠΈ Visual Studio Code.

Π’ΠΈΠΏ ошибки ВСроятная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Бпособ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
Namespace mismatch Π Π°Π·Π½Ρ‹Π΅ URI Π² XML ΠΈ XSD Π˜ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ xmlns Π² Ρ„Π°ΠΉΠ»Π΅ Π΄Π°Π½Π½Ρ‹Ρ…
Invalid Datatype НСсоотвСтствиС Ρ‚ΠΈΠΏΠ° (строка вмСсто числа) ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² исходном Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅
Element not declared ПолС Π΅ΡΡ‚ΡŒ Π² XML, Π½ΠΎ Π½Π΅Ρ‚ Π² схСмС ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ XSD Ρ„Π°ΠΉΠ» Ρƒ поставщика услуги
Encoding error НСвСрная ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° Ρ„Π°ΠΉΠ»Π° ΠŸΠ΅Ρ€Π΅ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» Π² UTF-8 Π±Π΅Π· BOM

ΠŸΡ€ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ Π»ΠΎΠ³ΠΎΠ² ошибок ΠΎΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠΌΠ΅Ρ€ строки ΠΈ столбца, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π² сообщСнии. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹ΠΉ участок Π² ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ выписки ΠΈΠ»ΠΈ Π½Π°ΠΊΠ»Π°Π΄Π½ΠΎΠΉ.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вСрсиями ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ схСм

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹ ΠΈ государствСнныС ΠΎΡ€Π³Π°Π½Ρ‹ рСгулярно ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ трСбования ΠΊ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ загруТСнная Π²Π°ΠΌΠΈ сСгодня XSD схСма Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»Π³ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ. ΠŸΡ€ΠΎΡ†Π΅ΡΡ обновлСния Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ новая вСрсия схСмы ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ со старыми Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ вСрсии Ρ„Π°ΠΉΠ»Π° Π½Π΅ удаляйтС ΡΡ‚Π°Ρ€ΡƒΡŽ схСму сразу. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ запись Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ вСрсии Π² ΠΈΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, InvoiceSchema_v2). Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΊΠ°ΠΊ Π½ΠΎΠ²Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ Π°Ρ€Ρ…ΠΈΠ²Π½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ с ΠΎΠΏΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ.

Как Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ схСм?

РСкомСндуСтся вСсти ΠΆΡƒΡ€Π½Π°Π» вСрсий Π² тСкстовом Ρ„Π°ΠΉΠ»Π΅ ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, фиксируя Π΄Π°Ρ‚Ρƒ получСния Π½ΠΎΠ²ΠΎΠΉ XSD, источник ΠΈ список критичСских ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² структурС Ρ‚Π΅Π³ΠΎΠ². Π­Ρ‚ΠΎ сэкономит часы ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Если конфигурация позволяСт, настройтС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ схСм для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π²Π΅Π±-сСрвисов. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, Π²ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ Π·Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΡΠ²Π΅Ρ€ΡΡ‚ΡŒ вСрсии Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ²Π°Ρ€Ρ‚Π°Π»Π°, особСнно ΠΏΠ΅Ρ€Π΅Π΄ сдачСй Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ отчСтности.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π—Π°ΠΌΠ΅Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ схСмы Π½Π° Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ Π±Π°Π·Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ остановкС Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½Π°. ΠŸΠ»Π°Π½ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π½Π΅Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ трСбования ΠΊ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ПО ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ². ВсСгда свСряйтС тСхничСскиС спСцификации Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… источниках ΠΏΠ΅Ρ€Π΅Π΄ внСсСниСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±ΠΎΠ΅Π²ΡƒΡŽ Π±Π°Π·Ρƒ.

πŸ’‘

Π”Π΅Π»Π°ΠΉΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°ΠΌΠ΅Π½ΠΎΠΉ XML-схСмы. ΠžΡ‚ΠΊΠ°Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° слоТная ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

МоТно Π»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ XSD схСму, Ссли Ρ„Π°ΠΉΠ» ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅?

НСт, 1Π‘ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„Π°ΠΉΠ» Π±Ρ‹Π» Π²Π°Π»ΠΈΠ΄Π½Ρ‹ΠΌ XML Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ с ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .xsd. Если Ρ„Π°ΠΉΠ» ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½, систСма выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ парсинга ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ чтСния. ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π½Π΅ исправит Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру.

ВлияСт Π»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° большой XSD схСмы Π½Π° быстродСйствиС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…?

Π‘Π°ΠΌΠ° ΠΏΠΎ сСбС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° схСмы Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ влияСт Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π°Π·Ρ‹. Однако использованиС слоТных схСм для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… XML-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ сСрвСра ΠΈ процСссорноС врСмя.

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΡƒΡŽ схСму ΠΈΠ· 1Π‘?

Для удалСния Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€, Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Π²Π΅Ρ‚ΠΊΠ΅ Β«XML-схСмы», Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Β«Π£Π΄Π°Π»ΠΈΡ‚ΡŒΒ». ПослС этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π»ΠΈ 1Π‘ всС стандарты W3C XML Schema?

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ стандарта XML Schema 1.0 ΠΈ частично 1.1. НСкоторыС слоТныС конструкции, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ <xs:assert> ΠΈΠ»ΠΈ спСцифичСскиС Ρ‚ΠΈΠΏΡ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.