Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: Azure Logic Apps (Standart)
İşletmeler arası (B2B) veya BizTalk geçişleri gibi kurumsal tümleştirme senaryolarında XML belgelerini ayrıştırmanız gerekebilir. Azure Logic Apps'daki standart mantıksal uygulama iş akışları, xml ayrıştırmak için Parse XML with schema adlı eylemi kullanarak ayrıştırabilir. Bu işlem XSD şeması gerektirir.
Örneğin, müşteri siparişlerini veya faturalarını düzenli olarak XML biçiminde aldığınızı varsayalım. Azure Logic Apps için bu tek tek XML öğelerine doğrudan iş akışı tasarımcısında erişmeniz gerektiğini varsayalım.
Sınırlamalar
Tüketim mantığı uygulaması kaynağı ve iş akışı bu eylemi desteklemez.
Önkoşullar
Bir Azure hesabı ve aboneliği. Ücretsiz bir Azure hesabı edinin.
İş akışınıza şema eylemiyle XML Ayrıştır eylemini ekleyebilmeniz için tetikleyiciyle başlayan Standart mantıksal uygulama iş akışı.
Kurumsal tümleştirme ve B2B iş akışlarınızda kullanmak üzere ticari ortaklar, anlaşmalar, sertifikalar ve diğer nesneleri tanımlayıp depoladığınız bir tümleştirme hesap kaynağı. Bu kaynak aşağıdaki gereksinimleri karşılamalıdır:
Mantıksal uygulama kaynağınızla aynı Azure aboneliğiyle ilişkilendirilir.
şema eylemiyle
Parse XML kullanmayı planladığınız mantıksal uygulama kaynağınızla aynı konumda veya Azure bölgede bulunur. Standart mantıksal uygulama kaynağı ve iş akışı üzerinde çalışıyorsanız, tümleştirme hesabınızı mantıksal uygulama kaynağınıza bağlayabilir, XSD şemalarını mantıksal uygulama kaynağınıza doğrudan veya aşağıdaki senaryolara göre her ikisini birden yükleyebilirsiniz:
Eğer ihtiyacınız olan veya kullanmak istediğiniz eserleri içeren bir tümleştirme hesabınız varsa, bu tümleştirme hesabınızı eserleri kullanmak istediğiniz birden çok standart mantık uygulaması kaynağına bağlayabilirsiniz. XSD şemalarını tek tek her mantıksal uygulamaya yüklemeniz gerekmez. Daha fazla bilgi için bkz. Mantıksal uygulama kaynağınızı tümleştirme hesabınıza bağlama.
tr-TR: Tümleştirme hesabınız yoksa veya yalnızca aynı mantıksal uygulama kaynağındaki birden çok iş akışında yapıtları kullanmayı planlıyorsanız, Azure portal veya Visual Studio Code kullanarak mantıksal uygulama kaynağınıza doğrudan şema ekleyebilirsiniz.
Entegrasyon hesabınız yoksa veya buna ihtiyacınız yoksa, karşıya yükleme seçeneğini kullanabilirsiniz. Aksi takdirde bağlama seçeneğini kullanın. Her iki durumda da, bu nesneleri aynı mantıksal uygulama kaynağı içindeki tüm alt iş akışlarında kullanabilirsiniz.
AS2, X12 ve EDIFACT işlemlerini kullanıyorsanız, iş ortakları, sözleşmeler ve sertifikalar gibi diğer artifacts depolamak için bir tümleştirme hesabına ihtiyacınız vardır.
Şema ile XML ayrıştırma eyleminde kullanılacak XSD şeması. Bu şemanın aşağıdaki örneğe benzer bir kök öğesi içerdiğinden emin olun:
<xs:element name="Root"> <....> </xs:element>
XML'i bir şema ile ayrıştırma eylemi ekleyin
Azure portal'da Standard Logic App'inizi ve iş akışınızı designer'da açın.
Tetikleyicisi olmayan boş bir iş akışınız varsa, istediğiniz tetikleyiciyi eklemek için bu genel adımları izleyin. Aksi halde, bir sonraki adıma devam edin.
Bu örnekte İstek tetikleyicisi kullanılır.
İş akışınızda XML'yi şemayla ayrıştır eylemini eklemek istediğiniz adımın altında, XML'yi şemayla ayrıştır adlı eylemi eklemek için bu genel adımları izleyin.
İçerik kutusunda, HTTP isteğinde aldığınız xml verilerini kullanarak ayrıştırmak istediğiniz XML içeriğini belirtin.
İş akışındaki önceki işlemlerden çıkışları seçmek için XML'yi şemayla ayrıştır eyleminde İçerik kutusunun içini seçin ve dinamik içerik listesi seçeneğini (şimşek simgesi) seçin.
Dinamik içerik listesinden ayrıştırmak istediğiniz içeriğin belirtecini seçin.
Bu örnek tetikleyiciden Gövde belirtecini seçer.
Kaynak listesinden, XSD şemanızı yüklediğiniz konumu seçin; bu, ya LogicApp kaynağınız ya da IntegrationAccount olabilir.
Ad listesinden XSD şemanızı seçin.
Tamamladığınızda, iş akışınızı kaydedin.
Şemalı XML Ayrıştırma eylemini ayarlamayı şimdi tamamladınız. Gerçek dünyadaki bir uygulamada ayrıştırılan verileri Salesforce gibi bir iş kolu (LOB) uygulamasında depolamak isteyebilirsiniz. Ayrıştırılmış çıkışı Salesforce'a göndermek için bir Salesforce eylemi ekleyin.
Ayrıştırma eyleminizi test etmek için iş akışınızı tetikleyin ve çalıştırın. Örneğin İstek tetikleyicisi için tetikleyicinin uç nokta URL'sine bir istek gönderin.
XML'yi şemayla ayrıştır eylemi, iş akışınız tetiklendiğinde ve XML içeriği ayrıştırma için kullanılabilir olduğunda çalıştırılır.
Gelişmiş parametreler
Aşağıdaki tabloda, bu eylemde kullanılabilen gelişmiş parametreler açıklanmaktadır:
| Parametre | Değer | Açıklama |
|---|---|---|
| DTD İşleme |
-
Yoksay - Ayrıştırmak - Yasaklamak |
XML belge türü tanımının (DTD) nasıl işleneceğini belirtin. |
| XML'i normalleştirme | Hayır veya Evet | XML içeriğinin normalleştirilip normalleştirılmayacağı. |
| Boşluk yoksayılır mı? | Hayır veya Evet | XML belgelerindeki boşluklar, sekmeler ve boş satırlar gibi önemsiz boşlukları ayrıştırma veya yoksayma. |
| XML İşleme Yönergeleri yok sayılacak mı? | Hayır veya Evet | XML işleme talimatlarını takip etme veya görmezden gelme. |
| XML Özniteliklerini Yoksay | Hayır veya Evet | XML özniteliklerinin yazılıp yazılmayacağı veya yoksayılması ile ilgili karar. |
| Tam Nitelikli İsimler kullanılsın mı? | Hayır veya Evet | Daha basit yerel adları mı, yoksa tam nitelikli XML adlarını mı kullanmalı? |
| Kök Düğüm Tam Adı | < root-node-qualified-name> | Şemanın birden çok başvurulmamış öğe tanımı içermesi durumunda kök düğümün tam adı. |
Sorunları giderme
Bu bölümde karşılaşabileceğiniz sorunlar ve bu sorunları gidermek için olası çözümler veya geçici çözümler açıklanmaktadır.
XML öğe sırası korunmuyor
XML'nizde karma sırada görünen yinelenen öğeler varsa, XML'yi şemayla ayrıştır eylemi özgün sırayı koruyamayabilir ve bu öğeleri alfabetik sırayla adlarına göre gruplandırabilir.
Xml'yi şemayla ayrıştır eylemi XML'yi JSON'a dönüştürdüğünden bu davranış beklenir. Bu biçimin, farklı öğe türlerine sahip tek bir sıralı listeyi temsil etmek için bir yolu yoktur. Bunun yerine, eylem öğeleri ada göre alfabetik sırada gruplandırılır.
Örneğin, şu sırayla şu adlara sahip öğeleriniz olduğunu varsayalım: A, B, B, A:
Önce
<Items>
<A>1</A>
<B>2</B>
<A>3</A>
<B>4</B>
</Items>
Eylem XML'yi ayrıştırdıktan sonra, sonuçta elde edilen JSON bu öğeleri şu şekilde gruplandırıp yeniden sıralar: A, A, Bve B:
Sonra
{
"A": ["1", "3"],
"B": ["2", "4"]
}
XML'yi şemayla ayrıştır eyleminin, yinelenen karışık öğelerin sırasını koruyan herhangi bir ayarı yoktur. Bu sınırlama, XML'nin JSON'a dönüştürülmesinin sonucu olur.
Aşağıdaki listede, bu sorunu düzeltmeniz veya geçici olarak çözmeniz için seçenekler açıklanmaktadır:
Şemayı denetlerseniz, şemayı birden çok yinelenen öğe türü olmayan tek bir yinelenen listenize sahip olacak şekilde tasarlayın.
Örneğin,
AveBöğelerini ayrı ayrı yinelemek yerine,Itemgibi tek bir yinelenen sarmalayıcı öğesi kullanın. Her öğe daha sonra temsil edilip edilmediğiniABgösterir. Sistem daha sonra tüm öğeleri tek bir sıralı listede tutabilir ve özgün sırayı koruyabilir. Bu seçenek uzun vadeli, öngörülebilir davranışlar için en iyisidir.Özgün sıra gerekli veya kritikse XML'yi ayrıştırmayın.
- XML'yi JSON'a bölmekten kaçının.
- XML belgesini bir bütün olarak işleyebilir.
- XML belgesini değiştirmeden geçirin veya XSLT gibi XML tabanlı araçları kullanarak içeriği dönüştürün.
Bu sınırlamayı göz önünde bulundurun.
Şemayı veya iş akışını değiştiremiyorsanız aşağıdakileri unutmayın:
- Karma yinelenen öğeler, özgün sıra kaybedilerek öğe adına göre gruplandırılır.
- Aşağı akış mantığını bu davranışı göz önünde bulundurarak tasarlar.