
- рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреА рд╕рдлрд▓рддрд╛ рдХрд╛ рд░рд╣рд╕реНрдп рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдЙрддреНрдкрд╛рдж рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ ... рдУрд╣, рдЕрд░реНрдерд╛рддреН рд╕реЗрд╡рд╛ред рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдФрд░ рдпрд╣ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдХреЗ рдЙрд▓реНрд▓рдВрдШрди рдХреЗ рд╕рд╛рде рд╕рднреА рдЧрдВрднреАрд░ рдирд╣реАрдВред
рд╡рд╛рд▓реНрдЯрд░ рд╡реНрд╣рд╛рдЗрдЯ
рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ
рдпрд╣ рдХреНрдпрд╛ рд╣реИ
рдпрд╣ рдЙрдкрднреЛрдХреНрддрд╛-рдкреНрд░реЗрд░рд┐рдд рдЕрдиреБрдмрдВрдз (рд╕реАрдбреАрд╕реА) рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд╣реИред
рдореВрд▓ рдХреЛ рдорд╛рд░реНрдЯрд┐рди рд░реЙрдмрд▓рд░ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЗрдпрд╛рди рд░реЙрдмрд┐рдиреНрд╕рди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╡рд╣ рдХреНрдпреЛрдВ рд╣реИ?
рдПрдХ рдорд╛рдЗрдХреНрд░реЛрд╕реИрд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдореЗрдВ, рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реНрд░реЛрдд рд╣реИред рд╕реАрдбреАрд╕реА рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдПрдХ рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╕реЗрд╡рд╛ рдФрд░ рдЙрд╕рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИред Fowler рдиреЗ рдЙрдкрднреЛрдХреНрддрд╛-рдкреНрд░рд╡реГрддреНрдд рд╕рдВрд╡рд┐рджрд╛ рдХреЛ рдЕрдкрдиреЗ рдореБрдЦреНрдп рд▓реЗрдЦ рдореЗрдВ microservice рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░: Microservices рдкрд░ рдЙрджреНрдзреГрдд рдХрд┐рдпрд╛ред
рдпрд╣ рдХрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣реИ
рдпрд╣ рд▓реЗрдЦ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдПрдХ рд╣реА рд╕рдВрдЧрдарди рдХреЗ рднреАрддрд░ рдХрдИ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЯреАрдореЛрдВ рдФрд░ рдРрд╕реА рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред
рд╢рд░реНрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
- рдореИрдВрдиреЗ рдЙрдкрднреЛрдХреНрддрд╛-рдЪрд╛рд▓рд┐рдд рдЕрдиреБрдмрдВрдзреЛрдВ рдХрд╛ рд░реВрд╕реА рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдирд╣реАрдВ рдХрд┐рдпрд╛ - рд╣рдо рдмрд╛рддрдЪреАрдд рдореЗрдВ рдЯреЗрд╕реНрдЯ-рдкреНрд░реЗрд░рд┐рдд рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдЖрдк рд╡рд┐рдХрд▓реНрдк рдЧреНрд░рд╛рд╣рдХ-рдЙрдиреНрдореБрдЦ рдЕрдиреБрдмрдВрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рдкреНрд░рджрд╛рддрд╛ рдЕрдиреБрдмрдВрдз рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛ рдЕрдиреБрдмрдВрдз рдХреЛ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЕрдиреБрдмрдВрдз рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛ рдЕрдиреБрдмрдВрдз рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдЙрдирдХрд╛ рд░реВрд╕реА рдореЗрдВ рд╕реНрдерд╛рдпреА рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИред
- рдХрд┐рд╕реА рд╕реЗрд╡рд╛ (рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╛рд╕) рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдпрд╛ рд╡рд┐рдХрд╛рд╕ - рд╢реЛрдзрди, рд╕реЗрд╡рд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ред
- рд╕реЗрд╡рд╛ рдХрд╛ рд╕рдореБрджрд╛рдп (рд╕реЗрд╡рд╛ рд╕рдореБрджрд╛рдп) - рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдФрд░ рдЗрд╕ рд╕реЗрд╡рд╛ рдХреЗ рд╕рднреА рдЙрдкрднреЛрдХреНрддрд╛ред
рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛
рдпрд╣ рдЖрд▓реЗрдЦ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдЕрдиреБрдмрдВрдз рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрджрд▓рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЕрдиреБрдкреВрд░рдХред рдЙрдирд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рд╡рд┐рд╕реНрддрд╛рд░ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ред
- рдкреНрд░рд╛рдкреНрдд рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ "рдкрд░реНрдпрд╛рдкреНрдд" рд╕рддреНрдпрд╛рдкрдиред
рджреЛрдиреЛрдВ рд░рдгрдиреАрддрд┐рдпрд╛рдБ рдЕрдиреБрдмрдВрдз рдореЗрдВ рдмрджрд▓рд╛рд╡ рд╕реЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рджреЗрддреА рд╣реИрдВ:
- рдЗрди рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХреИрд╕реЗ;
- рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде рд╣реА рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд▓реЗрдЦ рдЙрдкрднреЛрдХреНрддрд╛-рдкреНрд░реЗрд░рд┐рдд рдЕрдиреБрдмрдВрдз рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЙрджрд╛рд╣рд░рдг
рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рд╣рдорд╛рд░реЗ рд╕рд╛рдордиреЗ рдЖрдиреЗ рд╡рд╛рд▓реА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрддреНрдкрд╛рдж рдЦреЛрдЬ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдЬреЛ рдЖрдкрдХреЛ рд╣рдорд╛рд░реА рдЙрддреНрдкрд╛рдж рд╕реВрдЪреА рдореЗрдВ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрд░рдЪрдирд╛ рд╣реИ:

рдЪрд┐рддреНрд░ 1: рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдЖрд░реЗрдЦ
рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд╕реНрддрд╛рд╡реЗрдЬ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
<?xml version="1.0" encoding="utf-8"?> <Products xmlns="urn:example.com:productsearch:products"> <Product> <CatalogueID>101</CatalogueID> <Name>Widget</Name> <Price>10.99</Price> <Manufacturer>Company A</Manufacturer> <InStock>Yes</InStock> </Product> <Product> <CatalogueID>300</CatalogueID> <Name>Fooble</Name> <Price>2.00</Price> <Manufacturer>Company B</Manufacturer> <InStock>No</InStock> </Product> </Products>
рдЙрддреНрдкрд╛рдж рдЦреЛрдЬ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рджреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИ: рдПрдХ рдЖрдВрддрд░рд┐рдХ рд╡рд┐рдкрдгрди рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдФрд░ рдПрдХ рдмрд╛рд╣рд░реА рдкреБрдирд░реНрд╡рд┐рдХреНрд░реЗрддрд╛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧред рджреЛрдиреЛрдВ рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдкрд╣рд▓реЗ рдкреНрд░рд╛рдкреНрдд рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдПрд╕рдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЖрдВрддрд░рд┐рдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрдЯрд▓реЙрдЧ, рдирд╛рдо, рдореВрд▓реНрдп рдФрд░ рдирд┐рд░реНрдорд╛рддрд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ; рдмрд╛рд╣рд░реА рдЕрдиреБрдкреНрд░рдпреЛрдЧ - рдлрд╝реАрд▓реНрдб рдХреИрдЯрд▓реЙрдЧ, рдирд╛рдо рдФрд░ рдореВрд▓реНрдпред рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЗрдирд╕реНрдЯреЙрдХ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕реЗ рдПрдХ рд╡рд┐рдкрдгрди рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛, рдЗрд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдореЗрдВ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдХрд┐рд╕реА рд╕реЗрд╡рд╛ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рднрд╛рдЧреЛрдВ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд░рд▓ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рд╡реНрдпрд╡рд╕рд╛рдп рдФрд░ рдЙрд╕рдХреЗ рднрд╛рдЧреАрджрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдорд╣рдВрдЧрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЙрддреНрдкрд╛рдж рдЦреЛрдЬ рд╕реЗрд╡рд╛ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдПрдХ рджреВрд╕рд░рд╛ рдкреБрдирд░реНрд╡рд┐рдХреНрд░реЗрддрд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рддреНрдпреЗрдХ рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд░рдг рдлрд╝реАрд▓реНрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИред рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдХрд╛рд░рдг, рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдФрд░ рдореМрдЬреВрджрд╛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рдорд╣рдВрдЧрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреА рд▓рд╛рдЧрдд рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ рдХрд┐ рд╣рдо рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдХрдо рд╕реЗ рдХрдо рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рд╣рдо "рд╕реЗрд╡рд╛ рд╕рдореБрджрд╛рдп" рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд▓рд╛рдЧрдд рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдЕрдкрдиреЗ рдореВрд▓ рд╕реНрдХреАрдорд╛ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрднреЛрдХреНрддрд╛ рдХреЛ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреАрдорд╛ рдХреА рдЕрдкрдиреА рдкреНрд░рддрд┐ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдмреАрдЪ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдмрджрд▓рдиреЗ рдХреА рд▓рд╛рдЧрдд рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдмреАрдЪ рд╡рд┐рддрд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдХреБрдЫ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдЧрд╛; рдФрд░ рдЬреЛ рдЙрдкрднреЛрдХреНрддрд╛ рдЕрджреНрдпрддрди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рд░реБрдЪрд┐ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред рджреВрд╕рд░реА рдУрд░, рд╣рдо рдПрдХ рдирдП рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ рдСрдкрд░реЗрд╢рди рдФрд░ рд╕реНрдХреАрдо рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореМрдЬреВрджрд╛ рдСрдкрд░реЗрд╢рди рдФрд░ рдореМрдЬреВрджрд╛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдХреАрдо рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм рд╕рднреА рд╕реБрдзрд╛рд░ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реЗрд╡рд╛ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рдорд░реНрдерди рдХреА рд▓рд╛рдЧрдд рдмрдврд╝ рд░рд╣реА рд╣реИред
рдЗрдВрдЯрд░рд▓реНрдпреВрдб: рдмрд░реНрди рдПрд╕рдУрдП
рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн рд╣реИрдВ:
- рд╕рдВрдЧрдардирд╛рддреНрдордХ рд▓рдЪреАрд▓рд╛рдкрди рдмрдврд╝рд╛ред
- рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕рдордЧреНрд░ рд▓рд╛рдЧрддред
SOA рд╕рдорд░реНрдкрд┐рдд, рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рдХреЗ рд▓рдЪреАрд▓рд╛рдкрди рдмрдврд╝рд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдЗрди рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдореБрдЦреНрдп рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯреЗрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдХрдо рдХрд░рдХреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд▓рд╛рдЧрдд рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдпрд╛ рдЕрдирд┐рдпреЛрдЬрд┐рдд рдШрдЯрдирд╛рдУрдВ рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдЬрд▓реНрджреА рд╕реЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдФрд░ рдзреБрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╡реНрдпрд╡рд╕рд╛рдп рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрди рд▓рд╛рднреЛрдВ рдХрд╛ рдПрд╣рд╕рд╛рд╕ рддрднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдПрд╕рдУрдП рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реЗрд╡рд╛ рдЕрдиреБрдмрдВрдз рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╣рдореЗрдВ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдХреНрд╕рд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдореБрдЦреНрдпрддрдГ рдХреНрдпреЛрдВрдХрд┐ рдЙрдкрднреЛрдХреНрддрд╛ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрдмрдВрдз рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЕрдиреБрдмрдВрдз рдХреЗ рдХрд┐рд╕реА рднреА рддрддреНрд╡ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдмреЗрд╣рдж рд╕рддрд░реНрдХ рд╣реЛрдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ; рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдкрднреЛрдХреНрддрд╛ рдЗрд╕ рдЕрдиреБрдмрдВрдз рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рдЖрдВрддрд░рд┐рдХ рддрд░реНрдХ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рд╕рдВрдкреВрд░реНрдг рд░реВрдкрд░реЗрдЦрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП, рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рд╕реЗ рдмрдВрдзрд╛ рд╣реБрдЖ рд╣реИред
рдЕрдиреБрдмрдВрдз рд╕реЗрд╡рд╛ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ; рд╡рд┐рд░реЛрдзрд╛рднрд╛рд╕реА рд░реВрдк рд╕реЗ, рд╡реЗ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЕрд╡рд╛рдВрдЫрдиреАрдп рддрд░реАрдХреЛрдВ рд╕реЗ рднреА рдмрд╛рдВрдз рд╕рдХрддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдПрд╕рдУрдП рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдП рдЧрдП рдЕрдиреБрдмрдВрдзреЛрдВ рдХреЗ рдХрд╛рд░реНрдп рдФрд░ рднреВрдорд┐рдХрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд┐рдирд╛, рд╣рдо рдЕрдкрдиреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ "рдЧреБрдкреНрдд" рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред рд╕реЗрд╡рд╛ рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛ рдХреЛрдб рдореЗрдВ рдЕрдиреБрдмрдВрдз рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рддрд┐рдмрдВрдз (рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП) рдХреА рдХрдореА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЕрднрд╛рд╡, рдПрдХ рд╕рд╛рде SOA рдХреЗ рдХрдерд┐рдд рд▓рд╛рднреЛрдВ рдХреЛ рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдПрдХ рдЙрджреНрдпрдо рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдЯрд╛рдпрд░ рдХреЗ рд▓рд┐рдП рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
рд╕реНрдХреАрдорд╛ рд╕рдВрд╕реНрдХрд░рдг
рд╣рдо рдЕрдиреБрдмрдВрдз рдХреЗ рдореБрджреНрджреЛрдВ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдкрд░ рд╢реЛрдз рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдХреАрдорд╛ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рджреНрд╡рд╛рд░рд╛ рд╣рдорд╛рд░реА ProductSearch рд╕реЗрд╡рд╛ рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреЗ рд╣реИрдВред рдбрдмреНрд▓реНрдпреВрд╕реА 3 рдЯреЗрдХреНрдирд┐рдХрд▓ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдЧреНрд░реБрдк (рдЯреАрдПрдЬреА) рдиреЗ рдХрдИ рд╕рдВрд╕реНрдХрд░рдг рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд░реНрдХрд┐рдЯ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдирд┐рд░реНрднрд░рддрд╛ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВред рдпреЗ рд░рдгрдиреАрддрд┐рдпрд╛рдБ рдЕрддреНрдпрдзрд┐рдХ рдЙрджрд╛рд░ рд╕реЗ рд▓реЗрдХрд░ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИрдВ , рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдпреЛрдЬрдирд╛ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рди рдХрд░рдиреЗ рдФрд░ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдПрдХ рдЕрддреНрдпрдВрдд рд░реВрдврд╝рд┐рд╡рд╛рджреА рдмрдбрд╝реЗ рдзрдорд╛рдХреЗ рдХреЗ рд▓рд┐рдП , рдЬрд┐рд╕реЗ рд╕реЗрд╡рд╛ рдХреЛ рд╕рдВрджреЗрд╢ рдХреЗ рдПрдХ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рддреНрд░реБрдЯрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рджреЛрдиреЛрдВ рдЪрд░рдо рд╕рдорд╕реНрдпрд╛рдПрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░рддреА рд╣реИрдВ рдЬреЛ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдп рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдХреА рдХреБрд▓ рд▓рд╛рдЧрдд рдХреЛ рдмрдврд╝рд╛рддреА рд╣реИрдВред рд╕реНрдкрд╖реНрдЯ рдФрд░ рдирд┐рд╣рд┐рдд "рдиреЛ рд╡рд░реНрдЬрди" рд░рдгрдиреАрддрд┐рдпрд╛рдБ рдЙрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИрдВ рдЬреЛ рдЕрдкрдиреА рдЕрдВрддрдГрдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реЛрддреА рд╣реИрдВ, рдЦрд░рд╛рдм рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реБрдзрд╛рд░ рдХреА рдЙрдЪреНрдЪ рд▓рд╛рдЧрдд рд╣реЛрддреА рд╣реИред рджреВрд╕рд░реА рдУрд░, рдмрд┐рдЧ рдмреИрдВрдЧ рд░рдгрдиреАрддрд┐рдпрд╛рдВ рдЕрддреНрдпрдзрд┐рдХ рдкрд░рд╕реНрдкрд░ рд╕реЗрд╡рд╛ рдкрд░рд┐рджреГрд╢реНрдп рдмрдирд╛рддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕рд░реНрдХрд┐рдЯ рдкрд░рд┐рд╡рд░реНрддрди рд╕рднреА рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рдХрд╛рд╕ рдХреЛ рдзреАрдорд╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд▓рд╛рдн рдХреЗ рдЕрд╡рд╕рд░реЛрдВ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВред
рд╣рдорд╛рд░реЗ рд╕рдореБрджрд╛рдп рд╕реЗ рд╕реЗрд╡рд╛ рд╕рдореБрджрд╛рдп рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдмрд┐рдЧ рдмреИрдВрдЧ рд░рдгрдиреАрддрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдореВрд▓реНрдп рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреА рд▓рд╛рдЧрддреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд░рдгрдиреАрддрд┐ рд╕реЗ рд▓рд╛рдн рд╣реЛрдЧрд╛ - TAG рд╕рдВрдЧрддрддрд╛ рд░рдгрдиреАрддрд┐ рдХреЛ рдХреНрдпрд╛ рдХрд╣рддреЗ рд╣реИрдВред рдпрд╣ рд╕рд░реНрдХрд┐рдЯ рдХреА рдкреНрд░рддреНрдпрдХреНрд╖ рдФрд░ рдкрд┐рдЫрдбрд╝реА рд╕рдВрдЧрддрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде, рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрдд рд╕реНрдХреАрдорд╛ рдирдП рд╕реНрдХреАрдорд╛ рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреБрд░рд╛рдиреЗ рд╕реНрдХреАрдорд╛ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ: рдПрдХ рдкреНрд░рджрд╛рддрд╛ рдЬреЛ рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрдд рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреБрд░рд╛рдиреЗ рд╕реНрдХреАрдорд╛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдВрдЧрддрддрд╛, рдкреБрд░рд╛рдиреЗ рд╕реНрдХреАрдорд╛ рдХреЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдирдП рд╕реНрдХреАрдорд╛ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдпрд╣ рдореМрдЬреВрджрд╛ ProductSearch рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рд╣реИ: рдпрджрд┐ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдореВрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдВрдЧрддрддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рдереЗ, рддреЛ рдЙрдкрднреЛрдХреНрддрд╛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЖрдЧреЗ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рдереЗред
рд╡рд┐рд╕реНрддрд╛рд░ рдЕрдВрдХ
рдмреИрдХрд╡рд░реНрдб рдФрд░ рдлреЙрд░рд╡рд░реНрдб рдХрдореНрдкреИрдЯрд┐рдмрд┐рд▓рд┐рдЯреА рдХреЗ рд╕рд╛рде рд╕реНрдХреАрдо рдореИрдкрд┐рдВрдЧ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдордЭрд╛ рдЧрдпрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЯрд╛рд╕реНрдХ рд╣реИ, рдЬрд┐рд╕реЗ рдорд╕реНрдЯ рдЗрдЧреНрдиреЛрд░ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдкреИрдЯрд░реНрди рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ( рдбреЗрд╡рд┐рдб рдСрд░реНрдЪрд░реНрдб рдФрд░ рдбреАрд░рд╛ рдУрдмрд╕рдВрдЬреЛ рдХреЗ рд▓реЗрдЦ рджреЗрдЦреЗрдВ)ред рдорд╕реНрдЯ рдЗрдЧреНрдиреЛрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рдмрд┐рдВрджреБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рддрддреНрд╡реЛрдВ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдЯреЗрдореНрдкрд▓реЗрдЯ рдпрд╣ рднреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдПрдХреНрд╕рдПрдордПрд▓ рдПрдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЙрдбрд▓ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрднреЛрдХреНрддрд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рд╕рд░рд▓ рдореЙрдбрд▓ рдХреЛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЙрди рддрддреНрд╡реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╡реЗ рдирд╣реАрдВ рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВ - рдЗрд╕рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдирд╛рдоред рдореЙрдбрд▓ рдХреЛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЙрди рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдорд╕реНрдЯ рдЕрдВрдбрд░рд╕реНрдЯреИрдВрдбрд┐рдВрдЧ рдЭрдВрдбрд╛ рд╣реИ, рдпрд╛ рдпрджрд┐ рд╡реЗ рдЙрдиреНрд╣реЗрдВ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рджреЗрдВред
рдпрд╣рд╛рдБ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рд╣рдорд╛рд░реА рдореВрд▓ рд░реВрдкрд░реЗрдЦрд╛ рд╣реИ:
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns="urn:example.com:productsearch:products" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:example.com:productsearch:products" id="Products"> <xs:element name="Products" type="Products" /> <xs:complexType name="Products"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="unbounded" name="Product" type="Product" /> </xs:sequence> </xs:complexType> <xs:complexType name="Product"> <xs:sequence> <xs:element name="CatalogueID" type="xs:int" /> <xs:element name="Name" type="xs:string" /> <xs:element name="Price" type="xs:double" /> <xs:element name="Manufacturer" type="xs:string" /> <xs:element name="InStock" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:schema>
рдЕрдм рд╕рдордп рдореЗрдВ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рд╕реЗ рд╣рдо рдЕрдкрдиреА рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдЧрдд, рд╡рд┐рд╕реНрддреГрдд рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдВрдЧреЗ:
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns="urn:example.com:productsearch:products" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:example.com:productsearch:products" id="Products"> <xs:element name="Products" type="Products" /> <xs:complexType name="Products"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="unbounded" name="Product" type="Product" /> </xs:sequence> </xs:complexType> <xs:complexType name="Product"> <xs:sequence> <xs:element name="CatalogueID" type="xs:int" /> <xs:element name="Name" type="xs:string" /> <xs:element name="Price" type="xs:double" /> <xs:element name="Manufacturer" type="xs:string" /> <xs:element name="InStock" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="Extension" type="Extension" /> </xs:sequence> </xs:complexType> <xs:complexType name="Extension"> <xs:sequence> <xs:any minOccurs="1" maxOccurs="unbounded" namespace="##targetNamespace" processContents="lax" /> </xs:sequence> </xs:complexType> </xs:schema>
рдЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реИред рдПрдХреНрд╕рдЯреЗрдВрд╢рди рддрддреНрд╡ рдореЗрдВ рд▓рдХреНрд╖реНрдп рдирд╛рдорд╕реНрдерд╛рди рд╕реЗ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рддрддреНрд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

рдЪрд┐рддреНрд░ 2: рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╕рд░реНрдЪ рд░рд┐рдЬрд▓реНрдЯ рд╕реНрдХреАрдорд╛
рдЕрдм рдЬрдм рд╣рдореЗрдВ рдПрдХ рдЙрддреНрдкрд╛рдж рд╡рд┐рд╡рд░рдг рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╡рд░рдг рддрддреНрд╡ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╕реНрдХреАрдорд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдкреНрд░рджрд╛рддрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдмрд┐рдВрджреБ рдореЗрдВ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ ProductSearch рдХреЛ рдЙрддреНрдкрд╛рдж рд╡рд┐рд╡рд░рдгреЛрдВ рд╡рд╛рд▓реЗ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛ рдкреВрд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдИ рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдкреБрд░рд╛рдиреА рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрднреЛрдХреНрддрд╛ рдирд╣реАрдВ рдЯреВрдЯреЗрдВрдЧреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡реЗ рд╡рд┐рд╡рд░рдг рдлрд╝реАрд▓реНрдб рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдПрдХ рдирдпрд╛ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
<?xml version="1.0" encoding="utf-8"?> <Products xmlns="urn:example.com:productsearch:products"> <Product> <CatalogueID>101</CatalogueID> <Name>Widget</Name> <Price>10.99</Price> <Manufacturer>Company A</Manufacturer> <InStock>Yes</InStock> <Extension> <Description>Our top of the range widget</Description> </Extension> </Product> <Product> <CatalogueID>300</CatalogueID> <Name>Fooble</Name> <Price>2.00</Price> <Manufacturer>Company B</Manufacturer> <InStock>No</InStock> <Extension> <Description>Our bargain fooble</Description> </Extension> </Product> </Products>
рд╕рдВрд╢реЛрдзрд┐рдд рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns="urn:example.com:productsearch:products" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:example.com:productsearch:products" id="Products"> <xs:element name="Products" type="Products" /> <xs:complexType name="Products"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="unbounded" name="Product" type="Product" /> </xs:sequence> </xs:complexType> <xs:complexType name="Product"> <xs:sequence> <xs:element name="CatalogueID" type="xs:int" /> <xs:element name="Name" type="xs:string" /> <xs:element name="Price" type="xs:double" /> <xs:element name="Manufacturer" type="xs:string" /> <xs:element name="InStock" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="Extension" type="Extension" /> </xs:sequence> </xs:complexType> <xs:complexType name="Extension"> <xs:sequence> <xs:any minOccurs="1" maxOccurs="unbounded" namespace="##targetNamespace" processContents="lax" /> </xs:sequence> </xs:complexType> <xs:element name="Description" type="xs:string" /> </xs:schema>
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╕реНрдХреАрдорд╛ рдХрд╛ рдкрд╣рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдкрд╣рд▓реЗ рдХреЗ рд╕рд╛рде рдкреАрдЫреЗ рд╕рдВрдЧрдд рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд▓рдЪреАрд▓рд╛рдкрди рдмрдврд╝реА рд╣реБрдИ рдЬрдЯрд┐рд▓рддрд╛ рдХреА рдХреАрдордд рдкрд░ рдЖрддрд╛ рд╣реИред рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╕реНрдХреАрдорд╛ рд╣рдореЗрдВ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рдХрднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ; рдЬрдм рд╣рдо рд╣рд╛рд░ рдЧрдП:
- рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдбрд┐рдЬрд╛рдЗрди рд╕реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐
- рдХрдВрдЯреЗрдирд░ рдХреЗ рдореЗрдЯрд╛-рд╕реВрдЪрдирд╛ рддрддреНрд╡реЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдХреА рд╕реНрдкрд╖реНрдЯ рдкреНрд░рд╕реНрддреБрддрд┐ред
рдЖрдЧреЗ рд╣рдо рд╡рд┐рд▓реБрдкреНрдд рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдХрд┐ рд╡рд┐рд╕реНрддрд╛рд░ рдмрд┐рдВрджреБ рд╣рдореЗрдВ рд╕реЗрд╡рд╛ рдХреЗ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛, рдЖрд░реЗрдЦ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдореЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдФрд░ рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрдд рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпреЛрдЬрдирд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рд╣рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИ рдЬрдм рд╣рдореЗрдВ рдЕрдиреБрдмрдВрдз рдореЗрдВ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЛ рддреЛрдбрд╝рдирд╛

- рд╣рд╛рдВ, рд╣рдорд╛рд░реА рдЯреАрдо рдиреЗ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬ рдореЗрдВ рдкрд┐рдЫрдбрд╝реА рд╕рдВрдЧрддрддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд┐рдпрд╛! рд╡реЗ рд╕рд┐рд░реНрдл рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдореВрд▓реА рдЕрдиреБрдХреВрд▓рди рдХрд╛ рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдереЗ ... рдЦреИрд░, рдмреБрд░рд╛ рдордд рдорд╛рдирдирд╛, рд╕реНрд╡реАрдЯреА!
рдХрд╛рд░реНрд▓рд╛ рдмреЛрд░рд┐рди
рд╣рдорд╛рд░реА ProductSearch рд╕реЗрд╡рд╛ рдЗрд╕ рдЙрддреНрдкрд╛рдж рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрд╣ рд╕реЗрд╡рд╛ рдПрдХ рдкреНрд░рд╛рдЪреАрди рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рдВрдЧреА рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рднрд░рддреА рд╣реИ - рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рдВрдЧреА рд╣реИред рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЗрд╕ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рджреВрд░ рдХрд░рдирд╛, рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рд╕рд╛рдл рдХрд░рдирд╛ рдФрд░ рд╕рдордЧреНрд░ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдЧрд╛ред рдФрд░ рдЕрдзрд┐рдорд╛рдирддрдГ, рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ред рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рддреЗ рд╣реБрдП, рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЯреАрдо рдХреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрднреЛрдХреНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ; рдпрд╣ рдорд╣рдВрдЧрд╛ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ, рдпрд╣ рдмреЗрдорд╛рдиреА рд╣реИред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрджрд┐ рд╣рдо рдЕрдкрдиреЗ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╕реНрдХреАрдорд╛ рд╕реЗ рдЗрдирд╕реНрдЯреЙрдХ рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдореМрдЬреВрджрд╛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рддреЛрдбрд╝ рджреЗрдВрдЧреЗред рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкреВрд░реА рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: рдЬрдм рд╣рдо рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдирдпрд╛ рдЕрдиреБрдмрдВрдз рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрднреЛрдХреНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ рдирдИ рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмреАрдЪ рдХреА рдмрд╛рддрдЪреАрдд рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдЙрддреНрдкрд╛рдж рдЦреЛрдЬ рд╕реЗрд╡рд╛ рдХреЛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ "рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХреВрджрдирд╛ рдЪрд╛рд╣рд┐рдПред"
рд╣рдорд╛рд░рд╛ рд╕реЗрд╡рд╛ рд╕рдореБрджрд╛рдп рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдирд┐рд░рд╛рд╢ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрднреЛрдХреНрддрд╛ рдореЗрдВ рдПрдХ "рдЫрд┐рдкреА рд╣реБрдИ" рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ, рдЬреЛ рдЙрдкрднреЛрдХреНрддрд╛ рдХреЗ рдЖрдВрддрд░рд┐рдХ рддрд░реНрдХ рдореЗрдВ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдкреВрд░реЗ рдЕрдиреБрдмрдВрдз рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдЙрдкрднреЛрдХреНрддрд╛, XSD рд╕рддреНрдпрд╛рдкрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдФрд░ рдХреБрдЫ рд╣рдж рддрдХ, рдХреЛрдб рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдереИрддрд┐рдХ рдмрдВрдзрди, рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдкреВрд░реЗ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЕрдиреБрдмрдВрдз рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдбреЗрд╡рд┐рдб рдСрд░реНрдЪрд░реНрдб рдХреБрдЫ рд╕реБрд░рд╛рдЧ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдХреИрд╕реЗ рдмрдЪ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реБрдП: "рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЕрдкрдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рд░реВрдврд╝рд┐рд╡рд╛рджреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рджреВрд╕рд░реЛрдВ рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдореЗрдВ рдЙрджрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред" рд╣рдо рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЗрд╕ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдордЬрдмреВрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдХреЛ "рдкрд░реНрдпрд╛рдкреНрдд" рд╕рддреНрдпрд╛рдкрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: рдЕрд░реНрдерд╛рддреН, рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реАрдорд┐рдд рдпрд╛ рд▓рдХреНрд╖рд┐рдд рд╕рддреНрдпрд╛рдкрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдЬреИрд╕рд╛ рдХрд┐ рдЕрдиреБрдорд╛рдирд┐рдд рд░реВрдк рд╕реЗ рдЕрд╕реАрдорд┐рдд рд╕рддреНрдпрд╛рдкрди рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИред XSD рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╕рднреА рдпрд╛ рдХреБрдЫ рднреА рдирд╣реАрдВред
рд╕реНрдХреАрдореЗрдЯреНрд░реЛрди
рдПрдХ рддрд░рд╣ рд╕реЗ рд╣рдо рдЙрдкрднреЛрдХреНрддрд╛-рдкрдХреНрд╖ рд╕рддреНрдпрд╛рдкрди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рд╕реНрдХ рдпрд╛ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ, рд╕рдВрднрд╡рддрдГ рд╕реНрдХреИрдордЯреНрд░реЙрди рдЬреИрд╕реЗ рд╡реГрдХреНрд╖ рд╕рдВрд░рдЪрдирд╛ рд╕рддреНрдпрд╛рдкрди рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рд╕реНрдХреИрдореЗрдЯреНрд░реЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░рддреНрдпреЗрдХ ProductSearch рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рдХреНрдпрд╛ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ:
<?xml version="1.0" encoding="utf-8" ?> <schema xmlns="http://www.ascc.net/xml/schematron"> <title>ProductSearch</title> <ns uri="urn:example.com:productsearch:products" prefix="p"/> <pattern name="Validate search results"> <rule context="*//p:Product"> <assert test="p:CatalogueID">Must contain CatalogueID node</assert> <assert test="p:Name">Must contain Name node</assert> <assert test="p:Price">Must contain Price node</assert> </rule> </pattern>
рд╕реНрдХреИрдореЗрдЯреНрд░реЙрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╕реНрдХреЗрдореИрдЯреНрд░реЙрди рд╕реНрдХреАрдорд╛ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ рдПрдХ, рдПрдХ рдПрдХреНрд╕рдПрд╕рдПрд▓рдЯреА рдкрд░рд┐рд╡рд░реНрддрди рдореЗрдВ рдЬреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдЖрд░реЗрдЦ рдореЗрдВ рд╕реНрд░реЛрдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдзрд╛рд░рдгрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ рдЬреЛ рдЙрдкрднреЛрдХреНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рддрддреНрд╡реЛрдВ рдХрд╛ рд╕рддреНрдпрд╛рдкрди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИред рд╕реНрд░реЛрдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд╕рддреНрдпрд╛рдкрди рдХреЗ рджреМрд░рд╛рди рдЕрд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдпрджрд┐ рд╡реЗ рд╕реНрдХреЗрдореИрдЯреНрд░реЙрди рд╕реНрдХреАрдорд╛ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕реНрдкрд╖реНрдЯ рдЕрдкреЗрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рддрддреНрд╡реЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдВред
рдпрд╣рд╛рдВ рдЕрдиреБрдмрдВрдз рдФрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рд╣реИ, рдФрд░ рдЗрд╕рд╕реЗ рд╣рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдореЗрдЯрд╛-рд╕реВрдЪрдирд╛ рддрддреНрд╡реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рддреЛ, рдЖрдЗрдП рд╕рдордп рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд░реЛрд▓ рдХрд░реЗрдВ рдФрд░ рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рд░рд▓ рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╛рд░, рд╣рдо рдпрд╣ рднреА рдЬреЛрд░ рджреЗрдХрд░ рдХрд╣реЗрдВрдЧреЗ рдХрд┐ рдЙрдкрднреЛрдХреНрддрд╛ рдЕрдкрдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВ рдФрд░ рд╡реЗ рдХреЗрд╡рд▓ рдЙрди рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдФрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рдирдХреА рдЙрдиреНрд╣реЗрдВ рдЬрд░реВрд░рдд рд╣реИ (рд╕реНрдХреИрдордЯреНрд░реЙрди рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдкреНрд░рд╛рдкреНрдд рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдПрд╕рдбреА рдирд╣реАрдВ)ред рдЕрдм рдЬрдм рдХреЛрдИ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХрд┐рд╕реА рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд░рдг рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдореМрдЬреВрджрд╛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рд╕рдВрд╢реЛрдзрд┐рдд рд░реВрдкрд░реЗрдЦрд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реА рддрд░рд╣, рдЕрдЧрд░ рдпрд╣ рдкрд╛рддрд╛ рд╣реИ рдХрд┐ InStock рдлрд╝реАрд▓реНрдб рдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрднреЛрдХреНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЪреЗрдХ рдпрд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╕реЗрд╡рд╛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛, рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИред
рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрдВрдд рдореЗрдВ, ProductSearch рдкреНрд░рддрд┐рд╕рд╛рдж рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ:
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns="urn:example.com:productsearch:products" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:example.com:productsearch:products" id="Products"> <xs:element name="Products" type="Products" /> <xs:complexType name="Products"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="unbounded" name="Product" type="Product" /> </xs:sequence> </xs:complexType> <xs:complexType name="Product"> <xs:sequence> <xs:element name="CatalogueID" type="xs:int" /> <xs:element name="Name" type="xs:string" /> <xs:element name="Price" type="xs:double" /> <xs:element name="Manufacturer" type="xs:string" /> <xs:element name="Description" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:schema>
рдЙрдкрднреЛрдХреНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдЕрдиреБрдмрдВрдз
рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╕реНрдХреИрдореЗрдЯреНрд░реЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЕрдиреБрдмрдВрдз рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╕рддреНрдпрд╛рдкрди рд╕реЗ рдкрд░реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдЦрдВрдб рдореЗрдВ, рд╣рдо рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдФрд░ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЙрд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдЙрдкрднреЛрдХреНрддрд╛ рдЕрдиреБрдмрдВрдз рдХрд╣рддреЗ рд╣реИрдВред
рдзреНрдпрд╛рди рджреЗрдиреЗ рд╡рд╛рд▓реА рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдпреЛрдЬрдирд╛рдПрдВ рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╡реЗ рдЗрд╕рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВред рд╣рдо рдЗрд╕ рдЖрдЙрдЯрд╕реЛрд░реНрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдПрдХ рд╡рд┐рдХреНрд░реЗрддрд╛ рдЕрдиреБрдмрдВрдз рдХрд╣рддреЗ рд╣реИрдВ ред
рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдЕрдиреБрдмрдВрдз
рд╡рд┐рдХреНрд░реЗрддрд╛ рдЕрдиреБрдмрдВрдз рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд┐рд░реНрдпрд╛рдд рддрддреНрд╡реЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрд╡рд╛ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдПрдХ рдЕрдиреБрдмрдВрдз рдирд┐рд░реНрдпрд╛рдд рддрддреНрд╡реЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдЯреЗрдирд░ рд╣реИ рдЬреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдЗрди рдорджреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
- рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреА рдпреЛрдЬрдирд╛рдПрдВ ред рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИред рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд╕рд╛рде, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдпреЛрдЬрдирд╛рдПрдВ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрдмрдВрдз рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреА рд╣реИ; рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ рд╡реЗ рдРрд╕реЗ рд╣рд┐рд╕реНрд╕реЗ рднреА рд╣реИрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛ рд╡рд┐рдХрд╛рд╕ рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЕрдиреБрднрд╡ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╡рд┐рд╕реНрддрд╛рд░ рдмрд┐рдВрджреБ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред
- рдЗрдВрдЯрд░рдлреЗрд╕ред рдЕрдкрдиреЗ рд╕рд░рд▓рддрдо рд░реВрдк рдореЗрдВ, рдкреНрд░рджрд╛рддрд╛ рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рд▓реЗрдирджреЗрди рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдкрднреЛрдХреНрддрд╛ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдореИрд╕реЗрдЬрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЖрдо рддреМрд░ рдкрд░ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд▓реЗрдирджреЗрди рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдЕрдВрджрд░ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рд╛рдордЧреНрд░реА рдбрд╛рд▓рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ, рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╣реЗрдбрд░ рдпрд╛ рд╕рдВрджреЗрд╢ рдХреЗ рд╢рд░реАрд░ рдореЗрдВ рдЗрдирдХреЛрдбрд┐рдВрдЧ рд╢рдмреНрджрд╛рд░реНрде рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред RPC- , , - . , , , , .
- . , , "-" "fire-and-forget". , . , , . , ┬л┬╗ , , , "" . , " ", , . , , .
- . , , , , . , . Web- WS-Policy , WS-SecurityPolicy, " ", .
- . , , , , . .
, , , , . , : , . , - , , , , . , , WS-Basic, .
, . , , , .
, ? , , (, ) , . , , , , - . .
:
, тАФ , тАФ . Schematron . , , . , , , , "" , . , , , - , .
, /, , ( ). , , , .
, , , , , . , , .

3:
:
- . . .
- . , . - , - . , , . , . , ; .
- . , / .
Consumer-Driven Contracts
. , , , . , , . , . , Consumer-Driven Contracts .
---, . , , . ; , , .
Consumer-Driven Contracts :
- . , . , / , / .
- . , , .
- . . , Consumer-Driven Contract , . , , .
, :
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
Consumer-Driven Contracts , Consumer-Driven Contracts. , , , / .
. , -. unit-, , , . Schematron WS-Policy, .
, , . Consumer-Driven Contracts , , , , . / , . , , - .
Consumer-Driven Contracts , . -, . , . Consumer-driven contracts , , тАФ , , . "" , -, . тАФ тАФ , .
, , . Consumer-Driven Contracts . Consumer-driven contracts , , . , , , , . , , .
Consumer-Driven Contracts , , Consumer-Driven Contracts , . , , CDC.
Consumer-Driven Contracts , , : , , , . , , , . .
, , Consumer-Driven Contracts, , . , тАФ : , . , , , . , , , , . , тАФ , deprecated , .
Consumer-Driven Contracts . , , . , , ┬л┬╗ , .
, Consumer-Driven Contracts . , - тАФ - тАФ , , , WS-Agreement WSLA, SLA. , ; . тАФ тАФ , " " .
, : , . , , , , .
рд╕рдВрджрд░реНрдн
- Ian Robinson. Consumer-Driven Contracts ( )
- Martin Fowler. Microservices , Decentralized Governance
- . , " "
- .