Aracılığıyla paylaş


SrgsRule Oluşturucular

Tanım

SrgsRule sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

SrgsRule(String)

sınıfının yeni bir örneğini SrgsRule başlatır ve kuralın tanımlayıcısını belirtir.

SrgsRule(String, SrgsElement[])

Sınıfın SrgsRule yeni bir örneğini bir nesne dizisinden SrgsElement başlatır.

SrgsRule(String)

Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs

sınıfının yeni bir örneğini SrgsRule başlatır ve kuralın tanımlayıcısını belirtir.

public:
 SrgsRule(System::String ^ id);
public SrgsRule (string id);
new System.Speech.Recognition.SrgsGrammar.SrgsRule : string -> System.Speech.Recognition.SrgsGrammar.SrgsRule
Public Sub New (id As String)

Parametreler

id
String

Kuralın tanımlayıcısı.

Özel durumlar

id, null değeridir.

id uygun bir kural tanımlayıcısı değildir.

Örnekler

Aşağıdaki örnek, "Dünya Kupası'nı kazanan bir ülkedir" ifadesini ve ardından Dünya Kupası'nı kazanan bir ülkenin adını tanıyan bir dil bilgisi oluşturur. Örnek adlı winnerRule bir SrgsRule nesne oluşturur ve tanımlayıcıyı WorldCupWinner olarak Stringgeçirir. nesnesi, SrgsOneOf kural tarafından tanınması için alternatifler içeren bir dizi yeni SrgsItem nesneden oluşur.

public void WorldSoccerWinners ()
{

  // Create an SrgsDocument, create a new rule
  // and set its scope to public.
  SrgsDocument document = new SrgsDocument();
  SrgsRule winnerRule = new SrgsRule("WorldCupWinner");
  winnerRule.Scope = SrgsRuleScope.Public;

  // Add the introduction.
  winnerRule.Elements.Add(new SrgsItem("A nation that has won the world cup is: "));

  // Create the rule for the European nations.
  SrgsOneOf oneOfEurope = new SrgsOneOf(new SrgsItem[] {new SrgsItem("England"),
    new SrgsItem("France"), new SrgsItem("Germany"), new SrgsItem("Italy")});
  SrgsRule ruleEurope = (new SrgsRule("EuropeanNations", new SrgsElement[] {oneOfEurope}));

  // Create the rule for the South American nations.
  SrgsOneOf oneOfSAmerica = new SrgsOneOf(new SrgsItem[] {new SrgsItem("Argentina"),
    new SrgsItem("Brazil"), new SrgsItem("Uruguay")});
  SrgsRule ruleSAmerica = (new SrgsRule("SouthAmericanNations", new SrgsElement[] {oneOfSAmerica}));

  // Add references to winnerRule for ruleEurope and ruleSAmerica.
  winnerRule.Elements.Add(new SrgsOneOf(new SrgsItem[] {(new SrgsItem
    (new SrgsRuleRef(ruleEurope))), new SrgsItem(new SrgsRuleRef(ruleSAmerica))}));

  // Add all the rules to the document and make winnerRule
  // the root rule of the document.
  document.Rules.Add(new SrgsRule[] {winnerRule, ruleEurope, ruleSAmerica});
  document.Root = winnerRule;
}

Açıklamalar

SrgsRule Oluşturucu özelliği başlatırId. Tanımlayıcı belirli bir dil bilgisi içinde benzersiz olmalıdır.

Oluşturucu SrgsRule aşağıdaki durumlarda bir FormatException oluşturur:

  • idGenişletilebilir Biçimlendirme Dili (XML) 1.0 (Beşinci Sürüm) içinde tanımlandığı gibi geçerli bir XML adı değildir. Bu tanımı ifade etmek için geçerli bir XML adı bir harf, alt çizgi ('_') veya iki nokta üst üste (':') ile başlamalıdır ve ardından sıfır veya daha fazla NameChar karakteri (XML belirtiminde de tanımlanır) gelmelidir.

  • id "NULL" veya "VOID" veya "GARBAGE" şeklindedir.

  • id en az bir geçersiz kural kimliği karakteri içeriyor. Bu karakterler şunlardır: '?', '*', '+', '|', '(', '), '^', '$', '/', ';', '.', '=', '<', '', '>[', ']', '{', '}', '\\', ' ', '\t', '\r', ve '\n'.

Ayrıca bkz.

Şunlara uygulanır

SrgsRule(String, SrgsElement[])

Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs
Kaynak:
SrgsRule.cs

Sınıfın SrgsRule yeni bir örneğini bir nesne dizisinden SrgsElement başlatır.

public:
 SrgsRule(System::String ^ id, ... cli::array <System::Speech::Recognition::SrgsGrammar::SrgsElement ^> ^ elements);
public SrgsRule (string id, params System.Speech.Recognition.SrgsGrammar.SrgsElement[] elements);
new System.Speech.Recognition.SrgsGrammar.SrgsRule : string * System.Speech.Recognition.SrgsGrammar.SrgsElement[] -> System.Speech.Recognition.SrgsGrammar.SrgsRule
Public Sub New (id As String, ParamArray elements As SrgsElement())

Parametreler

id
String

Kuralın tanımlayıcısı.

elements
SrgsElement[]

Bir öğe dizisi SrgsElement .

Özel durumlar

id, null değeridir.

elements, null değeridir.

id uygun bir kural tanımlayıcısı değildir.

Örnekler

Aşağıdaki örnek, "Dünya Kupası'nı kazanan bir ülkedir" ifadesini ve ardından Dünya Kupası'nı kazanan bir ülkenin adını tanıyan bir dil bilgisi oluşturur. Örnek adlı WorldCupWinnerbir genel kural oluşturur. Örnek daha sonra, kural tanımlayıcısı ve ruleSAmericanesne içeren bir dizi için bir String geçirerek ve SrgsElement olmak üzere SrgsOneOf iki SrgsRuleruleEurope nesne oluşturur. Daha sonra, örnek kurala ruleEurope ve ruleSAmerica kuralından kural WorldCupWinnerbaşvuruları ekler.

public void WorldSoccerWinners ()
{
  // Create a grammar from an SRGSDocument, create a new rule
  // and set its scope to public.
  SrgsDocument srgsGrammar = new SrgsDocument ();
  SrgsRule winnerRule = new SrgsRule ("WorldCupWinner");
  winnerRule.Scope = SrgsRuleScope.Public;

  // Add the introduction.
  winnerRule.Elements.Add (new SrgsItem ("A nation that has won the world cup is"));

  // Create the rule for the European nations.
  SrgsOneOf oneOfEurope = new SrgsOneOf(new SrgsItem[] {new SrgsItem("England"), new SrgsItem("France"), new SrgsItem("Germany"), new SrgsItem("Italy")});
  SrgsRule ruleEurope = (new SrgsRule("EuropeanNations", new SrgsElement[] {oneOfEurope}));

  // Create the rule for the South American nations.
  SrgsOneOf oneOfSAmerica = new SrgsOneOf(new SrgsItem[] {new SrgsItem("Argentina"), new SrgsItem("Brazil"), new SrgsItem("Uruguay")});
  SrgsRule ruleSAmerica = (new SrgsRule("SouthAmericanNations", new SrgsElement[] {oneOfSAmerica}));

  // Add references to winnerRule for ruleEurope and ruleSAmerica.
  winnerRule.Elements.Add(new SrgsOneOf(new SrgsItem[] {(new SrgsItem (new SrgsRuleRef(ruleEurope))), new SrgsItem(new SrgsRuleRef(ruleSAmerica))}));

  // Add all the rules to the grammar and make winnerRule
  // the root rule of the grammar.
  document.Rules.Add(new SrgsRule[] {winnerRule, ruleEurope, ruleSAmerica});
  srgsGrammar.Root = winnerRule;
}

Oluşturulan dil bilgisi aşağıdaki biçimdedir.

<grammar version="1.0" xml:lang="en-US" xmlns="http://www.w3.org/2001/06/grammar" root="WorldCupWinner">
    <rule id="WorldCupWinner" scope="public">
        <item> A nation that has won the world cup is </item>
        <one-of>
            <item>
                <ruleref uri="#EuropeanNations" />
            </item>
            <item>
                <ruleref uri="#SouthAmericanNations" />
            </item>
        </one-of>
    </rule>
    <rule id="EuropeanNations">
        <one-of>
            <item> England </item>
            <item> France </item>
            <item> Germany </item>
            <item> Italy </item>
        </one-of>
    </rule>
    <rule id="SouthAmericanNations">
        <one-of>
            <item> Argentina </item>
            <item> Brazil </item>
            <item> Uruguay </item>
        </one-of>
    </rule>
</grammar>

Açıklamalar

SrgsRule Oluşturucu özelliği başlatırId. Tanımlayıcı belirli bir dil bilgisi içinde benzersiz olmalıdır.

Oluşturucu SrgsRule aşağıdaki durumlarda bir FormatException oluşturur:

  • idGenişletilebilir Biçimlendirme Dili (XML) 1.0 (Beşinci Sürüm) içinde tanımlandığı gibi geçerli bir XML adı değildir. Bu tanımı ifade etmek için geçerli bir XML adı bir harf, alt çizgi ('_') veya iki nokta üst üste (':') ile başlamalıdır ve ardından sıfır veya daha fazla NameChar karakteri (XML belirtiminde de tanımlanır) gelmelidir.

  • id "NULL" veya "VOID" veya "GARBAGE" şeklindedir.

  • id en az bir geçersiz kural kimliği karakteri içeriyor. Bu karakterler şunlardır: '?', '*', '+', '|', '(', '), '^', '$', '/', ';', '.', '=', '<', '', '>[', ']', '{', '}', '\\', ' ', '\t', '\r', ve '\n'.

Ayrıca bkz.

Şunlara uygulanır