Java'da XML dosyasını ayrıştırmak için SAX kullanırken, yerel adı ve qname arasındaki startElement(String uri, String localName,String qName, Attributes attributes)
gibi SAX yöntemlerinde arasındaki fark nedir?Yerel ad ve qname arasındaki fark nedir?
cevap
Varsayılan olarak, bir XML okuyucu, hem başlangıç hem de son işleyicide, ad alanına ait her öğe için bir Ad Alanı URI'sı ve bir yerelAdı bildirecektir. Varsayılan SAX2 Ad işleme ile
<html:hr xmlns:html="http://www.w3.org/1999/xhtml"/>
XML okuyucusu Namespace URI
http://www.w3.org/1999/xhtml ve localName saat ile bir başlangıç ve bitiş elemanı olayı rapor verecek:
aşağıdaki örneği ele alalım. Çoğu XMLReader uygulaması ayrıca orijinal qName html: hr bildirir, ancak bu parametre boş bir dize olabilir (ad alanında olmayan öğeler hariç).
Genel olarak konuşursak, localName isim alanı içinde, yani yerel adıdır. qname veya nitelikli ad, tam addır (ad alanı dahil). Örneğin, < a: b…> bir yerel ada sahip olur, ancak bir qname a: b.
Ancak bu, çok genel ve ayarlara bağlı. Daha kapsamlı bir örnek için bu sayfanın sonundaki örneğe bakın: example
+1. – Kowser
Nitelikli ad hem ad alanı önekini hem de yerel adı içerir: att1
ve foo:att2
.
Örnek XML
<root
xmlns="http://www.example.com/DEFAULT"
att1="Hello"
xmlns:foo="http://www.example.com/FOO"
foo:att2="World"/>
Java Kodu: varsayılan ad alanını açmıyorsun bir ad alanı öneki olmadan
att1
Nitelikler. Bu, root
öğesinin ad alanı "http://www.example.com/DEFAULT"
iken, att1
özniteliğinin ad alanı ""
olur.
int att1Index = attributes.getIndex("", "att1");
attributes.getLocalName(att1Index); // returns "att1"
attributes.getQName(att1Index); // returns "att1"
attributes.getURI(att1Index); // returns ""
att2
int att2Index = attributes.getIndex("http://www.example.com/FOO", "att2");
attributes.getLocalName(att2Index); // returns "att2"
attributes.getQName(att2Index); // returns "foo:att2"
attributes.getURI(att2Index); // returns "http://www.example.com/FOO"
- 1. yerel fonksiyon myFunction ve yerel myFunction = function() arasındaki fark nedir
- 2. x arasındaki fark: Anahtar ve x: Ad
- 3. Statik sınıf ve ad alanı arasındaki fark nedir? (C#)
- 4. CNN'lerde yerel ve yoğun katmanlar arasındaki fark
- 5. uint ve System.UInt32 arasındaki fark nedir?
- 6. Python'da {} ve [] arasındaki fark nedir?
- 7. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 8. $ arasındaki fark nedir? ve PowerShell
- 9. GWT'deki mantıksal olaylar ve yerel olaylar arasındaki fark nedir?
- 10. .NET Fusion logger: Varsayılan ve Yerel Görüntüler arasındaki fark nedir?
- 11. QName ve Operator sınıfının kullanımı nedir?
- 12. Fark() arasındaki fark nedir mustache.js
- 13. arasındaki fark nedir?
- 14. Java arasındaki fark nedir
- 15. Etag ve Expires başlığı arasındaki fark nedir?
- 16. arasındaki fark nedir?
- 17. Bu Ruby ad alanı kuralları arasındaki fark nedir?
- 18. arasındaki fark nedir?
- 19. Node.js'de yerel ve global modül arasındaki fark nedir? Yerel ve global modül ne zaman kullanılır?
- 20. Apache Ivy: Yerel Ivy önbellek ve yerel depo arasındaki fark
- 21. app.doScript ve $ .evalFile arasındaki fark nedir?
- 22. gVim ve gVim arasındaki fark nedir?
- 23. isAlpha ve isLetter arasındaki fark nedir?
- 24. Control.Enter ve Control.GotFocus olayları arasındaki fark nedir?
- 25. .got ve .got.plt bölümü arasındaki fark nedir?
- 26. AutomationProperties.AutomationID ve AutomationProperties.Name arasındaki fark nedir?
- 27. Android'de getDir ve getFilesDir arasındaki fark nedir?
- 28. R içinde `=` ve `<-` arasındaki fark nedir?
- 29. PropertyChangeListener ve VetoableChangeListener arasındaki fark nedir?
- 30. XSS'de IDREF ve IDREFS arasındaki fark nedir?
Soru: ':' QName öneki + olacak + yerel adı veya öyle olacak '{' + alanı tanım + '}' + yerel ad? Şöyle: '{http://www.w3.org/1999/xhtml} hr'. Bir önek bir öğeyi bir ad alanına bağladığından, gerçek dizgisi önemsiz olmamalıdır. Nitelikli = ad alanı ve yerel ad. –
"Önek +": "+ localname" olacaktır. (Ama bunu Javadoc'a bakarak veya bir ayrıştırıcının çıktısında bulabilirsiniz - örnek olarak neden burada soruyorsunuz?) –