الاستعلام عن مجموعات البيانات باستخدام خدمة ميزة ويب

توضح هذه المقالة كيفية الاستعلام عن مجموعات بيانات خرائط Azure Creator باستخدام خدمة ميزة الويب (WFS). يمكنك استخدام واجهة برمجة تطبيقات WFS للاستعلام عن جميع مجموعات الميزات أو مجموعة معينة داخل مجموعة بيانات. على سبيل المثال، يمكنك استخدام WFS للعثور على جميع غرف الاجتماعات متوسطة الحجم في مبنى معين ومستوى طابق.

المتطلبات الأساسية

تستخدم هذه المقالة نفس عينة الخريطة الداخلية كما هو مستخدم في البرنامج التعليمي: استخدام المنشئ لإنشاء خرائط داخلية.

هام

  • تستخدم هذه المقالة عنوان URL الجغرافي us.atlas.microsoft.com. إذا لم يتم إنشاء مؤلف خدمتك داخل الولايات المتحدة، فعليك استخدام عنوان URL مختلف جغرافياً. للاطلاع على مزيد من المعلومات راجع الدخول إلى خدمات المؤلف.
  • في أمثلة URL في هذه المقالة، ستحتاج إلى استبدال:
    • {Azure-Maps-Subscription-key}باستخدام مفتاح اشتراك خرائط Azure.
    • {datasetId}datasetId مع الذي تم الحصول عليه في قسم التحقق من حالة إنشاء مجموعة البيانات في البرنامج التعليمي استخدام المنشئ لإنشاء خرائط داخلية.

الاستعلام عن ميزة المجموعات

للاستعلام عن جميع المجموعات في مجموعة البيانات الخاصة بك، قم بإنشاء طلب HTTP GET جديد:

أدخل عنوان URL التالي على WFS API. يجب أن يبدو الطلب مثل عنوان URL التالي:

https://us.atlas.microsoft.com/wfs/datasets/{datasetId}/collections?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=2.0

يتم إرجاع نص الاستجابة بتنسيق GeoJSON ويحتوي على كل المجموعات في مجموعة البيانات. ولتبسيط الأمر، يظهر المثال هنا unit فقط المجموعة. لمشاهدة مثال يحتوي على كل المجموعات، راجع WFS وصف مجموعات في API. لمعرفة المزيد حول أي مجموعة، يمكنك تحديد أي من عناوين URL داخل links العنصر.

{
"collections": [
    {
        "name": "unit",
        "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the is_open_area attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If is_open_area attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a line_element or area_element with is_obstruction equal to true.",
        "links": [
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/definition?api-version=1.0",
                "rel": "describedBy",
                "title": "Metadata catalogue for unit"
            },
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?api-version=1.0",
                "rel": "data",
                "title": "unit"
            }
            {
                "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit?api-version=1.0",
                "rel": "self",
                "title": "Metadata catalogue for unit"
            }
        ]
    },

الاستعلام عن ميزة المجموعة

يوضح هذا القسم الاستعلام عن واجهة برمجة تطبيقاتunit WFS لمجموعة الميزات.

للاستعلام عن مجموعة الوحدات في مجموعة البيانات الخاصة بك، قم بإنشاء طلب HTTP GET جديد:

https://us.atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=2.0

بعد إرجاع الاستجابة، انسخ الميزة id لواحدة من unit الميزات. في المثال التالي، الميزة id هي "UNIT26". استخدم "UNIT26" كميزات id عند تحديث حالة ميزة.

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Polygon",
                "coordinates": ["..."]
            },
            "properties": {
                "original_id": "b7410920-8cb0-490b-ab23-b489fd35aed0",
                "category_id": "CTG8",
                "is_open_area": true,
                "navigable_by": [
                    "pedestrian"
                ],
                "route_through_behavior": "allowed",
                "level_id": "LVL14",
                "occupants": [],
                "address_id": "DIR1",
                "name": "157"
            },
            "id": "UNIT26",
            "featureType": ""
        }, {"..."}
    ]
}

الخطوات التالية