SchemaFactory.NewSchema 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
NewSchema(ISource[]) |
將指定的來源剖析為架構,並將它當做架構傳回。 |
NewSchema(ISource) |
將指定的來源剖析為架構,並將它當做架構傳回。 |
NewSchema() |
建立特殊 |
NewSchema(File) |
剖析指定的 |
NewSchema(URL) |
剖析指定的 |
NewSchema(ISource[])
將指定的來源剖析為架構,並將它當做架構傳回。
[Android.Runtime.Register("newSchema", "([Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_arrayLjavax_xml_transform_Source_Handler")]
public abstract Javax.Xml.Validation.Schema? NewSchema (Javax.Xml.Transform.ISource[]? schemas);
[<Android.Runtime.Register("newSchema", "([Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_arrayLjavax_xml_transform_Source_Handler")>]
abstract member NewSchema : Javax.Xml.Transform.ISource[] -> Javax.Xml.Validation.Schema
參數
- schemas
- ISource[]
要剖析的輸入。 SchemaFactory
必須辨識 StreamSource
、 javax.xml.transform.sax.SAXSource
與 javax.xml.transform.dom.DOMSource
。
傳回
一律傳回非 Null 有效 Schema
物件。
請注意,報告錯誤時,不保證傳 Schema
回的物件有意義。
- 屬性
例外狀況
如果在處理指定的輸入期間發現錯誤。 IErrorHandler設定 時,錯誤會先回報至該處。 請參閱 ErrorHandler。
schemas
如果參數本身為 null,或數位中的任何項目為 null。
如果這個方法無法辨識陣列中的任何專案。
如果架構語言不支援這項作業。
備註
將指定的來源剖析為架構,並將它當做架構傳回。
被呼叫者會讀取所有 Source
s,並將其合併成單一架構。 組合的確切語意取決於為此 SchemaFactory
物件建立的架構語言。
ErrorHandler
設定 時,被呼叫者會將來源中找到的所有錯誤報告給處理程式。 如果處理程序擲回例外狀況,它會中止架構編譯,而且會從這個方法擲回相同的例外狀況。 此外,在將錯誤回報給處理程序之後,呼叫端可以藉由擲回它來中止進一步的處理。 如果未設定錯誤處理程式,被呼叫者會擲回在來源中找到的第一個錯誤。
<h2>W3C XML 架構 1.0</h2>
產生的架構包含來自指定來源的元件。 如果所有這些來源都以與來源相同的順序來匯入單一架構檔,使用適當的schemaLocation和命名空間值,則會達到相同的結果。 XML 架構建議的第 4.2.3 節說明在這方面的選項處理器。 雖然處理器處理 JAXP 架構來源和 XML 架構匯入時應該一致,但符合 JAXP 規範剖析器的行為可能會有所不同:特別是,剖析器可以選擇忽略第一個和 lt;針對指定的命名空間匯> 入,不論 schemaLocation 中提供的信息為何。
如果剖析的架構集合包含 XML 架構規格第 5.1 節中指定的錯誤,則必須將錯誤回報給 ErrorHandler
。
<h2>RELAX NG</h2>
若為 RELAX NG,這個方法必須在 時schemas.length!=1
擲回UnsupportedOperationException
。
的 javax.xml.validation.SchemaFactory.newSchema(javax.xml.transform.Source[])
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
NewSchema(ISource)
將指定的來源剖析為架構,並將它當做架構傳回。
[Android.Runtime.Register("newSchema", "(Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljavax_xml_transform_Source_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Javax.Xml.Transform.ISource? schema);
[<Android.Runtime.Register("newSchema", "(Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljavax_xml_transform_Source_Handler")>]
abstract member NewSchema : Javax.Xml.Transform.ISource -> Javax.Xml.Validation.Schema
override this.NewSchema : Javax.Xml.Transform.ISource -> Javax.Xml.Validation.Schema
參數
- schema
- ISource
表示架構的來源。
傳回
剖析 schema
的新功能Schema
。
- 屬性
例外狀況
如果在剖析期間發生 SAX 錯誤。
如果 schema
為 null,則為 。
備註
將指定的來源剖析為架構,並將它當做架構傳回。
這是的 #newSchema(Source[] schemas)
便利方法。
的 javax.xml.validation.SchemaFactory.newSchema(javax.xml.transform.Source)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
NewSchema()
建立特殊 Schema
物件。
[Android.Runtime.Register("newSchema", "()Ljavax/xml/validation/Schema;", "GetNewSchemaHandler")]
public abstract Javax.Xml.Validation.Schema? NewSchema ();
[<Android.Runtime.Register("newSchema", "()Ljavax/xml/validation/Schema;", "GetNewSchemaHandler")>]
abstract member NewSchema : unit -> Javax.Xml.Validation.Schema
傳回
一律傳回非 Null 有效 Schema
物件。
- 屬性
例外狀況
如果被呼叫者不支援此作業。
如果支援這項作業,但因為某些原因而失敗。
備註
建立特殊 Schema
物件。
所傳 Schema
回對象的確切語意取決於為此 SchemaFactory
所建立的架構語言。
此外,允許實作使用實作特定的屬性/功能來改變此方法的語意。
<h2>W3C XML 架構 1.0</h2>
針對 XML 架構,這個方法會 Schema
使用檔中指定的位置提示來建立物件,以執行驗證。
傳回 Schema
的物件假設文件參考架構位置提示中的相同 URL,它們一律會解析為相同的架構檔。 此假設可讓實作重複使用已剖析的架構文件結果,以便針對相同架構執行多個驗證的速度會更快。
請注意,使用架構位置提示會造成拒絕服務攻擊的弱點。
<h2>RELAX NG</h2>
RELAX NG 不支援這項作業。
的 javax.xml.validation.SchemaFactory.newSchema()
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
NewSchema(File)
剖析指定的 File
作為架構,並將它當做 Schema
傳回。
[Android.Runtime.Register("newSchema", "(Ljava/io/File;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_io_File_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Java.IO.File? schema);
[<Android.Runtime.Register("newSchema", "(Ljava/io/File;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_io_File_Handler")>]
abstract member NewSchema : Java.IO.File -> Javax.Xml.Validation.Schema
override this.NewSchema : Java.IO.File -> Javax.Xml.Validation.Schema
參數
- schema
- File
表示架構的檔案。
傳回
剖析 schema
的新功能Schema
。
- 屬性
例外狀況
如果在剖析期間發生 SAX 錯誤。
如果 schema
為 null,則為 。
備註
剖析指定的 File
作為架構,並將它當做 Schema
傳回。
這是的 #newSchema(Source schema)
便利方法。
的 javax.xml.validation.SchemaFactory.newSchema(java.io.File)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
NewSchema(URL)
剖析指定的 URL
作為架構,並將它當做 Schema
傳回。
[Android.Runtime.Register("newSchema", "(Ljava/net/URL;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_net_URL_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Java.Net.URL? schema);
[<Android.Runtime.Register("newSchema", "(Ljava/net/URL;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_net_URL_Handler")>]
abstract member NewSchema : Java.Net.URL -> Javax.Xml.Validation.Schema
override this.NewSchema : Java.Net.URL -> Javax.Xml.Validation.Schema
參數
- schema
- URL
URL
,表示架構。
傳回
剖析 schema
的新功能Schema
。
- 屬性
例外狀況
如果在剖析期間發生 SAX 錯誤。
如果 schema
為 null,則為 。
備註
剖析指定的 URL
作為架構,並將它當做 Schema
傳回。
這是的 #newSchema(Source schema)
便利方法。
的 javax.xml.validation.SchemaFactory.newSchema(java.net.URL)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。