Letterlijke XML-element (Visual Basic)
Een letterlijke letterlijke naam die een XElement object vertegenwoordigt.
Syntaxis
<name [ attributeList ] />
-or-
<name [ attributeList ] > [ elementContents ] </[ name ]>
generator
<
Vereist. Hiermee opent u de tag van het beginelement.
name
Vereist. Naam van het element. De indeling is een van de volgende:
Letterlijke tekst voor de elementnaam, van het formulier
[ePrefix:]eName
, waarbij:Onderdeel Beschrijving ePrefix
Optioneel. XML-naamruimtevoorvoegsel voor het element. Moet een globale XML-naamruimte zijn die is gedefinieerd met een Imports
instructie in het bestand of op projectniveau, of een lokale XML-naamruimte die is gedefinieerd in dit element of een bovenliggend element.eName
Vereist. Naam van het element. De indeling is een van de volgende:
- Letterlijke tekst. Zie de namen van gedeclareerde XML-elementen en -kenmerken.
- Ingesloten expressie van het formulier<%= eNameExp %>
. Het typeeNameExp
moet zijnString
of een type dat impliciet converteerbaar is naar XName.Ingesloten expressie van het formulier
<%= nameExp %>
. Het typenameExp
moet zijnString
of een type impliciet converteerbaar naar XName. Een ingesloten expressie is niet toegestaan in een afsluitende tag van een element.
attributeList
Optioneel. Lijst met kenmerken die zijn gedeclareerd in de letterlijke waarde.
attribute [ attribute ... ]
Elk
attribute
heeft een van de volgende syntaxis:Kenmerktoewijzing, van het formulier
[aPrefix:]aName=aValue
, waarbij:Onderdeel Beschrijving aPrefix
Optioneel. XML-naamruimtevoorvoegsel voor het kenmerk. Moet een globale XML-naamruimte zijn die is gedefinieerd met een Imports
instructie, of een lokale XML-naamruimte die is gedefinieerd in dit element of een bovenliggend element.aName
Vereist. Naam van het kenmerk. De indeling is een van de volgende:
- Letterlijke tekst. Zie de namen van gedeclareerde XML-elementen en -kenmerken.
- Ingesloten expressie van het formulier<%= aNameExp %>
. Het typeaNameExp
moet zijnString
of een type dat impliciet converteerbaar is naar XName.aValue
Optioneel. Waarde van het kenmerk. De indeling is een van de volgende:
- Letterlijke tekst, tussen aanhalingstekens geplaatst.
- Ingesloten expressie van het formulier<%= aValueExp %>
. Elk type is toegestaan.Ingesloten expressie van het formulier
<%= aExp %>
.
/>
Optioneel. Geeft aan dat het element een leeg element is, zonder inhoud.
>
Vereist. Hiermee eindigt u het begin- of lege elementlabel.
elementContents
Optioneel. Inhoud van het element.
content [ content ... ]
Elk
content
kan een van de volgende zijn:Letterlijke tekst. Alle witruimte wordt
elementContents
aanzienlijk als er letterlijke tekst is.Ingesloten expressie van het formulier
<%= contentExp %>
.Letterlijke XML-element.
Letterlijke xml-opmerking. Zie letterlijke XML-opmerking.
Letterlijke instructie voor XML-verwerking. Zie letterlijke instructie voor XML-verwerking.
LETTERLIJK XML CDATA. Zie LETTERLIJK XML CDATA.
</[name]>
Optioneel. Vertegenwoordigt de afsluitende tag voor het element. De optionele
name
parameter is niet toegestaan wanneer dit het resultaat is van een ingesloten expressie.
Retourwaarde
Een XElement object.
Opmerkingen
U kunt de letterlijke syntaxis van het XML-element gebruiken om objecten in uw code te maken XElement .
Notitie
Een LETTERLIJKE XML-waarde kan meerdere regels omvatten zonder regelvervolgtekens te gebruiken. Met deze functie kunt u inhoud uit een XML-document kopiƫren en rechtstreeks in een Visual Basic-programma plakken.
Met ingesloten expressies van het formulier <%= exp %>
kunt u dynamische informatie toevoegen aan een letterlijke XML-element. Zie Ingesloten expressies in XML voor meer informatie.
De Visual Basic-compiler converteert het XML-element letterlijk naar aanroepen naar de XElement constructor en, indien nodig, de XAttribute constructor.
XML-naamruimten
XML-naamruimtevoorvoegsels zijn handig wanneer u letterlijke XML-gegevens moet maken met elementen uit dezelfde naamruimte vaak in code. U kunt algemene XML-naamruimtevoorvoegsels gebruiken, die u definieert met behulp van de Imports
instructie of lokale voorvoegsels, die u definieert met behulp van de syntaxis van het xmlns:xmlPrefix="xmlNamespace"
kenmerk. Zie Importinstructie (XML-naamruimte) voor meer informatie.
In overeenstemming met de bereikregels voor XML-naamruimten hebben lokale voorvoegsels voorrang op globale voorvoegsels. Als een XML-letterlijke waarde echter een XML-naamruimte definieert, is die naamruimte niet beschikbaar voor expressies die worden weergegeven in een ingesloten expressie. De ingesloten expressie heeft alleen toegang tot de algemene XML-naamruimte.
De Visual Basic-compiler converteert elke algemene XML-naamruimte die wordt gebruikt door een letterlijke XML-naamruimte in een lokale naamruimtedefinitie in de gegenereerde code. Globale XML-naamruimten die niet worden gebruikt, worden niet weergegeven in de gegenereerde code.
Voorbeeld 1
In het volgende voorbeeld ziet u hoe u een eenvoudig XML-element maakt met twee geneste lege elementen.
Dim test1 As XElement =
<outer>
<inner1></inner1>
<inner2/>
</outer>
Console.WriteLine(test1)
In het voorbeeld wordt de volgende tekst weergegeven. U ziet dat de letterlijke structuur van de lege elementen behouden blijft.
<outer>
<inner1></inner1>
<inner2 />
</outer>
Voorbeeld 2
In het volgende voorbeeld ziet u hoe u ingesloten expressies gebruikt om een element een naam te geven en kenmerken te maken.
Dim elementType = "book"
Dim authorName = "My Author"
Dim attributeName1 = "year"
Dim attributeValue1 = 1999
Dim attributeName2 = "title"
Dim attributeValue2 = "My Book"
Dim book As XElement =
<<%= elementType %>
isbn="1234"
author=<%= authorName %>
<%= attributeName1 %>=<%= attributeValue1 %>
<%= New XAttribute(attributeName2, attributeValue2) %>
/>
Console.WriteLine(book)
Met deze code wordt de volgende tekst weergegeven:
<book isbn="1234" author="My Author" year="1999" title="My Book" />
Voorbeeld 3
In het volgende voorbeeld wordt het voorvoegsel van de XML-naamruimte opgegeven ns
. Vervolgens wordt het voorvoegsel van de naamruimte gebruikt om een LETTERLIJKE XML-naam te maken en wordt het uiteindelijke formulier van het element weergegeven.
' Place Imports statements at the top of your program.
Imports <xmlns:ns="http://SomeNamespace">
Class TestClass1
Shared Sub TestPrefix()
' Create test using a global XML namespace prefix.
Dim inner2 = <ns:inner2/>
Dim test =
<ns:outer>
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1/>
<%= inner2 %>
</ns:middle>
</ns:outer>
' Display test to see its final form.
Console.WriteLine(test)
End Sub
End Class
Met deze code wordt de volgende tekst weergegeven:
<ns:outer xmlns:ns="http://SomeNamespace">
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1 />
<inner2 xmlns="http://SomeNamespace" />
</ns:middle>
</ns:outer>
U ziet dat de compiler het voorvoegsel van de globale XML-naamruimte heeft geconverteerd naar een voorvoegseldefinitie voor de XML-naamruimte. Met <het element ns:middle> wordt het voorvoegsel van de XML-naamruimte voor het <element ns:inner1> opnieuw gedefinieerd. <Het element ns:inner2> maakt echter gebruik van de naamruimte die door de Imports
instructie is gedefinieerd.