ऐसा लगता है कि विशेषता मान Seq[Node]
प्रकार के हैं।स्कैला एक्सएमएल एपीआई: क्यों नोडसेक विशेषता मान के रूप में अनुमति देता है?
scala> <a b="1"/>.attribute("b")
res11: Option[Seq[scala.xml.Node]] = Some(1)
इसका मतलब है आप एक विशेषता मान के रूप में एक्सएमएल असाइन कर सकते हैं।
scala> <a b={<z><x/></z>}/>.attribute("b")
res16: Option[Seq[scala.xml.Node]] = Some(<z><x></x></z>)
scala> <a b={<z><x/></z>}/>.attribute("b").map(_ \ "x")
res17: Option[scala.xml.NodeSeq] = Some(<x></x>)
scala> new xml.PrettyPrinter(120, 2).format(<a b={<z><x/></z>}/>)
res19: String = <a b="<z><x></x></z>"></a>
यह मेरे लिए मजेदार लगता है। मैंने वास्तविक दुनिया में एक्सएमएल को एट्रिब्यूट वैल्यू के रूप में कभी नहीं देखा है। इसकी अनुमति क्यों है? एक विशेषता मान क्यों नहीं है String
टाइप करें?