XslTransform.Load Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte šablonu stylů XSLT, včetně šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky.
Přetížení
Load(XPathNavigator, XmlResolver, Evidence) |
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů. |
Load(IXPathNavigable, XmlResolver, Evidence) |
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů. |
Load(XPathNavigator, XmlResolver) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator. |
Load(IXPathNavigable, XmlResolver) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable. |
Load(XmlReader, XmlResolver) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru XmlReader. |
Load(XmlReader, XmlResolver, Evidence) |
Načte šablonu stylů XSLT obsaženou v souboru XmlReader. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů. |
Load(XPathNavigator) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator. |
Load(IXPathNavigable) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable. |
Load(XmlReader) |
Zastaralé.
Načte šablonu stylů XSLT obsaženou v souboru XmlReader. |
Load(String) |
Načte šablonu stylů XSLT určenou adresou URL. |
Load(String, XmlResolver) |
Načte šablonu stylů XSLT určenou adresou URL. |
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace ze třídy XslTransform.
Load(XPathNavigator, XmlResolver, Evidence)
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As XPathNavigator, resolver As XmlResolver, evidence As Evidence)
Parametry
- stylesheet
- XPathNavigator
Objekt XPathNavigator obsahující šablonu stylů, která se má načíst.
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load v mezipaměti.
- evidence
- Evidence
Sada Evidence na sestavení vygenerovaná pro blok skriptu v šabloně stylů XSLT.
Pokud ano null
, bloky skriptů se nezpracují, funkce XSLT document()
není podporována a objekty privilegovaného rozšíření jsou zakázány.
Volající musí mít ControlEvidence
oprávnění k poskytnutí důkazů pro sestavení skriptu. Částečně důvěryhodné volající můžou tento parametr nastavit na null
.
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Odkazovaná šablona stylů vyžaduje funkce, které nejsou povoleny poskytnutými důkazy.
Volající se pokusí poskytnout důkazy a nemá ControlEvidence
oprávnění.
Příklady
Následující příklad provede transformaci XSLT pomocí šablony stylů z vnějšího zdroje. Vzhledem k tomu, že šablona stylů pochází z nedůvěryhodného zdroje, resolver
jsou parametry evidence
nastavené na null
.
public static void TransformFile (XPathNavigator xsltNav) {
// Load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(xsltNav, null, null);
// Transform the file.
xslt.Transform("books.xml", "books.html", null);
}
public shared sub TransformFile (xsltNav as XPathNavigator)
' Load the stylesheet.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(xsltNav, nothing, nothing)
' Transform the file.
xslt.Transform("books.xml", "books.html", nothing)
end sub
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Šablona stylů se načte z aktuální pozice XPathNavigator. Pokud chcete jako šablonu stylů použít část načteného dokumentu, přejděte na uzel odpovídající začátku šablony stylů. Load Po vrácení metody je XPathNavigator umístěn na začátku šablony stylů (na xsl:style sheet
uzlu).
Existují různé způsoby, jak poskytnout důkazy. Následující tabulka popisuje, jaký typ důkazů má poskytnout pro běžné scénáře uživatelů.
Scenario | Typ důkazů, které se mají poskytnout |
---|---|
Šablona stylů XSLT je samostatná nebo pochází ze základu kódu, kterému důvěřujete. | Použijte důkazy z vašeho sestavení.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje je známý a existuje ověřitelná adresa URL. | Vytvořte důkazy pomocí adresy URL.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není znám. | Nastavit důkaz na null . Bloky skriptu se nezpracují, funkce XSLT document() není podporována a objekty privilegovaného rozšíření jsou zakázány.Kromě toho můžete parametr nastavit resolver také na null . Tím se zajistí, že xsl:import se nezpracují prvky a xsl:include prvky. |
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není známý, ale vyžadujete podporu skriptů. | Požádejte volajícího o důkaz. Rozhraní API volajícího musí poskytovat způsob, jak poskytnout důkazy, obvykle třídu Evidence . |
Viz také
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Platí pro
Load(IXPathNavigable, XmlResolver, Evidence)
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As IXPathNavigable, resolver As XmlResolver, evidence As Evidence)
Parametry
- stylesheet
- IXPathNavigable
Objekt implementuje IXPathNavigable rozhraní. V rozhraní .NET Framework to může být buď XmlNode (obvykle ), XmlDocumentnebo XPathDocument obsahující šablonu stylů XSLT.
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load v mezipaměti.
- evidence
- Evidence
Sada Evidence na sestavení vygenerovaná pro blok skriptu v šabloně stylů XSLT.
Pokud ano null
, bloky skriptů se nezpracují, funkce XSLT document()
není podporována a objekty privilegovaného rozšíření jsou zakázány.
Volající musí mít ControlEvidence
oprávnění k poskytnutí důkazů pro sestavení skriptu. Částečně důvěryhodné volající můžou tento parametr nastavit na null
.
Výjimky
Načtený prostředek není platná šablona stylů.
Odkazovaná šablona stylů vyžaduje funkce, které nejsou povoleny poskytnutými důkazy.
Volající se pokusí poskytnout důkazy a nemá ControlEvidence
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Existují různé způsoby, jak poskytnout důkazy. Následující tabulka popisuje, jaký typ důkazů má poskytnout pro běžné scénáře uživatelů.
Scenario | Typ důkazů, které se mají poskytnout |
---|---|
Šablona stylů XSLT je samostatná nebo pochází ze základu kódu, kterému důvěřujete. | Použijte důkazy z vašeho sestavení.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje je známý a existuje ověřitelná adresa URL. | Vytvořte důkazy pomocí adresy URL.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není znám. | Nastavit důkaz na null . Bloky skriptu se nezpracují, funkce XSLT document() není podporována a objekty privilegovaného rozšíření jsou zakázány.Kromě toho můžete parametr nastavit resolver také na null . Tím se zajistí, že xsl:import se nezpracují prvky a xsl:include prvky. |
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není známý, ale vyžadujete podporu skriptů. | Požádejte volajícího o důkaz. Rozhraní API volajícího musí poskytovat způsob, jak poskytnout důkazy, obvykle třídu Evidence . |
Viz také
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Platí pro
Load(XPathNavigator, XmlResolver)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XPathNavigator, resolver As XmlResolver)
Parametry
- stylesheet
- XPathNavigator
Objekt XPathNavigator , který obsahuje šablonu stylů XSLT.
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load v mezipaměti.
- Atributy
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Šablona stylů se načte z aktuální pozice XPathNavigator. Pokud chcete jako šablonu stylů použít část načteného dokumentu, přejděte na uzel odpovídající začátku šablony stylů. Load Po vrácení metody je XPathNavigator umístěn na začátku šablony stylů (na xsl:style sheet
uzlu).
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkaz o použití Load(XPathNavigator, XmlResolver, Evidence).
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Viz také
Platí pro
Load(IXPathNavigable, XmlResolver)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As IXPathNavigable, resolver As XmlResolver)
Parametry
- stylesheet
- IXPathNavigable
Objekt implementuje IXPathNavigable rozhraní. V rozhraní .NET Framework to může být buď XmlNode (obvykle ), XmlDocumentnebo XPathDocument obsahující šablonu stylů XSLT.
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load v mezipaměti.
- Atributy
Výjimky
Načtený prostředek není platná šablona stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkazy pomocí Load(IXPathNavigable, XmlResolver, Evidence) metody.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Viz také
Platí pro
Load(XmlReader, XmlResolver)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru XmlReader.
public:
void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XmlReader, resolver As XmlResolver)
Parametry
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load(XmlReader, XmlResolver) v mezipaměti.
- Atributy
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky. Šablona stylů se načte z aktuálního uzlu všech podřízených XmlReader položek. To vám umožní použít část dokumentu jako šablonu stylů.
Load Po vrácení metody se XmlReader umístí na další uzel po konci šablony stylů. Pokud je dosaženo konce dokumentu, XmlReader umístí se na konec souboru (EOF).
Pokud šablona stylů obsahuje entity, měli byste zadat entitu XmlReader , která dokáže přeložit entity (XmlReader.CanResolveEntity vrátí true
). V tomto případě XmlValidatingReader lze použít.
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkazy pomocí Load(XmlReader, XmlResolver, Evidence) metody.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Viz také
Platí pro
Load(XmlReader, XmlResolver, Evidence)
Načte šablonu stylů XSLT obsaženou v souboru XmlReader. Tato metoda umožňuje omezit oprávnění šablony stylů zadáním důkazů.
public:
void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As XmlReader, resolver As XmlResolver, evidence As Evidence)
Parametry
- resolver
- XmlResolver
Používá XmlResolver se k načtení všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
. Pokud ano null
, externí prostředky se nevyřeší.
Po XmlResolver dokončení metody není uložena Load v mezipaměti.
- evidence
- Evidence
Sada Evidence na sestavení vygenerovaná pro blok skriptu v šabloně stylů XSLT.
Pokud ano null
, bloky skriptů se nezpracují, funkce XSLT document()
není podporována a objekty privilegovaného rozšíření jsou zakázány.
Volající musí mít ControlEvidence
oprávnění k poskytnutí důkazů pro sestavení skriptu. Částečně důvěryhodné volající můžou tento parametr nastavit na null
.
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Odkazovaná šablona stylů vyžaduje funkce, které nejsou povoleny poskytnutými důkazy.
Volající se pokusí poskytnout důkazy a nemá ControlEvidence
oprávnění.
Příklady
Následující příklad provede transformaci XSLT, kde xsltReader
je XmlReader obsahující šablonu stylů a secureURL
je důvěryhodnou adresou URL, kterou lze použít k vytvoření Evidence. Metoda XmlSecureResolver.CreateEvidenceForUrl se používá k vytvoření Evidence , která se použije na šablonu stylů.
void TransformFile( XmlReader^ xsltReader, String^ secureURL )
{
// Load the stylesheet using a default XmlUrlResolver and Evidence
// created using the trusted URL.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( xsltReader, gcnew XmlUrlResolver, XmlSecureResolver::CreateEvidenceForUrl( secureURL ) );
// Transform the file.
xslt->Transform("books.xml","books.html",gcnew XmlUrlResolver);
}
public static void TransformFile (XmlReader xsltReader, String secureURL) {
// Load the stylesheet using a default XmlUrlResolver and Evidence
// created using the trusted URL.
XslTransform xslt = new XslTransform();
xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL));
// Transform the file.
xslt.Transform("books.xml", "books.html", new XmlUrlResolver());
}
public shared sub TransformFile (xsltReader as XmlReader, secureURL as String)
' Load the stylesheet using a default XmlUrlResolver and Evidence
' created using the trusted URL.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL))
' Transform the file.
xslt.Transform("books.xml", "books.html", new XmlUrlResolver())
end sub
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky. Šablona stylů se načte z aktuálního uzlu všech podřízených XmlReader položek. To vám umožní použít část dokumentu jako šablonu stylů.
Load Po vrácení metody se XmlReader umístí na další uzel po konci šablony stylů. Pokud je dosaženo konce dokumentu, XmlReader umístí se na konec souboru (EOF).
Pokud šablona stylů obsahuje entity, měli byste zadat entitu XmlReader , která dokáže přeložit entity (XmlReader.CanResolveEntity vrátí true
). V tomto případě XmlValidatingReader lze použít.
Existují různé způsoby, jak poskytnout důkazy. Následující tabulka popisuje, jaký typ důkazů má poskytnout pro běžné scénáře uživatelů.
Scenario | Typ důkazů, které se mají poskytnout |
---|---|
Šablona stylů XSLT je samostatná nebo pochází ze základu kódu, kterému důvěřujete. | Použijte důkazy z vašeho sestavení.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje je známý a existuje ověřitelná adresa URL. | Vytvořte důkazy pomocí adresy URL.
|
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není znám. | Nastavit důkaz na null . Bloky skriptu se nezpracují, funkce XSLT document() není podporována a objekty privilegovaného rozšíření jsou zakázány.Kromě toho můžete parametr nastavit resolver také na null . Tím se zajistí, že xsl:import se nezpracují prvky a xsl:include prvky. |
Šablona stylů XSLT pochází z vnějšího zdroje. Původ zdroje není známý, ale vyžadujete podporu skriptů. | Požádejte volajícího o důkaz. Rozhraní API volajícího musí poskytovat způsob, jak poskytnout důkazy, obvykle třídu Evidence . |
Viz také
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Platí pro
Load(XPathNavigator)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru XPathNavigator.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet);
public void Load (System.Xml.XPath.XPathNavigator stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet);
member this.Load : System.Xml.XPath.XPathNavigator -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.XPathNavigator -> unit
Public Sub Load (stylesheet As XPathNavigator)
Parametry
- stylesheet
- XPathNavigator
Objekt XPathNavigator , který obsahuje šablonu stylů XSLT.
- Atributy
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky. Externí prostředky se přeloží pomocí přihlašovacích XmlUrlResolver údajů uživatele bez přihlašovacích údajů uživatele. Pokud jsou šablony stylů umístěné v síťovém prostředku, který vyžaduje ověření, použijte přetížení, které přebírá XmlResolver jako jeden z jeho argumentů, a zadejte XmlResolver s potřebnými přihlašovacími údaji.
Šablona stylů se načte z aktuální pozice XPathNavigator. Pokud chcete jako šablonu stylů použít jenom část načteného dokumentu, přejděte na uzel odpovídající začátku šablony stylů. Load Po vrácení metody je XPathNavigator umístěn na začátku šablony stylů (na xsl:style sheet
uzlu).
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkazy pomocí Load(XPathNavigator, XmlResolver, Evidence) metody.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Platí pro
Load(IXPathNavigable)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru IXPathNavigable.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet);
member this.Load : System.Xml.XPath.IXPathNavigable -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.IXPathNavigable -> unit
Public Sub Load (stylesheet As IXPathNavigable)
Parametry
- stylesheet
- IXPathNavigable
Objekt implementuje IXPathNavigable rozhraní. V rozhraní .NET Framework to může být buď XmlNode (obvykle ), XmlDocumentnebo XPathDocument obsahující šablonu stylů XSLT.
- Atributy
Výjimky
Načtený prostředek není platná šablona stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky. Externí prostředky se přeloží pomocí přihlašovacích XmlUrlResolver údajů uživatele bez přihlašovacích údajů uživatele. Pokud jsou šablony stylů umístěné v síťovém prostředku, který vyžaduje ověření, použijte přetížení, které přebírá XmlResolver jako jeden z jeho argumentů, a zadejte XmlResolver s potřebnými přihlašovacími údaji.
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkazy pomocí Load(IXPathNavigable, XmlResolver, Evidence) metody.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Platí pro
Load(XmlReader)
Upozornění
You should pass evidence to Load() method
Načte šablonu stylů XSLT obsaženou v souboru XmlReader.
public:
void Load(System::Xml::XmlReader ^ stylesheet);
public void Load (System.Xml.XmlReader stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet);
member this.Load : System.Xml.XmlReader -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XmlReader -> unit
Public Sub Load (stylesheet As XmlReader)
Parametry
- Atributy
Výjimky
Aktuální uzel neodpovídá platné šabloně stylů.
Šablona stylů obsahuje vložené skripty a volající nemá UnmanagedCode
oprávnění.
Příklady
Následující příklad transformuje soubor XML řazení všech knih podle názvu.
#using <System.Xml.dll>
#using <System.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;
int main()
{
String^ filename = "books.xml";
String^ stylesheet = "titles.xsl";
// Create the reader to load the stylesheet.
// Move the reader to the xsl:stylesheet node.
XmlTextReader^ reader = gcnew XmlTextReader( stylesheet );
reader->Read();
reader->Read();
// Create the XslTransform object and load the stylesheet.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( reader );
// Load the file to transform.
XPathDocument^ doc = gcnew XPathDocument( filename );
// Create an XmlTextWriter which outputs to the console.
XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );
// Transform the file and send the output to the console.
xslt->Transform(doc,nullptr,writer);
writer->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "titles.xsl";
public static void Main()
{
//Create the reader to load the stylesheet.
//Move the reader to the xsl:stylesheet node.
XmlTextReader reader = new XmlTextReader(stylesheet);
reader.Read();
reader.Read();
//Create the XslTransform object and load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(reader);
//Load the file to transform.
XPathDocument doc = new XPathDocument(filename);
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file and send the output to the console.
xslt.Transform(doc, null, writer);
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath
public class Sample
private const filename as String = "books.xml"
private const stylesheet as String = "titles.xsl"
public shared sub Main()
'Create the reader to load the stylesheet.
'Move the reader to the xsl:stylesheet node.
Dim reader as XmlTextReader = new XmlTextReader(stylesheet)
reader.Read()
reader.Read()
'Create the XslTransform object and load the stylesheet.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(reader)
'Load the file to transform.
Dim doc as XPathDocument = new XPathDocument(filename)
'Create an XmlTextWriter which outputs to the console.
Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)
'Transform the file and send the output to the console.
xslt.Transform(doc, nothing, writer)
writer.Close()
end sub
end class
V příkladu se jako vstup používají následující datové soubory.
books.xml
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
titles.xsl
<!--Stylesheet to sort all books by title-->
<!--Created 2/13/2001-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<books>
<xsl:apply-templates select="book">
<xsl:sort select="title"/>
</xsl:apply-templates>
</books>
</xsl:template>
<xsl:template match="book">
<book><xsl:copy-of select="node()"/></book>
</xsl:template>
</xsl:stylesheet>
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na xsl:include
prvky a xsl:import
prvky. Externí prostředky se přeloží pomocí přihlašovacích XmlUrlResolver údajů uživatele bez přihlašovacích údajů uživatele. Pokud jsou šablony stylů umístěné v síťovém prostředku, který vyžaduje ověření, použijte přetížení, které přebírá XmlResolver jako jeden z jeho argumentů, a zadejte XmlResolver s potřebnými přihlašovacími údaji.
Šablona stylů se načte z aktuálního uzlu všech podřízených XmlReader položek. To vám umožní použít část dokumentu jako šablonu stylů. Load Po vrácení metody se XmlReader umístí na další uzel po konci šablony stylů. Pokud je dosaženo konce dokumentu, XmlReader umístí se na konec souboru (EOF).
Pokud šablona stylů obsahuje entity, měli byste zadat entitu XmlReader , která dokáže přeložit entity (XmlReader.CanResolveEntity vrátí true
). V tomto případě XmlValidatingReader lze použít.
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Sestavení má úplný vztah důvěryhodnosti. Doporučeným postupem je poskytnout důkazy pomocí Load(XmlReader, XmlResolver, Evidence) metody.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Platí pro
Load(String)
Načte šablonu stylů XSLT určenou adresou URL.
public:
void Load(System::String ^ url);
public void Load (string url);
member this.Load : string -> unit
Public Sub Load (url As String)
Parametry
- url
- String
Adresa URL, která určuje šablonu stylů XSLT, která se má načíst.
Výjimky
Načtený prostředek není platná šablona stylů.
Šablona stylů obsahuje vložený skript a volající nemá UnmanagedCode
oprávnění.
Příklady
Následující příklad transformuje dokument XML na dokument HTML. Zobrazí isBN, název a cenu pro každou knihu v tabulce.
#using <System.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;
int main()
{
String^ filename = "books.xml";
String^ stylesheet = "output.xsl";
//Load the stylesheet.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( stylesheet );
//Load the file to transform.
XPathDocument^ doc = gcnew XPathDocument( filename );
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );
//Transform the file and send the output to the console.
xslt->Transform(doc,nullptr,writer,nullptr);
writer->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "output.xsl";
public static void Main()
{
//Load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(stylesheet);
//Load the file to transform.
XPathDocument doc = new XPathDocument(filename);
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file and send the output to the console.
xslt.Transform(doc, null, writer, null);
writer.Close();
}
}
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath
Public Class Sample
Private Shared filename1 As String = "books.xml"
Private Shared stylesheet1 As String = "output.xsl"
Public Shared Sub Main()
'Load the stylesheet.
Dim xslt As New XslTransform()
xslt.Load(stylesheet1)
'Load the file to transform.
Dim doc As New XPathDocument(filename1)
'Create an XmlTextWriter which outputs to the console.
Dim writer As New XmlTextWriter(Console.Out)
'Transform the file and send the output to the console.
xslt.Transform(doc, Nothing, writer, Nothing)
writer.Close()
End Sub
End Class
Ukázka používá následující dva vstupní soubory.
books.xml
<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
output.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<HTML>
<BODY>
<TABLE BORDER="2">
<TR>
<TD>ISBN</TD>
<TD>Title</TD>
<TD>Price</TD>
</TR>
<xsl:apply-templates select="book"/>
</TABLE>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="book">
<TR>
<TD><xsl:value-of select="@ISBN"/></TD>
<TD><xsl:value-of select="title"/></TD>
<TD><xsl:value-of select="price"/></TD>
</TR>
</xsl:template>
</xsl:stylesheet>
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace ze třídy XslTransform.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
oboru názvů .
Tato metoda načte šablonu stylů XSLT, včetně všech šablon stylů odkazovaných na prvky xsl:include
a xsl:import
prvky. Externí prostředky se přeloží pomocí XmlUrlResolver bez přihlašovacích údajů uživatele. Pokud jsou šablony stylů umístěné v síťovém prostředku, který vyžaduje ověření, použijte přetížení, které přebírá XmlResolver jako jeden z jeho argumentů a určuje XmlResolver s potřebnými přihlašovacími údaji.
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Identifikátor URI šablony stylů slouží k vytvoření důkazů, které se použijí pro sestavení.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.
Platí pro
Load(String, XmlResolver)
Načte šablonu stylů XSLT určenou adresou URL.
public:
void Load(System::String ^ url, System::Xml::XmlResolver ^ resolver);
public void Load (string url, System.Xml.XmlResolver? resolver);
public void Load (string url, System.Xml.XmlResolver resolver);
member this.Load : string * System.Xml.XmlResolver -> unit
Public Sub Load (url As String, resolver As XmlResolver)
Parametry
- url
- String
Adresa URL, která určuje šablonu stylů XSLT, která se má načíst.
- resolver
- XmlResolver
Slouží XmlResolver k načtení šablony stylů a všech šablon stylů odkazovaných v elementech xsl:import
a xsl:include
.
Pokud tomu tak je null
, použije se k otevření šablony stylů výchozí XmlUrlResolver bez přihlašovacích údajů uživatele. Výchozí hodnota XmlUrlResolver se nepoužívá k překladu externích prostředků v šabloně stylů, takže elementy xsl:import
a xsl:include
nejsou vyřešeny.
Po XmlResolver dokončení metody není uložena Load(String, XmlResolver) v mezipaměti.
Výjimky
Načtený prostředek není platná šablona stylů.
Šablona stylů obsahuje vložený skript a volající nemá UnmanagedCode
oprávnění.
Příklady
Následující příklad transformuje dokument XML na dokument HTML. Příklad načte šablonu stylů XSLT, která obsahuje prvek odkazující na jinou xsl:include
šablonu stylů. Předá XmlUrlResolver se metodě Load , která nastaví přihlašovací údaje potřebné pro přístup k síťovému prostředku pro zahrnutou šablonu stylů.
using System;
using System.IO;
using System.Xml;
using System.Xml.XPath;
using System.Xml.Xsl;
using System.Net;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "sort.xsl";
public static void Main()
{
//Create the XslTransform.
XslTransform xslt = new XslTransform();
//Create a resolver and set the credentials to use.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = CredentialCache.DefaultCredentials;
//Load the stylesheet.
xslt.Load(stylesheet, resolver);
//Load the XML data file.
XPathDocument doc = new XPathDocument(filename);
//Create the XmlTextWriter to output to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file.
xslt.Transform(doc, null, writer, null);
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.XPath
Imports System.Xml.Xsl
Imports System.Net
public class Sample
private shared filename as String = "books.xml"
private shared stylesheet as String = "sort.xsl"
public shared sub Main()
'Create the XslTransform.
Dim xslt as XslTransform = new XslTransform()
'Create a resolver and set the credentials to use.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = CredentialCache.DefaultCredentials
'Load the stylesheet.
xslt.Load(stylesheet, resolver)
'Load the XML data file.
Dim doc as XPathDocument = new XPathDocument(filename)
'Create the XmlTextWriter to output to the console.
Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)
'Transform the file.
xslt.Transform(doc, nothing, writer, nothing)
writer.Close()
end sub
end class
V příkladu se jako vstup používají následující datové soubory.
books.xml
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
sort.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore"/>
<xsl:include href="http://serverA/includefile.xsl"/>
<xsl:template match="book">
<TR>
<TD><xsl:value-of select="@ISBN"/></TD>
<TD><xsl:value-of select="title"/></TD>
<TD><xsl:value-of select="price"/></TD>
</TR>
</xsl:template>
</xsl:stylesheet>
includefile.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<HTML>
<BODY>
<TABLE BORDER="2">
<TR>
<TD>ISBN</TD>
<TD>Title</TD>
<TD>Price</TD>
</TR>
<xsl:apply-templates select="book">
<xsl:sort select="@ISBN"/>
</xsl:apply-templates>
</TABLE>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
Poznámky
Poznámka
Třída XslTransform je zastaralá v rozhraní .NET Framework verze 2.0. Třída XslCompiledTransform je nový procesor XSLT. Další informace naleznete v tématu Použití třídy XslCompiledTransform a migrace z XslTransform třídy.
XslTransform podporuje syntaxi XSLT 1.0. Šablona stylů XSLT musí obsahovat deklaraci xmlns:xsl= http://www.w3.org/1999/XSL/Transform
oboru názvů .
Pokud šablona stylů obsahuje vložené skriptování, skript se zkompiluje do sestavení. Identifikátor URI šablony stylů slouží k vytvoření důkazů, které se použijí pro sestavení.
Poznámka
Pokud volající nemá UnmanagedCode
oprávnění, vložený skript není zkompilován a SecurityException vyvolá se. SecurityPermissionFlag.UnmanagedCode Další SecurityPermission informace a další informace.