سؤال

أنا أحاول بناء قاعدة النظام القائم على تفسير البيانات.ومع ذلك أواجه قضايا اتخاذ قرار بشأن طريقة لبناء منطق لتخزين وتفسير القواعد.

حاليا ، هناك قاعدة بيانات بنية معقدة جدا, ولكن سوف تتعامل مع جميع جوانب تخزين قاعدة البيانات.الفكرة هي أن النظام سوف يكون قادرا على تقليد الطريقة التي MS Outlook يسمح للمستخدم لإضافة القواعد.

مشاكلي هي كما يلي:

  1. ما نمط يجب أن تستخدم لتخزين هذه القواعد داخل الأجسام ؟
  2. يجب استخدام eval() أو السليم كائن التوجه إلى تنفيذ القواعد ؟

وعلى سبيل المثال المادة قد تكون:

الكلب يجب أن يكون طوق في المنطقة بارك

حيث كل عنصر (الكلب يجب أن يكون طوق في المنطقة ، بارك) هو قطعة منفصلة من المنطق أن تفسر.

أي نصيحة عامة على الأسئلة أعلاه هو محل تقدير كبير!

هل كانت مفيدة؟

المحلول

لم تنفذ نظاما مثل الذي وصف في "العالم الحقيقي" السياق لكن لعبت معهم كمية كبيرة كهواية المشاريع.بلدي المفضل هو نهج استخدام نوع من المنطق اللغة مثل حاسوب لجعل تأكيدات والتحقق منها.كنت قد التأكيدات التي الحديقة, ماذا يعني أن يكون شيئا ما كلب ، ومن ثم جعل القاعدة الى حد كبير تماما مثل المثال الخاص بك بين قوسين في الجزء السفلي من هذا المنصب.أنا آسف بلدي فاتحة جدا صدئ أن أعطيك مثالا مفيدا...لقد لعب مع نابعة من الاستدلال اللغات طويلة جدا.

هناك حاسوب المترجمين المتاحة لدمج في معظم اللغات ، على الرغم من أنني لست متأكدا من PHP5.يمكنك رمي معا شيء بسيط لا إلى الأمام تسلسل الاستدلال على قاعدة هياكل البيانات من خلق الخاصة بك في وقت قصير إلى حد ما, إذا كنت لا يمكن العثور على حاسوب مترجم.كنت قد تكون مهتمة في هذه ملاحظات على الآلي الاستدلال.

نصائح أخرى

ربما هذا الجواب هو تافهة جدا / وضوحا بالنسبة لك ولكن أنا فقط فكرت في كيف سيكون حل شيء من هذا القبيل في بلدي الحالية القائمة المشروع الذي هو زند إطار التطبيق.فكرت في تصفية و validatorChains ZF الاستخدامات.أنا افترض أن لديك finit عدد ممكن من المدخلات الكائنات ، finit عدد من الشروط/القيود finit عدد من الإجراءات.في هذه الحالة عليك أولا إنشاء مثيل كائن وتشغيله ضد سلسلة من الشروط(المصادقون) ، إذا كل الظروف راض تشغيل كائن ضد actionChain.هنا أود أن يكون على الأرجح لتنفيذ بعض نوع من العمل أولوية النظام منذ بعض الإجراءات التي يجب تنفيذها من قبل الآخرين.مثل 'إرسال الإخطار' ثم 'حذف' الكائن في السؤال.حتى في ZF أود أن بناء العرف مدقق لكل حالة/القيد.أنا لا أصدق Outlook نظام ذكي جدا يعني أنا لا أعتقد أن المصادقون عامة جدا.

في ديسيبل يمكن أن يكون هناك جدول الفعلية القواعد واحد و واحد الإجراءات.ثم يمكن أن يكون هناك اثنين من العديد إلى العديد من الجداول ربط القاعدة مع كل حاجة الشروط والإجراءات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top