質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

962閲覧

htmlのAPIについて

hi_se_pr

総合スコア21

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

1グッド

1クリップ

投稿2018/07/19 00:14

MDNなどでHTML5のAPIについて調べていて疑問に思ったことです。

HTMLのAPの説明にに出てくる言語はjavascript で書かれていると思うのですが、なぜこれらを"HTML"のAPIと呼ぶのでしょうか

og24715👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/07/19 00:32

何が聞きたいのかいまひとつ分かりませんが、該当の記事を提示されては?今現在のご自身の理解度はどうなのでしょうか。 https://teratail.com/help/question-tips#questionTips2-1 >今置かれている状況を整理し、わかっている範囲とわからない範囲を明確にしましょう
guest

回答3

0

W3CのHTML5 Logoでは以下のカテゴリをHTML5に含めている[9]。

セマンティックス - HTML5の新タグ、RDFa、マイクロデータ、マイクロフォーマット
オフラインとストレージ - App Cache、Web Storage、Indexed Database API、File API
デバイスアクセス - Geolocation API、マイク・カメラ、アドレス帳・カレンダー、端末の向き
接続性 - WebSocket、Server-Sent Events
マルチメディア - audio要素, video要素
3D、グラフィックス、エフェクト - SVG、canvas要素、WebGL、CSS3 3D
パフォーマンスと統合 - Web Workers、XMLHttpRequest Level 2
CSS3 - Webフォントも含む

Wikipedia参照

単にHTML文書としてのHTML5という言葉の使い方の他にその他諸々も含めてHTML5という言い方をするってことじゃないでしょうか?

APIというのは、ひらたーく言うと
「こう書いてくれたら、こういう結果を返すよ」っていう取り決めのようなものなので
結果を返す側のプログラムは、言ってしまえば何でもいいということでしょうか。

投稿2018/07/19 00:35

編集2018/07/19 00:43
keisukeh

総合スコア657

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

JavaScript

HTMLのAPの説明にに出てくる言語はjavascript で書かれていると思うのですが、

説明の都合上、JavaScriptを持ち出すことが多いとは思いますが、APIはインターフェースの一種ですから、言語を限定していないと思いますよ。
DOM APIはJavaScript以外にも実装があります。

HTMLの為のAPI

なぜこれらを"HTML"のAPIと呼ぶのでしょうか

HTMLのAPIとは書かれていない(HTMLの為のAPIならあります)と認識していますが、情報源はどこですか。その情報は信頼に足るものですか。

HTML5 API

https://developer.mozilla.org/ja/docs/Web/Guide/DOM/Manipulating_the_browser_history
このページに"HTML5 では history.pushState() および history.replaceState() メソッドが導入され..."という記述があり、history.pushState() = HTMLのメソッド のような印象を受けてしまっているのが現状です。

あなたは一次情報に解を求めるべきだと思います。
「HTML5のメソッドのように読めてしまうけど、ただのマークアップ言語にAPIとしての機能があるのはしっくりしない」が発端ですよね?
ならば、MDNよりも確度の高い情報源をあたるべきでしょう。

HTML5はWHATWG主導のHTML Living StandardとW3C規定のHTML5がありますが、現在ではWHATWG主体です。

  • HTML Living Standard … WHATWG管轄。バージョン番号がない。
  • HTML5 … W3C管轄。HTML5, HTML5.1, HTML5.2のように、バージョン番号がある。

「HTML5」と書いたなら、「HTML5(W3C規定でHTML5.1でもHTML5.2でもない)」が正しいですが、その境界を意識している人は少ないので文脈から判断したり、全てのパターンを想定して読みます。
(「W3C HTML5」と書いてくれれば、間違いないですが…。)

https://momdo.github.io/html/introduction.html
上記リンク先を熟読して下さい。

特に後者の要件は、以前にHTML4、XHTML1、DOM2 HTMLという3つの異なる文書で規定されたものを含むようHTML5仕様の範囲として要求した。

DOM Level 2 HTMLの仕様を統合しました。
既存のHTMLParagraphElement を含み、新しい HTMLAudioElement も網羅しています。
audio要素関連のAPIを総称して、Web Audio APIと呼びます。
https://webaudio.github.io/web-audio-api/
HTMLA Standardで定義されたAPIは総量が多くなると、別の仕様として分化していく傾向があります。
有名どころでは、innerHTMLがHTML Standardに含まれていましたが、別の仕様に引き継がれました。

文中に「HTML5 API」と書かれていた場合、「HTML5もしくはHTML Standard仕様で定義されるAPI」という意味になります。
しかし、先のように仕様の場所が変わると、厳密にはHTML5 APIとは呼べなくなり、諸々の事情で「HTML5(HTML Standard)とHTML5に関係している仕様で定義されているAPI」の意味になることがあります。
が、どの仕様がHTML5関連仕様が定義されているわけでもなく、括りが曖昧です。

HTML、HTMLのDOM APIのサポート、およびHTMLのサポートする技術の多くは、多くの場合、互いの存在を知らない、異なる優先順位をもつ多数の人々により数十年にわたって開発されてきた。

HTML5 APIよりも、DOM APIの方が狭義で名は体を表している感はあります。
広義な用語は解釈の幅も広いので、厳密性を求めるなら、使用しないのが無難です。

Re: 1221_hima さん

投稿2018/07/19 03:55

編集2018/07/20 11:07
think49

総合スコア18156

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

think49

2018/07/20 11:08

親記事に追記しました。 回答だけで満足せず、自分の目で仕様書を確かめる事をお勧めします。
guest

0

ん〜、なるほど…ではHTML5・ブラウザ・JavaScriptの関係を紹介します。
ここを押さえておけば理解が進むかと思います。


HTML5はW3Cという規約作る団体が、
「Chromeの開発元Googleにこういう仕様のブラウザを作ってくださいね」という勧告です。

なぜこれらを"HTML"のAPIと呼ぶのでしょうか

HTML5でこう作りなさいと定義しているだけで、
実態はGoogleが作ったChrome内のC++等で用意したAPIで、
JavaScriptはそのC++等で用意したAPIを呼び出して利用させてもらう立場です。

javascript で書かれていると思うのですが

HTML5で仕様が決められているAPIは基本的にJavaScriptが使う事を想定していますが、
JavaScriptで作られたAPIとは限りません。

投稿2018/07/19 02:02

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hi_se_pr

2018/07/19 02:08

回答ありがとうございます。 ではここでいうHTML5というのは タグを使用して記述する言語レベルのHTMLの話とはまた別の意味を持つ、という認識でよろしいでしょうか
miyabi-sun

2018/07/19 02:25

そうですね、違います。 HTMLというのは<タグ名></タグ名>で仕切ろうというツリー表記の文書を指します。 ところが1990年台後半、IEとネスケというブラウザが俺のHTMLは文字が点滅するんだぜ!みたいな独自形式をバンバン繰り出してライバルのブラウザに対して優位に立とうとしていた時代がありました。 エンジニア達は「じゃあ俺らはWebサイト公開する時になんて書けばいいんだ?」と心底困ってしまいました。 そこでW3Cという団体が出来上がり、HTMLの厳格な仕様書を作り始めました。 これに従わないブラウザ作ってもいいよ、でもエンジニアさん達は困ってるからコレ用のHTML書いてもらう事にするから、ブラウザの人気なくなっても知らないよ? …こんな感じのスタンスですね。 マイクロソフトは下位互換を意識する会社なので、中々IEをW3Cの提唱した仕様に準拠する事は難しかったのですが、他のブラウザはほぼ全てがこのW3Cの作った仕様に準拠しています。 HTML5というのはW3Cが提唱するHTML仕様のバージョン5です。 JavaScriptが新たに扱えるAudioなんかはHTMLかなぁ…というとちょっと違う気もしますが、audioタグも増設されましたし純粋なHTMLも含みつつ、JSが扱えるAPIも含みつつといった感じですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問