0

KML や XSD の経験はありません。KML とは何かを理解できました。これは、Google マップの生成に使用される XML です。

このサイトは、KML の XSD 情報を提供します。

XSD ファイルを開きましたが、非常に大きいため、ごく一部のみを投稿します。

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
  xmlns:kml="http://www.opengis.net/kml/2.2"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:xal="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
  targetNamespace="http://www.opengis.net/kml/2.2"
  elementFormDefault="qualified"
  version="2.2.0">

  <annotation>
    <appinfo>ogckml22.xsd 2008-01-23</appinfo>
    <documentation>XML Schema Document for OGC KML version 2.2. Copyright (c)
      2008 Open Geospatial Consortium, Inc. All Rights Reserved.
    </documentation>
  </annotation>  

  <!-- import atom:author and atom:link -->
  <import namespace="http://www.w3.org/2005/Atom"
    schemaLocation="atom-author-link.xsd"/>

  <!-- import xAL:Address -->
  <import namespace="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
    schemaLocation="http://docs.oasis-open.org/election/external/xAL.xsd"/>

  <!-- KML field types (simple content) -->

  <simpleType name="anglepos90Type">
    <restriction base="double">
      <minInclusive value="0.0"/>
      <maxInclusive value="90.0"/>
    </restriction>
  </simpleType>

  <simpleType name="angle90Type">
    <restriction base="double">
      <minInclusive value="-90"/>
      <maxInclusive value="90.0"/>
    </restriction>
  </simpleType>

  <simpleType name="anglepos180Type">
    <restriction base="double">
      <minInclusive value="0.0"/>
      <maxInclusive value="180.0"/>
    </restriction>
  </simpleType>

  <simpleType name="angle180Type">
    <restriction base="double">
      <minInclusive value="-180.0"/>
      <maxInclusive value="180.0"/>
    </restriction>
  </simpleType>

  <simpleType name="angle360Type">
    <restriction base="double">
      <minInclusive value="-360.0"/>
      <maxInclusive value="360.0"/>
    </restriction>
  </simpleType>

  <simpleType name="altitudeModeEnumType">
    <restriction base="string">
      <enumeration value="clampToGround"/>
      <enumeration value="relativeToGround"/>
      <enumeration value="absolute"/>
    </restriction>
  </simpleType>

  <simpleType name="colorType">
    <annotation>
      <documentation><![CDATA[

        aabbggrr

        ffffffff: opaque white
        ff000000: opaque black

        ]]></documentation>
    </annotation>
    <restriction base="hexBinary">
      <length value="4"/>
    </restriction>
  </simpleType>

  <simpleType name="coordinatesType">
    <list itemType="string"/>
  </simpleType>

  <simpleType name="colorModeEnumType">
    <restriction base="string">
      <enumeration value="normal"/>
      <enumeration value="random"/>
    </restriction>
  </simpleType>

  <simpleType name="dateTimeType">
    <union memberTypes="dateTime date gYearMonth gYear"/>
  </simpleType>

  <simpleType name="displayModeEnumType">
    <restriction base="string">
      <enumeration value="default"/>
      <enumeration value="hide"/>
    </restriction>
  </simpleType>

  <simpleType name="gridOriginEnumType">
    <restriction base="string">
      <enumeration value="lowerLeft"/>
      <enumeration value="upperLeft"/>
    </restriction>
  </simpleType>
  <simpleType name="itemIconStateType">
    <list itemType="kml:itemIconStateEnumType"/>
  </simpleType>

  <simpleType name="itemIconStateEnumType">
    <restriction base="string">
      <enumeration value="open"/>
      <enumeration value="closed"/>
      <enumeration value="error"/>
      <enumeration value="fetching0"/>
      <enumeration value="fetching1"/>
      <enumeration value="fetching2"/>

これらを使用してマップを生成する方法がよくわかりません。

XSD とは何か、このドキュメントを使用して適切な KML ファイルを生成し、有効な Google マップを表示する方法を教えてください。

4

3 に答える 3

2

難しいもの。そうです、KMLのような語彙のスキーマは巨大になる傾向があり、消化できないことがよくあります(文学的なプログラミングスタイルで書かれたまれな例外があります)。スキーマから始めません。オンラインでKMLチュートリアルがあるようです-それを使い果たしましたか?

于 2012-08-08T13:26:02.530 に答える
2

私も以前同じ状況に陥り、Google が提供するKML チュートリアルとリファレンス ドキュメントが大いに役立ちました。

于 2012-08-08T13:32:00.963 に答える
1

@Артём さん、いくつかの KML サンプルの開発を開始したら、Galdos が惜しみなく提供している KML バリデーター ( http://www.kmlvalidator.com/home.htm ) を使用して、それらの正確性をチェックできます。バリデーターが問題を発見すると、問題を解決するための有用なヒントを提供します。(バリデーターは、KML 2.2.0 XSD スキーマを部分的に使用してジョブを実行します。)

于 2012-08-16T14:48:27.360 に答える