مشاركة عبر


تعيينات الحقول والتحويلات باستخدام مفهرسات Azure الذكاء الاصطناعي Search

مراحل المفهرس

توضح هذه المقالة كيفية تعيين تعيينات الحقول الصريحة التي تنشئ مسار البيانات بين حقول المصدر في مصدر بيانات معتمد وحقول الهدف في فهرس بحث.

متى يتم تعيين تعيين حقل

عندما يقوم مفهرس البحث في Azure الذكاء الاصطناعي بتحميل فهرس بحث، فإنه يحدد مسار البيانات باستخدام تعيينات الحقول من المصدر إلى الوجهة. تكون تعيينات الحقول الضمنية داخلية وتحدث عندما تكون أسماء الحقول وأنواع البيانات متوافقة بين المصدر والوجهة. إذا لم تتطابق الإدخالات والمخرجات، يمكنك تعريف تعيينات الحقول الصريحة لإعداد مسار البيانات، كما هو موضح في هذه المقالة.

يمكن أيضا استخدام تعيينات الحقول لتحويل البيانات خفيفة الوزن، مثل الترميز أو فك الترميز، من خلال وظائف التعيين. إذا كانت هناك حاجة إلى المزيد من المعالجة، ففكر في Azure Data Factory لسد الفجوة.

تنطبق تعيينات الحقول على:

  • بنيات البيانات المادية على جانبي مسار البيانات. توجد بنيات البيانات المنطقية التي تم إنشاؤها بواسطة المهارات في الذاكرة فقط. استخدم outputFieldMappings لتعيين العقد في الذاكرة لإخراج الحقول في فهرس البحث.

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

  • حقول البحث ذات المستوى الأعلى فقط، حيث targetFieldName يكون إما حقلا بسيطا أو مجموعة. لا يمكن أن يكون الحقل الهدف نوعا معقدا.

السيناريوهات المدعومة

تأكد من استخدام مصدر بيانات مدعوم للفهرسة التي تقود المفهرس.

حالة الاستخدام ‏‏الوصف
تعارض الاسم افترض أن مصدر البيانات يحتوي على حقل يسمى _city. نظرا لأن Azure الذكاء الاصطناعي Search لا يسمح بأسماء الحقول التي تبدأ بتسطير أسفل السطر، يتيح لك تعيين الحقل تعيين "_city" بشكل فعال إلى "المدينة".

إذا تضمنت متطلبات الفهرسة استرداد المحتوى من مصادر بيانات متعددة، حيث تختلف أسماء الحقول بين المصادر، فيمكنك استخدام تعيين حقل لتوضيح المسار.
نوع التناقض من المفترض أنك تريد أن يكون حقل عدد صحيح المصدر من النوع Edm.String بحيث يكون قابلا للبحث في فهرس البحث. نظرا لأن الأنواع مختلفة، ستحتاج إلى تحديد تعيين حقل لكي ينجح مسار البيانات. لاحظ أن Azure الذكاء الاصطناعي Search يحتوي على مجموعة أصغر من أنواع البيانات المدعومة من العديد من مصادر البيانات. إذا كنت تقوم باستيراد بيانات SQL، يسمح لك تعيين الحقل بتعيين نوع بيانات SQL الذي تريده في فهرس البحث.
مسارات بيانات واحد إلى متعدد يمكنك ملء حقول متعددة في الفهرس بمحتوى من نفس الحقل المصدر. على سبيل المثال، قد تحتاج إلى تطبيق محللات مختلفة على كل حقل لدعم حالات استخدام مختلفة في تطبيق العميل.
الترميز وفك التشفير يمكنك تطبيق وظائف التعيين لدعم ترميز Base64 أو فك ترميز البيانات أثناء الفهرسة.
تقسيم السلاسل أو إعادة نشر الصفائف في مجموعات يمكنك تطبيق دالات التعيين لتقسيم سلسلة تتضمن محددا، أو لإرسال صفيف JSON إلى حقل بحث من النوع Collection(Edm.String).

إشعار

إذا لم تكن هناك تعيينات حقول، تفترض المفهرسات أنه يجب تعيين حقول مصدر البيانات إلى حقول الفهرسة بنفس الاسم. تتجاوز إضافة تعيين حقل تعيينات الحقول الافتراضية للحقل المصدر والهدف. تضيف بعض المفهرسات، مثل مفهرس تخزين الكائن الثنائي كبير الحجم، تعيينات الحقول الافتراضية لحقل مفتاح الفهرس تلقائيا.

الحقول المعقدة غير معتمدة في تعيين الحقل. يجب أن تتطابق بنية المصدر (البنيات المتداخلة أو الهرمية) تماما مع النوع المعقد في الفهرس بحيث تعمل التعيينات الافتراضية. لمزيد من المعلومات، راجع البرنامج التعليمي: فهرسة الكائنات الثنائية كبيرة الحجم JSON المتداخلة للحصول على مثال. إذا تلقيت خطأ مشابها ل "Field mapping specifies target field 'Address/city' that doesn't exist in the index"، فهذا لأن تعيينات الحقول الهدف لا يمكن أن تكون نوعا معقدا.

اختياريا، قد تحتاج إلى عدد قليل من العقد في البنية المعقدة. للحصول على عقد فردية، يمكنك تسوية البيانات الواردة في مجموعة سلسلة (راجع outputFieldMappings لهذا الحل البديل).

تعريف تعيين حقل

يشرح هذا القسم خطوات إعداد تعيينات الحقول.

  1. استخدم إنشاء مفهرس أو إنشاء مفهرس أو تحديثه أو أسلوب مكافئ في Azure SDK. فيما يلي مثال على تعريف المفهرس.

    {
       "name": "myindexer",
       "description": null,
       "dataSourceName": "mydatasource",
       "targetIndexName": "myindex",
       "schedule": { },
       "parameters": { },
       "fieldMappings": [],
       "disabled": false,
       "encryptionKey": { }
     }
    
  2. املأ fieldMappings الصفيف لتحديد التعيينات. يتكون تعيين الحقل من ثلاثة أجزاء.

    "fieldMappings": [
      {
        "sourceFieldName": "_city",
        "targetFieldName": "city",
        "mappingFunction": null
      }
    ]
    
    الخاصية ‏‏الوصف
    sourceFieldName مطلوب. يمثل حقلا في مصدر البيانات.
    targetFieldName اختياري. يمثل حقلا في فهرس البحث. إذا تم حذفها، يتم افتراض قيمة sourceFieldName للهدف. يجب أن تكون الحقول الهدف حقولا أو مجموعات بسيطة من المستوى الأعلى. لا يمكن أن يكون نوعا معقدا أو مجموعة معقدة. إذا كنت تعالج مشكلة في نوع البيانات، يتم تحديد نوع بيانات الحقل في تعريف الفهرس. يحتاج تعيين الحقل فقط إلى اسم الحقل.
    تعيين وظيفة اختياري. يتكون من دالات معرفة مسبقا تحول البيانات.

مثال: تعارض الاسم أو النوع

ينشئ تعيين حقل صريح مسار بيانات للحالات التي لا يكون فيها الاسم والنوع متطابقين.

يستخدم Azure الذكاء الاصطناعي Search مقارنة غير حساسة لحالة الأحرف لحل أسماء الحقول والوظائف في تعيينات الحقول. هذا مناسب (ليس عليك الحصول على كل الغلاف بشكل صحيح)، ولكن هذا يعني أنه لا يمكن أن يحتوي مصدر البيانات أو الفهرس على حقول تختلف فقط حسب الحالة.

PUT https://[service name].search.windows.net/indexers/myindexer?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
{
    "dataSourceName" : "mydatasource",
    "targetIndexName" : "myindex",
    "fieldMappings" : [ { "sourceFieldName" : "_city", "targetFieldName" : "city" } ]
}

مثال: مسارات بيانات واحد إلى متعدد أو متشعب

يعين هذا المثال حقل مصدر واحد إلى حقول مستهدفة متعددة (تعيينات "واحد إلى متعدد"). يمكنك "نسخ" حقل، ونسخ محتوى الحقل المصدر نفسه إلى حقلي فهرس مختلفين سيتم تحليلهما أو إسنادهما بشكل مختلف في الفهرس.


"fieldMappings" : [
    { "sourceFieldName" : "text", "targetFieldName" : "textStandardEnglishAnalyzer" },
    { "sourceFieldName" : "text", "targetFieldName" : "textSoundexAnalyzer" }
]

يمكنك استخدام نهج مماثل للمحتوى الذي تم إنشاؤه بواسطة المهارات.

تعيين الوظائف والأمثلة

تحول دالة تعيين الحقل محتويات حقل قبل تخزينه في الفهرس. وظائف التعيين التالية مدعومة حاليا:

لاحظ أن هذه الدالات مدعومة حصريا للفهرسات الأصلية في هذا الوقت. فهي غير متوافقة مع تعيين الفهرس المكتنز، لذلك، لا يمكن استخدام هذه الوظائف لإسقاطات الفهرس.

دالة base64Encode

ينفذ ترميز Base64 الآمن لعنون URL لسلسلة الإدخال. يفترض أن الإدخال مرمز ب UTF-8.

مثال: الترميز الأساسي لمفتاح مستند

يمكن أن تظهر الأحرف الآمنة لعنوان URL فقط في مفتاح مستند Azure الذكاء الاصطناعي Search (بحيث يمكنك معالجة المستند باستخدام واجهة برمجة تطبيقات البحث). إذا كان الحقل المصدر للمفتاح يحتوي على أحرف غير آمنة لعنون URL، مثل - و \، فاستخدم الدالة base64Encode لتحويله في وقت الفهرسة.

يحدد المثال التالي الدالة base64Encode على metadata_storage_name لمعالجة الأحرف غير المدعومة.

PUT /indexers?api-version=2024-07-01
{
  "dataSourceName" : "my-blob-datasource ",
  "targetIndexName" : "my-search-index",
  "fieldMappings" : [
    { 
        "sourceFieldName" : "metadata_storage_name", 
        "targetFieldName" : "key", 
        "mappingFunction" : { 
            "name" : "base64Encode",
            "parameters" : { "useHttpServerUtilityUrlTokenEncode" : false }
        } 
    }
  ]
}

لا يمكن أن يتجاوز طول مفتاح المستند (قبل التحويل وبعده) 1024 حرفا. عند استرداد المفتاح المشفر في وقت البحث، استخدم الدالة base64Decode للحصول على قيمة المفتاح الأصلية، واستخدمها لاسترداد المستند المصدر.

مثال: جعل الحقل المشفر الأساسي "قابلا للبحث"

هناك أوقات تحتاج فيها إلى استخدام إصدار مشفر لحقل مثل metadata_storage_path المفتاح، ولكن تحتاج أيضا إلى إصدار غير مشفر للبحث عن النص الكامل. لدعم كلا السيناريوهين، يمكنك التعيين metadata_storage_path إلى حقلين: أحدهما للمفتاح (مرمز)، والثاني لحقل مسار يمكننا أن نفترض أنه يعزى كما هو الحال searchable في مخطط الفهرس.

PUT /indexers/blob-indexer?api-version=2024-07-01
{
    "dataSourceName" : " blob-datasource ",
    "targetIndexName" : "my-target-index",
    "schedule" : { "interval" : "PT2H" },
    "fieldMappings" : [
        { "sourceFieldName" : "metadata_storage_path", "targetFieldName" : "key", "mappingFunction" : { "name" : "base64Encode" } },
        { "sourceFieldName" : "metadata_storage_path", "targetFieldName" : "path" }
      ]
}

مثال - الاحتفاظ بالقيم الأصلية

يضيف مفهرس تخزين الكائن الثنائي كبير الحجم تلقائيا تعيين حقل من metadata_storage_path، وURI للكائن الثنائي كبير الحجم، إلى حقل مفتاح الفهرس إذا لم يتم تحديد تعيين حقل. يتم ترميز هذه القيمة Base64 بحيث يكون من الآمن استخدامها كمفتاح مستند Azure الذكاء الاصطناعي Search. يوضح المثال التالي كيفية تعيين metadata_storage_path في نفس الوقت لحقل index_key والاحتفاظ بالقيمة الأصلية metadata_storage_path في حقل:

"fieldMappings": [
  {
    "sourceFieldName": "metadata_storage_path",
    "targetFieldName": "metadata_storage_path"
  },
  {
    "sourceFieldName": "metadata_storage_path",
    "targetFieldName": "index_key",
    "mappingFunction": {
       "name": "base64Encode"
    }
  }
]

إذا لم تقم بتضمين خاصية معلمات لدالة التعيين الخاصة بك، تعيينها افتراضيا إلى القيمة {"useHttpServerUtilityUrlTokenEncode" : true}.

يدعم Azure الذكاء الاصطناعي Search ترميزين مختلفين ل Base64. يجب استخدام نفس المعلمات عند ترميز وفك ترميز نفس الحقل. لمزيد من المعلومات، راجع خيارات ترميز base64 لتحديد المعلمات التي يجب استخدامها.

دالة base64Decode

تنفيذ فك ترميز Base64 لسلسلة الإدخال. يفترض أن يكون الإدخال سلسلة مشفرة بعنوان URL Base64.

مثال - فك تشفير بيانات تعريف كائن ثنائي كبير الحجم أو عناوين URL

قد تحتوي بيانات المصدر على سلاسل مشفرة ب Base64، مثل سلاسل بيانات تعريف الكائن الثنائي كبير الحجم أو عناوين URL على الويب، التي تريد جعلها قابلة للبحث كنص عادي. يمكنك استخدام الدالة base64Decode لتحويل البيانات المشفرة مرة أخرى إلى سلاسل عادية عند ملء فهرس البحث.

"fieldMappings" : [
  {
    "sourceFieldName" : "Base64EncodedMetadata",
    "targetFieldName" : "SearchableMetadata",
    "mappingFunction" : { 
      "name" : "base64Decode", 
      "parameters" : { "useHttpServerUtilityUrlTokenDecode" : false }
    }
  }
]

إذا لم تقم بتضمين خاصية معلمات، تعيينها افتراضيا إلى القيمة {"useHttpServerUtilityUrlTokenEncode" : true}.

يدعم Azure الذكاء الاصطناعي Search ترميزين مختلفين ل Base64. يجب استخدام نفس المعلمات عند ترميز وفك ترميز نفس الحقل. لمزيد من المعلومات، راجع خيارات ترميز base64 لتحديد المعلمات التي يجب استخدامها.

خيارات ترميز base64

يدعم Azure الذكاء الاصطناعي Search ترميز base64 الآمن ل URL وترميز base64 العادي. يجب فك ترميز السلسلة التي تم ترميز base64 أثناء الفهرسة لاحقا بنفس خيارات الترميز، وإلا فلن تتطابق النتيجة مع النسخة الأصلية.

useHttpServerUtilityUrlTokenEncode إذا تم تعيين معلمات أو useHttpServerUtilityUrlTokenDecode لترميز وفك ترميز على التوالي إلى true، فإن base64Encode تتصرف مثل HttpServerUtility.UrlTokenEncode وتتصرف base64Decode مثل HttpServerUtility.UrlTokenDecode.

تحذير

إذا base64Encode تم استخدام لإنتاج قيم رئيسية، useHttpServerUtilityUrlTokenEncode يجب تعيين إلى true. يمكن استخدام ترميز base64 الآمن لعنون URL فقط للقيم الرئيسية. راجع قواعد التسمية لمجموعة كاملة من القيود على الأحرف في القيم الرئيسية.

تفترض مكتبات .NET في Azure الذكاء الاصطناعي Search .NET Framework الكامل، والذي يوفر ترميزا مضمنا. تطبق useHttpServerUtilityUrlTokenEncode الخيارات و useHttpServerUtilityUrlTokenDecode هذه الوظيفة المضمنة. إذا كنت تستخدم .NET Core أو إطار عمل آخر، نوصي بتعيين هذه الخيارات إلى false وظائف ترميز وفك ترميز إطار العمل وفك ترميزها مباشرة.

يقارن الجدول التالي ترميزات base64 المختلفة للسلسلة 00>00?00. لتحديد المعالجة المطلوبة (إن وجدت) لوظائف base64، قم بتطبيق وظيفة ترميز المكتبة على السلسلة 00>00?00 ومقارنة الإخراج مع الإخراج MDA-MDA_MDAالمتوقع .

الترميز إخراج ترميز Base64 معالجة إضافية بعد ترميز المكتبة معالجة إضافية قبل فك ترميز المكتبة
Base64 مع ترك مساحة MDA+MDA/MDA= استخدام الأحرف الآمنة لعنون URL وإزالة ترك مساحة استخدام أحرف base64 القياسية وإضافة ترك مساحة
Base64 بدون ترك مساحة MDA+MDA/MDA استخدام الأحرف الآمنة لعنون URL استخدام أحرف base64 القياسية
base64 الآمن ل URL مع ترك مساحة MDA-MDA_MDA= إزالة ترك مساحة إضافة ترك مساحة
base64 الآمن ل URL دون ترك مساحة MDA-MDA_MDA بلا بلا

دالة extractTokenAtPosition

تقسيم حقل سلسلة باستخدام المحدد المحدد، واختيار الرمز المميز في الموضع المحدد في التقسيم الناتج.

تستخدم هذه الدالة المعلمات التالية:

  • delimiter: سلسلة لاستخدامها كفاصل عند تقسيم سلسلة الإدخال.
  • position: موضع عدد صحيح صفري للرمز المميز للاختيار بعد تقسيم سلسلة الإدخال.

على سبيل المثال، إذا كان الإدخال هو ، فإن هو Jane Doe(مسافة) و delimiter هو 0، تكون النتيجة " "؛ إذا كان position هو 1، تكون Janeالنتيجة .positionDoe إذا كان الموضع يشير إلى رمز مميز غير موجود، يتم إرجاع خطأ.

مثال - استخراج اسم

يحتوي مصدر البيانات على PersonName حقل، وتريد فهرسته كاثنين منفصلين FirstName وحقول LastName . يمكنك استخدام هذه الدالة لتقسيم الإدخال باستخدام حرف المسافة كمحدد.

"fieldMappings" : [
  {
    "sourceFieldName" : "PersonName",
    "targetFieldName" : "FirstName",
    "mappingFunction" : { "name" : "extractTokenAtPosition", "parameters" : { "delimiter" : " ", "position" : 0 } }
  },
  {
    "sourceFieldName" : "PersonName",
    "targetFieldName" : "LastName",
    "mappingFunction" : { "name" : "extractTokenAtPosition", "parameters" : { "delimiter" : " ", "position" : 1 } }
  }]

jsonArrayToStringCollection function

تحويل سلسلة منسقة كصفيف JSON من السلاسل إلى صفيف سلسلة يمكن استخدامه لملء Collection(Edm.String) حقل في الفهرس.

على سبيل المثال، إذا كانت سلسلة الإدخال هي ["red", "white", "blue"]، ملء الحقل الهدف من النوع Collection(Edm.String) بالقيم redالثلاث و whiteو.blue بالنسبة لقيم الإدخال التي لا يمكن تحليلها كصفائف سلسلة JSON، يتم إرجاع خطأ.

مثال - ملء المجموعة من البيانات الارتباطية

لا تحتوي قاعدة بيانات Azure SQL على نوع بيانات مضمن يعين بشكل طبيعي إلى Collection(Edm.String) الحقول في Azure الذكاء الاصطناعي Search. لملء حقول مجموعة السلاسل، يمكنك معالجة بيانات المصدر مسبقا كصفيف سلسلة JSON ثم استخدام دالة jsonArrayToStringCollection التعيين.

"fieldMappings" : [
  {
    "sourceFieldName" : "tags", 
    "mappingFunction" : { "name" : "jsonArrayToStringCollection" }
  }]

وظيفة urlEncode

يمكن استخدام هذه الدالة لترميز سلسلة بحيث تكون "عنوان URL آمن". عند استخدامها مع سلسلة تحتوي على أحرف غير مسموح بها في عنوان URL، ستقوم هذه الدالة بتحويل هذه الأحرف "غير الآمنة" إلى مكافئات كيان الأحرف. تستخدم هذه الدالة تنسيق ترميز UTF-8.

مثال - البحث عن مفتاح المستند

urlEncode يمكن استخدام الدالة كبديل للدالة base64Encode ، إذا كان سيتم تحويل أحرف URL غير الآمنة فقط، مع الاحتفاظ بالأحرف الأخرى كما هي.

لنفترض أن سلسلة الإدخال هي <hello> - ثم سيتم ملء الحقل الهدف من النوع (Edm.String) بالقيمة %3chello%3e

عند استرداد المفتاح المشفر في وقت البحث، يمكنك بعد ذلك استخدام الدالة urlDecode للحصول على قيمة المفتاح الأصلي، واستخدام ذلك لاسترداد المستند المصدر.

"fieldMappings" : [
  {
    "sourceFieldName" : "SourceKey",
    "targetFieldName" : "IndexKey",
    "mappingFunction" : {
      "name" : "urlEncode"
    }
  }
]

وظيفة urlDecode

تحول هذه الدالة سلسلة مرمزة بعنوان URL إلى سلسلة تم فك ترميزها باستخدام تنسيق ترميز UTF-8.

مثال - فك ترميز بيانات تعريف الكائن الثنائي كبير الحجم

يقوم بعض عملاء تخزين Azure تلقائيا بترميز بيانات تعريف كائن ثنائي كبير الحجم لعنوان URL إذا كان يحتوي على أحرف غير ASCII. ومع ذلك، إذا كنت تريد جعل بيانات التعريف هذه قابلة للبحث (كنص عادي)، يمكنك استخدام الدالة urlDecode لتحويل البيانات المرمزة مرة أخرى إلى سلاسل عادية عند ملء فهرس البحث.

"fieldMappings" : [
  {
    "sourceFieldName" : "UrlEncodedMetadata",
    "targetFieldName" : "SearchableMetadata",
    "mappingFunction" : {
      "name" : "urlDecode"
    }
  }
]

دالة fixedLengthEncode

تحول هذه الدالة سلسلة من أي طول إلى سلسلة ذات طول ثابت.

مثال - تعيين مفاتيح المستندات الطويلة جدا

عند حدوث أخطاء تتعلق بطول مفتاح المستند الذي يتجاوز 1024 حرفا، يمكن تطبيق هذه الدالة لتقليل طول مفتاح المستند.


"fieldMappings" : [
 {
   "sourceFieldName" : "metadata_storage_path",
   "targetFieldName" : "your key field",
   "mappingFunction" : {
     "name" : "fixedLengthEncode"
   }
 }
]

toJson function

تحول هذه الدالة سلسلة إلى كائن JSON منسق. يمكن استخدام هذا للسيناريوهات التي لا يدعم فيها مصدر البيانات، مثل Azure SQL، أنواع البيانات المركبة أو الهرمية في الأصل، ثم تعيينه إلى حقول معقدة.

مثال - تعيين محتوى نصي إلى حقل معقد

افترض أن هناك صف SQL مع سلسلة JSON التي تحتاج إلى تعيين إلى حقل معقد (معرف في المقابل) في الفهرس، يمكن استخدام الدالة toJson لتحقيق ذلك. على سبيل المثال، إذا كان هناك حقل معقد في الفهرس يحتاج إلى تعبئة بالبيانات التالية:

{
    "id": "5",
    "info": {
        "name": "Jane",
        "surname": "Smith",
        "skills": [
            "SQL",
            "C#",
            "Azure"
        ],
        "dob": "2005-11-04T12:00:00"
    }
}

يمكن تحقيق ذلك باستخدام دالة toJson التعيين على عمود سلسلة JSON في صف SQL الذي يبدو كما يلي: {"id": 5, "info": {"name": "Jane", "surname": "Smith", "skills": ["SQL", "C#", "Azure"]}, "dob": "2005-11-04T12:00:00"}.

يجب تحديد تعيين الحقل كما هو موضح أدناه.


"fieldMappings" : [
  {
    "sourceFieldName" : "content",
    "targetFieldName" : "complexField",
    "mappingFunction" : {
      "name" : "toJson"
    }
  }
]

سيناريوهات تعيين الحقول المتقدمة

في السيناريوهات التي يكون لديك فيها علاقات مستند "واحد إلى متعدد"، مثل تقسيم البيانات أو تقسيمها، اتبع هذه الإرشادات لتعيين الحقول من المستندات الأصلية إلى المستندات "التابعة" (المجموعات):

1. تخطي فهرسة المستند الأصل

إذا كنت تتخطى فهرسة المستندات الأصلية (عن طريق تعيين projectionMode إلى في مجموعة skipIndexingParentDocumentsالمهارات)، فاستخدم indexProjections الفهرس لتعيين الحقول من المستندات الأصلية إلى المستندات "التابعة".

2. فهرسة كل من المستندات الأصلية و"التابعة"

إذا كنت تقوم بفهرسة كل من المستندات الأصلية والمستندات "التابعة":

  • استخدم تعيينات الحقول لتعيين الحقول إلى المستندات الأصل.
  • استخدم إسقاطات الفهرس لتعيين الحقول إلى المستندات "التابعة".

3. تعيين القيم التي تم تحويلها إلى دالة إلى المستندات الأصلية و/أو "التابعة"

إذا كان أحد الحقول في المستند الأصل يتطلب تحويلا (باستخدام دالات التعيين مثل الترميز) ويجب تعيينه إلى المستندات الأصلية و/أو "التابعة":

  • تطبيق التحويل باستخدام دالات تعيينات الحقول في المفهرس.
  • استخدم إسقاطات الفهرس في مجموعة المهارات لتعيين الحقل المحول إلى المستندات "التابعة".

راجع أيضًا